Dokumentasi API GPT Image Hub
Gunakan kunci Bearer API untuk memanggil pembuatan gambar, daftar model, saldo kredit, dan titik akhir pencarian pembuatan.
https://www.gptimagehub.comHeader autentikasiAuthorization: Bearer gih_live_...Mulai cepat
Masuk, buka Kunci API di akun Anda, buat kunci, dan simpan rahasia yang hanya ditampilkan satu kali.
Panggil /api/v1/models untuk kemampuan model, lalu /api/v1/credits untuk saldo Anda.
Panggil /api/v1/images/generations. Untuk panggilan yang berjalan lama, setel async ke true dan lakukan polling ke poll_url yang dikembalikan.
Titik akhir
/api/v1/modelsNoMenampilkan daftar model gambar yang tersedia, rasio yang didukung, kualitas, dan biaya kredit.
/api/v1/creditsBearerBaca saldo kredit untuk pengguna yang memiliki kunci API.
/api/v1/images/generationsBearerBuat gambar dari prompt, atau setel async=true untuk memasukkan tugas latar belakang ke antrean.
/api/v1/generations/:generationIdBearerAmbil log pembuatan dan gambar yang disimpan untuk pembuatan tersebut.
Otentikasi
Semua titik akhir v1 kecuali daftar model memerlukan kunci API di header Authorization. Kunci mentah ditampilkan satu kali pada waktu pembuatan; server hanya menyimpan hash.
Authorization: Bearer gih_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxModel
Titik akhir model menampilkan ID model, penyedia, rasio aspek yang didukung, kualitas yang didukung, batas gambar referensi, dan kredit per gambar.
curl https://www.gptimagehub.com/api/v1/modelsZ-Image Turbo
z-image-turboBidang permintaan
| Bidang | Nilai | Catatan |
|---|---|---|
model | z-image-turbo | Harus disetel ke ID model ini |
size | 1024x1024 | OpenAI-compatible output size, for example auto or 1024x1024 |
quality | high | Kualitas yang tersedia: auto, low, medium, high |
n | 1 | Jumlah gambar, dari 1 hingga 4 |
reference_image | - | Hanya untuk multipart/form-data; jumlah tidak boleh melebihi batas model |
Panggilan JSON
curl https://www.gptimagehub.com/api/v1/images/generations \
-H "Authorization: Bearer gih_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"model": "z-image-turbo",
"prompt": "A cinematic product photo with premium studio lighting",
"size": "1024x1024",
"quality": "high",
"n": 1
}'Kredit
Titik akhir kredit mengembalikan saldo, jenis akun, dan masa berlaku kredit mendatang untuk pengguna yang memiliki kunci API.
curl https://www.gptimagehub.com/api/v1/credits \
-H "Authorization: Bearer gih_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"Hasilkan gambar
Titik akhir pembuatan gambar secara default menunggu hingga selesai. Setel async ke true untuk langsung menerima id pembuatan, lalu lakukan polling ke /api/v1/generations/:generationId untuk mendapatkan hasilnya. Kredit dibebankan sebelum penyedia membuat gambar dan dikembalikan secara otomatis jika penyedia gagal atau mengembalikan lebih sedikit gambar daripada yang diminta.
Permintaan JSON
curl https://www.gptimagehub.com/api/v1/images/generations \
-H "Authorization: Bearer gih_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-image-2",
"prompt": "A cinematic product photo of a transparent perfume bottle on black marble",
"size": "1024x1024",
"quality": "high",
"n": 1
}'Tugas asinkron
curl https://www.gptimagehub.com/api/v1/images/generations \
-H "Authorization: Bearer gih_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: order-1042-hero-image" \
-d '{
"model": "gpt-image-2",
"prompt": "A cinematic product photo with premium studio lighting",
"size": "1024x1024",
"quality": "high",
"n": 1,
"async": true
}'{
"object": "image_generation",
"id": "clx_generation_log_id",
"status": "queued",
"model": "gpt-image-2",
"aspect_ratio": "1:1",
"quality": "1K",
"created_at": "2026-04-30T08:00:00.000Z",
"images": [],
"usage": {
"credits": 0,
"credits_requested": 7
},
"poll_url": "https://www.gptimagehub.com/api/v1/generations/clx_generation_log_id"
}Permintaan gambar referensi
curl https://www.gptimagehub.com/api/v1/images/generations \
-H "Authorization: Bearer gih_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" \
-F "model=gpt-image-2" \
-F "prompt=Use the reference image and render it as a premium studio product shot" \
-F "size=1024x1024" \
-F "quality=high" \
-F "n=1" \
-F "reference_image=@./reference.png"Respons
{
"object": "image_generation",
"id": "clx_generation_log_id",
"status": "succeeded",
"model": "gpt-image-2",
"aspect_ratio": "1:1",
"quality": "1K",
"images": [
{
"id": "clx_image_id",
"object": "image",
"url": "https://cdn.example.com/generations/user/image.png",
"created_at": "2026-04-30T08:00:00.000Z"
}
],
"usage": {
"credits": 7
},
"balance": {
"credits": 113,
"account_type": "PRO",
"next_expiration": null
}
}Ambil hasil pembuatan
Gunakan id yang dikembalikan oleh titik akhir pembuatan untuk mengambil log dan URL gambar yang tersimpan. Kunci API hanya dapat membaca hasil pembuatan milik pengguna yang sama.
curl https://www.gptimagehub.com/api/v1/generations/clx_generation_log_id \
-H "Authorization: Bearer gih_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"Kesalahan
{
"error": {
"message": "Invalid request body",
"code": "invalidRequest"
}
}| HTTP | code | Deskripsi |
|---|---|---|
| 400 | invalidRequest | Isi atau parameter permintaan tidak valid. |
| 401 | missingApiKey | Header Authorization tidak ada. |
| 401 | invalidApiKey | Kunci API tidak ada atau telah dicabut. |
| 401 | expiredApiKey | Kunci API telah kedaluwarsa. |
| 401 | emailUnverified | Email akun belum diverifikasi. Verifikasi melalui email yang kami kirimkan, lalu coba lagi. |
| 402 | insufficientCredits | Akun tidak memiliki kredit yang cukup. |
| 404 | notFound | Sumber daya yang diminta tidak ditemukan. |
| 429 | rateLimited | Terlalu banyak permintaan. Tunggu sejumlah detik yang tertera pada header Retry-After, lalu coba lagi. |
| 429 | freeTierLimited | Akun yang hanya memiliki kredit pendaftaran gratis dapat membuat hingga 10 gambar per jam. |
| 500 | generationFailed | Pembuatan gambar gagal. |
| 503 | serviceUnavailable | Layanan sedang tidak tersedia untuk sementara. Coba lagi setelah waktu pada header Retry-After. |
Batasan
- Generasi sinkron dapat berjalan hingga 800 detik di production.
- n harus bernilai antara 1 dan 4.
- Gambar referensi mendukung PNG, JPG, JPEG, dan WebP. Seluruh permintaan, termasuk setiap gambar referensi, harus di bawah 4.5MB (pastikan total gambar di bawah 4MB). Permintaan yang lebih besar akan ditolak oleh platform hosting dengan plain-text 413 sebelum mencapai API, jadi ubah ukuran atau kompres gambar terlebih dahulu.
- Jumlah gambar referensi maksimum ditentukan oleh reference_image_limit masing-masing model.
- Batas laju: 60 permintaan generasi per menit per API key dan 120 per menit per alamat IP. Setiap respons memuat header RateLimit-Limit, RateLimit-Remaining, dan RateLimit-Reset; kode 429 juga menyertakan Retry-After.
- Untuk mencoba kembali generasi dengan aman, kirim header Idempotency-Key (hingga 120 karakter). Mengulangi key yang sama dengan API key yang sama akan mengembalikan hasil generasi asli alih-alih membebankan biaya lagi.
- Mode async mengembalikan 202 dengan poll_url. Webhook belum tersedia saat ini.