Novità: GPT Image 2.5 Flare e Sunburst. Provali gratis con 3 immagini alla registrazione, poi 8 crediti ciascuna.
Prova GPT Image 2.5
API pubblica

Documentazione API di GPT Image Hub

Utilizza le chiavi API Bearer per chiamare gli endpoint di generazione delle immagini, elenco dei modelli, saldo dei crediti e consultazione delle generazioni.

URL di basehttps://www.gptimagehub.comIntestazione di autenticazioneAuthorization: Bearer gih_live_...

Avvio rapido

1
Crea una chiave API

Accedi, apri Chiavi API nel tuo account, crea una chiave e memorizza il segreto monouso.

2
Controlla modelli e crediti

Chiama /api/v1/models per le funzionalità del modello, quindi /api/v1/credits per il saldo.

3
Invia una richiesta di generazione

Chiama /api/v1/images/generations. Per le chiamate di lunga durata, imposta async su true e interroga il poll_url restituito.

Endpoint

GET/api/v1/modelsNo

Elenca i modelli di immagine disponibili, i rapporti supportati, le qualità e il costo in crediti.

GET/api/v1/creditsBearer

Legge il saldo dei crediti dell'utente proprietario della chiave API.

POST/api/v1/images/generationsBearer

Genera immagini da un prompt oppure imposta async=true per mettere in coda un'attività in background.

GET/api/v1/generations/:generationIdBearer

Recupera un registro di generazione e le immagini salvate per quella generazione.

Autenticazione

Tutti gli endpoint v1, ad eccezione dell'elenco dei modelli, richiedono una chiave API nell'intestazione Authorization. La chiave grezza viene mostrata una volta al momento della creazione; il server memorizza solo un hash.

Authorization: Bearer gih_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Modelli

L'endpoint dei modelli restituisce ID modello, fornitori, proporzioni supportate, qualità supportate, limiti di immagini di riferimento e crediti per immagine.

curl https://www.gptimagehub.com/api/v1/models

Z-Image Turbo

z-image-turbo
alibaba
ID modello APIz-image-turbo
Fornitorealibaba
Crediti15
Opzioni predefiniteauto, 1K
Qualità supportate1K, 2K
Rapporti supportatiauto, 1:1, 4:3, 3:4, 3:2, 2:3, 16:9, 9:16, 5:4, 4:5, 21:9, 9:21, 2:1, 1:2, 3:1, 1:3
Immagini di riferimentoNon supportato

Campi richiesta

CampoValoreNote
modelz-image-turboDeve essere impostato su questo ID modello
size1024x1024OpenAI-compatible output size, for example auto or 1024x1024
qualityhighQualità disponibili: auto, low, medium, high
n1Conteggio immagini, da 1 a 4
reference_image-Solo per multipart/form-data; il conteggio non può superare il limite del modello

Chiamata 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
  }'

Crediti

L'endpoint dei crediti restituisce il saldo, il tipo di account e la prossima scadenza dei crediti per l'utente proprietario della chiave API.

curl https://www.gptimagehub.com/api/v1/credits \
  -H "Authorization: Bearer gih_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"

Genera immagini

Per impostazione predefinita, l'endpoint di generazione delle immagini attende il completamento. Imposta async su true per ricevere subito un ID di generazione e interroga /api/v1/generations/:generationId per ottenere il risultato. I crediti vengono addebitati prima della generazione da parte del fornitore e rimborsati automaticamente se il fornitore non riesce a generare o restituisce meno immagini di quelle richieste.

Richiesta 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
  }'

Attività asincrona

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"
}

Richiesta immagine di riferimento

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"

Risposta

{
  "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
  }
}

Recupera la generazione

Utilizza l'ID restituito dall'endpoint di generazione per recuperare il log salvato e gli URL delle immagini. Le chiavi API possono leggere solo generazioni possedute dallo stesso utente.

curl https://www.gptimagehub.com/api/v1/generations/clx_generation_log_id \
  -H "Authorization: Bearer gih_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"

Errori

{
  "error": {
    "message": "Invalid request body",
    "code": "invalidRequest"
  }
}
HTTPcodeDescrizione
400invalidRequestIl corpo o i parametri della richiesta non sono validi.
401missingApiKeyManca l'intestazione Authorization.
401invalidApiKeyLa chiave API non esiste o è stata revocata.
401expiredApiKeyLa chiave API è scaduta.
401emailUnverifiedL'email dell'account non è ancora verificata. Verificala tramite l'email inviata, quindi riprova.
402insufficientCreditsL'account non dispone di crediti sufficienti.
404notFoundLa risorsa richiesta non è stata trovata.
429rateLimitedTroppe richieste. Attendi il numero di secondi indicato nell'header Retry-After, quindi riprova.
429freeTierLimitedGli account che dispongono solo dei crediti gratuiti di registrazione possono generare fino a 10 immagini all'ora.
500generationFailedLa generazione dell'immagine non è riuscita.
503serviceUnavailableIl servizio è temporaneamente non disponibile. Riprova dopo il tempo specificato nell'header Retry-After.

Limiti

  • La generazione sincrona può essere eseguita per un massimo di 800 secondi in produzione.
  • n deve essere compreso tra 1 e 4.
  • Le immagini di riferimento supportano PNG, JPG, JPEG e WebP. L'intera richiesta, inclusa ogni immagine di riferimento, deve rimanere al di sotto di 4.5MB (mantieni le immagini sotto i 4MB in totale). Le richieste di dimensioni maggiori vengono rifiutate dalla piattaforma di hosting con un 413 in testo normale prima di raggiungere l'API, pertanto ridimensiona o comprimi prima le immagini.
  • Il numero massimo di immagini di riferimento è definito dal reference_image_limit di ciascun modello.
  • Limiti di frequenza: 60 richieste di generazione al minuto per API key e 120 al minuto per indirizzo IP. Ogni risposta include gli header RateLimit-Limit, RateLimit-Remaining e RateLimit-Reset; una risposta 429 include anche Retry-After.
  • Per ritentare una generazione in sicurezza, invia un header Idempotency-Key (fino a 120 caratteri). Ripetere la stessa chiave con la medesima API key restituisce la generazione originale invece di addebitarla nuovamente.
  • La modalità asincrona restituisce 202 con poll_url. I webhook non sono ancora disponibili.