C# Client Reference
EyesOnItAPI is the main SDK client class.
Constructor
new EyesOnItAPI(string baseUrl)
Parameter:
baseUrl: EyesOnIt server base URL, such ashttp://localhost:8000
Image And Video Methods
| Method | Request | Response | Endpoint |
|---|---|---|---|
ProcessImage | string, EOIRegion[] or EOIProcessImageInputs | EOIProcessImageResponse | POST /process_image |
AddStream | overloads or EOIAddStreamInputs | EOIAddStreamResponse | POST /add_stream |
ProcessVideo | EOIProcessVideoInputs | EOIProcessVideoResponse | POST /process_video |
RemoveStream | string or EOIRemoveStreamInputs | EOIRemoveStreamResponse | POST /remove_stream |
GetVideoFrame | string or EOIVideoFrameInputs | EOIGetVideoFrameResponse | POST /get_video_frame |
Search Methods
| Method | Request | Response | Endpoint |
|---|---|---|---|
SearchArchive | EOIArchiveSearchInputs | EOISearchResponse | POST /archive_search |
SearchLive | EOILiveSearchInputs | EOILiveSearchResponse | POST /live_search |
PauseLiveSearch | EOIUpdateLiveSearchInputs | EOIResponse | POST /pause_live_search |
ResumeLiveSearch | EOIUpdateLiveSearchInputs | EOIResponse | POST /resume_live_search |
CancelLiveSearch | EOIUpdateLiveSearchInputs | EOIResponse | POST /cancel_live_search |
Face Recognition Methods
| Method | Request | Response | Endpoint |
|---|---|---|---|
GetFacerecGroups | none | EOIGetFacerecGroupsResponse | GET /facerec_groups |
AddFacerecGroup | EOIAddFacerecGroupInputs | EOIBaseOutputs | POST /facerec_add_group |
RemoveFacerecGroup | string groupId | EOIRemoveFacerecGroupResponse | POST /facerec_remove_group |
AddFacerecPerson | EOIAddFacerecPersonInputs | EOIBaseOutputs | POST /facerec_add_person |
AddFacerecPeople | EOIAddFacerecPeopleInputs | EOIBaseOutputs | POST /facerec_add_people |
RemoveFacerecPerson | string personId | EOIBaseOutputs | POST /facerec_remove_person |
SearchFacerecGroupNames | string search | EOISearchFacerecNamesResponse | POST /facerec_search_group_names |
SearchFacerecPeopleNames | string search | EOISearchFacerecNamesResponse | POST /facerec_search_people_names |
GetFacerecPersonDetails | string personId | EOIFacerecPersonDetailsResponse | POST /facerec_person_details |
Status And Configuration Methods
| Method | Request | Response | Endpoint |
|---|---|---|---|
MonitorStream | string, int? or EOIMonitorStreamInputs | EOIMonitorStreamResponse | POST /monitor_stream |
StopMonitoringStream | string or EOIStopMonitoringStreamInputs | EOIStopMonitoringStreamResponse | POST /stop_monitoring |
GetAllStreamsInfo | none | EOIGetAllStreamsInfoResponse | GET /get_all_streams_info |
GetStreamDetails | string or EOIGetStreamDetailsInputs | EOIGetStreamDetailsResponse | POST /get_stream_details |
GetLastDetectionInfo | string or EOIGetLastDetectionInfoInputs | EOIGetLastDetectionInfoResponse | POST /get_last_detection_info |
UpdateConfig | EOIUpdateConfigInputs | EOIUpdateConfigResponse | POST /update_config |
Response Shapes Users Commonly Touch
All typed output wrappers inherit Success and Message from EOIBaseOutputs.
| Response Type | Important Fields |
|---|---|
EOIProcessImageResponse | Detections, Image |
EOIProcessVideoResponse | VideoId |
EOIGetAllStreamsInfoResponse | Streams |
EOIGetStreamDetailsResponse | Stream |
EOIGetLastDetectionInfoResponse | Image, Detections |
EOIGetVideoFrameResponse | Image |
EOISearchResponse | Results |
EOILiveSearchResponse | SearchId |
EOIGetFacerecGroupsResponse | Groups |
EOISearchFacerecNamesResponse | Matches |
EOIFacerecPersonDetailsResponse | PersonId, PersonName, Groups, Images |
EOIRemoveFacerecGroupResponse | GroupId, RemovedMemberships |
Utility Class
EOIAPIUtils provides helper methods that are useful in application code:
EOIStreamInfo GetInfoForStream(List<EOIStreamInfo> streamInfoList, string streamUrl)
Size GetMinimumRegionSize()
string GetJsonForAddStreamInputsList(List<EOIAddStreamInputs> addStreamInputsList)
List<EOIAddStreamInputs> GetAddStreamInputsListFromJson(string json)
Error Handling
The client returns typed responses for validation failures, HTTP failures, and server-side failures.
Typical pattern:
var response = await client.GetStreamDetails("rtsp://camera-01/live");
if (!response.Success)
{
throw new InvalidOperationException(response.Message);
}
Notes:
- validation failures happen before the HTTP request is sent
- transport and HTTP errors are returned as
Success = false PauseLiveSearch,ResumeLiveSearch, andCancelLiveSearchreturnEOIResponse