Pereiti prie turinio
API vadovas

Klaidos

Peržiūrėti kaip Markdown Atnaujinta

Kiekvienas galinis taškas sugenda taip pat: pateikiama HTTP būsena ir vienas JSON apvalkalas.

JSON
{
  "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.com/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.com/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.com/developers/dashboard#balance ir bandykite dar kartą.

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

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).