Última actualización
Pulse público
Cifras de LIVE de todo el sistema y los eventos públicos más recientes: el feed que alimenta la página de inicio de RoomScope. No necesita clave de API ni gasta créditos.
Solicitud
GET /web-api/public/pulse en el origen del sitio, sin parámetros y sin autenticación. Es un endpoint web público, no forma parte de la API /v1: no acepta un encabezado Authorization y no aparece en tu uso.
curl "https://toktokdata.live/web-api/public/pulse"Respuesta
Un único objeto JSON. Cada cifra se cuenta en toda la plataforma: nada de lo que contiene pertenece a un espacio de trabajo, a un usuario ni a una regla de alerta.
{ "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" } }}| Campo | Tipo | Significado |
|---|---|---|
liveRooms | integer | Salas que RoomScope está registrando y que están en vivo ahora mismo. |
trackedRooms | integer | Salas distintas que sigue al menos un espacio de trabajo. |
boardsObserved24h | integer | Rankings oficiales observados en las últimas 24 horas, contados una vez por región, ranking y periodo. |
regions | string[] | Códigos de región de esos rankings, ordenados. |
alertsDelivered24h | integer | Notificaciones de alerta entregadas en las últimas 24 horas. |
observedAt | string | Cuándo se calculó esta instantánea (ISO 8601, UTC). |
events | object[] | Hasta 10 eventos públicos recientes, del más nuevo al más antiguo (ver abajo). |
provenance | object | Fuente, método y ventana de 24 horas de las cifras, como en todas las métricas de RoomScope. |
Eventos
Cada evento tiene un type y una hora at. Solo existen tres tipos; ignora cualquier otro que puedas ver más adelante.
| Tipo | Campos | Cuándo |
|---|---|---|
board_observed | region, board, at | La instantánea completa más reciente de un ranking público (los rankings de shopping no son públicos). |
rank_move | handle, region, board, rank, previousRank, at | Un creador del top 10 visible de un ranking público subió desde el periodo anterior. Hasta 3 por ranking, primero la mayor subida. |
live_start | region, at, handle? | Un creador que llegó al top 10 visible de un ranking público en los últimos 7 días inició un LIVE. |
live_start no incluye handle mientras ese creador siga en vivo, igual que el showroom oculta a los creadores en vivo.Actualidad y caché
La instantánea se calcula una vez y se comparte con todos los clientes durante 60 segundos; las respuestas incluyen Cache-Control: public, max-age=30. Consultar más de una vez por minuto devuelve las mismas cifras. Usa observedAt para mostrar su antigüedad.
Límites y errores
Las llamadas se limitan por IP de cliente: 300 por hora para este endpoint, dentro del límite de ráfaga público de 120 por minuto y de un tope global de la plataforma. Por encima de un límite, la respuesta es 429 con Retry-After en segundos.
HTTP/2 429Retry-After: 1260 { "code": "public_allowance_exhausted", "message": "You reached the public limit of 300 per hour…", "requestId": "…", "retryable": true }Cuando la superficie pública está desactivada o su caché no está disponible, la respuesta es 503 con el código public_surface_unavailable y retryable: true. Ambas usan el mismo sobre de errores que el resto de la API.