REST API
Default local base URL: http://localhost:8090.
Authentication
Section titled “Authentication”Discovery and health endpoints are public. All /api/v1/streams operations require:
x-api-key: your-server-api-keyEndpoints
Section titled “Endpoints”| 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 |
Create request
Section titled “Create request”{ "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 request
Section titled “Action request”{ "action": "restart" }Allowed actions are pause, resume and restart.
Errors
Section titled “Errors”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.