API Pro: limiti, codici di errore e buone pratiche
Limiti
Ogni chiave ne porta tre: render simultanei (2 di default), richieste al minuto (60 di default) e, se ne imposti uno, un limite giornaliero di crediti.
Superato un limite, la risposta è 429 con un header Retry-After espresso in secondi. Una chiamata rifiutata non costa nulla. Il giorno utilizzato per i limiti è il giorno UTC.
La nostra GPU è condivisa con gli utenti dell'app. Quando è occupata, i tuoi render vengono inviati a GPU in affitto, allo stesso prezzo e tramite la stessa API, con qualche decina di secondi in più all'avvio.
Codici di errore
| Codice | error | Significato e cosa fare |
|---|---|---|
| 400 | champ prompt requis | Aggiungi un prompt. |
| 400 | contenu_interdit | Il filtro contenuti ha rifiutato il prompt. |
| 400 | image_requise, inpaint_images_requises | La modalità richiede image_b64, e mask_b64 per inpaint. |
| 401 | cle_requise, cle_invalide | Header mancante o chiave sconosciuta. |
| 402 | credits_insuffisants | Saldo insufficiente per questo render (il cost è indicato). Ricarica sul sito. |
| 403 | cle_desactivee, cle_revoquee, cle_expiree | Chiave disattivata, revocata o scaduta: creane una nuova nell'app. |
| 403 | licence_revoquee, licence_non_pro | Licenza revocata, oppure account non Pro. |
| 403 | portee_manquante | La chiave non ha il permesso richiesto, indicato in portee. |
| 403 | lora_inconnu | Un personaggio che non appartiene all'account. |
| 404 | media_indisponible | Il file non è più disponibile: invia di nuovo la richiesta. |
| 413 | image_trop_lourde | Immagine sorgente o maschera superiore a 12 MB decodificati. |
| 429 | trop_de_rendus_simultanes, cadence_minute, plafond_jour | Un limite è stato raggiunto, consulta Retry-After. |
| 429 | plafond_credits_jour | Il limite giornaliero di crediti della chiave è stato raggiunto (plafond, depense, cout). |
| 502 | soumission_echouee, statut_echoue | Problema sul lato render: riprova tra qualche secondo. |
| 503 | licence_inverifiable | L'account non può essere verificato in questo momento: riprova tra un minuto. |
I nomi degli errori sono le stringhe esatte restituite dall'API. Fai il match su di essi piuttosto che sul messaggio, che potrebbe essere riformulato.
Buone pratiche
- Esegui il polling ogni 3 secondi, non più frequentemente. La coda è condivisa e martellare le richieste non aiuta nessuno.
- Scarica il file non appena lo stato è
completed. Il file non viene archiviato. - Scrivi i prompt in inglese e, per i video, descrivi il movimento piuttosto che l'immagine statica.
- Una chiave per ogni utilizzo e un limite giornaliero di crediti su ogni chiave presente su un server. Una chiave trapelata con un limite ti costa un giorno, non l'intero saldo.
- Tratta un
429come normale, non come un errore: aspetta il tempo indicato inRetry-Aftere continua.
I prompt vengono registrati dalla nostra parte, come avviene per l'app, per motivi di sicurezza.