ffplay -rtsp_transport tcp rtsp://127.0.0.1:2021/myMonitor
ffplay -rtsp_transport tcp rtsp://127.0.0.1:2021/myMonitor_sub
Remember to expose the ports if you're using Docker.
ffplay http://127.0.0.1:2022/hls/myMonitor/stream.m3u8
vlc http://127.0.0.1:2022/hls/myMonitor_sub/stream.m3u8
All requests require basic auth, POST, PUT and DELETE requests need to have a matching CSRF-token in the X-CSRF-TOKEN
header.
curl -k -u admin:pass -X GET https://127.0.0.1/api/users
System time zone location.
General settings.
Set general configuration.
Users.
Set user data.
example request:
{
"id": "7phg3h7v3ayb5g2f",
"username": "name",
"isAdmin": false,
"plainPassword": "pass"
}
Delete a user by id.
CSRF-token of current user.
Uncensored monitor configuration.
Delete a monitor by id.
Censored monitor configuration.
Restart monitor by id.
Set monitor.
Delete recording by id.
Thumbnail by exact recording ID.
Video by exact recording ID.
Query recordings.
example response: data=false
[
{
"id":"YYYY-MM-DD_hh-mm-ss_id",
"data": null
}
]
example response: data=true
[{
"id":"YYYY-MM-DD_hh-mm-ss_id",
"data": {
"start": "YYYY-MM-DDThh:mm:ss.000000000Z",
"end": "YYYY-MM-DDThh:mm:ss.000000000Z",
"events": [{
"time": "YYYY-MM-DDThh:mm:ss.000000000Z",
"detections": [{
"label": "person",
"score": 100,
"region": {
"rect": [0, 0, 100, 100]
}
}],
"duration": 000000000
}]}}]
## Logs
Query logs. Time is in Unix micro seconds.
example response:
[
{
"level":0,
"time":0,
"msg":"",
"src":"",
"monitorID":""
},
{
"level":0,
"time":0,
"msg":"",
"src":"",
"monitorID":""
}
]
List of log sources.
example response:["app","monitor","recorder","storage","watchdog"]
Requires basic auth and TLS. Authentication is validated before each response.
example: wss://127.0.0.1/api/logs
curl doesn't support wss.
Live log feed.