อัปเดตล่าสุด
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 หนึ่งรายการ ทุกตัวเลขนับรวมทั้งแพลตฟอร์ม ไม่มีส่วนใดเป็นของเวิร์กสเปซ ผู้ใช้ หรือกฎการแจ้งเตือนรายใดรายหนึ่ง
{ "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" } }}| ฟิลด์ | ชนิด | ความหมาย |
|---|---|---|
liveRooms | integer | ห้องที่ RoomScope กำลังบันทึกและกำลังไลฟ์อยู่ในขณะนี้ |
trackedRooms | integer | จำนวนห้องที่ไม่ซ้ำกันซึ่งมีอย่างน้อยหนึ่งเวิร์กสเปซติดตามอยู่ |
boardsObserved24h | integer | บอร์ดทางการที่บันทึกได้ใน 24 ชั่วโมงที่ผ่านมา นับหนึ่งครั้งต่อภูมิภาค บอร์ด และรอบ |
regions | string[] | รหัสภูมิภาคของบอร์ดเหล่านั้น เรียงตามลำดับ |
alertsDelivered24h | integer | การแจ้งเตือนที่ส่งออกไปใน 24 ชั่วโมงที่ผ่านมา |
observedAt | string | เวลาที่คำนวณสแนปช็อตนี้ (ISO 8601, UTC) |
events | object[] | อีเวนต์สาธารณะล่าสุดไม่เกิน 10 รายการ เรียงจากใหม่ไปเก่า (ดูด้านล่าง) |
provenance | object | แหล่งที่มา วิธีการ และช่วงเวลา 24 ชั่วโมงของตัวเลข เช่นเดียวกับทุกตัวชี้วัดของ RoomScope |
อีเวนต์
อีเวนต์แต่ละรายการมี type และเวลา at ปัจจุบันมีเพียงสามประเภท หากพบประเภทอื่นในภายหลังให้ข้ามไป
| ประเภท | ฟิลด์ | เกิดเมื่อ |
|---|---|---|
board_observed | region, board, at | สแนปช็อตล่าสุดที่ครบถ้วนของบอร์ดสาธารณะ (บอร์ดช้อปปิ้งไม่เป็นสาธารณะ) |
rank_move | handle, region, board, rank, previousRank, at | ครีเอเตอร์ใน 10 อันดับแรกที่เปิดเผยของบอร์ดสาธารณะไต่อันดับขึ้นจากรอบก่อนหน้า สูงสุด 3 รายการต่อบอร์ด เรียงจากที่ไต่ขึ้นมากที่สุด |
live_start | region, at, handle? | ครีเอเตอร์ที่เคยติด 10 อันดับแรกที่เปิดเผยของบอร์ดสาธารณะในช่วง 7 วันที่ผ่านมาเริ่มไลฟ์ |
live_start จะไม่มี handle ขณะที่ครีเอเตอร์คนนั้นยังไลฟ์อยู่ เช่นเดียวกับที่โชว์รูมซ่อนชื่อครีเอเตอร์ที่กำลังไลฟ์ความสดใหม่และการแคช
สแนปช็อตถูกคำนวณครั้งเดียวและใช้ร่วมกันกับผู้เรียกทุกรายเป็นเวลา 60 วินาที ผลลัพธ์มี header Cache-Control: public, max-age=30 การ polling ถี่กว่านาทีละครั้งจะได้ตัวเลขเดิม ใช้ observedAt เพื่อแสดงว่าตัวเลขเก่าแค่ไหน
ขีดจำกัดและข้อผิดพลาด
การเรียกถูกจำกัดตาม IP ของไคลเอนต์: 300 ครั้งต่อชั่วโมงสำหรับ endpoint นี้ ภายใต้ขีดจำกัด burst สาธารณะ 120 ครั้งต่อนาที และเพดานรวมของทั้งแพลตฟอร์ม เมื่อเกินขีดจำกัด ผลลัพธ์จะเป็น 429 พร้อม Retry-After เป็นวินาที
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