Skip to main content

C# Client Reference

EyesOnItAPI is the main SDK client class.

Constructor

new EyesOnItAPI(string baseUrl)

Parameter:

  • baseUrl: EyesOnIt server base URL, such as http://localhost:8000

Image And Video Methods

MethodRequestResponseEndpoint
ProcessImagestring, EOIRegion[] or EOIProcessImageInputsEOIProcessImageResponsePOST /process_image
AddStreamoverloads or EOIAddStreamInputsEOIAddStreamResponsePOST /add_stream
ProcessVideoEOIProcessVideoInputsEOIProcessVideoResponsePOST /process_video
RemoveStreamstring or EOIRemoveStreamInputsEOIRemoveStreamResponsePOST /remove_stream
GetVideoFramestring or EOIVideoFrameInputsEOIGetVideoFrameResponsePOST /get_video_frame

Search Methods

MethodRequestResponseEndpoint
SearchArchiveEOIArchiveSearchInputsEOISearchResponsePOST /archive_search
SearchLiveEOILiveSearchInputsEOILiveSearchResponsePOST /live_search
PauseLiveSearchEOIUpdateLiveSearchInputsEOIResponsePOST /pause_live_search
ResumeLiveSearchEOIUpdateLiveSearchInputsEOIResponsePOST /resume_live_search
CancelLiveSearchEOIUpdateLiveSearchInputsEOIResponsePOST /cancel_live_search

Face Recognition Methods

MethodRequestResponseEndpoint
GetFacerecGroupsnoneEOIGetFacerecGroupsResponseGET /facerec_groups
AddFacerecGroupEOIAddFacerecGroupInputsEOIBaseOutputsPOST /facerec_add_group
RemoveFacerecGroupstring groupIdEOIRemoveFacerecGroupResponsePOST /facerec_remove_group
AddFacerecPersonEOIAddFacerecPersonInputsEOIBaseOutputsPOST /facerec_add_person
AddFacerecPeopleEOIAddFacerecPeopleInputsEOIBaseOutputsPOST /facerec_add_people
RemoveFacerecPersonstring personIdEOIBaseOutputsPOST /facerec_remove_person
SearchFacerecGroupNamesstring searchEOISearchFacerecNamesResponsePOST /facerec_search_group_names
SearchFacerecPeopleNamesstring searchEOISearchFacerecNamesResponsePOST /facerec_search_people_names
GetFacerecPersonDetailsstring personIdEOIFacerecPersonDetailsResponsePOST /facerec_person_details

Status And Configuration Methods

MethodRequestResponseEndpoint
MonitorStreamstring, int? or EOIMonitorStreamInputsEOIMonitorStreamResponsePOST /monitor_stream
StopMonitoringStreamstring or EOIStopMonitoringStreamInputsEOIStopMonitoringStreamResponsePOST /stop_monitoring
GetAllStreamsInfononeEOIGetAllStreamsInfoResponseGET /get_all_streams_info
GetStreamDetailsstring or EOIGetStreamDetailsInputsEOIGetStreamDetailsResponsePOST /get_stream_details
GetLastDetectionInfostring or EOIGetLastDetectionInfoInputsEOIGetLastDetectionInfoResponsePOST /get_last_detection_info
UpdateConfigEOIUpdateConfigInputsEOIUpdateConfigResponsePOST /update_config

Response Shapes Users Commonly Touch

All typed output wrappers inherit Success and Message from EOIBaseOutputs.

Response TypeImportant Fields
EOIProcessImageResponseDetections, Image
EOIProcessVideoResponseVideoId
EOIGetAllStreamsInfoResponseStreams
EOIGetStreamDetailsResponseStream
EOIGetLastDetectionInfoResponseImage, Detections
EOIGetVideoFrameResponseImage
EOISearchResponseResults
EOILiveSearchResponseSearchId
EOIGetFacerecGroupsResponseGroups
EOISearchFacerecNamesResponseMatches
EOIFacerecPersonDetailsResponsePersonId, PersonName, Groups, Images
EOIRemoveFacerecGroupResponseGroupId, 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, and CancelLiveSearch return EOIResponse