કન્ટેન્ટ પર જાઓ
પ્રમાણિકરણ

પ્રમાણિકરણ

દરેક રિક્વેસ્ટ હેડરમાં તમારી API કી લઈ જાય છે. એકાઉન્ટ દીઠ એક કી દરેક એન્ડપોઇન્ટ અને દરેક મોડેલ પર કામ કરે છે, બે હેડર સ્વરૂપમાંથી કોઈપણમાં.

હેડર · OpenAI SDKs
Authorization: Bearer YOUR_API_KEY
હેડર · Anthropic SDKs
x-api-key: YOUR_API_KEY

સ્વીકારાતા હેડર્સ

એન્ડપોઇન્ટ ગમે તે ફોર્મેટ બોલતું હોય, દરેક /v1 એન્ડપોઇન્ટ પર બંને હેડર વંચાય છે. તેમાંથી એક મોકલો.

હેડર વર્ણન
Authorization: Bearer <key> પહેલા તપાસાય છે. Bearer ને મોટા B થી અને કી પહેલાં એક સ્પેસ સાથે લખો. OpenAI SDK આ હેડર મોકલે છે.
x-api-key: <key> રિક્વેસ્ટમાં Authorization: Bearer હેડર ન હોય ત્યારે વંચાય છે. Anthropic SDK આ હેડર મોકલે છે.

OpenAI SDK સાથે, કી અને base URL સેટ કરો; SDK 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)

Anthropic SDK સાથે, કી અને /v1 વિનાનું base URL સેટ કરો; SDK 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"))

કયા એન્ડપોઇન્ટ્સને કી જોઈએ

એન્ડપોઇન્ટ કી
POST /v1/chat/completions જરૂરી
POST /v1/messages જરૂરી
POST /v1/responses જરૂરી
POST /v1/tokenize જરૂરી
POST /v1/messages/count_tokens જરૂરી
GET /v1/models જરૂરી નથી

તમારી કી

  • કી એટલે sk- પછી A–Z, a–z, 0–9, - અને _ ના 43 અક્ષરો: કુલ 46 અક્ષરો.
  • દરેક એકાઉન્ટ પાસે બરાબર એક કી હોય છે. તમે Keys & usage પહેલી વાર ખોલો ત્યારે તે બને છે.
  • કી તમારા એકાઉન્ટ માટે API ની પૂરી ઍક્સેસ આપે છે: દરેક એન્ડપોઇન્ટ, દરેક મોડેલ અને આખું બેલેન્સ.
  • કી ની કોઈ સમાપ્તિ તારીખ નથી. તમે રોટેટ અથવા રદ કરો ત્યાં સુધી તે કામ કરે છે.

રોટેટ અને રદ કરો

તમે Keys & usage પેજ પર કી રોટેટ અને રદ કરો છો. Keys & usage

ક્રિયા શું થાય છે
રોટેટ કરો નવી કી અપાય છે અને જૂની કી કામ કરવાનું બંધ કરે છે. નવી કી તરત કામ કરે છે.
રદ કરો કી કામ કરવાનું બંધ કરે છે અને કોઈ નવી કી અપાતી નથી. ફરી ચાલતી કી મેળવવા રોટેટ કરો.
  • બંને તરત અસરમાં આવે છે: જૂની કી સાથેની આગલી રિક્વેસ્ટનો જવાબ 401 થી મળે છે. જૂની કી બધે નકારાય તે પહેલાંની ઉપલી મર્યાદા 60 સેકન્ડ ગણો.
  • એકાઉન્ટના બધા ક્લાયન્ટ એ જ કી વાપરે છે, તેથી રોટેશન બધાને અસર કરે છે. રોટેટ કર્યા પછી તરત નવી કી તમારા ક્લાયન્ટમાં મૂકો.
  • બેલેન્સ, વપરાશ અને flood protection એકાઉન્ટના છે, કીના નહીં. નવી કી એ જ બેલેન્સ અને ચાલુ મિનિટની એ જ રિક્વેસ્ટ ગણતરી સાથે આગળ ચાલે છે.

એરર્સ

દરેક પ્રમાણીકરણ નિષ્ફળતાનું સ્ટેટસ 401 અને પ્રકાર authentication_error હોય છે. મેસેજ કિસ્સાઓને અલગ પાડે છે.

સ્ટેટસ પ્રકાર મેસેજ ક્યારે
401 authentication_error Missing authentication રિક્વેસ્ટમાં ન તો Authorization: Bearer હેડર છે, ન તો sk- થી શરૂ થતું x-api-key હેડર. નાના અક્ષરોમાં લખેલા bearer અને Bearer વિનાની Authorization કિંમત માટે પણ આ જ જવાબ મળે છે.
401 authentication_error Invalid API key કી એકાઉન્ટની હાલની કી નથી: તે ખોટી ટાઇપ થઈ છે, રદ થઈ છે, અથવા રોટેશનથી બદલાઈ ગઈ છે.
{
  "error": {
    "type": "authentication_error",
    "message": "Invalid API key",
    "code": "invalid_api_key",
    "param": null
  }
}
  • /v1/messages સિવાયના દરેક પાથ પર error ઓબ્જેક્ટમાં code: "invalid_api_key" પણ હોય છે, કી ખૂટતી હોય ત્યારે પણ, અને param: null.
  • બોડી વંચાય તે પહેલાં કી તપાસાય છે. માન્ય કી વિનાની રિક્વેસ્ટને 401 મળે છે, ભલે તેનો બોડી અમાન્ય અથવા બહુ મોટો હોય.
  • sk- થી ન શરૂ થતી Authorization: Bearer કિંમત API કી તરીકે ગણાતી નથી. તેને 401 મળે છે, અને મેસેજ કહે છે કે ટોકન અમાન્ય અથવા સમાપ્ત થયેલ છે.

બ્રાઉઝર્સ અને CORS

  • API ક્રોસ-origin બ્રાઉઝર રિક્વેસ્ટનો જવાબ માત્ર origin ની નિશ્ચિત યાદી માટે આપે છે. બીજા origin ના પેજ પરનું JavaScript /v1 જવાબો વાંચી શકતું નથી.
  • API ને તમારા સર્વરથી કોલ કરો અને તમારા પેજને તમારા સર્વર સાથે વાત કરવા દો. તેથી કી પેજના સોર્સમાં પણ રહેતી નથી.
  • સર્વર-સાઇડ કોડ અને કમાન્ડ-લાઇન ટૂલ્સ પર અસર થતી નથી: આ નિયમ માત્ર બ્રાઉઝર્સ લાગુ કરે છે.
  • shannon-ai.com પર સાઇન-ઇન /v1 રિક્વેસ્ટને પ્રમાણિત કરતું નથી. ત્યાં કૂકીઝ વંચાતી નથી; કી જ એકમાત્ર ક્રેડેન્શિયલ છે.
  • મંજૂર origin માટે, બ્રાઉઝર content-type, authorization, x-api-key, anthropic-version, anthropic-beta, openai-beta અને x-request-id મોકલી શકે છે, અને જવાબ હેડર x-request-id વાંચી શકે છે.

કીને સુરક્ષિત રાખવી

  • કીને સર્વર પર રાખો. તેને વેબ પેજ, મોબાઇલ એપ કે પબ્લિક રિપોઝિટરીમાં ન મૂકો: જેની પાસે તે હોય તે તમારું આખું બેલેન્સ ખર્ચી શકે છે.
  • કીને કોડમાં લખવાને બદલે environment variable અથવા secret store માંથી લોડ કરો.
  • કી લીક થઈ હોય તેવી શક્યતા હોય, તો Keys & usage પર તેને રોટેટ કરો. જૂની કી તરત કામ કરવાનું બંધ કરે છે.
  • લીક પછી, Keys & usage પર રિક્વેસ્ટ યાદી વાંચો. તે છેલ્લા 30 દિવસમાં કી દ્વારા થયેલી દરેક રિક્વેસ્ટ બતાવે છે.