ข้ามไปยังเนื้อหา

API Keys

API Keys ช่วยให้เซิร์ฟเวอร์ของคุณยืนยันตัวตนกับ DailyPlay API ได้ สร้างคีย์จากแดชบอร์ดและใช้ในหัวข้อ x-api-key เมื่อเรียก API

  1. ลงชื่อเข้าใช้แดชบอร์ด DailyPlay
  2. ไปที่ Connect → API Keys ในแถบด้านข้าง
  3. คลิก สร้าง API Key
  4. กรอกชื่อ (เช่น “Production CRM”) และคำอธิบาย (ไม่บังคับ)
  5. กำหนดวันหมดอายุ (ไม่บังคับ)
  6. คลิก สร้าง

รูปแบบคีย์คือ dpk_<อักขระ hex 40 ตัว> เช่น:

dpk_a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6e7f8a9b0

API Keys สามารถกำหนดขอบเขตเพื่อจำกัดทรัพยากรที่เข้าถึงได้:

ขอบเขตคำอธิบาย
เกมและสตรีมทั้งหมดค่าเริ่มต้น — สร้างเซสชันได้สำหรับทรัพยากรทั้งหมดในองค์กร
เกมเฉพาะจำกัดเฉพาะรายการ Game ID
สตรีมเฉพาะจำกัดเฉพาะรายการ Stream ID

การพยายามสร้างเซสชันสำหรับทรัพยากรนอกขอบเขตจะได้รับข้อผิดพลาด 403 Forbidden

แต่ละ API Key มีขีดจำกัดอัตราที่กำหนดได้:

ขีดจำกัดค่าเริ่มต้นคำอธิบาย
ต่อนาที60จำนวนคำขอสูงสุดต่อนาที
ต่อวัน10,000จำนวนคำขอสูงสุดต่อวัน

เมื่อเกินขีดจำกัด API จะตอบกลับ 429 Too Many Requests

เพิกถอน API Key ได้ทุกเมื่อจากแดชบอร์ด:

  1. ไปที่ Connect → API Keys
  2. ค้นหาคีย์ในรายการ (ระบุด้วยคำนำหน้า dpk_**** และชื่อ)
  3. คลิกปุ่มเพิกถอน

ผลของการเพิกถอน:

  • บล็อกการเรียก API ทั้งหมดที่ใช้คีย์นั้นทันที
  • เซสชันโทเค็นที่สร้างไปแล้วไม่ถูกยกเลิก
  • เก็บบันทึกการตรวจสอบ — บันทึกคีย์ยังคงอยู่แต่ทำเครื่องหมายเป็นไม่ใช้งาน
  • สามารถเปิดใช้งานใหม่ได้หากจำเป็น
  • คีย์ถูกแฮชด้วย SHA-256 ก่อนจัดเก็บ — ไม่สามารถกู้คืนคีย์ดิบจากฐานข้อมูล
  • เก็บเฉพาะ 8 อักขระแรก (dpk_xxxx) เป็นข้อความธรรมดาสำหรับการระบุ
  • คีย์สามารถตั้งให้หมดอายุอัตโนมัติในวันที่กำหนด
  • การใช้งานคีย์ทั้งหมดถูกบันทึกเพื่อการตรวจสอบ

คุณยังสามารถจัดการ API Keys โดยใช้คำขอที่ยืนยันตัวตน (Clerk Bearer Token):

เมธอดEndpointคำอธิบาย
GET/api/org-api-keys?org_id=<id>แสดงรายการ API Keys ทั้งหมด
POST/api/org-api-keysสร้าง API Key ใหม่
PATCH/api/org-api-keysอัปเดตหรือเพิกถอน API Key
DELETE/api/org-api-keys?id=<id>&org_id=<id>ลบ API Key ถาวร
Terminal window
curl -X POST https://app.dailyplay.ai/api/org-api-keys \
-H "Authorization: Bearer <clerk_token>" \
-H "Content-Type: application/json" \
-d '{
"org_id": 1,
"name": "Production CRM",
"description": "CRM ใช้สำหรับออกลิงก์เกม",
"allowed_game_ids": [42, 43],
"rate_limit_per_minute": 60,
"rate_limit_per_day": 10000,
"expires_at": "2027-01-01T00:00:00Z"
}'