Klaidos
Kiekvienas galinis taškas sugenda taip pat: pateikiama HTTP būsena ir vienas JSON apvalkalas.
{
"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"
}
}
| Laukas | Reikšmė |
|---|---|
type |
Bendra klaidos klasė. Pagal ją nuspręskite, ką daryti. |
code |
Tiksli, nekintanti ir kompiuteriui nuskaitoma priežastis. Kiekvienam kodui skirtas toliau pateikiamas skyrius; doc_url pateikia nuorodą į jį. |
message |
Žmogui suprantamas paaiškinimas, kurį saugu įrašyti į žurnalą arba parodyti kūrėjui. |
param |
Probleminis įvesties parametras arba antraštė, jei toks yra. |
details |
Įvesties klaidų atveju – visos rastos problemos: [{ "param", "message" }]. |
request_id |
Užklausa, su kuria tai susiję, jei tokia yra. |
Už iškvietimą, kuris grąžina klaidą, mokestis netaikomas. Užklausa, kuri nepavyksta po priėmimo, išlaiko būseną
failed, užklausos objekte turi error: { "type", "code", "message" } ir mokestis už ją grąžinamas automatiškai.
Tipai
| Tipas | HTTP būsena | Ką daryti |
|---|---|---|
invalid_request |
400, 413 arba 422 | Pataisykite užklausą. Pakartotinai siunčiant tą patį iškvietimą jis vėl nepavyks. |
authentication_error |
401 | Galiojantį raktą siųskite antraštėje Authorization: Bearer <key>. |
permission_error |
403 | Naudokite raktą su reikiama aprėptimi. |
not_found |
404 | Patikrinkite modelio ID arba užklausos ID. |
insufficient_credits |
402 | Papildykite API likutį (top_up_url klaidoje). |
budget_exceeded |
402 | Išnaudotas paties rakto biudžetas. Galutinis sprendimas: paprašykite rakto savininko jį padidinti. |
conflict |
409 | Išteklius nėra būsenos, leidžiančios atlikti šį iškvietimą. |
rate_limited |
429 | Palaukite Retry-After sekundes ir bandykite dar kartą. |
upstream_error |
502 | Modelio posistemė nepavyko. Saugiai bandykite dar kartą su tuo pačiu Idempotency-Key: užklausa bus paleista iš naujo, mokestis netaikytas. |
service_unavailable |
503 | API pristabdyta arba neveikia priklausomybė. Bandykite vėliau. |
internal_error |
500 | Mūsų klaida. Bandykite dar kartą; jei problema išlieka, susisiekite su palaikymo tarnyba, nurodydami laiką ir request_id. |
Kodai
invalid_request
Bendra netinkamai suformuota užklausa (400).
invalid_json
Turinys nėra galiojantis JSON (400).
invalid_body
Turinys yra galiojantis JSON, bet ne objektas; modelio įvestis turi būti JSON objektas (400).
body_too_large
Turinys didesnis nei 16 MB (413). Įkelkite didelius failus ir vietoje jų perduokite URL (žr. Failai).
invalid_parameter
Užklausos parametras turi netinkamą reikšmę, pavyzdžiui, limit nepatenka į intervalą nuo 1 iki 100, wait nėra skaičius, nurodyta nežinoma
status arba category, arba storage reikšmė nėra permanent / temporary (400). Parametro pavadinimą nurodo param.
invalid_category
GET /openapi.json?category= nurodo neegzistuojančią kategoriją (400). Jas išvardija GET https://api.doitong.ru/v1/categories.
invalid_cursor
Sąrašo iškvietimo cursor nepriklauso šiam sąrašui (400). Pradėkite iš naujo be žymeklio.
invalid_idempotency_key
Antraštė Idempotency-Key tuščia arba ilgesnė nei 255 simboliai (400).
invalid_arguments
MCP įrankio iškvietimui trūksta argumento arba jis netinkamai suformuotas (tik MCP). Argumento pavadinimą nurodo param.
invalid_input
Modelio įvestis neatitinka tikrinimo reikalavimų (422): nežinomas parametras (pranešime pasiūlomas artimiausias galiojantis pavadinimas),
trūksta privalomo parametro, netinkamas tipas, reikšmė nepatenka į leidžiamą sąrašą arba intervalą, arba pateikti ir kanoninis, ir
vietinis pavadinimai su skirtingomis reikšmėmis. param yra pirmasis probleminis parametras, o details išvardija juos visus.
Mokestis netaikomas.
unsupported_file
Failo tipas nepriimamas (422), pavyzdžiui, įkeltas failas turi nepalaikomą plėtinį arba content_type
neatitinka plėtinio.
invalid_webhook_url
webhook_url nėra viešas https:// URL (422). Privatūs, vietiniai ir paprasti http:// adresai atmetami.
missing_api_key
Galiniam taškui reikia API rakto, bet jis nebuvo išsiųstas (401).
invalid_api_key
Raktas nežinomas, atšauktas arba nebegalioja (401).
insufficient_scope
Raktas neturi šiam iškvietimui reikalingos aprėpties (403), pavyzdžiui, models:run paleidimui arba models:read, kad būtų galima skaityti
užklausas ir likutį. Žr. Autentifikavimas.
account_disabled
Paskyra uždaryta arba sustabdyta (403). Jos raktai nebeveikia.
not_found
Kelias neegzistuoja (404).
model_not_found
Viešo modelio su šiuo ID nėra (404). Modelius išvardykite naudodami GET https://api.doitong.ru/v1/models.
request_not_found
Jūsų paskyroje nėra užklausos su šiuo ID (404). Kitų paskyrų užklausos niekada nerodomos.
insufficient_credits
Paskyros API likutis (API kreditai, 1 000 API kreditų = 1 $ – ne Doitong programėlių kreditai) nepadengia šio iškvietimo
kainos (402). Atsakymas išsiunčiamas prieš nuskaičiuojant bet kokią sumą. Klaidoje pateikiamas top_up_url; papildykite likutį
adresu https://doitong.ru/developers/dashboard#balance ir bandykite dar kartą.
{ "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.ru/developers/dashboard#balance",
"top_up_url": "https://doitong.ru/developers/dashboard#balance", "doc_url": "https://doitong.com/developers/docs/errors#insufficient_credits" } }
budget_exceeded
Iškvietimas viršytų paties API rakto biudžetą API kreditais (402). Biudžetą nustato rakto savininkas; pakartotinis bandymas nepadės, kol jis jo nepadidins.
conflict
Iškvietimas nesuderinamas su dabartine ištekliaus būsena (409).
idempotency_mismatch
Idempotency-Key jau buvo naudotas su kitu turiniu (409). Naujam veiksmui naudokite naują raktą.
idempotency_in_progress
Šiuo metu kuriama užklausa su tuo pačiu Idempotency-Key (409). Po akimirkos bandykite dar kartą, kad ją gautumėte.
request_active
Užklausa vis dar yra queued arba running, todėl joje dar nėra failų, kuriuos būtų galima ištrinti (409). Ištrinkite juos, kai ji bus baigta.
not_cancelable
Užklausa jau yra succeeded arba failed, todėl jos atšaukti negalima (409).
rate_limited
Dabartiniu laikotarpiu raktas pateikė per daug užklausų (429). Žr. X-RateLimit-* ir Retry-After antraštes.
too_many_inflight
Paskyra jau turi 10 queued arba running užklausų (429). Kitą paleiskite, kai viena iš jų bus baigta.
upstream_error
Modelio posistemė atmetė užklausą arba jos neįvykdė (502 paleidimo metu arba užklausoje būsena failed su šiuo kodu). API kreditai
grąžinami. Jei pati posistemė atmetė įvestį, iškvietimas grąžina 422 invalid_input su jos pranešimu.
upstream_lost
Modelio posistemė nebežino apie užklausą, todėl rezultatas niekada nebus gautas. Ji baigiama būsena failed su šiuo kodu
(tipo upstream_error), o mokestis grąžinamas. Paleiskite ją dar kartą.
timeout
Užklausa veikė ilgiau nei leidžiama (15 minučių vaizdams, 60 vaizdo įrašams, 30 kitais atvejais) ir buvo sustabdyta. Ji baigiama
būsena failed su šiuo kodu, o mokestis grąžinamas.
service_unavailable
API laikinai pristabdyta arba neveikia priklausomybė, pavyzdžiui, failų įkėlimas (503). Bandykite vėliau.
internal_error
Mūsų pusėje įvyko klaida (500). Bandykite dar kartą; jei problema išlieka, susisiekite su palaikymo tarnyba.
charge_failed
Paskyros nepavyko apmokestinti dėl vidinės problemos (500). Užklausa pažymima kaip failed; niekas nenuskaičiuojama. Bandykite dar kartą.
pricing_unavailable
Modelio kaina nesukonfigūruota, todėl šiuo metu jos negalima apskaičiuoti arba paleisti modelio (500).