RoomScope

最終更新

ページネーション

件数に上限なく増えうる一覧は、不透明なカーソルでページ分割されます。limit でページサイズを指定し、各ページの nextCursor を渡して次のページを取得します。

カーソル

ページ分割されたレスポンスには nextCursor が含まれます。次のページを取得するには、これをクエリパラメーター cursor として送り返します。値が null の場合、それより古いデータはありません。ページは新しい順に並びます。カーソルの形式は変わる可能性があるため、不透明な値として扱ってください。

GET /v1/live/sessions?limit=100
{  "data": {    "items": [ … ],    "nextCursor": "2026-10-31T07:51:44.935Z",    "historyWindowDays": 365,    "historyTruncated": false  }}

limit の範囲とデフォルト値は一覧ごとに異なり、リファレンスのパラメーターの横に記載されています。各ページは 1 回の呼び出しとして課金されます。

履歴の保持期間

記録された履歴の範囲はプランによって制限されます。historyWindowDays はワークスペースがどこまで遡って読み取れるかを示し、historyTruncated: true は、それより古いデータが存在するものの保持期間の外にあることを意味します。

短い一覧はページ分割されません
ランキング、地域、アラートルール、エクスポートは一括で返されます。該当する場合は limit を指定できますが、カーソルは使いません。

すべてのページを読み取る

let cursor = null;const sessions = [];do {  const params = new URLSearchParams({ limit: "100", ...(cursor ? { cursor } : {}) });  const res = await fetch(`https://api.toktokdata.live/v1/live/sessions?${params}`, {    headers: { Authorization: `Bearer ${process.env.ROOMSCOPE_API_KEY}` },  });  const { data } = await res.json();  sessions.push(...data.items);  cursor = data.nextCursor;} while (cursor);
このページは役に立ちましたか?