RoomScope

Última atualização

Pulse público

Números de LIVE de toda a plataforma e os eventos públicos mais recentes: o feed por trás da página inicial da RoomScope. Não exige chave de API e não consome créditos.

Requisição

GET /web-api/public/pulse na origem do site, sem parâmetros e sem autenticação. É um endpoint web público, não faz parte da API /v1: não aceita um cabeçalho Authorization e não aparece no seu uso.

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

Resposta

Um único objeto JSON. Cada número é contado em toda a plataforma: nada nele pertence a um espaço de trabalho, a um usuário ou a uma regra de alerta.

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" }  }}
CampoTipoSignificado
liveRoomsintegerSalas que a RoomScope está registrando e que estão ao vivo agora.
trackedRoomsintegerSalas distintas acompanhadas por pelo menos um espaço de trabalho.
boardsObserved24hintegerRankings oficiais observados nas últimas 24 horas, contados uma vez por região, ranking e período.
regionsstring[]Códigos de região desses rankings, em ordem.
alertsDelivered24hintegerNotificações de alerta entregues nas últimas 24 horas.
observedAtstringQuando este snapshot foi calculado (ISO 8601, UTC).
eventsobject[]Até 10 eventos públicos mais recentes, do mais novo para o mais antigo (veja abaixo).
provenanceobjectFonte, método e janela de 24 horas dos números, como em toda métrica da RoomScope.

Eventos

Cada evento tem um type e um horário at. Existem só três tipos; ignore qualquer outro que possa aparecer no futuro.

TipoCamposQuando
board_observedregion, board, atO snapshot completo mais recente de um ranking público (os rankings de shopping não são públicos).
rank_movehandle, region, board, rank, previousRank, atUm criador no top 10 aberto de um ranking público subiu desde o período anterior. Até 3 por ranking, da maior subida para a menor.
live_startregion, at, handle?Um criador que chegou ao top 10 aberto de um ranking público nos últimos 7 dias entrou ao vivo.
Os nomes de usuário seguem as regras do showroom
Um nome de usuário só aparece para criadores que o showroom público já mostra: o top 10 aberto de um ranking público, nunca um criador suprimido. Um live_start não traz handle enquanto esse criador ainda está ao vivo, exatamente como o showroom oculta criadores ao vivo.

Atualização e cache

O snapshot é calculado uma vez e compartilhado com todos os chamadores por 60 segundos; as respostas trazem Cache-Control: public, max-age=30. Consultar mais de uma vez por minuto retorna os mesmos números. Use observedAt para mostrar a idade deles.

Limites e erros

As chamadas são limitadas por IP de cliente: 300 por hora para este endpoint, dentro do limite público de rajada de 120 por minuto e de um teto para toda a plataforma. Acima de um limite, a resposta é 429 com Retry-After em segundos.

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 }

Quando a superfície pública está desativada ou o cache dela está inacessível, a resposta é 503 com o código public_surface_unavailable e retryable: true. Os dois usam o mesmo envelope de erro do restante da API.

Esta página foi útil?