playback-svc

Reportar métricas de reproducción de una entrega propia (OB2)

Lote acotado (a lo sumo 32 eventos) de TTFF, seek, stalls, cambios de rendition y errores medidos por el reproductor del navegador. Sólo el dueño de la entrega; una ajena o inexistente responde 404. Cada entrega tiene un presupuesto de eventos: lo que lo excede se descarta (`dropped`), no se rechaza. El motor y el modo los pone el servidor. Acceso: Bearer de identity con policy `resource:playback-session:report`.

POST
/sessions/{sessionId}/metrics

Lote acotado (a lo sumo 32 eventos) de TTFF, seek, stalls, cambios de rendition y errores medidos por el reproductor del navegador. Sólo el dueño de la entrega; una ajena o inexistente responde 404. Cada entrega tiene un presupuesto de eventos: lo que lo excede se descarta (dropped), no se rechaza. El motor y el modo los pone el servidor.

Acceso: Bearer de identity con policy resource:playback-session:report.

Authorization

bearerAuth
AuthorizationBearer <token>

Access token de identity-svc (JWT EdDSA, caducidad corta). Se verifica en local y después contra la sesión viva (revocation-aware).

In: header

Path Parameters

sessionId*string
Match^(pkg|sess)_[0-9a-f]{32}$

Request Body

application/json

Lote de métricas de reproducción de una sesión propia (a lo sumo 32 eventos).

TypeScript Definitions

Use the request body type in TypeScript.

Lote de métricas de reproducción de una sesión propia (a lo sumo 32 eventos).

events*array<|||||>
Items1 <= items <= 32
player*string

Value in

  • "vidstack"
  • "limeplay"

Response Body

application/json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

curl -X POST "https://example.com/sessions/string/metrics" \  -H "Content-Type: application/json" \  -d '{    "events": [      {        "ms": 0,        "t": "ttff"      }    ],    "player": "vidstack"  }'
{  "accepted": 0,  "dropped": 0}