Pogreške
Svaka krajnja točka ne uspije na isti način: HTTP status i jedan JSON omotač.
{
"error": {
"type": "invalid_request",
"code": "invalid_input",
"message": "duration must be one of 5, 10.",
"param": "duration",
"details": [ { "param": "duration", "message": "duration must be one of 5, 10." } ],
"request_id": null,
"doc_url": "https://doitong.com/developers/docs/errors#invalid_input"
}
}
| Polje | Značenje |
|---|---|
type |
Šira klasa pogreške. Na temelju ovoga odlučite što učiniti. |
code |
Točan razlog, stabilan i strojno čitljiv. Svaki kod ima odjeljak u nastavku; doc_url vodi na njega. |
message |
Objašnjenje čitljivo ljudima, sigurno za zapisivanje ili prikaz programeru. |
param |
Ulazni parametar ili zaglavlje koje uzrokuje problem, ako postoji. |
details |
Za ulazne pogreške, svaki pronađeni problem: [{ "param", "message" }]. |
request_id |
Zahtjev na koji se odnosi, ako postoji. |
Poziv koji vrati pogrešku ne naplaćuje se. Zahtjev koji ne uspije nakon prihvaćanja zadržava status
failed, na objektu zahtjeva sadrži error: { "type", "code", "message" } i automatski se vraća novac.
Vrste
| Vrsta | HTTP status | Što učiniti |
|---|---|---|
invalid_request |
400, 413 ili 422 | Ispravite zahtjev. Ponovni pokušaj istog poziva ponovno neće uspjeti. |
authentication_error |
401 | Pošaljite valjani ključ u Authorization: Bearer <key>. |
permission_error |
403 | Upotrijebite ključ s potrebnim opsegom. |
not_found |
404 | Provjerite id modela ili id zahtjeva. |
insufficient_credits |
402 | Nadoplatite API stanje (top_up_url u pogrešci). |
budget_exceeded |
402 | Vlastiti proračun ključa je potrošen. Konačno rješenje: zatražite od vlasnika ključa da ga poveća. |
conflict |
409 | Resurs nije u stanju koje dopušta ovaj poziv. |
rate_limited |
429 | Pričekajte Retry-After sekundi, zatim pokušajte ponovno. |
upstream_error |
502 | Pozadina modela nije uspjela. Sigurno je pokušati ponovno s istim Idempotency-Key: pokreće se iznova; niste naplaćeni. |
service_unavailable |
503 | API je pauziran ili ovisnost nije dostupna. Pokušajte ponovno kasnije. |
internal_error |
500 | Naša pogreška. Pokušajte ponovno; ako se ponavlja, kontaktirajte podršku s vremenom i request_id. |
Kodovi
invalid_request
Općenito neispravan zahtjev (400).
invalid_json
Tijelo nije valjani JSON (400).
invalid_body
Tijelo je valjani JSON, ali nije objekt; ulaz modela mora biti JSON objekt (400).
body_too_large
Tijelo je veće od 16 MB (413). Prenesite velike datoteke i umjesto toga proslijedite njihov URL (pogledajte Datoteke).
invalid_parameter
Parametar upita ima pogrešnu vrijednost, primjerice limit izvan raspona 1 do 100, wait nije broj, nepoznat
status ili category, ili storage različit od permanent / temporary (400). param navodi koji je to parametar.
invalid_category
GET /openapi.json?category= navodi kategoriju koja ne postoji (400). GET https://api.doitong.com/v1/categories prikazuje popis kategorija.
invalid_cursor
cursor poziva za popis ne pripada ovom popisu (400). Počnite ponovno bez kursora.
invalid_idempotency_key
Zaglavlje Idempotency-Key prazno je ili dulje od 255 znakova (400).
invalid_arguments
Pozivu MCP alata nedostaje argument ili je argument neispravan (samo MCP). param navodi argument.
invalid_input
Ulaz modela ne prolazi provjeru valjanosti (422): nepoznat parametar (poruka predlaže najbliži valjani naziv),
obavezan parametar koji nedostaje, pogrešna vrsta, vrijednost izvan dopuštenog popisa ili raspona, ili su navedeni i kanonski i
izvorni naziv s različitim vrijednostima. param je prvi problematični parametar, a details navodi sve takve parametre.
Ništa se ne naplaćuje.
unsupported_file
Datoteka ima vrstu koju ne prihvaćamo (422), primjerice prijenos s nepodržanim nastavkom ili content_type
koji ne odgovara nastavku.
invalid_webhook_url
webhook_url nije javni https:// URL (422). Privatne, lokalne i obične http:// adrese odbijaju se.
missing_api_key
Krajnja točka zahtijeva API ključ, ali nijedan nije poslan (401).
invalid_api_key
Ključ je nepoznat, opozvan ili je istekao (401).
insufficient_scope
Ključ nema opseg potreban za ovaj poziv (403), primjerice models:run za pokretanje ili models:read za čitanje
zahtjeva i stanja. Pogledajte Autentifikacija.
account_disabled
Račun je zatvoren ili suspendiran (403). Njegovi ključevi više ne rade.
not_found
Putanja ne postoji (404).
model_not_found
Nijedan javni model nema ovaj id (404). Popis modela dohvatite s GET https://api.doitong.com/v1/models.
request_not_found
U vašem računu ne postoji zahtjev s ovim id-jem (404). Zahtjevi drugih računa nikad nisu vidljivi.
insufficient_credits
API stanje računa (API krediti, 1.000 API kredita = 1 $ — ne krediti aplikacija Doitong) ne pokriva
cijenu ovog poziva (402). Odgovor se šalje prije bilo kakve naplate. Pogreška sadrži top_up_url; dodajte novac
na https://doitong.com/developers/dashboard#balance i pokušajte ponovno.
{ "error": { "type": "insufficient_credits", "code": "insufficient_credits",
"message": "This request costs 560 API credits ($0.56); the API balance is 120 API credits ($0.12). Top up at https://doitong.com/developers/dashboard#balance",
"top_up_url": "https://doitong.com/developers/dashboard#balance", "doc_url": "https://doitong.com/developers/docs/errors#insufficient_credits" } }
budget_exceeded
Poziv bi premašio vlastiti proračun API ključa u API kreditima (402). Proračun postavlja vlasnik ključa; ponovni pokušaj ne pomaže dok ga vlasnik ne poveća.
conflict
Poziv je u sukobu s trenutačnim stanjem resursa (409).
idempotency_mismatch
Idempotency-Key je već upotrijebljen s drugim tijelom (409). Za novu operaciju upotrijebite novi ključ.
idempotency_in_progress
Zahtjev s istim Idempotency-Key trenutačno se izrađuje (409). Pokušajte ponovno za trenutak da biste ga dohvatili.
request_active
Zahtjev je još queued ili running, pa još nema datoteka za brisanje (409). Obrišite ih kad završi.
not_cancelable
Zahtjev je već succeeded ili failed i ne može se otkazati (409).
rate_limited
Ključ je u trenutačnom prozoru poslao previše zahtjeva (429). Pogledajte zaglavlja X-RateLimit-* i Retry-After.
too_many_inflight
Račun već ima 10 zahtjeva u stanju queued ili running (429). Pokrenite sljedeći kad jedan od njih završi.
upstream_error
Pozadina modela odbila je zahtjev ili nije uspjela obraditi ga (502 pri pokretanju ili failed s ovim kodom na zahtjevu). API krediti se
vraćaju. Ako je sama pozadina odbila ulaz, poziv vraća 422 invalid_input s pripadajućom porukom.
upstream_lost
Pozadina modela više ne prepoznaje zahtjev, pa rezultat nikad neće stići. Završava kao failed s ovim kodom
(vrsta upstream_error) i sredstva se vraćaju. Pokrenite ga ponovno.
timeout
Zahtjev je trajao dulje od ograničenja (15 minuta za slike, 60 za video, 30 u ostalim slučajevima) i zaustavljen je. Završava kao
failed s ovim kodom i sredstva se vraćaju.
service_unavailable
API je privremeno pauziran ili ovisnost, poput prijenosa datoteka, nije dostupna (503). Pokušajte ponovno kasnije.
internal_error
Nešto se pokvarilo na našoj strani (500). Pokušajte ponovno; ako se ponavlja, kontaktirajte podršku.
charge_failed
Račun se nije mogao naplatiti zbog internog problema (500). Zahtjev je označen kao failed; ništa nije uzeto. Pokušajte ponovno.
pricing_unavailable
Cijena modela nije konfigurirana pa je trenutačno nije moguće navesti ni pokrenuti model (500).