ຂ້າມໄປຫາເນື້ອຫາ
ການຢືນຢັນ

ການຢືນຢັນ

ທຸກຄຳຮ້ອງຂໍຕ້ອງມີ API key ຂອງທ່ານໃນ header. key ດຽວຕໍ່ບັນຊີໃຊ້ໄດ້ກັບທຸກ endpoint ແລະ ທຸກ model, ໃນ header ສອງຮູບແບບໃດກໍໄດ້.

Header · SDK ຂອງ OpenAI
Authorization: Bearer YOUR_API_KEY
Header · SDK ຂອງ Anthropic
x-api-key: YOUR_API_KEY

Header ທີ່ຮັບ

ທັງສອງ header ຖືກອ່ານໃນທຸກ endpoint /v1, ບໍ່ວ່າ endpoint ນັ້ນຈະໃຊ້ຮູບແບບໃດ. ສົ່ງອັນໃດອັນໜຶ່ງ.

Header ຄຳອະທິບາຍ
Authorization: Bearer <key> ກວດກ່ອນ. ຂຽນ Bearer ດ້ວຍ B ຕົວໃຫຍ່ ແລະ ເວັ້ນວັກໜຶ່ງບ່ອນກ່ອນ key. SDK ຂອງ OpenAI ສົ່ງ header ນີ້.
x-api-key: <key> ອ່ານເມື່ອຄຳຮ້ອງຂໍບໍ່ມີ header Authorization: Bearer. SDK ຂອງ Anthropic ສົ່ງ header ນີ້.

ກັບ SDK ຂອງ OpenAI, ຕັ້ງ key ແລະ 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)

ກັບ SDK ຂອງ Anthropic, ຕັ້ງ key ແລະ base URL ໂດຍບໍ່ມີ /v1; 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"))

Endpoint ໃດຕ້ອງໃຊ້ key

Endpoint Key
POST /v1/chat/completions ຈຳເປັນ
POST /v1/messages ຈຳເປັນ
POST /v1/responses ຈຳເປັນ
POST /v1/tokenize ຈຳເປັນ
POST /v1/messages/count_tokens ຈຳເປັນ
GET /v1/models ບໍ່ຈຳເປັນ

key ຂອງທ່ານ

  • key ແມ່ນ sk- ຕາມດ້ວຍ 43 ຕົວອັກສອນຈາກ A–Z, a–z, 0–9, - ແລະ _: ລວມ 46 ຕົວອັກສອນ.
  • ທຸກບັນຊີມີ key ພຽງອັນດຽວ. ມັນຖືກສ້າງຕອນທີ່ທ່ານເປີດ Keys & usage ເປັນຄັ້ງທຳອິດ.
  • key ໃຫ້ສິດເຂົ້າເຖິງ API ຢ່າງເຕັມສຳລັບບັນຊີຂອງທ່ານ: ທຸກ endpoint, ທຸກ model ແລະ ຍອດເງິນທັງໝົດ.
  • key ບໍ່ມີວັນໝົດອາຍຸ. ມັນໃຊ້ໄດ້ຈົນກວ່າທ່ານຈະປ່ຽນ ຫຼື ຖອນມັນ.

ປ່ຽນ ແລະ ຖອນ

ທ່ານປ່ຽນ ແລະ ຖອນ key ໄດ້ໃນໜ້າ Keys & usage. Keys & usage

ການກະທຳ ສິ່ງທີ່ເກີດຂຶ້ນ
ປ່ຽນ ອອກ key ໃໝ່ ແລະ key ເກົ່າຢຸດໃຊ້ງານ. key ໃໝ່ໃຊ້ງານໄດ້ທັນທີ.
ຖອນ key ຢຸດໃຊ້ງານ ແລະ ບໍ່ມີການອອກ key ໃໝ່. ປ່ຽນ key ເພື່ອໃຫ້ໄດ້ key ທີ່ໃຊ້ງານໄດ້ອີກຄັ້ງ.
  • ທັງສອງມີຜົນທັນທີ: ຄຳຮ້ອງຂໍຖັດໄປທີ່ໃຊ້ key ເກົ່າຈະຖືກຕອບດ້ວຍ 401. ໃຫ້ຖື 60 ວິນາທີເປັນຂີດສູງສຸດກ່ອນທີ່ key ເກົ່າຈະຖືກປະຕິເສດທຸກບ່ອນ.
  • ທຸກ client ຂອງບັນຊີໃຊ້ key ດຽວກັນ, ດັ່ງນັ້ນການປ່ຽນ key ມີຜົນກັບທຸກຄົນ. ໃສ່ key ໃໝ່ໃນ client ຂອງທ່ານທັນທີຫຼັງຈາກປ່ຽນ.
  • ຍອດເງິນ, ການນຳໃຊ້ ແລະ flood protection ເປັນຂອງບັນຊີ, ບໍ່ແມ່ນຂອງ key. key ໃໝ່ຈະສືບຕໍ່ດ້ວຍຍອດເງິນເດີມ ແລະ ຈຳນວນຄຳຮ້ອງຂໍເດີມຂອງນາທີປັດຈຸບັນ.

ຂໍ້ຜິດພາດ

ທຸກຄວາມລົ້ມເຫຼວຂອງການຢືນຢັນມີສະຖານະ 401 ແລະ ປະເພດ authentication_error. ຂໍ້ຄວາມຈະບອກວ່າເປັນກໍລະນີໃດ.

ສະຖານະ ປະເພດ ຂໍ້ຄວາມ ເມື່ອໃດ
401 authentication_error Missing authentication ຄຳຮ້ອງຂໍບໍ່ມີທັງ header Authorization: Bearer ແລະ header x-api-key ທີ່ຂຶ້ນຕົ້ນດ້ວຍ sk-. ນີ້ກໍເປັນຄຳຕອບສຳລັບ bearer ຕົວພິມນ້ອຍ ແລະ ຄ່າ Authorization ທີ່ບໍ່ມີ Bearer.
401 authentication_error Invalid API key key ບໍ່ແມ່ນ key ປັດຈຸບັນຂອງບັນຊີໃດ: ພິມຜິດ, ຖືກຖອນແລ້ວ, ຫຼື ຖືກແທນທີ່ດ້ວຍການປ່ຽນ key.
{
  "error": {
    "type": "authentication_error",
    "message": "Invalid API key",
    "code": "invalid_api_key",
    "param": null
  }
}
  • ໃນທຸກ path ຍົກເວັ້ນ /v1/messages object error ຍັງມີ code: "invalid_api_key" ເຖິງແມ່ນບໍ່ມີ key ກໍຕາມ, ແລະ param: null.
  • key ຖືກກວດກ່ອນອ່ານ body. ຄຳຮ້ອງຂໍທີ່ບໍ່ມີ key ທີ່ຖືກຕ້ອງຈະໄດ້ 401 ເຖິງ body ຈະບໍ່ຖືກຕ້ອງ ຫຼື ໃຫຍ່ເກີນໄປກໍຕາມ.
  • ຄ່າ Authorization: Bearer ທີ່ບໍ່ຂຶ້ນຕົ້ນດ້ວຍ sk- ຈະບໍ່ຖືກຖືວ່າເປັນ API key. ຈະໄດ້ 401 ພ້ອມຂໍ້ຄວາມວ່າ token ບໍ່ຖືກຕ້ອງ ຫຼື ໝົດອາຍຸ.

Browser ແລະ CORS

  • API ຕອບຄຳຮ້ອງຂໍ browser ຂ້າມ origin ສະເພາະກັບລາຍການ origin ທີ່ກຳນົດໄວ້. JavaScript ຢູ່ໜ້າຂອງ origin ອື່ນບໍ່ສາມາດອ່ານຄຳຕອບ /v1 ໄດ້.
  • ເອີ້ນ API ຈາກ server ຂອງທ່ານ ແລະ ໃຫ້ໜ້າເວັບຂອງທ່ານຕິດຕໍ່ກັບ server ຂອງທ່ານ. ວິທີນີ້ຍັງຊ່ວຍບໍ່ໃຫ້ key ປາກົດໃນ source ຂອງໜ້າເວັບ.
  • ໂຄ້ດຝັ່ງ server ແລະ ເຄື່ອງມື command-line ບໍ່ໄດ້ຮັບຜົນກະທົບ: ກົດນີ້ໃຊ້ໂດຍ browser ເທົ່ານັ້ນ.
  • ການເຂົ້າສູ່ລະບົບຢູ່ shannon-ai.com ບໍ່ໄດ້ຢືນຢັນຄຳຮ້ອງຂໍ /v1. ບໍ່ອ່ານ cookie ທີ່ນັ້ນ; key ແມ່ນຂໍ້ມູນຢືນຢັນດຽວ.
  • ສຳລັບ origin ທີ່ອະນຸຍາດ, browser ສົ່ງ content-type, authorization, x-api-key, anthropic-version, anthropic-beta, openai-beta ແລະ x-request-id ໄດ້, ແລະ ອ່ານ header ຂອງຄຳຕອບ x-request-id ໄດ້.

ການຮັກສາ key ໃຫ້ປອດໄພ

  • ເກັບ key ໄວ້ໃນ server. ຢ່າໃສ່ມັນໃນໜ້າເວັບ, ແອັບມືຖື ຫຼື repository ສາທາລະນະ: ຜູ້ທີ່ຖືມັນສາມາດໃຊ້ຍອດເງິນທັງໝົດຂອງທ່ານໄດ້.
  • ໂຫຼດ key ຈາກ environment variable ຫຼື secret store ແທນການຂຽນມັນໃສ່ໃນໂຄ້ດ.
  • ຖ້າ key ອາດຮົ່ວ, ໃຫ້ປ່ຽນມັນໃນ Keys & usage. key ເກົ່າຈະຢຸດໃຊ້ງານທັນທີ.
  • ຫຼັງຈາກ key ຮົ່ວ, ໃຫ້ອ່ານລາຍການຄຳຮ້ອງຂໍໃນ Keys & usage. ມັນສະແດງທຸກຄຳຮ້ອງຂໍທີ່ key ໄດ້ສົ່ງໃນ 30 ວັນທີ່ຜ່ານມາ.