Fò lọ sí àkóónú
Ijeri

Ijeri

Gbogbo ìbéèrè ló ń gbé API key rẹ nínú header kan. Key kan fún account kọ̀ọ̀kan ń ṣiṣẹ́ lórí gbogbo endpoint àti gbogbo model, ní èyíkéyìí nínú ìrísí header méjì.

Header · Àwọn OpenAI SDK
Authorization: Bearer YOUR_API_KEY
Header · Àwọn Anthropic SDK
x-api-key: YOUR_API_KEY

Àwọn header tí a ń gbà

A máa ń ka header méjèèjì lórí gbogbo endpoint /v1, format yòówù tí endpoint náà ń lò. Fi ọ̀kan nínú wọn ránṣẹ́.

Header Àpèjúwe
Authorization: Bearer <key> Òun ni a kọ́kọ́ máa ń ṣàyẹ̀wò. Kọ Bearer pẹ̀lú B ńlá àti àlàfo kan ṣáájú key. Àwọn OpenAI SDK máa ń fi header yìí ránṣẹ́.
x-api-key: <key> A máa ń kà á nígbà tí ìbéèrè kò bá ní header Authorization: Bearer. Àwọn Anthropic SDK máa ń fi header yìí ránṣẹ́.

Pẹ̀lú OpenAI SDK, ṣètò key àti base URL; SDK náà máa ń fi Authorization: Bearer ránṣẹ́.

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)

Pẹ̀lú Anthropic SDK, ṣètò key àti base URL láìsí /v1; SDK náà máa ń fi x-api-key ránṣẹ́.

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"))

Àwọn endpoint tó nílò key

Endpoint Key
POST /v1/chat/completions Ó pọn dandan
POST /v1/messages Ó pọn dandan
POST /v1/responses Ó pọn dandan
POST /v1/tokenize Ó pọn dandan
POST /v1/messages/count_tokens Ó pọn dandan
GET /v1/models Kò nílò

Key rẹ

  • Key jẹ́ sk- tí àmì 43 tẹ̀lé láti inú A–Z, a–z, 0–9, - àti _: àmì 46 lápapọ̀.
  • Gbogbo account ló ní key kan ṣoṣo géérégé. A máa ń ṣẹ̀dá rẹ̀ nígbà àkọ́kọ́ tí o bá ṣí Àwọn key àti ìlò.
  • Key náà ń fúnni ní àyè kíkún sí API fún account rẹ: gbogbo endpoint, gbogbo model àti gbogbo balance.
  • Key kò ní ọjọ́ ìparí. Ó ń ṣiṣẹ́ títí o fi máa pààrọ̀ rẹ̀ tàbí wọ́gi lé e.

Pípààrọ̀ àti wíwọ́gi lé

O lè pààrọ̀ key náà kí o sì wọ́gi lé e lórí ojú-ìwé Àwọn key àti ìlò. Àwọn key àti ìlò

Ìgbésẹ̀ Ohun tó ń ṣẹlẹ̀
Pààrọ̀ A máa fúnni ní key tuntun, key àtijọ́ kò sì ní ṣiṣẹ́ mọ́. Key tuntun náà máa ń ṣiṣẹ́ lẹ́sẹ̀kẹsẹ̀.
Wọ́gi lé Key náà kò ní ṣiṣẹ́ mọ́, a kò sì ní fúnni ní key tuntun. Pààrọ̀ rẹ̀ láti tún ní key tó ń ṣiṣẹ́.
  • Méjèèjì ń bẹ̀rẹ̀ iṣẹ́ lẹ́sẹ̀kẹsẹ̀: ìbéèrè tó kàn pẹ̀lú key àtijọ́ yóò gba ìdáhùn 401. Ka ìṣẹ́jú-àáyá 60 sí ààlà òkè kí a tó kọ key àtijọ́ níbi gbogbo.
  • Gbogbo client account náà ló ń lo key kan náà, nítorí náà ìpààrọ̀ máa ń kan gbogbo wọn. Fi key tuntun sínú àwọn client rẹ ní kété lẹ́yìn tí o bá pààrọ̀ rẹ̀.
  • Balance, ìlò àti ààbò flood jẹ́ ti account, kì í ṣe ti key. Key tuntun máa ń tẹ̀síwájú pẹ̀lú balance kan náà àti iye ìbéèrè kan náà fún ìṣẹ́jú tó ń lọ lọ́wọ́.

Àwọn àṣìṣe

Gbogbo ìkùnà ìjẹ́rìísí ní status 401 àti irú authentication_error. Ìfiránṣẹ́ náà ló ń fi ìyàtọ̀ hàn láàárín àwọn ọ̀ràn náà.

Ipò Irú Ìfiránṣẹ́ Ìgbà
401 authentication_error Missing authentication Ìbéèrè náà kò ní header Authorization: Bearer tàbí header x-api-key tó bẹ̀rẹ̀ pẹ̀lú sk-. Èyí náà ni èsì sí bearer ní lẹ́tà kékeré àti sí iye Authorization tí kò ní Bearer.
401 authentication_error Invalid API key Key náà kì í ṣe key tó wà lọ́wọ́ fún account kankan: a ṣì í tẹ̀, a ti wọ́gi lé e, tàbí ìpààrọ̀ ti fi òmíràn rọ́pò rẹ̀.
{
  "error": {
    "type": "authentication_error",
    "message": "Invalid API key",
    "code": "invalid_api_key",
    "param": null
  }
}
  • Lórí gbogbo path yàtọ̀ sí /v1/messages, object error tún ní code: "invalid_api_key", fún key tí kò sí pẹ̀lú, àti param: null.
  • A máa ń ṣàyẹ̀wò key kí a tó ka body. Ìbéèrè tí kò ní key tó tọ́ máa ń gba 401 kódà nígbà tí body rẹ̀ kò tọ́ tàbí tó tóbi jù.
  • Iye Authorization: Bearer tí kò bẹ̀rẹ̀ pẹ̀lú sk- ni a kì í kà sí API key. Ó máa ń gba 401 pẹ̀lú ìfiránṣẹ́ pé token náà kò tọ́ tàbí ó ti parí.

Àwọn browser àti CORS

  • API náà máa ń dáhùn àwọn ìbéèrè cross-origin láti browser fún àkójọ origin kan tí a ti fi lélẹ̀ nìkan. JavaScript lórí ojú-ìwé origin mìíràn kò lè ka àwọn èsì /v1.
  • Pe API náà láti server rẹ, kí o sì jẹ́ kí ojú-ìwé rẹ bá server rẹ sọ̀rọ̀. Èyí tún ń mú kí key náà má sí nínú source ojú-ìwé.
  • Èyí kò kan code server-side àti àwọn irinṣẹ́ command-line: àwọn browser nìkan ló ń lo òfin yìí.
  • Wíwọlé lórí shannon-ai.com kì í ṣe ìjẹ́rìísí fún àwọn ìbéèrè /v1. A kì í ka cookies níbẹ̀; key nìkan ni ẹ̀rí ìdánimọ̀.
  • Fún origin tí a gbà láàyè, browser lè fi content-type, authorization, x-api-key, anthropic-version, anthropic-beta, openai-beta àti x-request-id ránṣẹ́, ó sì lè ka header èsì x-request-id.

Dídáàbò bo key

  • Tọ́jú key náà sórí server. Má ṣe fi í sínú àwọn ojú-ìwé web, àwọn app alágbèéká tàbí àwọn repository gbogbogbò: ẹnikẹ́ni tó bá ní in lọ́wọ́ lè ná gbogbo balance rẹ.
  • Gbé key náà wá láti inú environment variable tàbí secret store dípò kí o kọ ọ́ sínú code.
  • Bí ó bá ṣeé ṣe kí key náà ti jò síta, pààrọ̀ rẹ̀ lórí Àwọn key àti ìlò. Key àtijọ́ kò ní ṣiṣẹ́ mọ́ lẹ́sẹ̀kẹsẹ̀.
  • Lẹ́yìn tí key bá jò síta, ka àkójọ ìbéèrè lórí Àwọn key àti ìlò. Ó ń fi gbogbo ìbéèrè tí key náà ṣe láàárín ọjọ́ 30 tó kọjá hàn.