generated: '2026-07-15' method: generated source: openapi/reolink-camera-api-openapi.yml description: Recommended x-agentic-access execution contracts, classified heuristically from the OpenAPI. A governance starting point for exposing this API to AI agents — review and bind audience per deployment. See research/curity/agentic-governance/. summary: operations: 65 by_action_class: acting: 65 by_consequence: write: 61 safety-critical: 4 human_in_the_loop_required: 4 operations: - path: /cgi-bin/api.cgi method: post operationId: login x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=Logout&token={token} method: post operationId: logout x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=GetDevInfo&token={token} method: post operationId: getDevInfo x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=GetAbility&token={token} method: post operationId: getAbility x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=GetTime&token={token} method: post operationId: getTime x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=SetTime&token={token} method: post operationId: setTime x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=GetHddInfo&token={token} method: post operationId: getHddInfo x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=FormatHdd&token={token} method: post operationId: formatHdd x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=Reboot&token={token} method: post operationId: reboot x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /cgi-bin/api.cgi?cmd=GetDevName&token={token} method: post operationId: getDevName x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=SetDevName&token={token} method: post operationId: setDevName x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=GetAutoMaint&token={token} method: post operationId: getAutoMaint x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=GetAutoUpgrade&token={token} method: post operationId: getAutoUpgrade x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=GetChannelStatus&token={token} method: post operationId: getChannelStatus x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=GetUser&token={token} method: post operationId: getUser x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=GetOnline&token={token} method: post operationId: getOnline x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=GetNetPort&token={token} method: post operationId: getNetPort x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=SetNetPort&token={token} method: post operationId: setNetPort x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=GetLocalLink&token={token} method: post operationId: getLocalLink x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=GetWifi&token={token} method: post operationId: getWifi x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=GetDdns&token={token} method: post operationId: getDdns x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=GetNtp&token={token} method: post operationId: getNtp x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=GetEmail&token={token} method: post operationId: getEmail x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=GetFtp&token={token} method: post operationId: getFtp x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=GetPush&token={token} method: post operationId: getPush x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=GetUpnp&token={token} method: post operationId: getUpnp x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=GetImage&token={token} method: post operationId: getImage x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=SetImage&token={token} method: post operationId: setImage x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=GetOsd&token={token} method: post operationId: getOsd x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=SetOsd&token={token} method: post operationId: setOsd x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=GetIsp&token={token} method: post operationId: getIsp x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=GetMask&token={token} method: post operationId: getMask x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=SetMask&token={token} method: post operationId: setMask x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=Snap&token={token} method: post operationId: snap x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=GetEnc&token={token} method: post operationId: getEnc x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=SetEnc&token={token} method: post operationId: setEnc x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=GetRec&token={token} method: post operationId: getRec x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=SetRec&token={token} method: post operationId: setRec x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=Search&token={token} method: post operationId: searchRecordings x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=PtzCtrl&token={token} method: post operationId: ptzCtrl x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /cgi-bin/api.cgi?cmd=GetPtzPreset&token={token} method: post operationId: getPtzPreset x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /cgi-bin/api.cgi?cmd=SetPtzPreset&token={token} method: post operationId: setPtzPreset x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /cgi-bin/api.cgi?cmd=GetPtzPatrol&token={token} method: post operationId: getPtzPatrol x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=SetPtzPatrol&token={token} method: post operationId: setPtzPatrol x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=PtzCheck&token={token} method: post operationId: ptzCheck x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=GetPtzCheckState&token={token} method: post operationId: getPtzCheckState x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=GetMdAlarm&token={token} method: post operationId: getMdAlarm x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=SetMdAlarm&token={token} method: post operationId: setMdAlarm x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=GetAiAlarm&token={token} method: post operationId: getAiAlarm x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=SetAiAlarm&token={token} method: post operationId: setAiAlarm x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=GetAlarmArea&token={token} method: post operationId: getAlarmArea x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=SetAlarmArea&token={token} method: post operationId: setAlarmArea x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=GetAudioAlarm&token={token} method: post operationId: getAudioAlarm x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=SetIrLights&token={token} method: post operationId: setIrLights x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=GetIrLights&token={token} method: post operationId: getIrLights x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=GetPowerLed&token={token} method: post operationId: getPowerLed x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=SetPowerLed&token={token} method: post operationId: setPowerLed x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=GetWhiteLed&token={token} method: post operationId: getWhiteLed x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=SetWhiteLed&token={token} method: post operationId: setWhiteLed x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=GetAiState&token={token} method: post operationId: getAiState x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=GetAiCfg&token={token} method: post operationId: getAiCfg x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=SetAiCfg&token={token} method: post operationId: setAiCfg x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=GetAutoFocus&token={token} method: post operationId: getAutoFocus x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=GetAutoTrack&token={token} method: post operationId: getAutoTrack x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cgi-bin/api.cgi?cmd=SetAutoTrack&token={token} method: post operationId: setAutoTrack x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required