Ugrás a tartalomhoz
API-útmutató

Hitelesítés

Megtekintés Markdownként Frissítve

Minden olyan híváshoz, amely modellt futtat vagy beolvassa a kéréseidet, API-kulcs szükséges. A katalógus (GET /models, GET /categories), a POST /quote és az OpenAPI-dokumentum nyilvános.

API-kulcsok

Kulcsokat itt hozhatsz létre és vonhatsz vissza: https://doitong.com/developers/dashboard#keys. Egy kulcs a doitong_ előtagból és 64 hexadecimális karakterből áll, és csak egyszer jelenik meg, létrehozásakor. Küldd el az Authorization fejlécben:

terminál
curl https://api.doitong.ru/v1/account -H "Authorization: Bearer $DOITONG_API_KEY"

Az X-API-Key: <key> is működik.

A kulcs nélküli kérés 401 választ kap missing_api_key kóddal; az ismeretlen, visszavont vagy lejárt kulcs szintén 401 választ kap.

Hatókörök

Minden kulcshoz hatókörök tartoznak. A modell API ezeket ellenőrzi:

Művelet Szükséges hatókör
Modell futtatása, kérés megszakítása, a kérés fájljainak törlése, a tárhelybeállítás módosítása models:run (a régebbi images:create vagy videos:create hatókörrel rendelkező kulcsok is működnek)
Feltöltési URL létrehozása models:run vagy media:upload
Kérések és fiók olvasása models:read (a modelleket futtatni képes kulcsok olvasni is tudnak)

Az új kulcsok alapértelmezés szerint models:read és models:run hatókört kapnak. A megfelelő hatókör nélküli hívás 403 választ kap insufficient_scope kóddal.

Kreditkeretek

Egy kulcshoz saját API-kreditkeret tartozhat (1000 API-jóváírás = 1 $), amelyet a fiók tulajdonosa állít be: teljes keret, napi keret (az elmúlt 24 órára), vagy mindkettő. Mielőtt egy futtatást kiszámláznánk, a költséget összevetjük azzal, amit a kulcs már elköltött ezen az API-n keresztül (a visszatérítésekkel korrigálva). A keretet túllépő futtatást elutasítjuk 402 budget_exceeded hibával, és nem számítunk fel díjat.

A keret nélküli kulcs legfeljebb az API-egyenleg erejéig költhet. Ettől függetlenül, ha az API-egyenleg nem fedezi a futtatást, 402 insufficient_credits választ kapsz egy top_up_url értékkel.

A GET https://api.doitong.ru/v1/account megjeleníti az API-egyenleget és a kulcshoz fennmaradó keretet (mindkettőt API-kreditekben):

200 OK · fiók
{
  "object": "account",
  "credits": 125000,
  "balance": { "credits": 125000, "usd": "125.00" },
  "top_up_url": "https://doitong.ru/developers/dashboard#balance",
  "key": {
    "name": "Production server",
    "prefix": "doitong_3fa9c1e...",
    "scopes": ["models:read", "models:run"],
    "budget_remaining": 50000,
    "rate_limit": 3600,
    "rate_limit_remaining": 3571
  },
  "webhook_signing_secret": "whsec_..."
}

A budget_remaining értéke null, ha a kulcsnak nincs saját kerete.

Sebességkorlátok

Minden kulcs óránként 3600 kérést indíthat, kivéve, ha a korlátot ettől eltérően állították be. Minden hitelesített válasz tartalmazza az aktuális állapotot:

Fejléc Jelentés
X-RateLimit-Limit Az aktuális időablakban engedélyezett kérések
X-RateLimit-Remaining Az aktuális időablakban fennmaradó kérések
X-RateLimit-Reset Az időablak alaphelyzetbe állításának Unix-ideje

A korlát túllépésekor 429 választ kapsz egy Retry-After fejléccel (másodperc). A ?wait= paraméterrel végzett hosszú lekérdezés hívásonként egy kérésnek számít, ezért a várakozás olcsóbb, mint a gyakori lekérdezés.

Fiókonként emellett legfeljebb 10 folyamatban lévő kérés lehet (queued vagy running). Egy további indítása 429 too_many_inflight választ ad; indítsd újra, miután egy befejeződött.