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

เซสชันโทเค็น

เซสชันโทเค็นเป็นโทเค็นแบบใช้แล้วทิ้งที่อนุญาตให้เล่นเกมหรือสตรีมได้ 1 ครั้ง แต่ละโทเค็นรับประกันว่าจะถูกใช้เพียงครั้งเดียว ป้องกันการใช้งานที่ไม่ถูกต้อง

เซสชันโทเค็นผ่านสถานะต่อไปนี้:

active → consumed (ผู้ใช้เล่นเกม)
→ expired (โทเค็นหมดอายุ)
→ revoked (ถูกยกเลิกด้วยตนเอง)

เรียก endpoint สร้างเซสชันจากเซิร์ฟเวอร์ด้วย API Key:

Terminal window
curl -X POST https://app.dailyplay.ai/api/org-api-keys?action=create-session \
-H "Content-Type: application/json" \
-H "x-api-key: dpk_YOUR_API_KEY" \
-d '{
"game_id": 42,
"external_ref": "user-12345",
"metadata": { "campaign": "summer-promo" },
"expires_in_minutes": 60
}'
พารามิเตอร์ประเภทจำเป็นคำอธิบาย
game_idnumbergame_id หรือ stream_id อย่างใดอย่างหนึ่งเกมที่อนุญาตให้เข้าถึง
stream_idnumbergame_id หรือ stream_id อย่างใดอย่างหนึ่งสตรีมที่อนุญาตให้เข้าถึง
external_refstringไม่ID อ้างอิงสำหรับติดตาม (เช่น User ID, Order ID)
metadataobjectไม่ข้อมูล JSON ตามต้องการสำหรับติดตาม
expires_in_minutesnumberไม่ระยะเวลาหมดอายุเป็นนาที (ค่าเริ่มต้น: 1440 = 24 ชั่วโมง)
{
"success": true,
"data": {
"token": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"stream_id": null,
"game_id": 42,
"expires_at": "2026-02-17T12:00:00.000Z",
"external_ref": "user-12345"
}
}

สร้าง URL พร้อมเซสชันโทเค็นแล้วรีไดเรกต์ผู้ใช้:

https://app.dailyplay.ai/embed/42?session_token=a1b2c3d4-e5f6-7890-abcd-ef1234567890

สำหรับสตรีม:

https://app.dailyplay.ai/stream/<org-slug>/<stream_id>?session_token=a1b2c3d4-e5f6-7890-abcd-ef1234567890

ตรวจสอบว่าโทเค็นยังใช้งานได้และไม่หมดอายุก่อนอนุญาตให้เล่น:

Terminal window
curl https://app.dailyplay.ai/api/org-api-keys?action=validate-session&token=a1b2c3d4-e5f6-7890-abcd-ef1234567890
{
"success": true,
"data": {
"valid": true,
"status": "active",
"stream_id": null,
"game_id": 42,
"expires_at": "2026-02-17T12:00:00.000Z",
"external_ref": "user-12345",
"metadata": { "campaign": "summer-promo" }
}
}

เมื่อผู้ใช้เริ่มเล่น โทเค็นจะถูกใช้และไม่สามารถนำกลับมาใช้ซ้ำ:

Terminal window
curl -X POST https://app.dailyplay.ai/api/org-api-keys?action=consume-session \
-H "Content-Type: application/json" \
-d '{
"token": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"player_uuid": "player-uuid-here"
}'
{
"success": true,
"data": {
"session_id": 1,
"org_id": 5,
"stream_id": null,
"game_id": 42,
"external_ref": "user-12345",
"metadata": { "campaign": "summer-promo" }
}
}

หากโทเค็นถูกใช้แล้วหรือหมดอายุ API จะตอบกลับ 410 Gone:

{
"success": false,
"error": "Session is invalid, already consumed, or expired"
}
คุณสมบัติคำอธิบาย
tokenUUID v4 — ส่งไปกับ URL เกม
stream_id / game_idทรัพยากรเป้าหมาย (ต้องมีอย่างน้อย 1 อย่าง)