RoomScope

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

Pulse สาธารณะ

ตัวเลข LIVE ทั้งระบบและอีเวนต์สาธารณะล่าสุด ซึ่งเป็นฟีดเบื้องหลังหน้าแรกของ RoomScope ไม่ต้องใช้ API key และไม่ใช้เครดิต

คำขอ

GET /web-api/public/pulse บน origin ของเว็บไซต์ ไม่มีพารามิเตอร์และไม่ต้องยืนยันตัวตน นี่คือ web endpoint สาธารณะ ไม่ได้เป็นส่วนหนึ่งของ API /v1 จึงไม่รับ header Authorization และไม่แสดงในปริมาณการใช้ของคุณ

curl "https://toktokdata.live/web-api/public/pulse"

ผลลัพธ์

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

200 OK
{  "liveRooms": 55,  "trackedRooms": 460,  "boardsObserved24h": 244,  "regions": ["VN"],  "alertsDelivered24h": 820,  "observedAt": "2026-11-04T04:04:36.242Z",  "events": [    { "type": "live_start", "region": "VN", "at": "2026-11-04T04:02:02.941Z" },    { "type": "board_observed", "region": "VN", "board": "league_a1",      "at": "2026-11-04T04:00:59.535Z" },    { "type": "rank_move", "handle": "creator.handle", "region": "VN", "board": "daily",      "rank": 4, "previousRank": 12, "at": "2026-11-04T03:52:14.621Z" }  ],  "provenance": {    "observedAt": "2026-11-04T04:04:36.242Z",    "freshness": "near_realtime",    "source": "platform_counters",    "sourceKind": "derived",    "coverageStatus": "observed",    "methodologyVersion": "pulse-v1",    "window": { "from": "2026-11-03T04:04:36.242Z", "to": "2026-11-04T04:04:36.242Z", "label": "24h" }  }}
ฟิลด์ชนิดความหมาย
liveRoomsintegerห้องที่ RoomScope กำลังบันทึกและกำลังไลฟ์อยู่ในขณะนี้
trackedRoomsintegerจำนวนห้องที่ไม่ซ้ำกันซึ่งมีอย่างน้อยหนึ่งเวิร์กสเปซติดตามอยู่
boardsObserved24hintegerบอร์ดทางการที่บันทึกได้ใน 24 ชั่วโมงที่ผ่านมา นับหนึ่งครั้งต่อภูมิภาค บอร์ด และรอบ
regionsstring[]รหัสภูมิภาคของบอร์ดเหล่านั้น เรียงตามลำดับ
alertsDelivered24hintegerการแจ้งเตือนที่ส่งออกไปใน 24 ชั่วโมงที่ผ่านมา
observedAtstringเวลาที่คำนวณสแนปช็อตนี้ (ISO 8601, UTC)
eventsobject[]อีเวนต์สาธารณะล่าสุดไม่เกิน 10 รายการ เรียงจากใหม่ไปเก่า (ดูด้านล่าง)
provenanceobjectแหล่งที่มา วิธีการ และช่วงเวลา 24 ชั่วโมงของตัวเลข เช่นเดียวกับทุกตัวชี้วัดของ RoomScope

อีเวนต์

อีเวนต์แต่ละรายการมี type และเวลา at ปัจจุบันมีเพียงสามประเภท หากพบประเภทอื่นในภายหลังให้ข้ามไป

ประเภทฟิลด์เกิดเมื่อ
board_observedregion, board, atสแนปช็อตล่าสุดที่ครบถ้วนของบอร์ดสาธารณะ (บอร์ดช้อปปิ้งไม่เป็นสาธารณะ)
rank_movehandle, region, board, rank, previousRank, atครีเอเตอร์ใน 10 อันดับแรกที่เปิดเผยของบอร์ดสาธารณะไต่อันดับขึ้นจากรอบก่อนหน้า สูงสุด 3 รายการต่อบอร์ด เรียงจากที่ไต่ขึ้นมากที่สุด
live_startregion, at, handle?ครีเอเตอร์ที่เคยติด 10 อันดับแรกที่เปิดเผยของบอร์ดสาธารณะในช่วง 7 วันที่ผ่านมาเริ่มไลฟ์
แฮนเดิลเป็นไปตามกฎของโชว์รูม
แฮนเดิลจะแสดงเฉพาะครีเอเตอร์ที่โชว์รูมสาธารณะแสดงอยู่แล้ว คือ 10 อันดับแรกที่เปิดเผยของบอร์ดสาธารณะ และจะไม่แสดงครีเอเตอร์ที่ถูกระงับข้อมูล (suppressed) เด็ดขาด live_start จะไม่มี handle ขณะที่ครีเอเตอร์คนนั้นยังไลฟ์อยู่ เช่นเดียวกับที่โชว์รูมซ่อนชื่อครีเอเตอร์ที่กำลังไลฟ์

ความสดใหม่และการแคช

สแนปช็อตถูกคำนวณครั้งเดียวและใช้ร่วมกันกับผู้เรียกทุกรายเป็นเวลา 60 วินาที ผลลัพธ์มี header Cache-Control: public, max-age=30 การ polling ถี่กว่านาทีละครั้งจะได้ตัวเลขเดิม ใช้ observedAt เพื่อแสดงว่าตัวเลขเก่าแค่ไหน

ขีดจำกัดและข้อผิดพลาด

การเรียกถูกจำกัดตาม IP ของไคลเอนต์: 300 ครั้งต่อชั่วโมงสำหรับ endpoint นี้ ภายใต้ขีดจำกัด burst สาธารณะ 120 ครั้งต่อนาที และเพดานรวมของทั้งแพลตฟอร์ม เมื่อเกินขีดจำกัด ผลลัพธ์จะเป็น 429 พร้อม Retry-After เป็นวินาที

429 Too Many Requests
HTTP/2 429Retry-After: 1260 { "code": "public_allowance_exhausted", "message": "You reached the public limit of 300 per hour…",  "requestId": "…", "retryable": true }

เมื่อส่วนสาธารณะถูกปิดหรือเข้าถึงแคชไม่ได้ ผลลัพธ์จะเป็น 503 พร้อม code public_surface_unavailable และ retryable: true ทั้งสองกรณีใช้โครงสร้างข้อผิดพลาดแบบเดียวกับส่วนอื่นของ API

หน้านี้มีประโยชน์หรือไม่