最終更新
公開パルス
システム全体の LIVE の数値と最新の公開イベント。RoomScope ホームページの表示を支えるフィードです。API キーは不要で、クレジットも消費しません。
リクエスト
サイトのオリジンに対して、パラメーターも認証もなしで GET /web-api/public/pulse を呼び出します。これは公開 Web エンドポイントであり、/v1 API の一部ではありません。Authorization ヘッダーは受け付けず、使用量にも表示されません。
curl "https://toktokdata.live/web-api/public/pulse"レスポンス
1 つの 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 | 1 つ以上のワークスペースがフォローしているルームの数(重複なし)。 |
boardsObserved24h | integer | 過去 24 時間に観測した公式ランキングの数。地域、ランキング、期間の組み合わせごとに 1 回として数えます。 |
regions | string[] | それらのランキングの地域コード(並べ替え済み)。 |
alertsDelivered24h | integer | 過去 24 時間に配信したアラート通知の数。 |
observedAt | string | このスナップショットを算出した日時(ISO 8601、UTC)。 |
events | object[] | 最新の公開イベント(最大 10 件、新しい順。下記参照)。 |
provenance | object | 数値のソース、算出方法、24 時間の対象期間。RoomScope のすべての指標と同じ形式です。 |
イベント
各イベントには type と at の時刻があります。種類は次の 3 つだけです。今後それ以外の種類が現れた場合は無視してください。
| 種類 | フィールド | 発生条件 |
|---|---|---|
board_observed | region, board, at | 公開ランキングの最新の完全なスナップショット(ショッピングランキングは公開対象外)。 |
rank_move | handle, region, board, rank, previousRank, at | 公開ランキングの公開上位 10 位に入っているクリエイターが、前の期間から順位を上げました。ランキングごとに最大 3 件、上昇幅の大きい順。 |
live_start | region, at, handle? | 過去 7 日間に公開ランキングの公開上位 10 位に入ったクリエイターが配信を開始しました。 |
live_start にはそのクリエイターの配信中は handle が含まれません。鮮度とキャッシュ
スナップショットは一度算出されると、60 秒間すべての呼び出し元で共有されます。レスポンスには Cache-Control: public, max-age=30 が付きます。1 分に 1 回より頻繁にポーリングしても同じ数値が返ります。数値がどれだけ前のものかを示すには observedAt を使ってください。
制限とエラー
呼び出しはクライアントの IP ごとに制限されます。このエンドポイントは 1 時間あたり 300 回で、これは 1 分あたり 120 回の公開バースト制限と、プラットフォーム全体の上限の範囲内で適用されます。制限を超えると、秒単位の Retry-After とともに 429 が返ります。
HTTP/2 429Retry-After: 1260 { "code": "public_allowance_exhausted", "message": "You reached the public limit of 300 per hour…", "requestId": "…", "retryable": true }公開エンドポイントが無効化されている場合やキャッシュに到達できない場合は、コード public_surface_unavailable と retryable: true とともに 503 が返ります。どちらも API の他の部分と同じエラーエンベロープを使います。