Back to Home

API Reference

REST API documentation for StreamDev platform

Authentication

All API requests require an authentication token. You can generate an API token from the StreamDev admin panel under Settings > API Access.

Include the token in the Authorization header of every request:

Authorization: Bearer YOUR_API_TOKEN

Requests without a valid token will receive a 401 Unauthorized response.

Endpoints

Streams

GET /api/streams

Description: List all streams

Response: JSON array of stream objects

[ { "id": 1, "name": "Stream Name", "url": "rtsp://source-url", "status": "running", "quality": "720p" } ]
POST /api/streams

Description: Create a new stream

Request Body:

{ "name": "Stream Name", "url": "rtsp://source-url", "transcode": true, "quality": "720p" }

Response: Created stream object

{ "id": 42, "name": "Stream Name", "url": "rtsp://source-url", "transcode": true, "quality": "720p", "status": "stopped", "created_at": "2026-04-09T12:00:00Z" }
GET /api/streams/:id

Description: Get stream details

Parameters:

Parameter Type Description
id integer Stream ID
PUT /api/streams/:id

Description: Update stream configuration

Parameters:

Parameter Type Description
id integer Stream ID

Request Body: Stream object fields to update

{ "name": "Updated Stream Name", "quality": "1080p" }
DELETE /api/streams/:id

Description: Delete a stream

Parameters:

Parameter Type Description
id integer Stream ID
POST /api/streams/:id/start

Description: Start a stream

Parameters:

Parameter Type Description
id integer Stream ID
POST /api/streams/:id/stop

Description: Stop a stream

Parameters:

Parameter Type Description
id integer Stream ID

System

GET /api/stats

Description: Get system statistics (CPU, memory, bandwidth, active streams)

{ "cpu_usage": 34.2, "memory_usage": 61.8, "bandwidth_mbps": 245.6, "active_streams": 18, "total_streams": 42 }
GET /api/health

Description: Health check endpoint

Response:

{ "status": "ok", "uptime": 123456 }