REST API v1
All API requests require a Bearer token in the Authorization header. Generate API keys from your dashboard under Settings > API Keys.
Requests without a valid API key return 401 Unauthorized. Keys are scoped to your organization and can be granted read-only or full access.
Manage camera connections, streams, and configuration.
List all cameras in your organization.
Connect a new camera. Accepts RTSP, ONVIF, or cloud provider credentials.
| Parameter | Type | Description |
|---|---|---|
name | string | Display name for the camera (required) |
rtsp_url | string | RTSP stream URL |
protocol | string | rtsp, onvif, or cloud |
location | string | Physical location label |
tags | array | Metadata tags for filtering |
Retrieve a single camera by ID, including current status and stream health.
Update camera configuration (name, location, tags, stream settings).
Disconnect and remove a camera. Associated agents are stopped automatically.
Deploy and manage AI detection agents on your cameras.
List all agents. Filter by camera_id, type, or status.
Create a new AI agent for a camera.
| Parameter | Type | Description |
|---|---|---|
camera_id | string | Camera to attach the agent to (required) |
type | string | object_detection, motion, anomaly, counting, zone_intrusion |
alerts | array | Detection labels that trigger alerts |
sensitivity | number | Detection sensitivity 0.0–1.0 (default 0.5) |
schedule | object | Active hours and days of week |
Update agent configuration, sensitivity, or schedule.
Stop and remove an agent.
Query real-time and historical detection events.
List detections. Filter by camera_id, agent_id, label, from, and to timestamps.
Get a single detection event with full metadata and snapshot URL.
Configure alert rules and retrieve triggered alerts.
List all alerts. Filter by status (triggered, acknowledged, resolved).
Create an alert rule with conditions, thresholds, and notification channels.
Acknowledge a triggered alert.
Receive real-time event notifications at your own endpoints.
Register a webhook endpoint. Specify which events to subscribe to.
Aggregate statistics and trends across your camera fleet.
Get detection counts, alert counts, and uptime for a time range.
Retrieve spatial heatmap data for a camera over a time range.
Time-series detection and alert trends. Supports hourly, daily, and weekly granularity.
Rate limits are enforced per API key:
Rate limit headers are included in every response: X-RateLimit-Limit, X-RateLimit-Remaining, and X-RateLimit-Reset.
The API uses standard HTTP status codes. Error responses include a JSON body: