Ukuqinisekisa
Isicelo ngasinye siphethe i-API key yakho ku-header. I-key eyodwa ku-akhawunti ngayinye isebenza kuwo wonke ama-endpoint nawo wonke ama-model, kunoma iyiphi yezinhlobo ezimbili ze-header.
I-header · Ama-OpenAI SDK
Authorization: Bearer YOUR_API_KEY I-header · Ama-Anthropic SDK
x-api-key: YOUR_API_KEY Ama-header amukelwayo
Zombili lezi ze-header ziyafundwa kuwo wonke ama-endpoint e-/v1, noma iyiphi ifomethi i-endpoint ekhuluma yona. Thumela eyodwa yazo.
| I-header | Incazelo |
|---|---|
Authorization: Bearer <key> | Iyahlolwa kuqala. Bhala i-Bearer ngohlamvu olukhulu B nesikhala esisodwa ngaphambi kwe-key. Ama-OpenAI SDK athumela le header. |
x-api-key: <key> | Iyafundwa uma isicelo singenayo i-header ye-Authorization: Bearer. Ama-Anthropic SDK athumela le header. |
Nge-OpenAI SDK, setha i-key ne-base URL; i-SDK ithumela i-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) import OpenAI from 'openai';
const client = new OpenAI({
apiKey: 'YOUR_API_KEY',
baseURL: 'https://api.shannon-ai.com/v1'
});
const response = await client.chat.completions.create({
model: 'shannon-3',
messages: [
{ role: 'user', content: 'Hello, Shannon!' }
]
});
console.log(response.choices[0].message.content); curl -X POST "https://api.shannon-ai.com/v1/chat/completions" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "shannon-3",
"messages": [
{"role": "user", "content": "Hello, Shannon!"}
]
}' Nge-Anthropic SDK, setha i-key ne-base URL ngaphandle kwe-/v1; i-SDK ithumela i-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")) import Anthropic from '@anthropic-ai/sdk';
const client = new Anthropic({
apiKey: 'YOUR_API_KEY',
baseURL: 'https://api.shannon-ai.com'
});
const message = await client.messages.create({
model: 'shannon-3',
max_tokens: 1024,
messages: [
{ role: 'user', content: 'Hello, Shannon!' }
]
});
console.log(message.content.filter((block) => block.type === 'text').map((block) => block.text).join('')); curl -X POST "https://api.shannon-ai.com/v1/messages" \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "shannon-3",
"max_tokens": 1024,
"messages": [
{"role": "user", "content": "Hello, Shannon!"}
]
}' Yimaphi ama-endpoint adinga i-key
| I-endpoint | I-key |
|---|---|
POST /v1/chat/completions | Kuyadingeka |
POST /v1/messages | Kuyadingeka |
POST /v1/responses | Kuyadingeka |
POST /v1/tokenize | Kuyadingeka |
POST /v1/messages/count_tokens | Kuyadingeka |
GET /v1/models | Akudingeki |
I-key yakho
- I-key ithi
sk-elandelwa yizinhlamvu ezingu-43 ezivela ku-A–Z,a–z,0–9,-no-_: izinhlamvu ezingu-46 sezizonke. - I-akhawunti ngayinye ne-key eyodwa kuphela. Idalwa ngokuqala uma uvula Ama-key nokusetshenziswa.
- I-key inikeza ukufinyelela okuphelele ku-API ye-akhawunti yakho: wonke ama-endpoint, wonke ama-model ne-balance yonke.
- I-key ayinaso usuku lokuphelelwa. Isebenza kuze kube yilapho uyishintsha noma uyihoxisa.
Shintsha futhi uhoxise
Ushintsha futhi uhoxisa i-key ekhasini le-Ama-key nokusetshenziswa. Ama-key nokusetshenziswa
| Isenzo | Kwenzekani |
|---|---|
| Shintsha | Kukhishwa i-key entsha futhi i-key endala iyeka ukusebenza. I-key entsha isebenza ngokushesha. |
| Hoxisa | I-key iyeka ukusebenza futhi akukho key entsha ekhishwayo. Shintsha ukuze uphinde uthole i-key esebenzayo. |
- Zombili zisebenza ngokushesha: isicelo esilandelayo nge-key endala siphendulwa nge-
401. Thatha imizuzwana engu-60 njengomkhawulo ophezulu ngaphambi kokuba i-key endala yenqatshwe yonke indawo. - Zonke amaklayenti e-akhawunti asebenzisa i-key efanayo, ngakho ukushintsha kuwafinyelela wonke. Faka i-key entsha kumaklayenti akho ngokushesha ngemva kokushintsha.
- I-balance, ukusetshenziswa ne-flood protection kungeye-akhawunti, hhayi ye-key. I-key entsha iqhubeka nge-balance efanayo nenani lezicelo elifanayo lomzuzu wamanje.
Amaphutha
Ukwehluleka ngakunye kokuqinisekisa kunesimo 401 nohlobo authentication_error. Umlayezo uhlukanisa izimo.
| Isimo | Uhlobo | Umlayezo | Nini |
|---|---|---|---|
401 | authentication_error | Missing authentication | Isicelo asinayo i-header ye-Authorization: Bearer futhi asinayo i-header ye-x-api-key eqala nge-sk-. Lokhu futhi kuyimpendulo ye-bearer ngohlamvu oluncane nenani le-Authorization ngaphandle kwe-Bearer. |
401 | authentication_error | Invalid API key | I-key akuyona i-key yamanje ye-akhawunti: ibhalwe kabi, ihoxisiwe, noma ishintshelwe enye ngokushintshwa. |
{
"error": {
"type": "authentication_error",
"message": "Invalid API key",
"code": "invalid_api_key",
"param": null
}
} {
"type": "error",
"error": {
"type": "authentication_error",
"message": "Invalid API key"
}
} - Kuyo yonke indlela ngaphandle kwe-
/v1/messagesinto ye-erroriphinde iqukathecode: "invalid_api_key", nakuba i-key ilahlekile, ne-param: null. - I-key iyahlolwa ngaphambi kokuba umzimba ufundwe. Isicelo esingenayo i-key evumelekile sithola i-
401noma umzimba waso ungavumelekile noma mkhulu kakhulu. - Inani le-
Authorization: Bearerelingaqali nge-sk-alithathwa njenge-API key. Lithola i-401enomlayezo wokuthi i-token ayivumelekile noma iphelelwe yisikhathi.
Amabhrawuza ne-CORS
- I-API iphendula izicelo zebhrawuza ze-cross-origin kuphela ohlwini olumisiwe lwama-origin. I-JavaScript ekhasini le-origin enye ayikwazi ukufunda izimpendulo ze-
/v1. - Biza i-API ku-server yakho bese ukhulumisa ikhasi lakho ne-server yakho. Lokho futhi kugcina i-key ingekho kumthombo wekhasi.
- Ikhodi ye-server namathuluzi omugqa womyalo awathinteki: lo mthetho usetshenziswa amabhrawuza kuphela.
- Ukungena ku-shannon-ai.com akuqinisekisi izicelo ze-
/v1. Ama-cookie awafundwa lapho; i-key iyona kuphela imvume. - Ku-origin evunyelwe, ibhrawuza ingathumela i-
content-type, i-authorization, i-x-api-key, i-anthropic-version, i-anthropic-beta, i-openai-betane-x-request-id, futhi ingafunda i-header yempendulo ethix-request-id.
Ukugcina i-key iphephile
- Gcina i-key ku-server. Ungayifaki emakhasini ewebhu, ku-app yocingo noma kuma-repository omphakathi: noma ubani onayo angasebenzisa yonke i-balance yakho.
- Layisha i-key ku-environment variable noma esitolo sezimfihlo esikhundleni sokuyibhala ekhodini.
- Uma i-key ingase ibe ivuzile, yishintshe ku-Ama-key nokusetshenziswa. I-key endala iyeka ukusebenza ngokushesha.
- Ngemva kokuvuza, funda uhlu lwezicelo ku-Ama-key nokusetshenziswa. Lubonisa zonke izicelo i-key ezenzile kuzo izinsuku ezingu-30 ezedlule.