AI Gridเอกสาร
สมัครใช้งาน

คีย์ API

หนึ่งคีย์ หนึ่งโปรเจกต์ — กฎการออกคีย์ secret ที่แสดงครั้งเดียว การหมุนเวียน วงเงิน และวันหมดอายุ

อัปเดต 9 ก.ย. 2026

คีย์ API ใช้ตรวจสอบตัวตนของการเรียก serving API ของคุณ (/v1/models, /v1/chat/completions และ endpoint สำหรับเรียกแซนด์บ็อกซ์) คีย์มีหน้าตาเป็น aig_ ตามด้วย token 32 อักขระ และผูกกับโปรเจกต์เดียวเท่านั้น — การผูกถูกเลือกตอนสร้างและไม่เปลี่ยนอีกเลย

bash
curl https://api.aigridapp.com/v1/chat/completions \
  -H "Authorization: Bearer $AIGRID_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"openai/gpt-oss-20b","messages":[{"role":"user","content":"hello"}]}'

Runtime actors#

Runtime actor คือตัวตนที่อยู่เบื้องหลังการเรียก แยกจากสิ่งที่จ่ายเงินให้การเรียกนั้น คีย์ API ของมนุษย์คนหนึ่งเป็น actor ชนิดหนึ่ง ผลิตภัณฑ์แซนด์บ็อกซ์เองก็รันภายใต้ actor ของตัวมันเอง จึงใช้จ่ายจากงบประมาณของโปรเจกต์ได้โดยไม่ต้องมีคีย์ส่วนตัว แท็บ Runtime actors ของโปรเจกต์แสดง actor แต่ละตัวพร้อม class, environment, คีย์ และการเรียกล่าสุด การเปิดระเบียนจะแสดงที่มาของ actor และการผูกกระเป๋าเงินที่ตัดสินว่าใครเป็นผู้จ่าย

Runtime actor ของโปรเจกต์ รวมถึง sandbox actor ที่งานรันในสตูดิโอใช้จ่ายอยู่ภายใต้ — ตัวตนตัดสินว่าใครเป็นผู้กระทำ ส่วนการผูกตัดสินว่าใครเป็นผู้จ่าย

หนึ่งคีย์ หนึ่งโปรเจกต์#

โปรเจกต์ที่ผูกไว้คือบริบทของการทำงานและการคิดเงินของทุกการเรียกที่คีย์นั้นทำ: การใช้งาน การตรวจนโยบาย และการคิดเงินจากกระเป๋าเงิน ทั้งหมดลงที่โปรเจกต์นั้น คีย์ไม่มีการเลือกโปรเจกต์รายการเรียก — header selector X-AIGrid-Project ทำได้เพียงระบุซ้ำให้ตรงกับโปรเจกต์ที่ผูกไว้ เท่านั้น selector ที่ระบุโปรเจกต์อื่นถูกปฏิเสธด้วย 403 project_mismatch ก่อนที่จะมีการกันเงินใด ๆ

คีย์ไม่มีเงินเป็นของตัวเอง ทุกการเรียกคิดเงินจากกระเป๋าเงินของโปรเจกต์ที่มันผูกไว้

ผู้ที่ออกคีย์ได้#

การสร้างคีย์ต้องมีครบพร้อมกันทั้งหมด: การเป็นสมาชิกองค์กรที่ active, grant ที่ active บนทีมเจ้าของของโปรเจกต์ และ grant ที่ active ในโปรเจกต์ซึ่งพก project.invoke (Project Owner หรือ Project Consumer) — ยืนยันโดย authorization adapter หากขาดข้อใดจะตอบ 403 key_issuer_denied กฎฉบับเต็มและความแตกต่างจากการใช้งานทั่วไปอยู่ใน บทบาทและสิทธิ์

กฎนี้ถูกประเมินซ้ำทุกครั้งที่ใช้คีย์: ถอน grant ของผู้สร้าง หรือระงับตัวบุคคล องค์กร หรือโปรเจกต์ แล้วการเรียกครั้งถัดไปจะถูกปฏิเสธ

นโยบายการเข้าถึง: all-eligible หรือ listed#

คีย์แต่ละใบพกนโยบายการเข้าถึงหนึ่งในสองแบบ เลือกตอนสร้าง:

  • all-eligible (ค่าเริ่มต้น) เข้าถึงทุก resource ที่ใช้ได้อยู่ในโปรเจกต์ที่ผูกไว้ — รวมถึงผลิตภัณฑ์ที่กำหนดเพิ่มในภายหลัง
  • listed เข้าถึงเฉพาะ resource ที่ระบุไว้ใน allowedModels เท่านั้น ทุกรายการต้องเป็น resource ที่ใช้ได้ของโปรเจกต์ ณ เวลาที่ออกคีย์ (มิฉะนั้นเป็น 422 resource_not_eligible) และความใช้ได้ถูกตรวจซ้ำทุกการเรียก — การระบุ resource ที่รายการของคุณไม่รวมไว้จะตอบ 403 key_scope รายการว่างไม่เคยหมายถึง “ทั้งหมด”

วงเงินและวันหมดอายุ#

การควบคุมที่เป็นตัวเลือก กำหนดตอนสร้าง และบังคับใช้ตอน admission ทั้งคู่:

การตั้งค่า ค่า
วงเงิน จำนวนเงินหน่วย micro-USD รีเซ็ตแบบ daily, weekly หรือ monthly — หรือ lifetime
วันหมดอายุ 1–365 วัน; 90 วัน เมื่อไม่ระบุ

วงเงินและวันหมดอายุเป็นส่วนหนึ่งของคีย์ และคงอยู่เมื่อหมุนเวียนคีย์ การควบคุมการใช้จ่ายระดับองค์กรที่กว้างกว่ามีผลซ้อนทับอีกชั้น

การหมุนเวียนคีย์#

การหมุนเวียนคีย์จะออก secret ทดแทน ที่มีโปรเจกต์ นโยบายการเข้าถึง รายการ วงเงิน และช่วงวันหมดอายุเดิม — และเพิกถอนคีย์เก่าทันที ทะเบียนบันทึกสายสัมพันธ์ไว้ (rotatedFrom / rotatedTo) และทั้งการหมุนเวียนและการเพิกถอนถูกบันทึกตรวจสอบ

คีย์เก่าที่ไม่ได้ผูกโปรเจกต์#

คีย์ที่สร้างก่อนการผูกโปรเจกต์จะกลายเป็นข้อบังคับนั้นไม่มีโปรเจกต์ มันถูกปฏิเสธทุกที่ด้วย 403 key_unbound — ไม่มีการผูกให้อัตโนมัติ ไม่มีการเพิกถอนอัตโนมัติ และหมุนเวียนไม่ได้ คอนโซลทำเครื่องหมายไว้ว่า “Needs reissue”: ให้สร้างคีย์ที่ผูกกับโปรเจกต์แล้วเพิกถอนคีย์เก่า

สิ่งที่เกิดขึ้นเมื่อคีย์ถูกปฏิเสธ#

การเรียกที่ถูกปฏิเสธไม่เคยถึงผู้ให้บริการและไม่มีการคิดเงิน — ไม่มีระเบียนการใช้งาน ไม่มี reservation ไม่มีการ dispatch ดู ข้อผิดพลาด สำหรับรหัสต่าง ๆ (unauthenticated, project_mismatch, key_scope, key_unbound, key_issuer_denied) และสิ่งที่แก้แต่ละรหัสได้

ถัดไป#