Endpoints
Grouped reference for the EyesOnIt REST API endpoints.
Method Groups
Image and Video
Search
Face Recognition
- facerec_groups
- facerec_add_group
- facerec_remove_group
- facerec_add_person
- facerec_add_people
- facerec_remove_person
- facerec_search_group_names
- facerec_search_people_names
- facerec_person_details
Status
Config
Image and Video
process_image
- Method:
POST - Path:
/process_image - Request: ProcessImage
- Response: ProcessImage
{
"file": "<base64 image>",
"return_image": true,
"regions": [
{
"name": "Front Entrance",
"enabled": true,
"polygon": [{ "x": 0, "y": 0 }, { "x": 200, "y": 0 }, { "x": 200, "y": 200 }],
"detection_configs": []
}
],
"effects": {
"show_bounding_boxes": true,
"show_regions": true
}
}
add_stream
{
"stream_url": "rtsp://camera/live",
"name": "Warehouse Camera 01",
"frame_rate": 5,
"index_for_search": true,
"search_index_types": ["image"],
"regions": [
{
"name": "Front Entrance",
"enabled": true,
"polygon": [{ "x": 0, "y": 0 }, { "x": 200, "y": 0 }, { "x": 200, "y": 200 }],
"motion_detection": {
"enabled": true,
"detection_threshold": 300,
"regular_check_frame_interval": 5
},
"detection_configs": []
}
],
"lines": [
{
"name": "entry-line",
"vertices": [{ "x": 50, "y": 50 }, { "x": 250, "y": 50 }]
}
],
"notification": {
"include_image": true,
"phone_number": "+15551234567"
},
"recording": {
"enabled": false
},
"effects": {
"show_bounding_boxes": true,
"show_regions": true
}
}
process_video
- Method:
POST - Path:
/process_video - Request: ProcessVideo
- Response: ProcessVideo
{
"name": "warehouse-shift-1",
"input_video_path": "/input/warehouse.mp4",
"rotate_video": 0,
"output_video_path": "/output/warehouse_out.mp4",
"frame_rate": 5,
"index_for_search": false,
"search_index_types": [],
"regions": [
{
"name": "Front Entrance",
"enabled": true,
"polygon": [{ "x": 0, "y": 0 }, { "x": 200, "y": 0 }, { "x": 200, "y": 200 }],
"motion_detection": {
"enabled": true,
"detection_threshold": 300,
"regular_check_frame_interval": 5
},
"detection_configs": []
}
],
"lines": [],
"real_time": false,
"video_start_interval": 0,
"output_all_frames": true,
"effects": {
"show_bounding_boxes": true,
"show_regions": true
},
"recording": {
"enabled": false
},
"video_start_local_time": "2025-03-17T22:27:33Z",
"start_seconds": 0,
"end_seconds": 30,
"mode": "KNOWN_OBJECT_DETECTION",
"base_image_path": null,
"plugins": {},
"validation": {
"triggers": [
{
"class_name": "person",
"start_seconds": 0,
"end_seconds": 30
}
]
}
}
remove_stream
- Method:
POST - Path:
/remove_stream - Request: RemoveStream
- Response: RemoveStream
{
"stream_url": "rtsp://camera/live"
}
get_video_frame
- Method:
POST - Path:
/get_video_frame - Request: GetVideoFrame
- Response: GetVideoFrame
{
"stream_url": "rtsp://camera/live"
}
Search
archive_search
- Method:
POST - Path:
/archive_search - Request: ArchiveSearch
- Response: ArchiveSearch
{
"class_name": "person",
"search_type": "natural_language",
"object_description": "person carrying a red bag",
"alert_threshold": 80,
"similarity": {
"images": []
},
"stream_list": ["rtsp://camera/live"],
"start_date_time": "2025-03-17T00:00:00Z",
"end_date_time": "2025-03-18T00:00:00Z"
}
live_search
- Method:
POST - Path:
/live_search - Request: LiveSearch
- Response: LiveSearch
{
"class_name": "person",
"search_type": "face_recognition",
"face_match_type": "group",
"face_group_id": "employees",
"alert_threshold": 80,
"stream_list": ["rtsp://camera/live"],
"duration_seconds": 600,
"notification": {
"include_image": true,
"phone_number": "+15551234567"
}
}
pause_live_search
- Method:
POST - Path:
/pause_live_search - Request: PauseLiveSearch
- Response: PauseLiveSearch
{
"search_id": 42
}
resume_live_search
- Method:
POST - Path:
/resume_live_search - Request: ResumeLiveSearch
- Response: ResumeLiveSearch
{
"search_id": 42
}
cancel_live_search
- Method:
POST - Path:
/cancel_live_search - Request: CancelLiveSearch
- Response: CancelLiveSearch
{
"search_id": 42
}
Face Recognition
facerec_groups
- Method:
GET - Path:
/facerec_groups - Request: FacerecGroups
- Response: FacerecGroups
facerec_add_group
- Method:
POST - Path:
/facerec_add_group - Request: FacerecAddGroup
- Response: FacerecAddGroup
{
"group_id": "employees",
"group_name": "Employees",
"group_description": "Employees approved for entry checks"
}
facerec_remove_group
- Method:
POST - Path:
/facerec_remove_group - Request: FacerecRemoveGroup
- Response: FacerecRemoveGroup
{
"group_id": "employees"
}
facerec_add_person
- Method:
POST - Path:
/facerec_add_person - Request: FacerecAddPerson
- Response: FacerecAddPerson
{
"person_id": "person-001",
"person_display_name": "Alex Carter",
"person_groups": ["employees"],
"person_images": [
{
"image": "<base64 image>",
"file_path": null,
"capture_time": "2025-03-17T22:27:33Z"
}
]
}
facerec_add_people
- Method:
POST - Path:
/facerec_add_people - Request: FacerecAddPeople
- Response: FacerecAddPeople
{
"file_path": "/input/facerec/import.csv"
}
facerec_remove_person
- Method:
POST - Path:
/facerec_remove_person - Request: FacerecRemovePerson
- Response: FacerecRemovePerson
{
"person_id": "person-001"
}
facerec_search_group_names
- Method:
POST - Path:
/facerec_search_group_names - Request: FacerecSearchGroupNames
- Response: FacerecSearchGroupNames
{
"search_text": "emp"
}
facerec_search_people_names
- Method:
POST - Path:
/facerec_search_people_names - Request: FacerecSearchPeopleNames
- Response: FacerecSearchPeopleNames
{
"search_text": "alex"
}
facerec_person_details
- Method:
POST - Path:
/facerec_person_details - Request: FacerecPersonDetails
- Response: FacerecPersonDetails
{
"person_id": "person-001"
}
Status
monitor_stream
- Method:
POST - Path:
/monitor_stream - Request: MonitorStream
- Response: MonitorStream
{
"stream_url": "rtsp://camera/live",
"duration_seconds": 300
}
stop_monitoring
- Method:
POST - Path:
/stop_monitoring - Request: StopMonitoring
- Response: StopMonitoring
{
"stream_url": "rtsp://camera/live"
}
get_all_streams_info
- Method:
GET - Path:
/get_all_streams_info - Request: GetAllStreamsInfo
- Response: GetAllStreamsInfo
get_stream_details
- Method:
POST - Path:
/get_stream_details - Request: GetStreamDetails
- Response: GetStreamDetails
{
"stream_url": "rtsp://camera/live"
}
get_last_detection_info
- Method:
POST - Path:
/get_last_detection_info - Request: GetLastDetectionInfo
- Response: GetLastDetectionInfo
{
"stream_url": "rtsp://camera/live"
}
Config
update_config
- Method:
POST - Path:
/update_config - Request: UpdateConfig
- Response: UpdateConfig
{
"search": {
"max_results": 100
}
}