Skip to content

REST API

Default local base URL: http://localhost:8090.

Discovery and health endpoints are public. All /api/v1/streams operations require:

x-api-key: your-server-api-key
Method Path Result
GET /health Service health
GET /api/v1/stream-servers Registered source manifests
GET /api/v1/streams Sessions owned by this API client
POST /api/v1/streams Create a session
GET /api/v1/streams/:id Read one session
POST /api/v1/streams/:id/actions Pause, resume or restart
DELETE /api/v1/streams/:id Stop and remove a session
{
"type": "camera-stream-server",
"name": "Studio camera",
"config": {
"device": "/dev/video0",
"width": 1280,
"height": 720,
"fps": 30
}
}

type identifies a registered spawner. name and config are optional; the selected runtime validates the source-specific configuration.

{ "action": "restart" }

Allowed actions are pause, resume and restart.

Errors use stable machine-readable codes:

{
"error": {
"code": "session_not_found",
"message": "stream session not found"
}
}

Common statuses include 400 for invalid input, 401 for an invalid key, 404 for unknown routes or sessions and 503 when API keys are not configured.