Playback Integration
1 operations generated from the Engine OpenAPI schema. Request and response model names can be expanded in the interactive schema.
GET /api/v1/users/{id}/playlist
List streaming-user playback channels for third-party integration.
This endpoint uses the same streaming-user authentication as GET /stream/playlist, but returns structured JSON instead of an M3U document.
Password mode: provide both username and password. IP mode: omit both parameters; the client IP must be allowed by the streaming user’s IP ranges.
The {id} path value identifies the expected streaming user but never authenticates the request. Authentication must complete first, and the authenticated user ID must equal {id}.
Administrator, reseller, subreseller sessions and Authorization: Token ... API keys do not grant access. Management authentication is ignored by this operation.
Password request example: GET /api/v1/users/42/playlist?username=viewer&password=secret&protocol=hls.
IP request example: GET /api/v1/users/42/playlist?protocol=hls; do not send username or password.
The success envelope contains data.user_id, data.protocol, and data.channels. Each channel is a JSON object with name and directly playable url fields; no #EXTM3U or #EXTINF text is returned.
A channel with multiple cached outputs produces multiple objects and receives a #0, #1, and so on suffix in name.
Password-user channel URLs contain URL-encoded username and password. IP-user channel URLs contain no authentication query. Channel URLs never contain user_id.
Use HTTPS when sending password credentials. Query parameters may otherwise be visible to intermediaries or access logs.
Authentication: Not declared
Parameters
| Name | Location | Type | Required | Description |
|---|---|---|---|---|
id | path | integer | Yes | Expected streaming user ID; must match the authenticated playback user |
username | query | string | No | Password-mode streaming username; supply together with password and omit for IP mode |
password | query | string | No | Password-mode streaming password; supply together with username and omit for IP mode |
protocol | query | string: hls, http, rtmp | No | Media URL protocol; invalid or omitted values fall back to hls |
Responses
| Status | Description | Schema |
|---|---|---|
200 | Authenticated user’s named playback URLs in a JSON envelope | route.APIResponse + object |