Ugrás a tartalomhoz
← API-referencia

Hitelesítés

A GET /v1/health és a POST /v1/validate/* kivételével minden hívás API-kulcsot visz.

Küldd: Authorization: Bearer <key>. A kulcsokat a vezérlőpulton hozod létre. A teljes kulcs egyszer látszik: csak a SHA-256 hash-ét tároljuk, ezért elveszett kulcs nem állítható vissza — hozz létre újat, a régit vond vissza.

Authorization: Bearer co_live_…

Háromféle kulcs

  • Élő kulcs — éles használatra. Engine API-csomaggal jár, és annak havi kvótájából fogy.
  • Tesztkulcs — ingyenes minden bejelentkezett fióknak: havi 1000 hívás, sosem számlázzuk, az élő kulcsoktól külön számolva. A GET /v1/usage env: "test" értéket ad rájuk.
  • A nyilvános demókulcs — a „Run this example” gombok mögött: fiók nélkül, csak kis szinkron 2D, 1D és fa munkákra, sebességkorláttal. Minden válasz hordozza az X-CutOptim-Demo: true fejlécet.

Fiókonként egy kvóta

Egy fióknak legfeljebb 10 aktív élő kulcsa lehet, és mind ugyanabból a havi kvótából fogy — több kulcs nem ad több keretet. Környezetek és integrációk szétválasztására valók. Ha elfogyott a kvóta, minden kulcs 402-t ad, amíg a hónap le nem jár vagy nagyobb csomagra nem váltasz.

Kulcs cseréje és visszavonása

Hozd létre az új kulcsot, állítsd át rá az integrációt, majd a vezérlőpulton vond vissza a régit. A visszavont kulcsot azonnal 403 key_revoked utasítja el. A visszavonás nem számlázási művelet, és nem adja vissza a már elhasznált hívásokat.

GET /v1/usage

{
  "plan": "studio",
  "used": 137,
  "limit": 10000,
  "remaining": 9863,
  "periodEnd": "2026-08-01",
  "keyPrefix": "co_live_ab12",
  "contractVersion": "1"
}

Csak olvasás: nem fogyaszt hívást és nem küld rate-limit fejlécet. ⚠️ A used és a limit a FIÓKRA vonatkozik, nem arra a kulcsra, amivel hívtál: a fiók minden aktív kulcsa ugyanabból a keretből fogyaszt, tehát több kulcs nem jelent több kvótát. A used az aktuális UTC naptári hónapot számolja az összes kulcson, a remaining a limit mínusz used és sosem megy nulla alá, a periodEnd a nullázás napja sima YYYY-MM-DD dátumként, a keyPrefix pedig annak a kulcsnak a nem titkos előtagja, amivel hívtál.

Magát a kulcsot egyetlen végpont sem adja vissza — csak a hash-e tárolódik, tehát az elveszett kulcsot cserélni kell, nem visszaszerezni.

MezőTípusLeírás
planstringThe tier slug frozen onto the key when it was minted. Re-pricing the product later does not rewrite a live key.
usedintegerCalls counted in the current UTC calendar month, across EVERY key on the account — revoked keys included, so revoking a key cannot un-spend what it spent (053) — not just the one you called with. The quota is account-wide.
limitintegerThe monthly cap for the ACCOUNT: the largest monthly quota frozen onto any of its ACTIVE keys (049). All active keys draw on this one allowance; creating more keys does not create more quota. Keys are for separating environments and integrations (and for revoking one without disturbing the rest).
remainingintegerlimit − used, never negative.
periodEndstring (date)First day of next month as YYYY-MM-DD — a DATE, not a timestamp. The counter resets at 00:00 UTC on that day.
keyPrefixstringNon-secret display prefix of the calling key, so you can tell which key you queried. The key itself is never returned by any endpoint.
contractVersionstringShape version. Currently "1".
env"test"Present ("test") only for a TEST key: created in the dashboard, never billed, with its own monthly allowance separate from the live keys. Absent for a live key — a live key gets exactly the body it always got.
keyClass"tenant"Present ("tenant") only for a key CutOptim issues to its own first-party service. Absent for every key you create in the dashboard.