Siirry sisältöön
API-opas

Virheet

Näytä Markdownina Päivitetty

Jokainen päätepiste epäonnistuu samalla tavalla: HTTP-tila ja yksi JSON-kuori.

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"
  }
}
Kenttä Merkitys
type Virheen yleinen luokka. Päätä tämän perusteella, mitä tehdä.
code Tarkka syy, vakaa ja koneellisesti luettava. Jokaisella koodilla on alla oma osionsa; doc_url linkittää siihen.
message Ihmiselle luettava selitys, jonka voi turvallisesti kirjata lokiin tai näyttää kehittäjälle.
param Virheen aiheuttanut syöteparametri tai otsake, jos sellainen on.
details Syötevirheissä kaikki havaitut ongelmat: [{ "param", "message" }].
request_id Pyyntö, jota virhe koskee, jos sellainen on.

Virheen palauttavasta kutsusta ei veloiteta mitään. Pyyntö, joka epäonnistuu sen jälkeen, kun se on hyväksytty, säilyttää tilan failed, sisältää pyyntöobjektissa kentän error: { "type", "code", "message" }, ja siitä tehdään automaattisesti hyvitys.

Tyypit

Tyyppi HTTP-tila Toimi näin
invalid_request 400, 413 tai 422 Korjaa pyyntö. Saman kutsun uudelleenyritys epäonnistuu taas.
authentication_error 401 Lähetä kelvollinen avain otsakkeessa Authorization: Bearer <key>.
permission_error 403 Käytä avainta, jolla on tarvittava käyttöoikeusalue.
not_found 404 Tarkista mallin tunniste tai pyynnön tunniste.
insufficient_credits 402 Tee API-saldon lisäys (top_up_url virheessä).
budget_exceeded 402 Avaimen oma budjetti on käytetty. Lopullinen ratkaisu: pyydä avaimen omistajaa korottamaan sitä.
conflict 409 Resurssi ei ole tilassa, joka sallii tämän kutsun.
rate_limited 429 Odota Retry-After sekuntia ja yritä sitten uudelleen.
upstream_error 502 Mallin taustajärjestelmä epäonnistui. Uudelleenyritys samalla Idempotency-Key-avaimella on turvallista: ajo suoritetaan uudelleen eikä sinua veloitettu.
service_unavailable 503 API on keskeytetty tai riippuvuus ei ole käytettävissä. Yritä myöhemmin uudelleen.
internal_error 500 Virhe palvelussamme. Yritä uudelleen; jos ongelma jatkuu, ota yhteyttä tukeen ja ilmoita aika sekä request_id.

Koodit

invalid_request

Yleinen virheellinen pyyntö (400).

invalid_json

Runko ei ole kelvollista JSONia (400).

invalid_body

Runko on kelvollista JSONia, mutta ei objekti; mallin syötteen on oltava JSON-objekti (400).

body_too_large

Runko on suurempi kuin 16 MB (413). Lataa suuret tiedostot ja välitä niiden URL-osoite sen sijaan (katso Tiedostot).

invalid_parameter

Kyselyparametrin arvo on väärä, esimerkiksi limit on alueen 1–100 ulkopuolella, wait ei ole luku, status tai category on tuntematon tai storage on jokin muu kuin permanent / temporary (400). param ilmoittaa sen nimen.

invalid_category

GET /openapi.json?category= ilmoittaa luokan, jota ei ole (400). GET https://api.doitong.com/v1/categories luettelee luokat.

invalid_cursor

Luettelokutsun cursor ei kuulu tähän luetteloon (400). Aloita uudelleen ilman kohdistinta.

invalid_idempotency_key

Idempotency-Key-otsake on tyhjä tai yli 255 merkkiä pitkä (400).

invalid_arguments

MCP-työkalukutsusta puuttuu argumentti tai se on virheellinen (vain MCP). param ilmoittaa argumentin nimen.

invalid_input

Mallin syöte ei läpäise validointia (422): tuntematon parametri (viesti ehdottaa lähintä kelvollista nimeä), puuttuva pakollinen parametri, väärä tyyppi, sallittujen arvojen tai alueen ulkopuolinen arvo tai sekä kanoninen että natiivi nimi annettuna eri arvoilla. param on ensimmäinen virheellinen parametri ja details luettelee ne kaikki. Mitään ei veloiteta.

unsupported_file

Tiedoston tyyppiä ei hyväksytä (422), esimerkiksi tiedosto käyttää tukematonta päätettä tai content_type ei vastaa päätettä.

invalid_webhook_url

webhook_url ei ole julkinen https://-URL-osoite (422). Yksityiset, paikalliset ja tavalliset http://-osoitteet hylätään.

missing_api_key

Päätepiste tarvitsee API-avaimen, mutta sitä ei lähetetty (401).

invalid_api_key

Avain on tuntematon, peruttu tai vanhentunut (401).

insufficient_scope

Avaimella ei ole tämän kutsun tarvitsemaa käyttöoikeusaluetta (403), esimerkiksi models:run ajoa varten tai models:read pyyntöjen ja saldon lukemista varten. Katso Todennus.

account_disabled

Tili on suljettu tai jäädytetty (403). Sen avaimet eivät enää toimi.

not_found

Polkua ei ole (404).

model_not_found

Tällä tunnisteella ei ole julkista mallia (404). Luettele mallit komennolla GET https://api.doitong.com/v1/models.

request_not_found

Tililläsi ei ole tällä tunnisteella olevaa pyyntöä (404). Muiden tilien pyyntöjä ei koskaan näytetä.

insufficient_credits

Tilin API-saldo (API-krediittiä, 1 000 API-krediittiä = 1 $ — ei Doitong-sovellusten krediittejä) ei riitä tämän kutsun hintaan (402). Vastaus lähetetään ennen veloitusta. Virhe sisältää top_up_url-osoitteen; lisää rahaa osoitteessa https://doitong.com/developers/dashboard#balance ja yritä uudelleen.

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

Kutsu ylittäisi API-avaimen oman budjetin API-krediitteinä (402). Avaimen omistaja määrittää budjetin; uudelleenyritys ei auta, ennen kuin hän korottaa sitä.

conflict

Kutsu on ristiriidassa resurssin nykyisen tilan kanssa (409).

idempotency_mismatch

Idempotency-Key-avainta on jo käytetty eri rungon kanssa (409). Käytä uutta avainta uuteen toimintaan.

idempotency_in_progress

Samalla Idempotency-Key-avaimella luodaan juuri nyt pyyntöä (409). Yritä hetken kuluttua uudelleen saadaksesi sen.

request_active

Pyyntö on yhä tilassa queued tai running, joten sillä ei ole vielä poistettavia tiedostoja (409). Poista ne, kun pyyntö on valmis.

not_cancelable

Pyyntö on jo tilassa succeeded tai failed, eikä sitä voi peruuttaa (409).

rate_limited

Avain teki nykyisen aikajakson aikana liian monta pyyntöä (429). Katso X-RateLimit-*- ja Retry-After-otsakkeet.

too_many_inflight

Tilillä on jo 10 pyyntöä tilassa queued tai running (429). Käynnistä seuraava, kun yksi niistä valmistuu.

upstream_error

Mallin taustajärjestelmä hylkäsi pyynnön tai epäonnistui sen käsittelyssä (ajossa 502 tai pyyntöobjektissa failed tällä koodilla). API-krediiteistä tehdään hyvitys. Jos taustajärjestelmä hylkäsi syötteen itse, kutsu palauttaa sen sijaan viestin sisältävän 422 invalid_input -virheen.

upstream_lost

Mallin taustajärjestelmä ei enää tunne pyyntöä, joten tulosta ei koskaan saada. Pyyntö päättyy tilaan failed tällä koodilla (tyyppi upstream_error) ja siitä tehdään hyvitys. Suorita se uudelleen.

timeout

Pyyntö kesti pidempään kuin sen aikaraja (kuville 15 minuuttia, videolle 60 ja muille 30 minuuttia), joten se pysäytettiin. Se päättyy tällä koodilla tilaan failed, ja siitä tehdään hyvitys.

service_unavailable

API on tilapäisesti keskeytetty tai jokin riippuvuus, kuten tiedostojen lataus, ei ole käytettävissä (503). Yritä myöhemmin uudelleen.

internal_error

Palvelussamme tapahtui virhe (500). Yritä uudelleen; jos ongelma jatkuu, ota yhteyttä tukeen.

charge_failed

Tililtä ei voitu veloittaa sisäisen ongelman vuoksi (500). Pyyntö merkitään tilaan failed; mitään ei veloitettu. Yritä uudelleen.

pricing_unavailable

Mallin hintaa ei ole määritetty, joten sitä ei voi tällä hetkellä hinnoitella tai suorittaa (500).