Hitelesítés
A GET /v1/health és a POST /v1/validate/* kivételével minden hívás API-kulcsot visz.
A fejléc
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ípus | Leírás |
|---|---|---|
| plan | string | The tier slug frozen onto the key when it was minted. Re-pricing the product later does not rewrite a live key. |
| used | integer | Calls 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. |
| limit | integer | The 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). |
| remaining | integer | limit − used, never negative. |
| periodEnd | string (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. |
| keyPrefix | string | Non-secret display prefix of the calling key, so you can tell which key you queried. The key itself is never returned by any endpoint. |
| contractVersion | string | Shape 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. |