RoomScope

อัปเดตล่าสุด

LIVE

เซสชัน LIVE ที่บันทึกไว้ ประสิทธิภาพรายครีเอเตอร์ และแหล่งวิดีโอ LIVE

ทุกการดำเนินการยืนยันตัวตนด้วย API key (Authorization: Bearer <key>) และข้อผิดพลาดใช้โครงสร้างร่วมที่อธิบายไว้ใน ข้อผิดพลาด. สร้างจากเอกสาร OpenAPI ของ API

ดึงประสิทธิภาพ LIVE ของครีเอเตอร์

GET/v1/live/creators/{uid}/performance

หนึ่งแถวต่อหนึ่งเซสชันที่บันทึกไว้: ระยะเวลา ผู้ชมสูงสุด ของขวัญ เพชร และจำนวนผู้ส่งของขวัญที่ไม่ซ้ำกัน

สโคปlive:readเครดิตอ่านข้อมูลแคช

พารามิเตอร์ใน path

พารามิเตอร์ใน path · GET /v1/live/creators/{uid}/performance
NameTypeDescription
uidRequired
stringแฮนเดิลของครีเอเตอร์โดยไม่มี @ (linh.live) หรือ user id ของ TikTok ที่เป็นตัวเลข

พารามิเตอร์ query

พารามิเตอร์ query · GET /v1/live/creators/{uid}/performance
NameTypeDescription
cursorOptional
stringcursor แบบทึบจาก nextCursor ของหน้าก่อนหน้า
limitOptional
integerจำนวนแถวต่อหน้า ช่วง 1–100.
Default: 50

คำขอ

curl "https://api.toktokdata.live/v1/live/creators/linh.live/performance" \  -H "Authorization: Bearer $ROOMSCOPE_API_KEY"

ผลลัพธ์

200 OK
{  "data": {    "items": [      {        "sessionId": "f18eaa3e-a762-543d-9ea5-178271dc43f9",        "sessionStartedAt": "2026-11-01T07:51:44.935Z",        "creatorUniqueId": "linh.live",        "roomKey": "room:linh.live",        "durationSeconds": 7200,        "peakViewerCount": 2000,        "eventCount": 1000,        "chatCount": 600,        "giftCount": 80,        "totalGiftDiamonds": 5000,        "distinctGifterCount": 2      },      {        "sessionId": "278f3a86-af07-5768-85d2-6dfff8efee7d",        "sessionStartedAt": "2026-10-31T07:51:44.935Z",        "creatorUniqueId": "linh.live",        "roomKey": "room:linh.live",        "durationSeconds": 7200,        "peakViewerCount": 1000,        "eventCount": 500,        "chatCount": 300,        "giftCount": 40,        "totalGiftDiamonds": 2500,        "distinctGifterCount": 2      }    ],    "nextCursor": null,    "historyWindowDays": 365,    "historyTruncated": false  },  "provenance": {    "observedAt": "2026-11-01T07:51:44.935Z",    "freshness": "historical",    "source": "platform_observed_live_stream",    "sourceKind": "derived",    "coverageStatus": "observed",    "methodologyVersion": "live-history-v1",    "window": null  }}

ข้อผิดพลาด

  • 400 พารามิเตอร์หรือ body ไม่ถูกต้อง code จะระบุปัญหา
  • 401 ไม่มี API key หรือไม่รู้จัก API key
  • 402 กระเป๋าเครดิตของเวิร์กสเปซมีไม่พอสำหรับการเรียกนี้ resetAt บอกเวลาที่เครดิตจะรีเซ็ต
  • 403 คีย์ไม่มีสโคปที่ต้องการ หรือแพ็กเกจไม่รวมฟีเจอร์นี้
  • 429 เกินอัตราคำขอ ให้ปฏิบัติตาม Retry-After

ดึงแหล่งวิดีโอ LIVE ของครีเอเตอร์

GET/v1/live/creators/{uid}/playback

URL วิดีโอที่มีลายเซ็นและมีวันหมดอายุของห้อง LIVE ปัจจุบันของครีเอเตอร์ เพลเยอร์ของคุณโหลดวิดีโอโดยตรงจาก CDN ของ TikTok (source: tiktok-cdn) โดย RoomScope ไม่เคยเป็นตัวกลางส่งต่อวิดีโอ แนะนำให้ใช้ hlsUrl เป็นหลัก ส่วน flvUrl เป็นแหล่งของห้องที่มีเฉพาะ FLV (เล่นด้วยเอนจิน MSE เช่น mpegts.js) เมื่อ status: live จะมีค่าอย่างน้อยหนึ่งรายการ และ expiresAt คือเวลาที่ URL นั้นหยุดทำงาน renditions มักว่างเปล่า avatarUrl, followerCount และ region เป็น null เมื่อไม่ทราบค่า ผลลัพธ์อื่น ๆ: status: offline (ไม่ได้ไลฟ์), status: no_playback (กำลังไลฟ์ แต่ TikTok ไม่เปิดเผยแหล่งที่เล่นได้), 202 status: resolving (เรียก URL เดิมอีกครั้งหลัง Retry-After), 503 collection_saturated หรือ live_playback_upstream_unavailable (ลองใหม่) และ 503 live_playback_not_configured ขณะที่ฟีเจอร์นี้ปิดอยู่ในระบบนี้ (ไม่ต้องลองใหม่) ต้องใช้สโคป live:stream ไม่ใช่ live:read

สโคปlive:streamเครดิตอ่านข้อมูลแคช

พารามิเตอร์ใน path

พารามิเตอร์ใน path · GET /v1/live/creators/{uid}/playback
NameTypeDescription
uidRequired
stringแฮนเดิลของครีเอเตอร์ (linh.live) ระบบจะไม่สนใจ @ ที่นำหน้า

คำขอ

curl "https://api.toktokdata.live/v1/live/creators/linh.live/playback" \  -H "Authorization: Bearer $ROOMSCOPE_API_KEY"

ผลลัพธ์

200 OK
{  "status": "live",  "roomId": "7665709659185105682",  "title": "Friday night karaoke",  "nickname": "Linh",  "hlsUrl": "https://pull-hls-l1-sg01.tiktokcdn.com/stage/stream-7665709727191485202_hd/index.m3u8?expire=1786024940&sign=ea92cabbf90993d50a0e3d50ee9ed526",  "flvUrl": "https://pull-flv-l1-sg01.tiktokcdn.com/stage/stream-7665709727191485202_hd.flv?expire=1786024940&sign=ea92cabbf90993d50a0e3d50ee9ed526",  "expiresAt": "2026-08-06T14:02:20.000Z",  "startedAt": "2026-07-23T09:46:40.000Z",  "renditions": [],  "avatarUrl": "https://p16-sign-sg.tiktokcdn.com/avatar.jpeg",  "verified": true,  "followerCount": 894314,  "region": "VN",  "source": "tiktok-cdn",  "cached": false}

ข้อผิดพลาด

  • 401 ไม่มี API key หรือไม่รู้จัก API key
  • 402 กระเป๋าเครดิตของเวิร์กสเปซมีไม่พอสำหรับการเรียกนี้ resetAt บอกเวลาที่เครดิตจะรีเซ็ต
  • 403 คีย์ไม่มีสโคปที่ต้องการ หรือแพ็กเกจไม่รวมฟีเจอร์นี้
  • 429 เกินอัตราคำขอ ให้ปฏิบัติตาม Retry-After
  • 503 ไม่พร้อมใช้งานชั่วคราว ลองใหม่หลัง Retry-After เมื่อ retryable เป็น true

เข้าคิวรีเฟรชสถานะไลฟ์

POST/v1/live/creators/{uid}/refresh

ขอให้ worker ตรวจสอบทันทีว่าครีเอเตอร์กำลังไลฟ์อยู่หรือไม่ คิดเครดิตตามอัตราการรีเฟรช

สโคปlive:readเครดิตรีเฟรชสถานะไลฟ์

พารามิเตอร์ใน path

พารามิเตอร์ใน path · POST /v1/live/creators/{uid}/refresh
NameTypeDescription
uidRequired
stringแฮนเดิลของครีเอเตอร์โดยไม่มี @ (linh.live) หรือ user id ของ TikTok ที่เป็นตัวเลข

คำขอ

curl -X POST "https://api.toktokdata.live/v1/live/creators/linh.live/refresh" \  -H "Authorization: Bearer $ROOMSCOPE_API_KEY"

ผลลัพธ์

202 รับคำขอแล้ว
{  "queued": true,  "jobId": "1761994604935-0"}

ข้อผิดพลาด

  • 400 พารามิเตอร์หรือ body ไม่ถูกต้อง code จะระบุปัญหา
  • 401 ไม่มี API key หรือไม่รู้จัก API key
  • 402 กระเป๋าเครดิตของเวิร์กสเปซมีไม่พอสำหรับการเรียกนี้ resetAt บอกเวลาที่เครดิตจะรีเซ็ต
  • 403 คีย์ไม่มีสโคปที่ต้องการ หรือแพ็กเกจไม่รวมฟีเจอร์นี้
  • 429 เกินอัตราคำขอ ให้ปฏิบัติตาม Retry-After

แสดงรายการเซสชัน LIVE ที่บันทึกไว้

GET/v1/live/sessions

เซสชันที่ RoomScope บันทึกไว้สำหรับครีเอเตอร์ของเวิร์กสเปซ เรียงจากใหม่ไปเก่า เซสชันที่ยังดำเนินอยู่จะมี endedAt: null

สโคปlive:readเครดิตอ่านข้อมูลแคช

พารามิเตอร์ query

พารามิเตอร์ query · GET /v1/live/sessions
NameTypeDescription
creatorUniqueIdOptional
stringเฉพาะเซสชันของครีเอเตอร์คนนี้ (แฮนเดิลโดยไม่มี @)
cursorOptional
stringcursor แบบทึบจาก nextCursor ของหน้าก่อนหน้า
limitOptional
integerจำนวนเซสชันต่อหน้า ช่วง 1–100.
Default: 50

คำขอ

curl "https://api.toktokdata.live/v1/live/sessions" \  -H "Authorization: Bearer $ROOMSCOPE_API_KEY"

ผลลัพธ์

200 OK
{  "data": {    "items": [      {        "id": "f18eaa3e-a762-543d-9ea5-178271dc43f9",        "roomKey": "room:linh.live",        "roomId": "7990000000000000001",        "creatorUniqueId": "linh.live",        "creatorAvatarUrl": null,        "startedAt": "2026-11-01T07:51:44.935Z",        "endedAt": "2026-11-01T09:51:44.935Z",        "peakViewerCount": 2000,        "eventCount": 1000,        "chatCount": 600,        "giftCount": 80,        "totalGiftDiamonds": 5000,        "durationSeconds": 7200      },      {        "id": "278f3a86-af07-5768-85d2-6dfff8efee7d",        "roomKey": "room:linh.live",        "roomId": "7990000000000000001",        "creatorUniqueId": "linh.live",        "creatorAvatarUrl": null,        "startedAt": "2026-10-31T07:51:44.935Z",        "endedAt": "2026-10-31T09:51:44.935Z",        "peakViewerCount": 1000,        "eventCount": 500,        "chatCount": 300,        "giftCount": 40,        "totalGiftDiamonds": 2500,        "durationSeconds": 7200      }    ],    "nextCursor": null,    "historyWindowDays": 365,    "historyTruncated": false  },  "provenance": {    "observedAt": "2026-11-01T09:51:44.935Z",    "freshness": "historical",    "source": "platform_observed_live_stream",    "sourceKind": "derived",    "coverageStatus": "observed",    "methodologyVersion": "live-history-v1",    "window": null  }}

ข้อผิดพลาด

  • 400 พารามิเตอร์หรือ body ไม่ถูกต้อง code จะระบุปัญหา
  • 401 ไม่มี API key หรือไม่รู้จัก API key
  • 402 กระเป๋าเครดิตของเวิร์กสเปซมีไม่พอสำหรับการเรียกนี้ resetAt บอกเวลาที่เครดิตจะรีเซ็ต
  • 403 คีย์ไม่มีสโคปที่ต้องการ หรือแพ็กเกจไม่รวมฟีเจอร์นี้
  • 429 เกินอัตราคำขอ ให้ปฏิบัติตาม Retry-After

ดึงเซสชัน LIVE

GET/v1/live/sessions/{session_id}

เซสชันหนึ่งรายการพร้อมสรุปของขวัญและผู้ส่งของขวัญ

สโคปlive:readเครดิตอ่านข้อมูลแคช

พารามิเตอร์ใน path

พารามิเตอร์ใน path · GET /v1/live/sessions/{session_id}
NameTypeDescription
session_idRequired
stringsession id จากรายการ

คำขอ

curl "https://api.toktokdata.live/v1/live/sessions/f18eaa3e-a762-543d-9ea5-178271dc43f9" \  -H "Authorization: Bearer $ROOMSCOPE_API_KEY"

ผลลัพธ์

200 OK
{  "data": {    "id": "278f3a86-af07-5768-85d2-6dfff8efee7d",    "roomKey": "room:linh.live",    "roomId": "7990000000000000001",    "creatorUniqueId": "linh.live",    "creatorAvatarUrl": null,    "startedAt": "2026-10-31T07:51:44.935Z",    "endedAt": "2026-10-31T09:51:44.935Z",    "peakViewerCount": 1000,    "eventCount": 500,    "chatCount": 300,    "giftCount": 40,    "totalGiftDiamonds": 2500,    "durationSeconds": 7200,    "giftRollups": [      {        "giftId": "5269",        "giftName": "TikTok",        "giftType": 1,        "giftCount": 10,        "diamondTotal": 2470,        "senderCount": 2      },      {        "giftId": "5655",        "giftName": "Rose",        "giftType": 1,        "giftCount": 30,        "diamondTotal": 30,        "senderCount": 2      }    ],    "gifterRollups": [      {        "gifterUserId": "991000000000000001",        "gifterUniqueId": "gifter.1",        "gifterNickname": "Gifter 1",        "giftCount": 20,        "diamondTotal": 1500      },      {        "gifterUserId": "991000000000000002",        "gifterUniqueId": "gifter.2",        "gifterNickname": "Gifter 2",        "giftCount": 20,        "diamondTotal": 1000      }    ]  },  "provenance": {    "observedAt": "2026-10-31T09:51:44.935Z",    "freshness": "stale",    "source": "platform_observed_live_stream",    "sourceKind": "derived",    "coverageStatus": "stale",    "methodologyVersion": "live-history-v1",    "window": null  }}

ข้อผิดพลาด

  • 400 พารามิเตอร์หรือ body ไม่ถูกต้อง code จะระบุปัญหา
  • 401 ไม่มี API key หรือไม่รู้จัก API key
  • 402 กระเป๋าเครดิตของเวิร์กสเปซมีไม่พอสำหรับการเรียกนี้ resetAt บอกเวลาที่เครดิตจะรีเซ็ต
  • 403 คีย์ไม่มีสโคปที่ต้องการ หรือแพ็กเกจไม่รวมฟีเจอร์นี้
  • 429 เกินอัตราคำขอ ให้ปฏิบัติตาม Retry-After
หน้านี้มีประโยชน์หรือไม่