Preskočiť na obsah
Overenie

Overenie

Každý request nesie váš API kľúč v hlavičke. Jeden kľúč na účet funguje na každom endpointe a každom modeli, v jednej z dvoch foriem hlavičky.

Hlavička · SDK od OpenAI
Authorization: Bearer YOUR_API_KEY
Hlavička · SDK od Anthropic
x-api-key: YOUR_API_KEY

Prijímané hlavičky

Obe hlavičky sa čítajú na každom endpointe /v1, nech endpoint hovorí akýmkoľvek formátom. Pošlite jednu z nich.

Hlavička Popis
Authorization: Bearer <key> Kontroluje sa ako prvá. Napíšte Bearer s veľkým B a jednou medzerou pred kľúčom. Túto hlavičku posielajú SDK od OpenAI.
x-api-key: <key> Číta sa, keď request nemá hlavičku Authorization: Bearer. Túto hlavičku posielajú SDK od Anthropic.

S SDK od OpenAI nastavte kľúč a základnú URL; SDK pošle Authorization: Bearer.

from openai import OpenAI

client = OpenAI(
    api_key="YOUR_API_KEY",
    base_url="https://api.shannon-ai.com/v1"
)

response = client.chat.completions.create(
    model="shannon-3",
    messages=[
        {"role": "user", "content": "Hello, Shannon!"}
    ]
)

print(response.choices[0].message.content)

S SDK od Anthropic nastavte kľúč a základnú URL bez /v1; SDK pošle x-api-key.

import anthropic

client = anthropic.Anthropic(
    api_key="YOUR_API_KEY",
    base_url="https://api.shannon-ai.com"
)

message = client.messages.create(
    model="shannon-3",
    max_tokens=1024,
    messages=[
        {"role": "user", "content": "Hello, Shannon!"}
    ]
)

print("".join(block.text for block in message.content if block.type == "text"))

Ktoré endpointy potrebujú kľúč

Endpoint Kľúč
POST /v1/chat/completions Povinný
POST /v1/messages Povinný
POST /v1/responses Povinný
POST /v1/tokenize Povinný
POST /v1/messages/count_tokens Povinný
GET /v1/models Nie je potrebný

Váš kľúč

  • Kľúč je sk- nasledované 43 znakmi z A–Z, a–z, 0–9, - a _: spolu 46 znakov.
  • Každý účet má presne jeden kľúč. Vytvorí sa pri prvom otvorení stránky Kľúče a využitie.
  • Kľúč dáva plný prístup k API pre váš účet: každý endpoint, každý model a celý zostatok.
  • Kľúč nemá dátum vypršania. Funguje, kým ho neobnovíte alebo nezrušíte jeho platnosť.

Obnovenie a zrušenie platnosti

Kľúč obnovíte a zrušíte jeho platnosť na stránke Kľúče a využitie. Kľúče a využitie

Akcia Čo sa stane
Obnoviť Vydá sa nový kľúč a starý prestane fungovať. Nový kľúč funguje okamžite.
Zrušiť platnosť Kľúč prestane fungovať a nevydá sa nový. Obnovením získate opäť funkčný kľúč.
  • Obe akcie platia okamžite: na ďalší request so starým kľúčom sa odpovie 401. Za hornú hranicu, kým sa starý kľúč odmietne všade, považujte 60 sekúnd.
  • Všetci klienti účtu používajú rovnaký kľúč, takže obnovenie zasiahne všetkých. Nový kľúč vložte do svojich klientov hneď po obnovení.
  • Zostatok, využitie a ochrana pred zahltením patria účtu, nie kľúču. Nový kľúč pokračuje s rovnakým zostatkom a rovnakým počtom requestov za aktuálnu minútu.

Chyby

Každé zlyhanie overenia má stav 401 a typ authentication_error. Prípady rozlíši správa.

Stav Typ Správa Kedy
401 authentication_error Missing authentication Request nemá ani hlavičku Authorization: Bearer, ani hlavičku x-api-key, ktorá začína sk-. Takto sa odpovedá aj na bearer malými písmenami a na hodnotu Authorization bez Bearer.
401 authentication_error Invalid API key Kľúč nie je aktuálnym kľúčom nijakého účtu: je preklepnutý, jeho platnosť bola zrušená alebo ho nahradilo obnovenie.
{
  "error": {
    "type": "authentication_error",
    "message": "Invalid API key",
    "code": "invalid_api_key",
    "param": null
  }
}
  • Na každej ceste okrem /v1/messages obsahuje objekt error aj code: "invalid_api_key", aj pri chýbajúcom kľúči, a param: null.
  • Kľúč sa kontroluje pred čítaním tela. Request bez platného kľúča dostane 401, aj keď je jeho telo neplatné alebo príliš veľké.
  • Hodnota Authorization: Bearer, ktorá nezačína sk-, sa nepovažuje za API kľúč. Dostane 401 so správou, že token je neplatný alebo vypršal.

Prehliadače a CORS

  • API odpovedá na cross-origin requesty prehliadača iba pre pevný zoznam originov. JavaScript na stránke iného originu nemôže čítať odpovede /v1.
  • Volajte API zo svojho servera a nechajte stránku komunikovať s vaším serverom. Kľúč tak zostane aj mimo zdrojového kódu stránky.
  • Kód na strane servera a nástroje príkazového riadka sa to netýka: toto pravidlo uplatňujú iba prehliadače.
  • Prihlásenie na shannon-ai.com neoveruje requesty /v1. Cookies sa tam nečítajú; kľúč je jediný prístupový údaj.
  • Pre povolený origin môže prehliadač posielať content-type, authorization, x-api-key, anthropic-version, anthropic-beta, openai-beta a x-request-id a môže čítať hlavičku odpovede x-request-id.

Ako kľúč udržať v bezpečí

  • Kľúč držte na serveri. Nedávajte ho do webových stránok, mobilných aplikácií ani verejných repozitárov: kto ho má, môže minúť celý váš zostatok.
  • Kľúč načítajte z premennej prostredia alebo zo zásobníka tajomstiev namiesto jeho zápisu do kódu.
  • Ak mohol kľúč uniknúť, obnovte ho v Kľúče a využitie. Starý kľúč okamžite prestane fungovať.
  • Po úniku si prečítajte zoznam requestov v Kľúče a využitie. Ukazuje každý request, ktorý kľúč vykonal za posledných 30 dní.