Intelligent Security API (General)
Developer Guide
Intelligent Security API (General) Developer Guide
Legal Information
TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, THE DOCUMENT IS PROVIDED "AS IS"
AND “WITH ALL FAULTS AND ERRORS”. OUR COMPANY MAKES NO REPRESENTATIONS OR
WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO, WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT. IN NO EVENT
WILL OUR COMPANY BE LIABLE FOR ANY SPECIAL, CONSEQUENTIAL, INCIDENTAL, OR INDIRECT
DAMAGES, INCLUDING, AMONG OTHERS, DAMAGES FOR LOSS OF BUSINESS PROFITS, BUSINESS
INTERRUPTION OR LOSS OF DATA, CORRUPTION OF SYSTEMS, OR LOSS OF DOCUMENTATION,
WHETHER BASED ON BREACH OF CONTRACT, TORT (INCLUDING NEGLIGENCE), OR OTHERWISE, IN
CONNECTION WITH THE USE OF THE DOCUMENT, EVEN IF OUR COMPANY HAS BEEN ADVISED OF
THE POSSIBILITY OF SUCH DAMAGES OR LOSS.
i
Intelligent Security API (General) Developer Guide
Contents
Chapter 1 Overview .................................................................................................................... 1
1.1 Introduction ........................................................................................................................... 1
1.2 Update History ....................................................................................................................... 2
1.2.1 Version 20.10-Version 20.12 ......................................................................................... 2
1.2.2 Version 20.07-Version 20.09 ......................................................................................... 5
1.2.3 Version 20.04-Version 20.06 ....................................................................................... 10
1.2.4 Version 20.01-Version 20.03 ....................................................................................... 15
Chapter 2 ISAPI Description ...................................................................................................... 19
2.1 Operation Method ............................................................................................................... 19
2.2 URL Format .......................................................................................................................... 22
2.3 Message Format .................................................................................................................. 23
2.4 Others .................................................................................................................................. 25
Chapter 3 Security .................................................................................................................... 26
3.1 Authentication ..................................................................................................................... 26
3.2 User Permission ................................................................................................................... 27
3.3 Encryption ............................................................................................................................ 27
3.3.1 Encrypt Stream ........................................................................................................... 29
3.3.2 Encrypt Sensitive Information ..................................................................................... 31
3.3.3 Encrypt Stream Based on RTSP/SRTP .......................................................................... 41
3.4 Security Service .................................................................................................................... 53
Chapter 4 Login ........................................................................................................................ 56
Chapter 5 Device Management ................................................................................................. 57
5.1 Device Activation ................................................................................................................. 57
5.1.1 Directly Activate Device .............................................................................................. 57
5.1.2 Activate Network Camera via NVR .............................................................................. 58
5.2 Reset Password by Setting Recovery Email .......................................................................... 59
ii
Intelligent Security API (General) Developer Guide
5.3 Online Upgrade Device ........................................................................................................ 60
Chapter 6 Device Configuration and Maintenance .................................................................... 63
6.1 Basic ..................................................................................................................................... 63
6.1.1 Securely Export and Import Configuration Files ......................................................... 64
6.2 Log ....................................................................................................................................... 66
6.3 Status ................................................................................................................................... 66
6.4 Calibration ............................................................................................................................ 68
6.5 Auto Power On or Off .......................................................................................................... 69
6.6 Advanced ............................................................................................................................. 69
Chapter 7 User Management .................................................................................................... 72
7.1 Manage Users ...................................................................................................................... 72
7.2 User Permission ................................................................................................................... 72
7.3 Lock and Unlock User ........................................................................................................... 73
7.4 Configure Double Verification .............................................................................................. 73
Chapter 8 Video and Audio ....................................................................................................... 78
8.1 Search for Recording Start and End Time by Channel .......................................................... 78
8.2 Live View and Playback ........................................................................................................ 79
8.3 Start Two-Way Audio ........................................................................................................... 86
8.4 Stream Encoding .................................................................................................................. 87
Chapter 9 Capture and Recording ............................................................................................. 89
Chapter 10 PTZ Control ............................................................................................................. 91
10.1 Configure Basic PTZ Parameters ......................................................................................... 91
10.2 Configure Other PTZ Parameters ....................................................................................... 92
10.3 Configure PTZ Auxiliary Status ........................................................................................... 93
10.4 Configure E-PTZ Parameters .............................................................................................. 93
10.5 Configure Gyroscope Calibration Parameters .................................................................... 93
10.6 Configure GPS Calibration Parameters ............................................................................... 93
10.7 Control PTZ via Digital Channel .......................................................................................... 95
iii
Intelligent Security API (General) Developer Guide
10.8 Configure Master-Slave Tracking ........................................................................................ 96
10.9 Configure Panorama Tracking ............................................................................................ 98
Chapter 11 Storage Management ............................................................................................. 99
11.1 Configure Log Storage Mode ............................................................................................. 99
11.2 HDD Management ........................................................................................................... 100
11.3 Hot Spare Configuration .................................................................................................. 102
11.4 Working Mode Configuration .......................................................................................... 103
11.5 SSD Management ............................................................................................................. 103
11.6 Storage Health Detection ................................................................................................. 104
11.7 Others .............................................................................................................................. 105
Chapter 12 File Management .................................................................................................. 106
12.1 Video Files ........................................................................................................................ 106
12.2 Audio Files ........................................................................................................................ 107
12.3 Log Files ........................................................................................................................... 109
12.4 Download Files ................................................................................................................. 110
Chapter 13 Alarm/Event ......................................................................................................... 111
13.1 Configure Audio Detection Alarm .................................................................................... 111
13.2 Configure Exception Alarm .............................................................................................. 114
13.3 Configure Certificate Expiry Alarm ................................................................................... 114
13.4 Configure Network Traffic Pre-alarm ............................................................................... 117
13.5 Configure Motion Detection Alarm .................................................................................. 118
13.6 Configure Vibration Detection Alarm ............................................................................... 120
13.7 Receive Alarm/Event in Arming Mode ............................................................................. 123
13.8 Receive Alarm/Event in Listening Mode .......................................................................... 124
13.9 Subscribe Alarm/Event in Arming Mode .......................................................................... 127
Chapter 14 Parameter Configuration ....................................................................................... 129
14.1 I/O Settings ...................................................................................................................... 129
14.2 Video/Image Settings ....................................................................................................... 131
iv
Intelligent Security API (General) Developer Guide
14.3 Audio Settings .................................................................................................................. 136
14.4 Channel Settings .............................................................................................................. 137
14.5 Peripherals Settings ......................................................................................................... 140
14.6 Picture Storage Server Settings ........................................................................................ 140
Chapter 15 System Configuration ............................................................................................ 141
15.1 Basic Settings ................................................................................................................... 141
15.2 Network Settings .............................................................................................................. 141
15.2.1 Email ....................................................................................................................... 142
15.2.2 Network Access ....................................................................................................... 142
15.2.3 Network Interface ................................................................................................... 145
15.2.4 Wireless Network .................................................................................................... 146
15.2.5 Network Service ...................................................................................................... 149
15.3 Time Settings .................................................................................................................... 151
15.4 System Diagnose .............................................................................................................. 152
15.5 Data Replenishment ......................................................................................................... 152
Appendix A. Request URIs ...................................................................................................... 155
A.1 /ISAPI/AUXInfo ................................................................................................................... 155
A.1.1 /ISAPI/AUXInfo/attributes/Channels ........................................................................ 155
A.1.2 /ISAPI/AUXInfo/attributes/Channels/<ID> ............................................................... 155
A.2 /ISAPI/ContentMgmt ......................................................................................................... 156
A.2.1 /ISAPI/ContentMgmt/capabilities ............................................................................. 156
A.2.2 /ISAPI/ContentMgmt/download .............................................................................. 156
A.2.3 /ISAPI/ContentMgmt/download/capabilities ........................................................... 156
A.2.4 /ISAPI/ContentMgmt/download/toUSB/<taskId>/progress?format=json ............... 157
A.2.5 /ISAPI/ContentMgmt/download/toUSB/capabilities?format=json .......................... 157
A.2.6 /ISAPI/ContentMgmt/download/toUSB?format=json .............................................. 158
A.2.7 /ISAPI/ContentMgmt/InputProxy/channels ............................................................. 158
A.2.8 /ISAPI/ContentMgmt/InputProxy/channels/<ID> .................................................... 159
v
Intelligent Security API (General) Developer Guide
A.2.9 /ISAPI/ContentMgmt/InputProxy/channels/<ID>/capabilities ................................. 160
A.2.10 /ISAPI/ContentMgmt/InputProxy/channels/<ID>/chanCtrl .................................... 160
A.2.11 /ISAPI/ContentMgmt/InputProxy/channels/<ID>/deviceInfo ................................ 161
A.2.12 /ISAPI/ContentMgmt/InputProxy/channels/<ID>/portMapParam ........................ 162
A.2.13 /ISAPI/ContentMgmt/InputProxy/channels/<ID>/reboot ...................................... 162
A.2.14 /ISAPI/ContentMgmt/InputProxy/channels/<ID>/status ....................................... 163
A.2.15 /ISAPI/ContentMgmt/InputProxy/channels/<ID>/video/overlays ......................... 163
A.2.16 /ISAPI/ContentMgmt/InputProxy/channels/<ID>/video/overlays/capabilities ...... 164
A.2.17 /ISAPI/ContentMgmt/InputProxy/channels/activate ............................................. 164
A.2.18 /ISAPI/ContentMgmt/InputProxy/channels/activate/capabilities .......................... 165
A.2.19 /ISAPI/ContentMgmt/InputProxy/channels/capabilities ........................................ 165
A.2.20 /ISAPI/ContentMgmt/InputProxy/channels/status ................................................ 166
A.2.21 /ISAPI/ContentMgmt/InputProxy/deviceInfo ......................................................... 166
A.2.22 /ISAPI/ContentMgmt/InputProxy/search ............................................................... 166
A.2.23 /ISAPI/ContentMgmt/InputProxy/sourceCapability ............................................... 167
A.2.24 /ISAPI/ContentMgmt/IOProxy/inputs .................................................................... 167
A.2.25 /ISAPI/ContentMgmt/IOProxy/inputs/<ID> ............................................................ 168
A.2.26 /ISAPI/ContentMgmt/IOProxy/inputs/<ID>/status ................................................ 169
A.2.27 /ISAPI/ContentMgmt/IOProxy/outputs .................................................................. 169
A.2.28 /ISAPI/ContentMgmt/IOProxy/outputs/<ID> ......................................................... 170
A.2.29 /ISAPI/ContentMgmt/IOProxy/outputs/<ID>/status .............................................. 171
A.2.30 /ISAPI/ContentMgmt/IOProxy/outputs/<ID>/trigger ............................................. 171
A.2.31 /ISAPI/ContentMgmt/logConfig ............................................................................. 172
A.2.32 /ISAPI/ContentMgmt/logConfig/capabilities .......................................................... 172
A.2.33 /ISAPI/ContentMgmt/logSearch ............................................................................. 173
A.2.34 /ISAPI/ContentMgmt/logSearch?format=json ....................................................... 173
A.2.35 /ISAPI/ContentMgmt/logSearch/dataPackage ....................................................... 173
A.2.36 /ISAPI/ContentMgmt/PTZCtrlProxy/capabilities ..................................................... 174
vi
Intelligent Security API (General) Developer Guide
A.2.37 /ISAPI/ContentMgmt/PTZCtrlProxy/channels ........................................................ 174
A.2.38 /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID> ................................................ 175
A.2.39 /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/autoPan ................................. 176
A.2.40 /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/capabilities ............................ 176
A.2.41 /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/continuous ............................ 176
A.2.42 /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/momentary ........................... 177
A.2.43 /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/onepushfoucs/start ............... 177
A.2.44 /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/patrols ................................... 178
A.2.45 /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/patrols/<ID> .......................... 179
A.2.46 /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/patrols/<ID>/pause ............... 180
A.2.47 /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/patrols/<ID>/start ................. 180
A.2.48 /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/patrols/<ID>/status ............... 181
A.2.49 /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/patrols/<ID>/stop .................. 181
A.2.50 /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/position3D ............................. 182
A.2.51 /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/presets .................................. 182
A.2.52 /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/presets/<ID> ......................... 183
A.2.53 /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/presets/<ID>/goto ................. 184
A.2.54 /ISAPI/ContentMgmt/record/control/cleanUp/capabilities?format=json .............. 184
A.2.55 /ISAPI/ContentMgmt/record/control/cleanUp?format=json ................................. 185
A.2.56 /ISAPI/ContentMgmt/record/control/locks/capabilities ........................................ 185
A.2.57 /ISAPI/ContentMgmt/record/control/locks/name ................................................. 186
A.2.58 /ISAPI/ContentMgmt/record/control/manual/start/tracks/<ID> ........................... 186
A.2.59 /ISAPI/ContentMgmt/record/control/manual/stop/tracks/<ID> ........................... 187
A.2.60 /ISAPI/ContentMgmt/record/control/manualRefresh/channels/<ID> ................... 187
A.2.61 /ISAPI/ContentMgmt/record/control/remark/capabilities?format=json ............... 188
A.2.62 /ISAPI/ContentMgmt/record/control/remark?format=json ................................... 188
A.2.63 /ISAPI/ContentMgmt/record/profile ...................................................................... 188
A.2.64 /ISAPI/ContentMgmt/record/storageMounts ........................................................ 189
vii
Intelligent Security API (General) Developer Guide
A.2.65 /ISAPI/ContentMgmt/record/tracks ....................................................................... 189
A.2.66 /ISAPI/ContentMgmt/record/tracks/<ID> .............................................................. 190
A.2.67 /ISAPI/ContentMgmt/record/tracks/<ID>/capabilities ........................................... 191
A.2.68 /ISAPI/ContentMgmt/record/tracks/<ID>/dailyDistribution .................................. 191
A.2.69 /ISAPI/ContentMgmt/search .................................................................................. 192
A.2.70 /ISAPI/ContentMgmt/search/profile ...................................................................... 194
A.2.71 /ISAPI/ContentMgmt/security/logSearch ............................................................... 194
A.2.72 /ISAPI/ContentMgmt/SmartSearch ........................................................................ 194
A.2.73 /ISAPI/ContentMgmt/SmartSearch/capabilities ..................................................... 195
A.2.74 /ISAPI/ContentMgmt/spare/backup/<ID>?format=json ........................................ 195
A.2.75 /ISAPI/ContentMgmt/spare/backup?format=json ................................................. 196
A.2.76 /ISAPI/ContentMgmt/spare/capabilities?format=json ........................................... 197
A.2.77 /ISAPI/ContentMgmt/spare/master/<ID>?format=json ......................................... 198
A.2.78 /ISAPI/ContentMgmt/spare/master?format=json .................................................. 199
A.2.79 /ISAPI/ContentMgmt/spare?format=json .............................................................. 200
A.2.80 /ISAPI/ContentMgmt/storage ................................................................................. 200
A.2.81 /ISAPI/ContentMgmt/Storage/capabilities ............................................................. 201
A.2.82 /ISAPI/ContentMgmt/Storage/dataReconstruction/progress?format=json ........... 201
A.2.83 /ISAPI/ContentMgmt/Storage/dataReconstruction?format=json .......................... 202
A.2.84 /ISAPI/ContentMgmt/Storage/extension ............................................................... 202
A.2.85 /ISAPI/ContentMgmt/Storage/extension/capabilities ............................................ 203
A.2.86 /ISAPI/ContentMgmt/Storage/ExtraInfo ................................................................ 203
A.2.87 /ISAPI/ContentMgmt/Storage/ExtraInfo/capabilities ............................................. 204
A.2.88 /ISAPI/ContentMgmt/Storage/hdd ......................................................................... 204
A.2.89 /ISAPI/ContentMgmt/Storage/hdd/<ID> ................................................................ 204
A.2.90 /ISAPI/ContentMgmt/Storage/hdd/<ID>/BadSectorsTest/pause ........................... 205
A.2.91 /ISAPI/ContentMgmt/Storage/hdd/<ID>/BadSectorsTest/resume ........................ 205
A.2.92 /ISAPI/ContentMgmt/Storage/hdd/<ID>/BadSectorsTest/start ............................. 206
viii
Intelligent Security API (General) Developer Guide
A.2.93 /ISAPI/ContentMgmt/Storage/hdd/<ID>/BadSectorsTest/status ........................... 206
A.2.94 /ISAPI/ContentMgmt/Storage/hdd/<ID>/BadSectorsTest/stop ............................. 207
A.2.95 /ISAPI/ContentMgmt/Storage/hdd/<ID>/encryptFormat?format=json ................. 207
A.2.96 /ISAPI/ContentMgmt/Storage/hdd/<ID>/encryptVerfy?format=json .................... 208
A.2.97 /ISAPI/ContentMgmt/Storage/hdd/<ID>/formatStatus ......................................... 208
A.2.98 /ISAPI/ContentMgmt/Storage/hdd/<ID>/format?formatType= ............................. 209
A.2.99 /ISAPI/ContentMgmt/Storage/hdd/<ID>/logProTest?format=json ........................ 209
A.2.100 /ISAPI/ContentMgmt/Storage/hdd/<ID>/SMARTTest/start ................................. 210
A.2.101 /ISAPI/ContentMgmt/Storage/hdd/<ID>/SMARTTest/status ............................... 210
A.2.102 /ISAPI/ContentMgmt/Storage/hdd/capabilities ................................................... 211
A.2.103 /ISAPI/ContentMgmt/storage/hdd/clearingSpace/capabilities?format=json ...... 211
A.2.104 /ISAPI/ContentMgmt/storage/hdd/clearingSpace?format=json .......................... 212
A.2.105 /ISAPI/ContentMgmt/Storage/hdd/format .......................................................... 212
A.2.106 /ISAPI/ContentMgmt/Storage/hdd/SMARTTest/config ........................................ 213
A.2.107 /ISAPI/ContentMgmt/Storage/hdd/<ID>/syncStatus?format=json ...................... 213
A.2.108 /ISAPI/ContentMgmt/Storage/hdd/specifyHddFormat?format=json .................. 214
A.2.109 /ISAPI/ContentMgmt/Storage/quota ................................................................... 214
A.2.110 /ISAPI/ContentMgmt/Storage/quota/<ID> .......................................................... 214
A.2.111 /ISAPI/ContentMgmt/Storage/ssd ........................................................................ 215
A.2.112 /ISAPI/ContentMgmt/Storage/ssd/<ID> ............................................................... 215
A.2.113 /ISAPI/ContentMgmt/Storage/ssd/<ID>/capabilities?format=json ...................... 216
A.2.114 /ISAPI/ContentMgmt/Storage/ssd/<ID>/SMARTTest/status ................................ 216
A.2.115 /ISAPI/ContentMgmt/Storage/ssd/<ID>/SMARTTest/start .................................. 217
A.2.116 /ISAPI/ContentMgmt/Storage/ssd/<ID>/upgrade/status?format=json ............... 217
A.2.117 /ISAPI/ContentMgmt/Storage/ssd/<ID>/upgrade?format=json ........................... 218
A.2.118 /ISAPI/ContentMgmt/StreamingProxy/channels/<ID>/Picture ............................ 218
A.2.119 /ISAPI/ContentMgmt/StreamingProxy/channels/<ID>/capabilities ..................... 219
ix
Intelligent Security API (General) Developer Guide
A.2.120 /ISAPI/ContentMgmt/StreamingProxy/channels/<ID>/PictureByUrl/capabilities?
format=json ....................................................................................................................... 220
A.2.121 /ISAPI/ContentMgmt/StreamingProxy/channels/<ID>/PictureByUrl?format=json
............................................................................................................................................ 220
A.2.122 /ISAPI/ContentMgmt/time/search/capabilities?format=json .............................. 221
A.2.123 /ISAPI/ContentMgmt/time/search?format=json .................................................. 221
A.3 /ISAPI/Event ....................................................................................................................... 222
A.3.1 /ISAPI/Event/capabilities .......................................................................................... 222
A.3.2 /ISAPI/Event/channels/<ID>/capabilities .................................................................. 222
A.3.3 /ISAPI/Event/channels/capabilities .......................................................................... 222
A.3.4 /ISAPI/Event/notification/alertStream ..................................................................... 223
A.3.5 /ISAPI/Event/notification/httpHosts ......................................................................... 224
A.3.6 /ISAPI/Event/notification/httpHosts/<ID> ................................................................ 225
A.3.7 /ISAPI/Event/notification/httpHosts/<ID>/test ........................................................ 226
A.3.8 /ISAPI/Event/notification/httpHosts/capabilities ..................................................... 227
A.3.9 /ISAPI/Event/notification/subscribeEvent ................................................................ 227
A.3.10 /ISAPI/Event/notification/subscribeEvent/<ID> ..................................................... 228
A.3.11 /ISAPI/Event/notification/subscribeEventCap ........................................................ 228
A.3.12 /ISAPI/Event/notification/unSubscribeEvent .......................................................... 229
A.3.13 /ISAPI/Event/schedules/motionDetections ............................................................ 229
A.3.14 /ISAPI/Event/schedules/motionDetections/<ID> ................................................... 230
A.3.15 /ISAPI/Event/schedules/vibrationDetection/<ID> .................................................. 230
A.3.16 /ISAPI/Event/schedules/<EventType>/<ID> ........................................................... 231
A.3.17 /ISAPI/Event/triggers/hdBadBlock .......................................................................... 232
A.3.18 /ISAPI/Event/triggers/hdImpact ............................................................................. 232
A.3.19 /ISAPI/Event/triggers/highHDTemperature ............................................................ 233
A.3.20 /ISAPI/Event/triggers/lowHDTemperature ............................................................. 234
A.3.21 /ISAPI/Event/triggers/severeHDFailure .................................................................. 234
A.3.22 /ISAPI/Event/triggers/<eventType>-<ID> ............................................................... 235
x
Intelligent Security API (General) Developer Guide
A.3.23 /ISAPI/Event/triggers/<ID>/notifications ................................................................ 236
A.3.24 /ISAPI/Event/triggers/notifications/AudioAlarm/<audioID>/test?format=json ..... 237
A.3.25 /ISAPI/Event/triggers/notifications/AudioAlarm/capabilities?format=json ........... 237
A.3.26 /ISAPI/Event/triggers/notifications/AudioAlarm/customAudio/<customAudioID>?
format=json ....................................................................................................................... 238
A.3.27 /ISAPI/Event/triggers/notifications/AudioAlarm/customAudioInfo/channels/
<channelID>?format=json .................................................................................................. 238
A.3.28 /ISAPI/Event/triggers/notifications/AudioAlarm/customAudio?format=json ........ 239
A.3.29 /ISAPI/Event/triggers/notifications/AudioAlarm/customAudioInfo/
<customAudioID>?format=json ......................................................................................... 239
A.3.30 /ISAPI/Event/triggers/notifications/AudioAlarm/customAudioInfo?format=json .. 240
A.3.31 /ISAPI/Event/triggers/notifications/AudioAlarm/customAudioTypeInfo/channels?
format=json ....................................................................................................................... 241
A.3.32 /ISAPI/Event/triggers/notifications/AudioAlarm?format=json ............................... 241
A.3.33 /ISAPI/Event/triggers/notifications/channels/<ID>/AudioAlarm/capabilities?
format=json ....................................................................................................................... 242
A.3.34 /ISAPI/Event/triggers/notifications/whiteLightAlarm?format=json ....................... 242
A.3.35 /ISAPI/Event/triggers/notifications/whiteLightAlarm/capabilities?format=json .... 243
A.3.36 /ISAPI/Event/triggersCap ........................................................................................ 243
A.3.37 http://<ipAddress>:<portNo>/<url> ....................................................................... 244
A.4 /ISAPI/Image ...................................................................................................................... 244
A.4.1 /ISAPI/Image/channels ............................................................................................. 244
A.4.2 /ISAPI/Image/channels/<ID> .................................................................................... 245
A.4.3 /ISAPI/Image/channels/<ID>/BLC ............................................................................. 246
A.4.4 /ISAPI/Image/channels/<ID>/capabilities ................................................................. 246
A.4.5 /ISAPI/Image/channels/<ID>/capturemode ............................................................. 247
A.4.6 /ISAPI/Image/channels/<ID>/color ........................................................................... 247
A.4.7 /ISAPI/Image/channels/<ID>/color/capabilities ....................................................... 248
A.4.8 /ISAPI/Image/channels/<ID>/corridor ...................................................................... 248
A.4.9 /ISAPI/Image/channels/<ID>/dehaze ....................................................................... 249
xi
Intelligent Security API (General) Developer Guide
A.4.10 /ISAPI/Image/channels/<ID>/EPTZ ......................................................................... 250
A.4.11 /ISAPI/Image/channels/<ID>/EPTZ/mode/capabilities?format=json ..................... 251
A.4.12 /ISAPI/Image/channels/<ID>/EPTZ/mode?format=json ......................................... 251
A.4.13 /ISAPI/Image/channels/<ID>/exposure .................................................................. 252
A.4.14 /ISAPI/Image/channels/<ID>/focusConfiguration .................................................. 252
A.4.15 /ISAPI/Image/channels/<ID>/focusConfiguration/capabilities ............................... 253
A.4.16 /ISAPI/Image/channels/<ID>/focusConfiguration/status?format=json .................. 253
A.4.17 /ISAPI/Image/channels/<ID>/gain .......................................................................... 254
A.4.18 /ISAPI/Image/channels/<ID>/imageCap ................................................................. 255
A.4.19 /ISAPI/Image/channels/<ID>/ImageFlip ................................................................. 255
A.4.20 /ISAPI/Image/channels/<ID>/imageMode/<ID> .................................................... 256
A.4.21 /ISAPI/Image/channels/<ID>/imageModes ............................................................ 256
A.4.22 /ISAPI/Image/channels/<ID>/IrcutFilter ................................................................. 256
A.4.23 /ISAPI/Image/channels/<ID>/ISPMode .................................................................. 257
A.4.24 /ISAPI/Image/channels/<ID>/lensDistortionCorrection ......................................... 258
A.4.25 /ISAPI/Image/channels/<ID>/lensDistortionCorrection/capabilities ...................... 259
A.4.26 /ISAPI/Image/channels/<ID>/mountingScenario ................................................... 259
A.4.27 /ISAPI/Image/channels/<ID>/mountingScenario/capabilities ................................ 260
A.4.28 /ISAPI/Image/channels/<ID>/noiseReduce ............................................................ 260
A.4.29 /ISAPI/Image/channels/<ID>/Palettes .................................................................... 261
A.4.30 /ISAPI/Image/channels/<ID>/powerLineFrequency ............................................... 261
A.4.31 /ISAPI/Image/channels/<ID>/regionalFocus .......................................................... 262
A.4.32 /ISAPI/Image/channels/<ID>/reset ........................................................................ 263
A.4.33 /ISAPI/Image/channels/<ID>/restore ..................................................................... 263
A.4.34 /ISAPI/Image/channels/<ID>/sharpness ................................................................. 263
A.4.35 /ISAPI/Image/channels/<ID>/shutter ..................................................................... 264
A.4.36 /ISAPI/Image/channels/<ID>/supplementLight ...................................................... 265
A.4.37 /ISAPI/Image/channels/<ID>/supplementLight/capabilities .................................. 266
xii
Intelligent Security API (General) Developer Guide
A.4.38 /ISAPI/Image/channels/<ID>/targetEnhancement ................................................. 266
A.4.39 /ISAPI/Image/channels/<ID>/targetEnhancement/capabilities ............................. 267
A.4.40 /ISAPI/Image/channels/<ID>/tempRange .............................................................. 267
A.4.41 /ISAPI/Image/channels/<ID>/tempRange/capabilities ........................................... 268
A.4.42 /ISAPI/Image/channels/<ID>/WDR ......................................................................... 268
A.4.43 /ISAPI/Image/channels/<ID>/whiteBalance ........................................................... 269
A.4.44 /ISAPI/Image/channels/capabilities ........................................................................ 270
A.4.45 /ISAPI/Image/channels/imageModes ..................................................................... 270
A.4.46 /ISAPI/Image/channels/imageModes/<ID> ............................................................ 271
A.5 /ISAPI/MasterSlaveTracking ............................................................................................... 271
A.5.1 /ISAPI/MasterSlaveTracking/capabilities .................................................................. 271
A.5.2 /ISAPI/MasterSlaveTracking/channels/<ID>/slaveCamera/<ID> .............................. 272
A.5.3 /ISAPI/MasterSlaveTracking/channels/<ID>/slaveCamera/<ID>/tracking ................ 272
A.5.4 /ISAPI/MasterSlaveTracking/channels/<ID>/slaveCamera/<ID>/trackingRatio ........ 273
A.5.5 /ISAPI/MasterSlaveTracking/channels/<ID>/slaveCamera/capabilities .................... 273
A.5.6 /ISAPI/MasterSlaveTracking/channels/<ID>/slaveCameraStatus ............................. 274
A.5.7 /ISAPI/MasterSlaveTracking/channels/<ID>/tracking/capabilities ........................... 274
A.5.8 /ISAPI/MasterSlaveTracking/linkedTracking/capabilities?format=json .................... 275
A.5.9 /ISAPI/MasterSlaveTracking/linkedTracking?format=json ........................................ 275
A.6 /ISAPI/SDT ......................................................................................................................... 276
A.6.1 /ISAPI/SDT/Management/capabilities?format=json ................................................. 276
A.6.2 /ISAPI/SDT/Management/IntelligentSearch/capabilities?format=json .................... 276
A.6.3 /ISAPI/SDT/Management/IntelligentSearch?format=json ........................................ 276
A.7 /ISAPI/PTZCtrl .................................................................................................................... 277
A.7.1 /ISAPI/PTZCtrl/channels/<ID> ................................................................................... 277
A.7.2 /ISAPI/PTZCtrl/channels/<ID>/auxcontrols .............................................................. 278
A.7.3 /ISAPI/PTZCtrl/channels/<ID>/auxcontrols/<ID> ...................................................... 278
A.7.4 /ISAPI/PTZCtrl/channels/<ID>/capabilities ............................................................... 279
xiii
Intelligent Security API (General) Developer Guide
A.7.5 /ISAPI/PTZCtrl/channels/<ID>/EagleFocusing/auto/capabilities?format=json ......... 279
A.7.6 /ISAPI/PTZCtrl/channels/<ID>/EagleFocusing/auto?format=json ............................ 280
A.7.7 /ISAPI/PTZCtrl/channels/<ID>/EagleFocusing/capabilities ....................................... 280
A.7.8 /ISAPI/PTZCtrl/channels/<ID>/GPS?format=json ..................................................... 281
A.7.9 /ISAPI/PTZCtrl/channels/<ID>/gyroVerify/capabilities?format=json ........................ 281
A.7.10 /ISAPI/PTZCtrl/channels/<ID>/gyroVerify?format=json ......................................... 282
A.7.11 /ISAPI/PTZCtrl/channels/<ID>/lensCorrection/capabilities?format=json ............... 282
A.7.12 /ISAPI/PTZCtrl/channels/<ID>/lensCorrection?format=json .................................. 283
A.7.13 /ISAPI/PTZCtrl/channels/<ID>/lockPTZ ................................................................... 283
A.7.14 /ISAPI/PTZCtrl/channels/<ID>/maxelevation .......................................................... 284
A.7.15 /ISAPI/PTZCtrl/channels/<ID>/maxelevation/capabilities ...................................... 285
A.7.16 /ISAPI/PTZCtrl/channels/<ID>/moveAutoTracking?format=json ............................ 285
A.7.17 /ISAPI/PTZCtrl/channels/<ID>/onepushfoucs/reset ............................................... 286
A.7.18 /ISAPI/PTZCtrl/channels/<ID>/parkaction .............................................................. 286
A.7.19 /ISAPI/PTZCtrl/channels/<ID>/parkaction/capabilities .......................................... 287
A.7.20 /ISAPI/PTZCtrl/Channels/<ID>/position3D ............................................................. 287
A.7.21 /ISAPI/PTZCtrl/channels/<ID>/presets ................................................................... 288
A.7.22 /ISAPI/PTZCtrl/channels/<ID>/presets/<ID> .......................................................... 288
A.7.23 /ISAPI/PTZCtrl/channels/<ID>/PTZOSDDisplay ....................................................... 289
A.7.24 /ISAPI/PTZCtrl/channels/<ID>/save ........................................................................ 290
A.7.25 /ISAPI/PTZCtrl/channels/<ID>/save?format=json ................................................... 290
A.7.26 /ISAPI/PTZCtrl/channels/<ID>/saveptzpoweroff .................................................... 291
A.7.27 /ISAPI/PTZCtrl/channels/<ID>/status ..................................................................... 292
A.7.28 /ISAPI/PTZCtrl/channels/<ID>/trackingRatio/capabilities?format=json ................. 292
A.7.29 /ISAPI/PTZCtrl/channels/<ID>/trackingRatio?format=json .................................... 292
A.7.30 /ISAPI/PTZCtrl/channels/<ID>/zoomFocus ............................................................. 293
A.8 /ISAPI/Security ................................................................................................................... 294
A.8.1 /ISAPI/Security/adminAccesses ................................................................................ 294
xiv
Intelligent Security API (General) Developer Guide
A.8.2 /ISAPI/Security/adminAccesses/<ID> ....................................................................... 294
A.8.3 /ISAPI/Security/adminAccesses/capabilities ............................................................ 295
A.8.4 /ISAPI/Security/advanced?format=json ................................................................... 295
A.8.5 /ISAPI/Security/capabilities ...................................................................................... 296
A.8.6 /ISAPI/Security/certificate/select/<functinName>?format=json ............................. 296
A.8.7 /ISAPI/Security/certificate/select/capabilities?format=json .................................... 297
A.8.8 /ISAPI/Security/challenge ......................................................................................... 297
A.8.9 /ISAPI/Security/CommuMode/capabilities?format=json ......................................... 298
A.8.10 /ISAPI/Security/CommuMode?format=json ........................................................... 298
A.8.11 /ISAPI/Security/deviceCertificate ........................................................................... 299
A.8.12 /ISAPI/Security/deviceCertificate/capabilities?format=json .................................. 299
A.8.13 /ISAPI/Security/deviceCertificate/certificateRevocation/capabilities?format=json
............................................................................................................................................ 300
A.8.14 /ISAPI/Security/deviceCertificate/certificateRevocation?format=json .................. 300
A.8.15 /ISAPI/Security/deviceCertificate/certificates/<customID>?format=json .............. 301
A.8.16 /ISAPI/Security/deviceCertificate/certificates/<ID> ............................................... 301
A.8.17 /ISAPI/Security/deviceCertificate/certificates/<ID>/recreate?format=json ........... 302
A.8.18 /ISAPI/Security/deviceCertificate/certificates/<ID>/status?format=json ............... 302
A.8.19 /ISAPI/Security/deviceCertificate/certificates/capabilities?format=json ............... 303
A.8.20 /ISAPI/Security/deviceCertificate/certificates/recreate?format=json .................... 303
A.8.21 /ISAPI/Security/deviceCertificate/certificates/status?format=json ........................ 304
A.8.22 /ISAPI/Security/deviceCertificate/certificates?format=json ................................... 304
A.8.23 /ISAPI/Security/deviceCertificate/selfSignCert ....................................................... 305
A.8.24 /ISAPI/Security/deviceCertificate?customID= ........................................................ 305
A.8.25 /ISAPI/Security/doubleVerification/users/<ID>?format=json ................................ 306
A.8.26 /ISAPI/Security/doubleVerification/users/capabilities?format=json ...................... 307
A.8.27 /ISAPI/Security/doubleVerification/users?format=json ......................................... 307
A.8.28 /ISAPI/Security/doubleVerification/UsersPermission/<ID>?format=json .............. 308
xv
Intelligent Security API (General) Developer Guide
A.8.29 /ISAPI/Security/doubleVerification/UsersPermission/capabilities?format=json .... 309
A.8.30 /ISAPI/Security/doubleVerification?format=json ................................................... 310
A.8.31 /ISAPI/Security/email/parameter/capabilities?format=json .................................. 310
A.8.32 /ISAPI/Security/email/parameter?format=json ..................................................... 311
A.8.33 /ISAPI/Security/email/qrCode?format=json ........................................................... 312
A.8.34 /ISAPI/Security/emailCertification?format=json .................................................... 312
A.8.35 /ISAPI/Security/extern/capabilities ........................................................................ 313
A.8.36 /ISAPI/Security/illegalLoginLock ............................................................................. 313
A.8.37 /ISAPI/Security/loginLinkNum?format=json ........................................................... 314
A.8.38 /ISAPI/Security/onlineUser ..................................................................................... 314
A.8.39 /ISAPI/Security/questionConfiguration .................................................................. 315
A.8.40 /ISAPI/Security/RTSPCertificate .............................................................................. 315
A.8.41 /ISAPI/Security/RTSPCertificate/capabilities .......................................................... 316
A.8.42 /ISAPI/Security/serverCertificate/capabilities?format=json ................................... 316
A.8.43 /ISAPI/Security/serverCertificate/certificate .......................................................... 317
A.8.44 /ISAPI/Security/serverCertificate/certificate?customID= ....................................... 318
A.8.45 /ISAPI/Security/serverCertificate/certificates?format=json ................................... 319
A.8.46 /ISAPI/Security/serverCertificate/certificates/<customID>?format=json .............. 319
A.8.47 /ISAPI/Security/serverCertificate/certSignReq ....................................................... 320
A.8.48 /ISAPI/Security/serverCertificate/certSignReq?customID= .................................... 321
A.8.49 /ISAPI/Security/serverCertificate/downloadCertSignReq ...................................... 321
A.8.50 /ISAPI/Security/serverCertificate/downloadCertSignReq?customID= ................... 322
A.8.51 /ISAPI/Security/serverCertificate/selfSignCert?customID= .................................... 322
A.8.52 /ISAPI/Security/userCheck ...................................................................................... 323
A.8.53 /ISAPI/Security/UserPermission ............................................................................. 323
A.8.54 /ISAPI/Security/UserPermission/<ID> .................................................................... 324
A.8.55 /ISAPI/Security/UserPermission/<ID>/localPermission .......................................... 324
A.8.56 /ISAPI/Security/UserPermission/<ID>/remotePermission ..................................... 325
xvi
Intelligent Security API (General) Developer Guide
A.8.57 /ISAPI/Security/UserPermission/adminCap ........................................................... 326
A.8.58 /ISAPI/Security/UserPermission/anonymouslogin ................................................. 326
A.8.59 /ISAPI/Security/UserPermission/capabilities .......................................................... 327
A.8.60 /ISAPI/Security/UserPermission/operatorCap ........................................................ 327
A.8.61 /ISAPI/Security/UserPermission/viewerCap ........................................................... 328
A.8.62 /ISAPI/Security/users .............................................................................................. 328
A.8.63 /ISAPI/Security/users/<ID> ..................................................................................... 332
A.8.64 /ISAPI/Security/users/<ID>/capabilities ................................................................. 333
A.8.65 /ISAPI/Security/webCertificate ............................................................................... 334
A.8.66 /ISAPI/SecurityCP/ReportCenterCfg/capabilities?format=json .............................. 334
A.8.67 /ISAPI/SecurityCP/ReportCenterCfg/<ID>?format=json ......................................... 335
A.9 /ISAPI/Smart ...................................................................................................................... 335
A.9.1 /ISAPI/Smart/capabilities .......................................................................................... 335
A.9.2 /ISAPI/Smart/AudioDetection/channels/<ID> .......................................................... 336
A.9.3 /ISAPI/Smart/AudioDetection/channels/<ID>/capabilities ...................................... 336
A.9.4 /ISAPI/Smart/AudioDetection/channels/<ID>/status ............................................... 337
A.9.5 /ISAPI/Smart/storageDetection/rwlock .................................................................... 337
A.9.6 /ISAPI/Smart/storageDetection/rwlock/capabilities ................................................ 338
A.9.7 /ISAPI/Smart/storageDetection ................................................................................ 338
A.10 /ISAPI/Snapshot ............................................................................................................... 339
A.10.1 /ISAPI/Snapshot/channels ...................................................................................... 339
A.10.2 /ISAPI/Snapshot/channels/<ID> ............................................................................. 339
A.10.3 /ISAPI/Snapshot/channels/<ID>/capabilities .......................................................... 340
A.11 /ISAPI/Streaming ............................................................................................................. 341
A.11.1 /ISAPI/Streaming/channels .................................................................................... 341
A.11.2 /ISAPI/Streaming/channels/<ID> ............................................................................ 342
A.11.3 /ISAPI/Streaming/channels/<ID>/capabilities ........................................................ 344
A.11.4 /ISAPI/Streaming/channels/<ID>/dynamicCap ...................................................... 345
xvii
Intelligent Security API (General) Developer Guide
A.11.5 /ISAPI/Streaming/channels/<ID>/picture ............................................................... 346
A.11.6 /ISAPI/Streaming/channels/<ID>/regionClip .......................................................... 347
A.11.7 /ISAPI/Streaming/channels/<ID>/regionClip/capabilities ...................................... 348
A.11.8 /ISAPI/Streaming/channels/<ID>/smartOverlap/capabilities?format=json ........... 348
A.11.9 /ISAPI/Streaming/channels/<ID>/smartOverlap?format=json ............................... 349
A.11.10 /ISAPI/Streaming/channels/<ID>/status .............................................................. 349
A.11.11 /ISAPI/Streaming/encryption/capabilities?format=json ...................................... 350
A.11.12 /ISAPI/Streaming/encryption/secretKey?format=json ......................................... 350
A.11.13 /ISAPI/Streaming/encryption?format=json .......................................................... 351
A.11.14 /ISAPI/Streaming/status ....................................................................................... 352
A.11.15 rtsp://<host>[:port]/ISAPI/Streaming/channels/<ID> .......................................... 352
A.11.16 rtsp://<host>[:port]/ISAPI/Streaming/channels/<ID>?npq= ................................ 353
A.11.17 rtsp://<host>[:port]/ISAPI/Streaming/tracks/<ID>?starttime=&endtime= .......... 355
A.12 /ISAPI/System .................................................................................................................. 357
A.12.1 /ISAPI/System/AcsUpdate/capabilities ................................................................... 357
A.12.2 /ISAPI/System/activate ........................................................................................... 357
A.12.3 /ISAPI/System/algorithmsInfo/capabilities?format=json ....................................... 357
A.12.4 /ISAPI/System/algorithmsInfo?format=json ........................................................... 358
A.12.5 /ISAPI/System/algorithmsVersion ........................................................................... 358
A.12.6 /ISAPI/System/Audio/AudioIn ................................................................................ 359
A.12.7 /ISAPI/System/Audio/AudioIn/capabilities ............................................................. 359
A.12.8 /ISAPI/System/Audio/AudioIn/channels/<ID> ........................................................ 360
A.12.9 /ISAPI/System/Audio/AudioIn/channels/<ID>/capabilities .................................... 360
A.12.10 /ISAPI/System/Audio/AudioOut/channels/<ID> ................................................... 361
A.12.11 /ISAPI/System/Audio/AudioOut/channels/<ID>/capabilities ............................... 361
A.12.12 /ISAPI/System/Audio/capabilities ......................................................................... 362
A.12.13 /ISAPI/System/Audio/channels ............................................................................. 362
A.12.14 /ISAPI/System/Audio/channels/<ID> .................................................................... 363
xviii
Intelligent Security API (General) Developer Guide
A.12.15 /ISAPI/System/Audio/channels/<ID>/dynamicCap .............................................. 363
A.12.16 /ISAPI/System/autoMaintenance/capabilities?format=json ................................ 364
A.12.17 /ISAPI/System/autoMaintenance?format=json .................................................... 364
A.12.18 /ISAPI/System/autoSwitch/capabilities?format=json ........................................... 364
A.12.19 /ISAPI/System/autoSwitch?format=json .............................................................. 365
A.12.20 /ISAPI/System/Bluetooth/capabilities .................................................................. 365
A.12.21 /ISAPI/System/Bluetooth/ibeaconParam ............................................................. 366
A.12.22 /ISAPI/System/Bluetooth/ibeaconParam/capabilities .......................................... 366
A.12.23 /ISAPI/System/capabilities .................................................................................... 367
A.12.24 /ISAPI/System/channels/<ID>/vibrationDetection/capabilities?format=json ...... 367
A.12.25 /ISAPI/System/channels/<ID>/vibrationDetection?format=json .......................... 368
A.12.26 /ISAPI/System/configurationData?secretkey= ...................................................... 368
A.12.27 /ISAPI/System/configurationData?type= .............................................................. 370
A.12.28 /ISAPI/System/deviceInfo ..................................................................................... 371
A.12.29 /ISAPI/System/deviceInfo/capabilities ................................................................. 372
A.12.30 /ISAPI/System/deviceInfo/characteristicCode?format=json ................................ 372
A.12.31 /ISAPI/System/DeviceLanguage ............................................................................ 373
A.12.32 /ISAPI/System/DeviceLanguage/capabilities ........................................................ 373
A.12.33 /ISAPI/System/diagnosedData .............................................................................. 374
A.12.34 /ISAPI/System/diagnosedData/exportStatus ........................................................ 374
A.12.35 /ISAPI/System/diagnosedData/parameter ........................................................... 375
A.12.36 /ISAPI/System/diagnosedData/parameter/capabilities ........................................ 375
A.12.37 /ISAPI/System/diagnosedData/server/capabilities?format=json ......................... 376
A.12.38 /ISAPI/System/diagnosedData/server?format=json ............................................. 376
A.12.39 /ISAPI/System/diagnosedData/server/test?format=json ..................................... 377
A.12.40 /ISAPI/System/diagnosis/capabilities?format=json .............................................. 378
A.12.41 /ISAPI/System/diagnosis?format=json ................................................................. 378
A.12.42 /ISAPI/System/discoveryMode ............................................................................. 379
xix
Intelligent Security API (General) Developer Guide
A.12.43 /ISAPI/System/discoveryMode/capabilities ......................................................... 379
A.12.44 /ISAPI/System/doubleLensParking/capabilities .................................................... 380
A.12.45 /ISAPI/System/dumpData ..................................................................................... 380
A.12.46 /ISAPI/System/exportLogToUSB/capabilities?format=json .................................. 380
A.12.47 /ISAPI/System/exportLogToUSB/mode?format=json ........................................... 381
A.12.48 /ISAPI/System/exportLogToUSB/status?format=json ........................................... 381
A.12.49 /ISAPI/System/exportUSBLog/capabilities?format=json ...................................... 382
A.12.50 /ISAPI/System/exportUSBLog/status?format=json .............................................. 382
A.12.51 /ISAPI/System/exportUSBLog?format=json .......................................................... 382
A.12.52 /ISAPI/System/externalDevice/capabilities .......................................................... 383
A.12.53 /ISAPI/System/factoryReset?mode= .................................................................... 383
A.12.54 /ISAPI/System/fileExport/capabilities?format=json ............................................. 384
A.12.55 /ISAPI/System/fileExport?format=json ................................................................. 384
A.12.56 /ISAPI/System/firmwareCodeV2 ........................................................................... 385
A.12.57 /ISAPI/System/GPSCalibratation/channels/<ID>/capabilities?format=json ......... 385
A.12.58 /ISAPI/System/GPSCalibratation/channels/<ID>/points/<PID>?format=json ...... 385
A.12.59 /ISAPI/System/GPSCalibratation/channels/<ID>/points/status?format=json ...... 386
A.12.60 /ISAPI/System/GPSCalibratation/channels/<ID>/points?format=json ................. 387
A.12.61 /ISAPI/System/GPSPTZCalibratation/channels/<ID>/calibratation?format=json . 388
A.12.62 /ISAPI/System/GPSVerification/channels/<ID>/display?format=json .................. 388
A.12.63 /ISAPI/System/GPSVerification/channels/<ID>/points/<ID>?format=json .......... 389
A.12.64 /ISAPI/System/GPSVerification/channels/<ID>/points/capabilities?format=json
............................................................................................................................................ 390
A.12.65 /ISAPI/System/GPSVerification/channels/<ID>/points/resultInfo?format=json .. 390
A.12.66 /ISAPI/System/GPSVerification/channels/<ID>/points?format=json ................... 391
A.12.67 /ISAPI/System/guardAgainstTheft ........................................................................ 392
A.12.68 /ISAPI/System/guardAgainstTheft/capabilities ..................................................... 393
A.12.69 /ISAPI/System/guideConfig/<guideEvent>/capabilities?format=json .................. 393
xx
Intelligent Security API (General) Developer Guide
A.12.70 /ISAPI/System/guideConfig/<guideEvent>?format=json ...................................... 394
A.12.71 /ISAPI/System/Hardware ...................................................................................... 394
A.12.72 /ISAPI/System/Hardware/defog ........................................................................... 395
A.12.73 /ISAPI/System/installationAngleCalibration/channels/<ID>/capabilities?format=json
............................................................................................................................................ 395
A.12.74 /ISAPI/System/installationAngleCalibration/channels/<ID>?format=json ........... 396
A.12.75 /ISAPI/System/IO .................................................................................................. 396
A.12.76 /ISAPI/System/IO/capabilities ............................................................................... 397
A.12.77 /ISAPI/System/IO/inputs ...................................................................................... 397
A.12.78 /ISAPI/System/IO/inputs/<ID> .............................................................................. 398
A.12.79 /ISAPI/System/IO/inputs/<ID>/status .................................................................. 398
A.12.80 /ISAPI/System/IO/inputs/capabilities ................................................................... 399
A.12.81 /ISAPI/System/IO/outputs .................................................................................... 399
A.12.82 /ISAPI/System/IO/outputs/capabilities ................................................................. 399
A.12.83 /ISAPI/System/IO/outputs/<ID> ........................................................................... 400
A.12.84 /ISAPI/System/IO/outputs/<ID>/status ................................................................ 400
A.12.85 /ISAPI/System/IO/outputs/<ID>/trigger ............................................................... 401
A.12.86 /ISAPI/System/IO/softInputs/<ID>?format=json .................................................. 401
A.12.87 /ISAPI/System/IO/softInputs?format=json ........................................................... 402
A.12.88 /ISAPI/System/IO/status ....................................................................................... 402
A.12.89 /ISAPI/System/laserOpticalAxis/capabilities?format=json ................................... 402
A.12.90 /ISAPI/System/laserOpticalAxis/goto?format=json .............................................. 403
A.12.91 /ISAPI/System/laserOpticalAxis?format=json ....................................................... 403
A.12.92 /ISAPI/System/logServer ...................................................................................... 404
A.12.93 /ISAPI/System/logServer/capabilities ................................................................... 404
A.12.94 /ISAPI/System/logServer/test ............................................................................... 405
A.12.95 /ISAPI/System/Network/adaption/capabilities?format=json ............................... 405
A.12.96 /ISAPI/System/Network/adaption?format=json&streamType= ........................... 406
xxi
Intelligent Security API (General) Developer Guide
A.12.97 /ISAPI/System/Network/Bond .............................................................................. 406
A.12.98 /ISAPI/System/Network/Bond/<ID> ..................................................................... 407
A.12.99 /ISAPI/System/Network/capabilities .................................................................... 407
A.12.100 /ISAPI/System/Network/channels/<ID>/buletooth/status ................................. 408
A.12.101 /ISAPI/System/Network/DDNS ........................................................................... 409
A.12.102 /ISAPI/System/Network/DDNS/capabilities ....................................................... 409
A.12.103 /ISAPI/System/Network/DDNS/<ID> .................................................................. 410
A.12.104 /ISAPI/System/Network/DDNS/<ID>/capabilities ............................................... 410
A.12.105 /ISAPI/System/Network/Ehome ......................................................................... 411
A.12.106 /ISAPI/System/Network/Ehome/capabilities ..................................................... 411
A.12.107 /ISAPI/System/Network/Ehome?centerID= ....................................................... 412
A.12.108 /ISAPI/System/Network/EZVIZ ........................................................................... 413
A.12.109 /ISAPI/System/Network/EZVIZ/QRCode ............................................................. 413
A.12.110 /ISAPI/System/Network/EZVIZ/QRCode?format=json ....................................... 414
A.12.111 /ISAPI/System/Network/EZVIZ/capabilities ........................................................ 415
A.12.112 /ISAPI/System/Network/EZVIZ/secretKey?format=json ..................................... 415
A.12.113 /ISAPI/System/Network/EZVIZ/unbind?format=json ......................................... 415
A.12.114 /ISAPI/System/Network/ftp ................................................................................ 416
A.12.115 /ISAPI/System/Network/ftp/<ID> ....................................................................... 417
A.12.116 /ISAPI/System/Network/ftp/capabilities ............................................................ 417
A.12.117 /ISAPI/System/Network/ftp/test ........................................................................ 418
A.12.118 /ISAPI/System/Network/interfaces .................................................................... 418
A.12.119 /ISAPI/System/Network/interfaces/<ID> ........................................................... 419
A.12.120 /ISAPI/System/Network/interfaces/<ID>/capabilities ........................................ 420
A.12.121 /ISAPI/System/Network/interfaces/<ID>/discovery ........................................... 420
A.12.122 /ISAPI/System/Network/interfaces/<ID>/discovery/capabilities ....................... 421
A.12.123 /ISAPI/System/Network/interfaces/<ID>/dynamicHostName?format=json ...... 421
xxii
Intelligent Security API (General) Developer Guide
A.12.124 /ISAPI/System/Network/interfaces/<ID>/dynamicHostName/capabilities?
format=json ....................................................................................................................... 422
A.12.125 /ISAPI/System/Network/interfaces/<ID>/ieee802.1x ........................................ 422
A.12.126 /ISAPI/System/Network/interfaces/<ID>/ieee802.1x/capabilities ..................... 423
A.12.127 /ISAPI/System/Network/interfaces/<ID>/ipAddress .......................................... 423
A.12.128 /ISAPI/System/Network/interfaces/<ID>/ipAddress/capabilities ....................... 425
A.12.129 /ISAPI/System/Network/interfaces/<ID>/link .................................................... 425
A.12.130 /ISAPI/System/Network/interfaces/<ID>/link/capabilities ................................. 426
A.12.131 /ISAPI/System/Network/interfaces/<ID>/NetworkMode ................................... 426
A.12.132 /ISAPI/System/Network/interfaces/<ID>/wireless ............................................. 427
A.12.133 /ISAPI/System/Network/interfaces/<ID>/wireless/accessDeviceList/<ID> ........ 428
A.12.134 /ISAPI/System/Network/interfaces/<ID>/wireless/accessDeviceList/capabilities
............................................................................................................................................ 428
A.12.135 /ISAPI/System/Network/interfaces/<ID>/wireless/accessPointList ................... 429
A.12.136 /ISAPI/System/Network/interfaces/<ID>/wireless/accessPointList/<ID> .......... 429
A.12.137 /ISAPI/System/Network/interfaces/<ID>/wireless/capabilities ......................... 429
A.12.138 /ISAPI/System/Network/interfaces/<ID>/wireless/connectStatus ..................... 430
A.12.139 /ISAPI/System/Network/interfaces/<ID>/wirelessServer ................................... 430
A.12.140 /ISAPI/System/Network/interfaces/<ID>/wirelessServer/accessDeviceList ....... 431
A.12.141 /ISAPI/System/Network/interfaces/<ID>/wirelessServer/capabilities ............... 432
A.12.142 /ISAPI/System/Network/interfaces/<ID>/wirelessServerStatus ......................... 432
A.12.143 /ISAPI/System/Network/interfaces/<ID>/wirelessServerStatus/capabilities ..... 433
A.12.144 /ISAPI/System/Network/interfaces/<ID>/wirelessStatus ................................... 433
A.12.145 /ISAPI/System/Network/interfaces/<ID>/wirelessStatus/capabilities ............... 434
A.12.146 /ISAPI/System/Network/interfaces/<ID>/WPS ................................................... 434
A.12.147 /ISAPI/System/Network/interfaces/<ID>/WPS/ApPinCode ............................... 435
A.12.148 /ISAPI/System/Network/interfaces/<ID>/WPS/AutoConnect ............................ 436
A.12.149 /ISAPI/System/Network/interfaces/<ID>/WPS/devicePinCode ......................... 436
A.12.150 /ISAPI/System/Network/interfaces/<ID>/WPS/devicePinCodeUpdate .............. 437
xxiii
Intelligent Security API (General) Developer Guide
A.12.151 /ISAPI/System/Network/interfaces/capabilities ................................................. 437
A.12.152 /ISAPI/System/Network/ipFilter ......................................................................... 437
A.12.153 /ISAPI/System/Network/ipFilter/capabilities ..................................................... 438
A.12.154 /ISAPI/System/Network/MACFilter .................................................................... 438
A.12.155 /ISAPI/System/Network/MACFilter/capabilities ................................................. 439
A.12.156 /ISAPI/System/Network/mailing ........................................................................ 439
A.12.157 /ISAPI/System/Network/mailing/<ID> ............................................................... 440
A.12.158 /ISAPI/System/Network/mailing/capabilities ..................................................... 441
A.12.159 /ISAPI/System/Network/mailing/test ................................................................. 441
A.12.160 /ISAPI/System/Network/pingtest ....................................................................... 441
A.12.161 /ISAPI/System/Network/POE/capabilities?format=json ..................................... 442
A.12.162 /ISAPI/System/Network/POE?format=json ........................................................ 442
A.12.163 /ISAPI/System/Network/resourceStatistics?format=json ................................... 443
A.12.164 /ISAPI/System/Network/SIP ............................................................................... 443
A.12.165 /ISAPI/System/Network/SIP/<ID> ....................................................................... 444
A.12.166 /ISAPI/System/Network/SIP/<ID>/capabilities ................................................... 444
A.12.167 /ISAPI/System/Network/SIP/<ID>/SIPInfo .......................................................... 445
A.12.168 /ISAPI/System/Network/SIP/<ID>/SIPInfo/capabilities ...................................... 446
A.12.169 /ISAPI/System/Network/SIP/<ID>/SIPInfo/multiInfo .......................................... 446
A.12.170 /ISAPI/System/Network/SIP/capabilities ............................................................ 447
A.12.171 /ISAPI/System/Network/SIP/voiceTalkCtrl/<ID>?format=json ........................... 447
A.12.172 /ISAPI/System/Network/SIP/voiceTalkCtrl/capabilities?format=json ................. 448
A.12.173 /ISAPI/System/Network/SNMP .......................................................................... 448
A.12.174 /ISAPI/System/Network/SNMP/advanced .......................................................... 449
A.12.175 /ISAPI/System/Network/SNMP/advanced/trapReceivers .................................. 450
A.12.176 /ISAPI/System/Network/SNMP/advanced/trapReceivers/<ID> ......................... 451
A.12.177 /ISAPI/System/Network/socketIP ....................................................................... 451
A.12.178 /ISAPI/System/Network/ssh ............................................................................... 452
xxiv
Intelligent Security API (General) Developer Guide
A.12.179 /ISAPI/System/Network/ssh/capabilities ............................................................ 452
A.12.180 /ISAPI/System/Network/StaticRoute .................................................................. 453
A.12.181 /ISAPI/System/Network/telnetd ......................................................................... 454
A.12.182 /ISAPI/System/Network/telnetd/capabilities ..................................................... 454
A.12.183 /ISAPI/System/Network/UPnP ........................................................................... 455
A.12.184 /ISAPI/System/Network/UPnP/capabilities ........................................................ 455
A.12.185 /ISAPI/System/Network/UPnP/ports .................................................................. 456
A.12.186 /ISAPI/System/Network/UPnP/ports/status ....................................................... 456
A.12.187 /ISAPI/System/Network/UPnP/ports/<ID> ......................................................... 456
A.12.188 /ISAPI/System/Network/UPnP/ports/<ID>/status .............................................. 457
A.12.189 /ISAPI/System/Network/verificationCodeCheck ................................................ 458
A.12.190 /ISAPI/System/Network/WirelessDial/Interfaces ............................................... 458
A.12.191 /ISAPI/System/Network/WirelessDial/Interfaces/<ID> ...................................... 459
A.12.192 /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/dial ............................... 459
A.12.193 /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/dial/capabilities ........... 460
A.12.194 /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/dialstatus ..................... 461
A.12.195 /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/keepAlive/capabilities?
format=json ....................................................................................................................... 461
A.12.196 /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/keepAlive/test?format=json
............................................................................................................................................ 462
A.12.197 /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/keepAlive?format=json
............................................................................................................................................ 462
A.12.198 /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/messageConfig ............ 463
A.12.199 /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/messageConfig/
messageConfigCap ............................................................................................................. 464
A.12.200 /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/messageConfig/WhiteList
............................................................................................................................................ 464
A.12.201 /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/messageConfig/WhiteList/
<ID> .................................................................................................................................... 465
A.12.202 /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/schedule ...................... 466
xxv
Intelligent Security API (General) Developer Guide
A.12.203 /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/trafficMonitor/capabilities?
format=json ....................................................................................................................... 467
A.12.204 /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/trafficMonitor/status?
format=json ....................................................................................................................... 467
A.12.205 /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/trafficMonitor?format=json
............................................................................................................................................ 467
A.12.206 /ISAPI/System/Network/WPS/capabilities ......................................................... 468
A.12.207 /ISAPI/System/onlineUpgrade/capabilities ........................................................ 469
A.12.208 /ISAPI/System/onlineUpgrade/deviceParameter?format=json .......................... 469
A.12.209 /ISAPI/System/onlineUpgrade/downloadPackage/pause?format=json ............. 469
A.12.210 /ISAPI/System/onlineUpgrade/downloadPackage/resume?format=json .......... 470
A.12.211 /ISAPI/System/onlineUpgrade/downloadPackage/status?format=json ............. 470
A.12.212 /ISAPI/System/onlineUpgrade/downloadPackage?format=json ........................ 471
A.12.213 /ISAPI/System/onlineUpgrade/ignoreCurrentVersion?format=json ................... 471
A.12.214 /ISAPI/System/onlineUpgrade/server ................................................................ 472
A.12.215 /ISAPI/System/onlineUpgrade/status ................................................................. 472
A.12.216 /ISAPI/System/onlineUpgrade/upgradeWithoutDownload?format=json .......... 472
A.12.217 /ISAPI/System/onlineUpgrade/version ............................................................... 473
A.12.218 /ISAPI/System/PictureServer/capabilities?format=json ..................................... 473
A.12.219 /ISAPI/System/PictureServer?format=json ......................................................... 473
A.12.220 /ISAPI/System/reboot ......................................................................................... 474
A.12.221 /ISAPI/System/Serial/authentication/capabilities?format=json ......................... 475
A.12.222 /ISAPI/System/Serial/authentication?format=json ............................................ 475
A.12.223 /ISAPI/System/Serial/capabilities ....................................................................... 476
A.12.224 /ISAPI/System/Serial/ports ................................................................................. 476
A.12.225 /ISAPI/System/Serial/ports/<ID> ........................................................................ 477
A.12.226 /ISAPI/System/Serial/ports/<ID>/capabilities .................................................... 477
A.12.227 /ISAPI/System/Serial/ports/capabilities ............................................................. 478
A.12.228 /ISAPI/System/Serial/ports/command ............................................................... 478
xxvi
Intelligent Security API (General) Developer Guide
A.12.229 /ISAPI/System/Serial/ports/command/capabilities ............................................ 479
A.12.230 /ISAPI/System/serialLogCfg/capabilities?format=json ....................................... 479
A.12.231 /ISAPI/System/serialLogCfg?format=json ........................................................... 480
A.12.232 /ISAPI/System/shutdown?format=json .............................................................. 480
A.12.233 /ISAPI/System/Software/channels/<ID> ............................................................. 481
A.12.234 /ISAPI/System/Software/channels/<ID>/capabilities ......................................... 481
A.12.235 /ISAPI/System/SSDFileSystem/capacity?format=json ........................................ 482
A.12.236 /ISAPI/System/SSDFileSystem/format?format=json ........................................... 482
A.12.237 /ISAPI/System/SSDFileSystem/format/status?format=json ................................ 483
A.12.238 /ISAPI/System/SSDFileSystem/upgrade?format=json ........................................ 483
A.12.239 /ISAPI/System/SSDFileSystem/upgrade/status?format=json ............................. 484
A.12.240 /ISAPI/System/status .......................................................................................... 484
A.12.241 /ISAPI/System/syncSignalOutput/<ID> ............................................................... 485
A.12.242 /ISAPI/System/syncSignalOutput/<ID>/capabilities ........................................... 485
A.12.243 /ISAPI/System/time ............................................................................................ 486
A.12.244 /ISAPI/System/time/capabilities ......................................................................... 486
A.12.245 /ISAPI/System/time/localTime ........................................................................... 487
A.12.246 /ISAPI/System/time/ntpServers .......................................................................... 487
A.12.247 /ISAPI/System/time/ntpServers/<ID> ................................................................. 488
A.12.248 /ISAPI/System/time/ntpServers/<ID>/capabilities ............................................. 489
A.12.249 /ISAPI/System/time/ntpServers/capabilities ...................................................... 489
A.12.250 /ISAPI/System/time/ntpServers/test .................................................................. 490
A.12.251 /ISAPI/System/time/timeType?format=json ...................................................... 490
A.12.252 /ISAPI/System/time/timeZone ........................................................................... 491
A.12.253 /ISAPI/System/TwoWayAudio/channels ............................................................. 491
A.12.254 /ISAPI/System/TwoWayAudio/channels/<ID> .................................................... 493
A.12.255 /ISAPI/System/TwoWayAudio/channels/<ID>/audioData .................................. 493
A.12.256 /ISAPI/System/TwoWayAudio/channels/<ID>/capabilities ................................ 495
xxvii
Intelligent Security API (General) Developer Guide
A.12.257 /ISAPI/System/TwoWayAudio/channels/<ID>/close .......................................... 495
A.12.258 /ISAPI/System/TwoWayAudio/channels/<ID>/open .......................................... 496
A.12.259 /ISAPI/System/TwoWayAudio/channels/capabilities ......................................... 497
A.12.260 /ISAPI/System/unitConfig/capabilities?format=json .......................................... 497
A.12.261 /ISAPI/System/unitConfig?format=json .............................................................. 498
A.12.262 /ISAPI/System/updateFirmware ......................................................................... 498
A.12.263 /ISAPI/System/updateFirmware?type=&id= ...................................................... 499
A.12.264 /ISAPI/System/updateFirmware?type=&moduleAddress= ................................ 500
A.12.265 /ISAPI/System/upgradeStatus ............................................................................ 501
A.12.266 /ISAPI/System/usb/capabilities?format=json ..................................................... 501
A.12.267 /ISAPI/System/usb?format=json ........................................................................ 502
A.12.268 /ISAPI/System/userLock/config/capabilities?format=json ................................. 502
A.12.269 /ISAPI/System/userLock/config?format=json ..................................................... 503
A.12.270 /ISAPI/System/userLock/lockedUsers?format=json ........................................... 503
A.12.271 /ISAPI/System/userLock/unlockUser?format=json ............................................ 504
A.12.272 /ISAPI/System/Video/capabilities ....................................................................... 504
A.12.273 /ISAPI/System/Video/inputs ............................................................................... 504
A.12.274 /ISAPI/System/Video/inputs/channels ............................................................... 505
A.12.275 /ISAPI/System/Video/inputs/channels/<ID> ...................................................... 505
A.12.276 /ISAPI/System/Video/inputs/channels?format=json .......................................... 506
A.12.277 /ISAPI/System/Video/inputs/channels/<ID>/focus ............................................ 506
A.12.278 /ISAPI/System/Video/inputs/channels/<ID>?format=json ................................. 507
A.12.279 /ISAPI/System/Video/inputs/channels/<ID>/capabilities ................................... 507
A.12.280 /ISAPI/System/Video/inputs/channels/<ID>/iris ................................................ 507
A.12.281 /ISAPI/System/Video/inputs/channels/<ID>/motionDetection ......................... 508
A.12.282 /ISAPI/System/Video/inputs/channels/<ID>/motionDetection/capabilities ...... 509
A.12.283 /ISAPI/System/Video/inputs/channels/<ID>/motionDetection/layout .............. 509
xxviii
Intelligent Security API (General) Developer Guide
A.12.284 /ISAPI/System/Video/inputs/channels/<ID>/motionDetection/layout/capabilities
............................................................................................................................................ 510
A.12.285 /ISAPI/System/Video/inputs/channels/<ID>/motionDetection/layout/gridLayout
............................................................................................................................................ 510
A.12.286 /ISAPI/System/Video/inputs/channels/<ID>/overlays ....................................... 511
A.12.287 /ISAPI/System/Video/inputs/channels/<ID>/overlays/BatteryPowerOverlay .... 513
A.12.288 /ISAPI/System/Video/inputs/channels/<ID>/overlays/BatteryPowerOverlay/
capabilities ......................................................................................................................... 514
A.12.289 /ISAPI/System/Video/inputs/channels/<ID>/overlays/capabilities .................... 514
A.12.290 /ISAPI/System/Video/inputs/channels/<ID>/overlays/channelNameOverlay ... 514
A.12.291 /ISAPI/System/Video/inputs/channels/<ID>/overlays/dateTimeOverlay ........... 515
A.12.292 /ISAPI/System/Video/inputs/channels/<ID>/overlays/dateTimeOverlay/
capabilities ......................................................................................................................... 516
A.12.293 /ISAPI/System/Video/inputs/channels/<ID>/overlays/text ................................ 516
A.12.294 /ISAPI/System/Video/inputs/channels/<ID>/overlays/text/<ID> ....................... 518
A.12.295 /ISAPI/System/Video/inputs/channels/<ID>/privacyMask ................................. 518
A.12.296 /ISAPI/System/Video/inputs/channels/<ID>/privacyMask/privacyMaskCap ..... 519
A.12.297 /ISAPI/System/Video/inputs/channels/<ID>/privacyMask/regions ................... 519
A.12.298 /ISAPI/System/Video/inputs/channels/<ID>/privacyMask/regions/<ID> .......... 521
A.12.299 /ISAPI/System/Video/inputs/channels/<ID>/VCAResource ............................... 521
A.12.300 /ISAPI/System/Video/inputs/channels/<ID>/VCAResource/capabilities ............ 522
A.12.301 /ISAPI/System/Video/inputs/channels/capabilities ............................................ 523
A.12.302 /ISAPI/System/Video/inputs/channels/counting/collection/capabilities?
format=json ....................................................................................................................... 523
A.12.303 /ISAPI/System/Video/inputs/channels/counting/collection?format=json ......... 524
A.12.304 /ISAPI/System/Video/inputs/channels/heatMap/collection/capabilities?
format=json ....................................................................................................................... 524
A.12.305 /ISAPI/System/Video/inputs/channels/heatMap/collection?format=json ........ 524
A.12.306 /ISAPI/System/Video/inputs/OSDLanguage ....................................................... 525
A.12.307 /ISAPI/System/Video/outputs ............................................................................ 525
xxix
Intelligent Security API (General) Developer Guide
A.12.308 /ISAPI/System/Video/outputs/channels ............................................................. 526
A.12.309 /ISAPI/System/Video/outputs/channels/<ID> .................................................... 526
A.12.310 /ISAPI/System/Video/outputs/channels/<ID>/capabilities ................................ 527
A.12.311 /ISAPI/System/Video/outputs/PreviewSwitch/capabilities ................................ 527
A.12.312 /ISAPI/System/Video/outputs/PreviewSwitch/capabilities?videoOutType= ...... 528
A.12.313 /ISAPI/System/Video/outputs/PreviewSwitch?groupID=&videoOutType= ........ 528
A.12.314 /ISAPI/System/Video/outputs/PreviewSwitch?
groupID=&videoOutType=&previewFrameNo= ................................................................. 530
A.12.315 /ISAPI/System/wiresharkToUSB/capabilities?format=json ................................. 530
A.12.316 /ISAPI/System/wiresharkToUSB/mode?format=json ......................................... 531
A.12.317 /ISAPI/System/wiresharkToUSB/status?format=json ......................................... 531
A.12.318 /ISAPI/System/workingstatus/hdStatus?format=json ........................................ 532
A.12.319 /ISAPI/System/workingstatus/chanStatus?format=json ..................................... 532
A.12.320 /ISAPI/System/workingstatus/capabilities?format=json .................................... 533
A.12.321 /ISAPI/System/workingstatus?format=json ........................................................ 533
A.12.322 /ISAPI/System/workingstatus/IOStatus?format=json ......................................... 534
A.12.323 /ISAPI/System/zeroBiasCalibration/channels/<ID>?format=json ....................... 534
A.13 /ISAPI/Thermal ................................................................................................................ 535
A.13.1 /ISAPI/Thermal/capabilities .................................................................................... 535
A.13.2 /ISAPI/Thermal/temperature/collection/capabilities?format=json ....................... 535
A.13.3 /ISAPI/Thermal/temperature/collection?format=json ........................................... 535
Appendix B. Appendixes ......................................................................................................... 537
B.1 Request and Response Messages ...................................................................................... 537
B.1.1 JSON Messages ......................................................................................................... 537
B.1.2 XML Messages .......................................................................................................... 673
B.2 Log Types for ISAPI ............................................................................................................. 963
B.3 Supported Alarm/Event Types ........................................................................................... 985
B.4 Response Codes of Text Protocol ....................................................................................... 990
xxx
Intelligent Security API (General) Developer Guide
B.5 Error Codes Categorized by Functional Modules ............................................................. 1026
B.6 Encryption Mechanism .................................................................................................... 1042
B.6.1 RTP Packet Format .................................................................................................. 1042
B.6.2 SRTP Packet Format ................................................................................................ 1043
B.6.3 Master Key and Session Key ................................................................................... 1045
B.6.4 Decoded MIKEY Message ....................................................................................... 1046
B.6.5 RTSP Status Code .................................................................................................... 1048
xxxi
Intelligent Security API (General) Developer Guide
Chapter 1 Overview
1.1 Introduction
The OPEN Intelligent Security Application Programming Interface (ISAPI) is a text protocol in
RESTful style based on HTTP for communicating between security devices/servers (e.g., cameras,
DVR, NVR, etc.) and client software/system. It defines the communication standard between
device/server and client software/system via the Internet Protocol (IP), see the network topology
and communication protocol layer framework in the figures below.
Note
REST (REpresentational State Transfer) is a protocol design method which abstracts all information
as the resources. The abstracted resources are marked by the uniform identifies, i.e., URI (Uniform
Resource Identifiers) for simple and extendable management.
Figure 1-1 Network Topology
Figure 1-2 Communication Protocol Layer Framework
1
Intelligent Security API (General) Developer Guide
1.2 Update History
1.2.1 Version 20.10-Version 20.12
Summary of Changes in Version 2.6_Dec., 2020
Related Product: NVR
1. Extended the JSON message about response status JSON_ResponseStatus :
added two nodes MErrCode (error code categorized by functional modules) and MErrDevSelfEx
(extension of MErrCode).
2. Extended the XML message about response status XML_ResponseStatus :
added two nodes <MErrCode> (error code categorized by functional modules) and
<MErrDevSelfEx> (extension of <MErrCode>).
Summary of Changes in Version 2.6_Dec., 2020
Related Product: NVR with Software Version 4.50.00
1. Extended message about upgrade package download status JSON_DownloadPackageStatus
(related URI: /ISAPI/System/onlineUpgrade/downloadPackage/status?format=json ):
added one value "downloadFailed" (downloading failed) to node <status>.
2. Extended audible warning configuration capability of a channel JSON_ChannelAudioAlarmCap
(related URI: /ISAPI/Event/triggers/notifications/channels/<ID>/AudioAlarm/capabilities?
format=json ):
added three alarm sound types to node <audioTypeListCap>: 13 (custom alarm sound 1) , 14
(custom alarm sound 2) , and 15 (custom alarm sound 3).
3. Added one URI for getting the information about custom alarm sound file of a specified channel:
GET /ISAPI/Event/triggers/notifications/AudioAlarm/customAudioInfo/channels/
<channelID>?format=json .
4. Extended the following event/alarm details by adding one node <releatedChannelList> (list of
alarm related channels).
Event Type eventType
Motion Detection Alarm VMD
Intrusion Detection fielddetection
Line Crossing Detection linedetection
Face Detection Alarm facedetection
Face Capture Alarm faceCapture
Fire Source Detection fireDetection
Temperature Measurement Alarm TMA
2
Intelligent Security API (General) Developer Guide
Event Type eventType
Temperature Difference Alarm TDA
Region Entrance Detection regionEntrance
Region Exiting Detection regionExiting
Loitering Detection loitering
People Gathering Detection group
Fast Moving Detection rapidMove
Parking Detection parking
Unattended Baggage Detection unattendedBaggage
Scene Changed Alarm scenechangedetection
ANPR Alarm ANPR
Multi-Target-Type Detection Alarm mixedTargetDetection
Ship Detection shipsDetection
People Queuing-Up Alarm personQueueCounting
Waiting Time Detection Alarm personQueueTime
Audio Exception Alarm audioexception
Blocklist and Allowlist ANPR Alarm vehicleMatchResult
Face Picture Comparison Result alarmResult
High Frequently Person Detection HFPD
Video Tampering Alarm shelteralarm
Dredger Detection Alarm dredgerDetection
Reverse Entering Alarm reverseEntrance
Temperature Measurement Pre-Alarm TMPA
Heat Map Alarm heatmap
People Counting PeopleCounting
Defocus Alarm defocus
Scene Changed Alarm scenechangedetection
Fast Moving Alarm running
Violent Motion Alarm violentMotion
People Falling Down Alarm failDown
3
Intelligent Security API (General) Developer Guide
Event Type eventType
Overstay Alarm Retention
Object Removal Detection attendedBaggage
Audio Exception Alarm Audioexception
Absence Alarm leavePosition
People Number Changed Alarm peopleNumChange
Hard Hat Detection Alarm safetyHelmet
People Density Detection Alarm personDensityDetection
PIR Alarm PIR
5. Extended device storage capability XML_RacmCap (related URI: /ISAPI/ContentMgmt/
capabilities ):
added one node <isSupportSpare> (whether the device supports hot spare configuration).
6. Added URIs for hot spare configuration, see Hot Spare Configuration for details.
7. Extended the Response Codes of Text Protocol :
added two sub status codes to device error (statusCode=3): 0x30001015 (noLinkageResource)
and 0x30001016 (noArmingResource) ;
added four sub status codes to invalid operation (statusCode=4): 0x40001002
(interfaceOperationError), 0x400019F0 (NonOperationalStandbyMachine), 0x400019F1
(MaximumNumberOfDevices), and 0x400019F2 (StandbyMmachineCannotBeDeleted).
8. Extended the log types Log Types for ISAPI :
added two minor operation log types: "LocalBackupConfig" (local hot spare device
configuration) and RemoteBackupConfig (remote hot spare device configuration);
added one minor information log types: "BackupInfo" (hot spare device information).
Summary of Changes in Version 2.6_Nov., 2020
Related Product: CTRL-NEX-001A Control Panel with Software Version 1.0.1
1. Extended the URI for upgrading the device firmware PUT or POST /ISAPI/System/
updateFirmware :
added three module types "ZigBee" (ZigBee module), "R3" (R3 module), and "Rx" (Rx module)
to the query parameter type.
2. Extended the message about capability of upgrading device XML_Cap_AcsUpdate (related
URI: /ISAPI/System/AcsUpdate/capabilities ):
added 3 upgrading types: "ZigBee" (ZigBee module), "R3" (R3 module), and "Rx" (Rx module) to
the node <type>.
3. Extended the message about capability of device information XML_Cap_DeviceInfo and
message about device information XML_DeviceInfo (related URIs: /ISAPI/System/deviceInfo/
capabilities and /ISAPI/System/deviceInfo ):
added 3 nodes: <ZigBeeVersion> (ZigBee module version), <R3Version> (R3 module version),
and <RxVersion> (Rx module version).
4
Intelligent Security API (General) Developer Guide
Summary of Changes in Version 2.6_Nov., 2020
Related Product: DS-2TA21-2AVF, DS-2TA21-3AVF, DS-2TB21-3AVF, DS-2TB21-3AVF/IN,
DS-2TD3017T-2/V, and DS-2TD3017T03/V Thermographic Cube Camera with Software Version
5.5.12
1. Extended the channel attributes message XML_ChannelInfo (related URI: /ISAPI/AUXInfo/
attributes/Channels/<ID> ) :
added one node: <TemperatureIntervalMeasurement> (interval temperature measurement).
2. Extended recording schedule configuration capability XML_Cap_Track (related URI: /ISAPI/
ContentMgmt/record/tracks/<ID>/capabilities ) :
added one record type "temperatureIntervalMeasurement" (interval temperature
measurement) to nodes <ActionRecordingMode> and <DefaultRecordingMode>.
3. Extended recording schedule configuration parameters XML_Track (related URI: /ISAPI/
ContentMgmt/record/tracks ) :
added one record type "temperatureIntervalMeasurement" (interval temperature
measurement) to node <ActionRecordingMode>.
4. Extended search conditions of video and picture XML_VideoPic_CMSearchDescription (related
URI: /ISAPI/ContentMgmt/search ) :
added one search condition "temperatureIntervalMeasurement" (interval temperature
measurement) to node <metadataDescriptor>.
5. Extended device storage capability XML_RacmCap (related URI: /ISAPI/ContentMgmt/
capabilities ) :
added one search condition "temperatureIntervalMeasurement" (interval temperature
measurement) to nodes <pictureSearchType> and <recordSearchType>.
6. Extended the event capability of a single channel XML_ChannelEventCap (related URI: /ISAPI/
Event/channels/<ID>/capabilities ):
added one event type "temperatureIntervalMeasurement" (interval temperature
measurement) to node <eventType>.
7. Extended device event capability XML_EventCap (related URI: /ISAPI/Event/capabilities ) :
added one node <isSupportTemperatureIntervalMeasurement> (whether the device supports
interval temperature measurement).
8. Extended the log types Log Types for ISAPI :
added two minor alarm log types: "TemperatureIntervalMeasurementStart" (Interval
temperature measurement started) and "TemperatureIntervalMeasurementStop" (Interval
temperature measurement stopped) .
1.2.2 Version 20.07-Version 20.09
Summary of Changes in Version 2.6_Sept, 2020
Related Product: DS-2XS6A25G0-I/CH20S40 and DS-2CD3T23G1-I/4G Network Camera with
Software Version 5.5.111
1. Extended the device capability XML_DeviceCap (related URI: /ISAPI/System/capabilities ):
5
Intelligent Security API (General) Developer Guide
added one node <characteristicCode> (device attribute code).
2. Added one URI for getting the device attribute code: GET /ISAPI/System/deviceInfo/
characteristicCode?format=json .
3. Extended the capability of exporting diagnosis information
XML_Cap_DiagnosedDataParameter (related URI: /ISAPI/System/diagnosedData/parameter/
capabilities ):
added one node <isSupportServer> (whether the device supports diagnostic server
configuration).
4. Added URIs for diagnostic server configuration:
Get diagnostic server capability: GET /ISAPI/System/diagnosedData/server/capabilities?
format=json ;
Get or set diagnostic server parameters: GET or PUT /ISAPI/System/diagnosedData/server?
format=json .
5. Added one URI for testing diagnostic server: POST /ISAPI/System/diagnosedData/server/test?
format=json .
6. Extended the Response Codes of Text Protocol :
added one sub status code 0x40002106-"incorrectConsolePassword" (Saving failed. Incorrect
console command) to invalid operation.
Summary of Changes in Version 2.6_Sept., 2020
Related Product: DS-2TA06-6AXF, DS-2TA03-4AXF, DS-2TA03-7AXF, DS-2TA03-10AXF, and
DS-2TA06-6AXF(B) Thermographic Automation Camera with Software Version 5.5.10
1. Extended the device I/O output capability XML_Cap_IOOutputPortList (related URI: /ISAPI/
System/IO/outputs/capabilities ):
added four values to the node <pulseDuration> (duration of a output port signal when it is
being triggered): 1000, 2000, 3000, and 4000.
2. Extended the event capability XML_EventCap (related URI: /ISAPI/Event/capabilities ):
added one node <isSupportThermalCalibrationFileException> (whether the device supports
alarm of thermography calibration file exception).
3. Extended the linkage capabilities of different alarm categories XML_EventTriggersCap (related
URI: /ISAPI/Event/triggersCap ):
added one node <ThermalCalibrationFileExceptionCap> (alarm linkage capability of
thermography calibration file exception).
Summary of Changes in Version 2.6_Sept., 2020
Related Product: DS-2TA03-15SVI, DS-2TA06-25SVI, and DS-2TD2036T-7/V Thermographic
Automation Camera with Software Version 5.5.8
1. Extended the device information capability XML_Cap_DeviceInfo and device information
XML_DeviceInfo (related URIs: /ISAPI/System/deviceInfo/capabilities and /ISAPI/System/
deviceInfo ):
added one node <bootTime> (system boot time).
2. Extended focus configuration capability XML_Cap_FocusConfiguration (related URI: /ISAPI/
Image/channels/<ID>/focusConfiguration/capabilities ):
6
Intelligent Security API (General) Developer Guide
added two nodes <focusStatus> (focus status) and <motorMovementType> (motor movement
type).
3. Added one URI for getting focus status: GET /ISAPI/Image/channels/<ID>/focusConfiguration/
status?format=json .
Summary of Changes in Version 2.6_Aug., 2020
Related Product: iDS-9632NXI-I8/X-AI and iDS-6708NXI-I/X-AI series DeepinMind NVR with
Software Version 4.1.80
1. Extended audible warning configuration capability JSON_AudioAlarmCap (related URI: /ISAPI/
Event/triggers/notifications/AudioAlarm/capabilities?format=json ):
added one audio type 16 (AI custom audio file) to node audioTypeListCap.
2. Extended information of custom alarm audio file JSON_GetCustomAudio (related URI: /ISAPI/
Event/triggers/notifications/AudioAlarm/customAudioInfo?format=json ):
added one node AudioType (audio file type).
3. Extended the information of custom alarm audio file to be imported JSON_ImportCustomAudio
(related URI: /ISAPI/Event/triggers/notifications/AudioAlarm/customAudio?format=json ):
added two nodes AudioType (audio file type) and isCover (whether to cover the audio file with
same name).
4. Extended the device capability XML_DeviceCap (related URI: /ISAPI/System/capabilities ):
added two nodes <isSupportAIOpenPlatform> (whether the device supports AI open platform
capabilities) and <isSupportPictureDownloadError> (whether the device supports reporting
picture download failure).
5. Extended Response Codes of Text Protocol :
added five sub status codes to invalid operation: 0x400019C5 (AITargetBPCaptureFail),
0x400019C6 (AITargetBPToDSPFail), 0x400019C7 (AITargetBPDuplicateName), 0x400019D0
(audioFileNameWrong), and 0x400019D1 (audioFileImportFail) ;
added two sub status codes to invalid content: 0x60001135 (AudioFileNameDuplicate) and
0x60001136 (CurrentAudioFileAI RuleInUseAlreadyDelete).
6. Added seven minor operation log types (see Log Types for ISAPI for details), i.e., AITargetBPAdd,
AITargetBPDelete, AITargetBPSearch, AITargetBPUpdate, AIRuleConfigTrigger, AudioFileImport,
and AudioFileDownLoad.
Summary of Changes in Version 2.6_Aug., 2020
Related Product: DS-K1T680DX Series Face Recognition Terminal with Software Version 3.1.2
1. Extended the network capability message XML_NetworkCap (related URI: /ISAPI/System/
Network/capabilities ):
added two nodes <isSupportEZVIZUnbind> (whether it supports unbinding devices from the
Hik-Connect account) and <isSupportEZVIZQRcode> (whether it supports getting the Hik-
Connect QR code).
2. Extended Hik-Connect access parameter message XML_EZVIZ (related URI: /ISAPI/System/
Network/EZVIZ ):
7
Intelligent Security API (General) Developer Guide
added a node <bindStatus> (Hik-Connect account binding status of the current device).
3. Added a URI of getting the Hik-Connect QR code of the device: GET /ISAPI/System/Network/
EZVIZ/QRCode .
Summary of Changes in Version 2.6_July, 2020
Related Product: iDS-96064NXI series, iDS-96128NXI series, and iDS-96256NXI series DeepinMind
NVR with software version 4.22.200
1. Extended the capability of digital video channel proxy XML_Cap_StreamingChannel (related
URI: /ISAPI/ContentMgmt/StreamingProxy/channels/<ID>/capabilities ):
added one node <isSupportPictureByUrl> (whether the device supports capture picture in URL
format).
2. Added URIs for capturing the picture in URL format:
Get capability: GET /ISAPI/ContentMgmt/StreamingProxy/channels/<ID>/PictureByUrl/
capabilities?format=json ;
Capture the picture in URL format: POST /ISAPI/ContentMgmt/StreamingProxy/channels/
<ID>/PictureByUrl?format=json .
3. Extended the Hik-Connect access configuration capability XML_Cap_EZVIZ (related URI: /ISAPI/
System/Network/EZVIZ/capabilities ):
added one node <isSupportEZVIZQRCode> (whether the device supports getting the Hik-
Connect QR code).
4. Added the URI for getting Hik-Connect QR code: /ISAPI/System/Network/EZVIZ/QRCode?
format=json .
5. Extended the HDD parameters XML_hdd and HDD list parameters XML_hddList (related URI: /
ISAPI/ContentMgmt/Storage/hdd and /ISAPI/ContentMgmt/Storage/hdd/<ID> ):
added three values to node <status> (HDD status): "synching" (synchronizing), "syncError"
(synchronization exception), and "unloaded".
6. Added the URI for getting the HDD data sync status: GET /ISAPI/ContentMgmt/Storage/hdd/
<ID>/syncStatus?format=json .
7. Extended the device storage capability XML_RacmCap (related URI: /ISAPI/ContentMgmt/
capabilities ):
added one node <isSupportSSDSMARTTest> (whether the device supports SSD S.M.A.R.T
detection).
8. Extended the device capability XML_DeviceCap (related URI: /ISAPI/System/capabilities ):
added three nodes: <isSupportSSDFileSystemUpgrade> (whether the device supports SSD file
system upgrade), <isSupportSSDFileSystemFormat> (whether the device supports SSD file
system formatting), and <isSupportSSDFileSystemCapacity> (whether the device supports
getting space distribution information of SSD file system).
9. Added URIs for SSD management, see SSD Management for details.
10. Added one sub status code 0x400020F3-"NotSupportWithVideoTask" (the function is not
supported) to status code 4 (Invalid Operation) in Response Codes of Text Protocol .
11. Extended the log types Log Types for ISAPI :
added one minor exception log type "ezvizUpgradeException" (Hik-Connect upgrade
exception);
8
Intelligent Security API (General) Developer Guide
added four minor operation log types: "localSSDOperateStart" (Local SSD operation (firmware
operations) started), "localSSDOperateStop" (Local SSD operation (firmware operations)
ended), "remoteSSDOperateStart" (Remote SSD operation (firmware operations) started),
"remoteSSDOperateStop" (Remote SSD operation (firmware operations) ended).
Summary of Changes in Version 2.6_July, 2020
Related Product: CTRL-NEX-001A Control Panel with Software Version 1.0.0
1. Extended wireless dial-up capability message XML_Cap_Dial and wireless dial-up parameter
message XML_Dial (related URIs: /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/dial/
capabilities and /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/dial ):
added four nodes: <ISPName> (ISP name), <IMEINo> (IMEI code), <ICCID> (ICCID code), and
<netType> (network type).
2. Extended condition message of searching for specific resources
XML_VideoPic_CMSearchDescription (related URI: /ISAPI/ContentMgmt/search ):
added a sub node pircamID (pircam search ID) to the node contentTypeList.
3. Extended event linkage notification message XML_EventTriggerNotification (related URI: /
ISAPI/Event/triggers/<ID>/notifications ):
added two linkage actions "siren" (siren linkage) and "output" (relay linkage) to the sub node
EventTriggerNotification of the node EventTriggerNotificationList.
4. Extended alarm linkage capability message XML_EventTriggersCap (related URI: /ISAPI/Event/
triggersCap ):
added two sub nodes to the node DiskfullTriggerCap, i.e., isSupportSiren (whether it supports
siren linkage) and isSupportOutput (whether it supports relay linkage).
5. Extended parameter message of an HDD quota XML_diskQuota (related URI: /ISAPI/
ContentMgmt/Storage/quota/<ID> ):
added a node <reservedTimeCfg> (video saving time).
6. Extended parameter message of a specific SIP server XML_SIPServer (related URI: /ISAPI/
System/Network/SIP/<ID> ):
added four sub nodes to the node <Standard>, i.e., <serverAddressType> (server address type),
<domainName> (domain name), <networkType> (network type), and <calledTargetUserName>
(called user name).
7. Extended configuration capability of all SIP servers XML_SIPServerListCap (related URI: /ISAPI/
System/Network/SIP/capabilities ):
added five sub nodes to the node Standard of SIPServer, i.e., <isSptSIPVoiceTalk> (whether it
supports SIP intercom), <serverAddressType> (server address type), <domainName> (domain
name), <networkType> (network type), and <calledTargetUserName> (called user name).
8. Added URIs of configuring SIP intercom parameters:
Get configuration capability: GET /ISAPI/System/Network/SIP/voiceTalkCtrl/capabilities?
format=json ;
Get or set parameters: GET or PUT /ISAPI/System/Network/SIP/voiceTalkCtrl/<ID>?
format=json .
9. Added 8 sub status codes to status code 4 (Invalid Operation) in Response Codes of Text
Protocol :
9
Intelligent Security API (General) Developer Guide
0x40008038-"overAudioFileNumLimit" (The number of audio files exceeds the limit),
0x40008039-"audioFileNameIsLong" (The audio file name is too long),
0x4000803a-"audioFormatIsWrong" (The audio file format is invalid),
0x4000803b-"audioFileIsLarge" (The size of the audio file exceeds the limit),
0x4000803c-"pircamCapTimeOut" (Capturing of pircam timed out),
0x4000803d-"pircamCapFail" (Capturing of pircam failed), 0x4000803e-"pircamIsCaping" (The
pircam is capturing), and 0x4000803f-"audioFileHasExisted" (The audio file already exists).
10. Extended the log types Log Types for ISAPI :
added 10 alarm log types: "soundIntensityMutation" (Sudden Increase of Sound Intensity
Detection), " soundIntensityMutationStop" (Sudden Increase of Sound Intensity Detection
Ended), "soundIntensitySteepFall" (Sudden Decrease of Sound Intensity Detection),
"soundIntensitySteepFallStop" (Sudden Decrease of Sound Intensity Detection Ended),
"moveAlarm" (Motion Alarm), "moveAlarmRestored" (Motion Alarm Restored),
"lowTemperatureAlarm" (Low Temperature Alarm), "lowTemperatureAlarmRestored" (Low
Temperature Alarm Restored), "highTemperatureAlarm" (High Temperature Alarm), and
"highTemperatureAlarmRestored" (High Temperature Alarm Restored);
added 20 operation log types: "SSHEnabled" (SSH Enabled), "SSHDisabled" (SSH Disabled),
"installationModeEntered" (Installation Mode Enabled), "installationModeExited" (Installation
Mode Disabled), "diagnosisModeConfigured" (Diagnosis Mode Configured), "fileExported" (File
Exported), "audioFileUploaded" (Audio File Uploaded), "audioFileDeleted" (Audio File
Deleted), "PIRCAMCapture" (PIRCAM Captured), "SIPIntercomStarted" (SIP Intercom Started),
"SIPIntercomEnded" (SIP Intercom Ended), "enrollmentModeEntered" (Registration Mode
Enabled), "enrollmentModeExited" (Registration Mode Disabled),
"videoAudioSelfCheckStarted" (Self-Test of Audio and Video Started),
"videoAudioSelfCheckStopped" (Self-Test of Audio and Video Stopped), "cardReaderunlocked"
(Card Reader Unlocked), "cardReaderlocked" (Card Reader Locked),
"videoAudioSelfCheckEnded" (Self-Test of Audio and Video Ended), "previewStart" (Live View
Started), and "previewStop" (Live View Stopped)..
1.2.3 Version 20.04-Version 20.06
Summary of Changes in Version 2.6_July, 2020
Related Products: DS-2CV2, DS-2CD2, and DS-2CD3 Series Network Camera in Software Version
5.5.150
1. Extended the message about the Hik-Connect access configuration capability XML_Cap_EZVIZ
(related URI: /ISAPI/System/Network/EZVIZ/capabilities ):
added two nodes, i.e, <isSupportUpISAPI> (whether the device supports uplink transmitting
ISAPI message) and <isSupportDownISAPI> (whether the device supports downlink transmitting
ISAPI message).
2. Extended the message about the Hik-Connect access configuration parameters XML_EZVIZ
(related URI: /ISAPI/System/Network/EZVIZ ):
added a node <upISAPIStatus> (status of uplink transmitting ISAPI message).
10
Intelligent Security API (General) Developer Guide
Summary of Changes in Version 2.6_July, 2020
Related Product: Decoder with Model DS-6901UDI, DS-6904UDI, DS-6908UDI, DS-6910UDI,
DS-6912UDI, DS-6916UDI in Software Version 2.6.0
1. Extended the message about the capability of exporting files from the device
JSON_FileExportCap (related URI: /ISAPI/System/fileExport/capabilities?format=json ):
added a file type "errorInfo" (error information) to the node "fileType".
2. Extended the message about the configuration parameters of exporting files from the device
JSON_FileExport (related URI: /ISAPI/System/fileExport?format=json ):
added a file type "errorInfo" (error information) to the node "fileType";
added two nodes, i.e., "devType" (device type) and "subSys" (partition No.).
Summary of Changes in Version 2.6_June, 2020
Related Product: DS-PHA20 Series and DS-PHA64 Series Hybrid Security Control Panel with
Software Version 1.2.0
1. Extended configuration capability message of the device information XML_Cap_DeviceInfo
(related URI: /ISAPI/System/deviceInfo/capabilities ):
added a node <isSupportNewVersionDevlanguageSwitch> (whether it supports switching
language by new version of the protocol).
2. Extended configuration capability message of the device language XML_Cap_DeviceLanguage
(related URI: /ISAPI/System/DeviceLanguage/capabilities ):
added a node <upgradeFirmWareEnabled> (whether to upgrade the firmware).
Summary of Changes in Version 2.6_June, 2020
Related Product: Radar PTZ Camera with Model of iDS-2SR8141IXS-AB(40X) in Software Version
5.5.21
Extended the tracking parameters JSON_TrackingRatio and its configuration capability
JSON_TrackingRatioCap (related URIs: /ISAPI/PTZCtrl/channels/<ID>/trackingRatio?format=json
and /ISAPI/PTZCtrl/channels/<ID>/trackingRatio/capabilities?format=json ):
added a node "trackingTakeoverEnabled" (whether to enable tracking takeover).
Summary of Changes in Version 2.6_June, 2020
Related Product: iDS-8104AHQXLI-F4 Series ATM DVR
1. Extended the device storage capability XML_RacmCap (related URI: GET /ISAPI/ContentMgmt/
capabilities ):
added four search conditions to node <pictureSearchType> and <recordSearchType>:
"ATMPanel" (ATM panel mode), "ATMSurround" (ATM environment mode), ATMFace (ATM
human face mode), and "ATMSafetyCabin" (ATM safety cabin mode).
2. Extended the search conditions of video and picture XML_VideoPic_CMSearchDescription
(related URI: /ISAPI/ContentMgmt/search ):
11
Intelligent Security API (General) Developer Guide
added four search conditions to the sub node <metadataDescriptor> of <metadataList>:
"ATMPanel" (ATM panel mode), "ATMSurround" (ATM environment mode), ATMFace (ATM
human face mode), and "ATMSafetyCabin" (ATM safety cabin mode).
3. Extended the log types, see details in Log Types for ISAPI :
added eight minor types to alarm logs: "ATMPanelStart" (ATM panel alarm started),
"ATMPanelStop" (ATM panel alarm ended), "ATMSurroundStart" (ATM surround alarm started),
"ATMSurroundStop" (ATM surround alarm ended), "ATMFaceStart" (ATM face alarm started),
"ATMFaceStop" (ATM face alarm ended), "ATMSafetyCabinStart" (ATM safety cabin alarm
started), and "ATMSafetyCabinStop" (ATM safety cabin alarm ended).
Summary of Changes in Version 2.6_June, 2020
Related Products: NVR with Models of iDS-9632NXI-I8/BA and iDS-6704NXI-I/BA in Software
Version 4.1.73
1. Extended the device storage capability XML_RacmCap (related URI: /ISAPI/ContentMgmt/
capabilities ):
added a value "loitering" (loitering detection) to the nodes <perimeterEventPicSearch>
(perimeter protection events that support picture search) and <pictureSearchType> (picture
search conditions).
2. Added two error codes, i.e., 0x400012C8-"ruleEventTypeDuplicate" and
0x400015C2-"polygonNotAllowCrossing", to Response Codes of Text Protocol .
Summary of Changes in Version 2.6_June, 2020
Related Product: DS-2TD1217B series and DS-2TD2636B series Thermal & Optical Bi-spectrum
Network Camera
1. Extended the channel attributes XML_ChannelInfo (related URI: GET /ISAPI/AUXInfo/
attributes/Channels/<ID> ):
added one sub node <FaceSnapThermometry> (upload the captured face picture with
temperature information) to node <Thermal>.
2. Extended the audible warning configuration capability JSON_AudioAlarmCap (related URI:
GET /ISAPI/Event/triggers/notifications/AudioAlarm/capabilities?format=json ) and audible
warning configurations JSON_AudioAlarm (related URI: /ISAPI/Event/triggers/notifications/
AudioAlarm?format=json ):
added one alarm type "noMaskDetection" (no wearing mask detection) to node alarmType.
3. Extended the device event capability XML_EventCap (related URI: GET /ISAPI/Event/
capabilities ):
added two nodes <isSupportNoMaskDetection> (whether device supports no wearing mask
detection) and <isSupportTMPA> (whether device supports temperature measurement pre-
alarm).
Summary of Changes in Version 2.6_May, 2020
Related Product: iDS-2SK8144IXS-D/J(40X/2812) Smart Linkage PTZ Camera with software version
5.5.40
1. Extended device capability XML_DeviceCap (related URI: GET /ISAPI/System/capabilities ):
12
Intelligent Security API (General) Developer Guide
added five nodes: <isSupportPersonArmingTrack> (whether device supports auto person
arming), <isSupportManualPersonArmingTrack> (whether device supports manual person
arming), <isSupportGPSCalibrationMode> (whether device supports GPS calibration),
<isSupportGPSVerification> (whether device supports GPS verification), and
<isSupportHBDLib> (whether device supports human body picture library).
2. Extended message of event capability supported by a single channel XML_ChannelEventCap
(related URI: GET /ISAPI/Event/channels/<ID>/capabilities ):
added two event types "personArmingTrack" (auto person arming) and
"manualPersonArmingTrack" (manual person arming) to the node <eventType>.
3. Extended the linkage capabilities of different alarm categories XML_EventTriggersCap (related
URI: GET /ISAPI/Event/triggersCap ):
added one node <HBDLibTriggerCap> (alarm linkage configuration capability of human body
picture library).
4. Added two event types "personArmingTrack" (auto person arming) and
"manualPersonArmingTrack" (manual person arming) to Supported Alarm/Event Types .
5. Extended the master-slave tracking capability XML_MasterSlaveTrackingCap (related URI:
GET /ISAPI/MasterSlaveTracking/capabilities ):
added one node <isSupportLinkedTracking> (whether device supports advanced parameters
configuration of linked tracking capture).
6. Added a function of configuring advanced parameters of linked tracking capture.
Get capability: GET /ISAPI/MasterSlaveTracking/linkedTracking/capabilities?format=json ;
Get or set advanced parameters of linked tracking capture: GET or PUT /ISAPI/
MasterSlaveTracking/linkedTracking?format=json .
7. Extended Response Codes of Text Protocol :
added three sub status codes to status code 4 (Invalid Operation):
0x40002092-"HBDLibNumOverLimit" (the number of human body picture libraries reaches the
upper limit), 0x4000209C-pointsOnStraightLine (calibrating failed. The calibration points cannot
be one the same line), and 0x4000209D-TValueLessThanOrEqualZero (calibration failed. The T
value of the calibration points should be larger than 0);
added nine sub status codes to status code 6 (Invalid Message Content):
0x6000008b-"customHBPIDError" (incorrect ID of custom human body picture library),
0x6000008c-"customHBPIDRepeat" (duplicated ID of custom human body picture library),
0x6000008d-"dataVersionsInHBDLibMismatches" (database versions mismatches of human
body picture library), 0x6000008e-"invalidHBPID" (invalid human body picture PID),
0x6000008f-"invalidHBDID" (invalid ID of human body picture library),
0x60000090-"humanLibraryError" (error of human body picture library),
0x60000091-"humanLibraryNumError" (no more human body picture library can be added),
0x60000092-"humanImagesNumError" (no more human body picture can be added), and
0x60000093-"noHumanInThePicture" (modeling failed, no human body in the picture).
8. Extended the capability of exporting device diagnose information
XML_Cap_DiagnosedDataParameter (related URI: /ISAPI/System/diagnosedData/parameter/
capabilities ) and device diagnose information exporting parameters
XML_DiagnosedDataParameter (related URI: /ISAPI/System/diagnosedData/parameter ):
13
Intelligent Security API (General) Developer Guide
added three nodes <HardwareInfo> (whether to enable exporting hardware information),
<SoftwareInfo> (whether to enable exporting software information), and <logInfo> (whether to
enable exporting startup log).
9. Added the URIs for verifying GPS calibration, refer to Configure GPS Calibration Parameters for
details.
10. Extended the device protocol capability XML_Cap_AdminAccessProtocolList (related URI:
GET /ISAPI/Security/adminAccesses/capabilities ) and device supported protocol parameters
XML_AdminAccessProtocol (related URI: /ISAPI/Security/adminAccesses ):
added one protocol "Bonjour" to node <protocol>.
11. Extended the device security capability XML_SecurityCap (related URI: GET /ISAPI/Security/
capabilities ) and XML_IllegalLoginLock (related URI: /ISAPI/Security/illegalLoginLock ):
added one node <maxIllegalLoginLockTime> (lock duration when maximum illegal login
attempts reached the upper limit).
12. Extended the PTZ channel capability XML_PTZChanelCap (related URI: GET /ISAPI/PTZCtrl/
channels/<ID>/capabilities ):
added one nodes <isSupportGyroVerify> (whether device supports gyroscope attitude
calibration).
13. Added URIs for calibrating gyroscope attitude:
Get capability: GET /ISAPI/PTZCtrl/channels/<ID>/gyroVerify/capabilities?format=json
Set gyroscope attitude calibration parameters: PUT /ISAPI/PTZCtrl/channels/<ID>/gyroVerify?
format=json .
14. Extended the intelligent resource switch capability XML_Cap_VCAResource (related URI: GET /
ISAPI/System/Video/inputs/channels/<ID>/VCAResource/capabilities ) and intelligent
resource switch parameters XML_VCAResource (related URI: /ISAPI/System/Video/inputs/
channels/<ID>/VCAResource ):
added one intelligent resource types "personArming" (person arming) to node <type>.
Summary of Changes in Version 2.6_May, 2020
Related Product: TB-4117-3-S Temperature Screening Thermal Camera Module with Software
Version 5.5.2
Added URIs for configuring device USB parameters:
Get USB parameters configuration capability: GET /ISAPI/System/usb/capabilities?format=json ;
Get or set USB parameters: GET or PUT /ISAPI/System/usb?format=json .
Summary of Changes in Version 2.6_April, 2020
Related Product: DS-2DE Series IR Network Speed Dome with software version 5.5.23
Extended the supplement light configuration capability XML_Cap_SupplementLight and
supplement light configuration parameters XML_SupplementLight (related URIs: /ISAPI/Image/
channels/<ID>/supplementLight/capabilities and /ISAPI/Image/channels/<ID>/
supplementLight ):
added two nodes: <irLightbrightnessLimit> (IR light brightness limit) and
<whiteLightbrightnessLimit> (white light brightness limit).
14
Intelligent Security API (General) Developer Guide
1.2.4 Version 20.01-Version 20.03
Summary of Changes in Version 2.6_Mar., 2020
Related Product: iDS-SR8141MXS-A/T2(40×) Radar PTZ Camera with Software Version 5.5.20
1. Extended device capability message XML_DeviceCap (related URI: /ISAPI/System/capabilities ):
added two nodes: <radarIPDForm> (radar form) and <mixedTargetDetectionWebNoDisplay>
(whether to enable not displaying multi-target-type recognition).
2. Extended PTZ control capability message XML_PTZChanelCap (related URI: /ISAPI/PTZCtrl/
channels/<ID>/capabilities ):
added a node <isSupportTrackingRatioCfg> (whether it supports configuring tracking
parameters).
3. Added two URIs of configuring tracking parameters:
Get configuration capability: GET /ISAPI/PTZCtrl/channels/<ID>/trackingRatio/capabilities?
format=json ;
Get or set parameters: GET or PUT /ISAPI/PTZCtrl/channels/<ID>/trackingRatio?format=json .
4. Extended sub status codes in Response Codes of Text Protocol :
added a sub status code to status code 3 (Device Error): 0x30002051-"calibrationTimeout"
(Calibration timed out);
added four sub status codes to status code 4 (Invalid Operation):
0x4000206A-"completeTheLevelCalibrationFirst" (The level calibration is not set),
0x4000206B-"completeTheRadarCameraCalibrationFirst" (The radar-camera calibration is not
set), 0x40002093-"theShieldRegionError" (Saving failed. The shielded area should be the ground
area where the shielded object is located), and 0x40002094-"theDetectionAreaError" (Saving
failed. The detection area should only cover the ground area);
added two sub status codes to status code 6 (Invalid Content):
0x60008016-"uploadImageSizeError" (The size of the uploaded picture is larger than 5 MB) and
0x6000202C-"width/heightRatioOfPictureError" (The width/height ratio of the uploaded picture
should be in the range from 1:2 to 2:1).
Summary of Changes in Version 2.6_Mar., 2020
Related Product: iDS-2CD70 series box camera, iDS-2CD70 series shield, iDS-2CD71 and iDS-2CD75
series dome camera, iDS-2CD7A series bullet camera with software version 5.5.120
1. Added URIs of configuring vibration detection alarm, see Configure Vibration Detection Alarm
for details.
2. Extended device capability message XML_DeviceCap (related URI: /ISAPI/System/capabilities ):
added one node <isSupportVibrationDetection> (whether it supports vibration detection).
3. Extended message about event capability of all channels XML_ChannelEventCapList and
message about event capability of a single channel XML_ChannelEventCap (related URIs: /
ISAPI/Event/channels/capabilities and /ISAPI/Event/channels/<ID>/capabilities ):
added one event type "vibrationDetection" (vibration detection) to the node <eventType>.
4. Extended message about linkage capabilities of different alarm categories
XML_EventTriggersCap (related URI: /ISAPI/Event/triggersCap ):
15
Intelligent Security API (General) Developer Guide
added one node <VibrationDetectionTriggerCap> (alarm linkage capability of vibration
detection).
5. Extended linkage parameter message XML_EventTrigger (related URI: /ISAPI/Event/triggers/
<eventType>-<ID> ):
added one event type "vibrationDetection" (vibration detection) to the node <eventType>.
6. Extended device storage capability message XML_RacmCap (related URI: /ISAPI/ContentMgmt/
capabilities ):
added a type "vibrationDetection" (vibration detection) to the node <pictureSearchType>
(picture search condition) and <recordSearchType> (video search condition).
7. Extended capability message XML_Cap_VCAResource and configuration message
XML_VCAResource about intelligent resources switch (related URIs: /ISAPI/System/Video/
inputs/channels/<ID>/VCAResource/capabilities and /ISAPI/System/Video/inputs/channels/
<ID>/VCAResource ):
added one intelligent resource type "faceCounting" (face counting) to the node <type>.
8. Extended the log types, see details in Log Types for ISAPI :
added two minor types "vibrationDetectionStart" (Vibration Detection Alarm Started) and
"vibrationDetectionStop" (Vibration Detection Alarm Stopped) to Alarm Logs.
9. Extended error codes, see details in Response Codes of Text Protocol :
added one error code 0x40002096-"invalidLaneLine" (Saving failed. Invalid lane line.) to status
code 4 (Invalid Operation).
Summary of Changes in Version 2.6_Feb., 2020
Related Product: Thermal & Optical Bi-spectrum Network Speed Dome; Thermal & Optical Bi-
spectrum Positioning System; Thermal & Optical Bi-spectrum Network Stable PTZ Camera in
Version 5.5.25
Added URIs of configuring laser optical axis:
Get capability: GET /ISAPI/System/laserOpticalAxis/capabilities?format=json ;
Get or set laser optical axis parameters: GET or PUT /ISAPI/System/laserOpticalAxis?format=json ;
Adjust laser optical axis: PUT /ISAPI/System/laserOpticalAxis/goto?format=json .
Summary of Changes in Version 2.6_Feb., 2020
Related Product: DS-K1T804A Series and DS-K1T8003 Series Fingerprint Access Control Terminal
with Software Version 1.3.0; DS-K1A802A Series and DS-K1A8503 Series Fingerprint Time
Attendance Terminal with Software Version 1.3.0
1. Extended configuration capability message XML_Cap_DeviceLanguage and parameter message
XML_DeviceLanguage of device language (related URIs: /ISAPI/System/DeviceLanguage/
capabilities and /ISAPI/System/DeviceLanguage ):
added a language supported by the device "Ukrainian" to the node <language>.
2. Extended Wi-Fi configuration capability message XML_Cap_Wireless and Wi-Fi parameter
message XML_Wireless of a specific network interface (related URIs: /ISAPI/System/Network/
interfaces/<ID>/wireless/capabilities and /ISAPI/System/Network/interfaces/<ID>/wireless ):
added a security mode "WPA/WPA2" to the sub node <securityMode> of the node
<WirelessSecurity>.
16
Intelligent Security API (General) Developer Guide
Summary of Changes in Version 2.6_Jan., 2020
Related Product: iDS-9632NXI-I8/X(B) DeepinMind NVR and iDS-6708NXI-I/8F(B) DeepinMind NVS
with Software Version V4.1.72
1. Extended the log types in Log Types for ISAPI :
added two alarm minor log types: "sleepOnDutyStart" (Sleeping on Duty Alarm Started) and
"sleepOnDutyStop" (Sleeping on Duty Alarm Stopped).
2. Extended message about device storage capability XML_RacmCap (related URI: /ISAPI/
ContentMgmt/capabilities ):
added two nodes <behaviorEventPicSearch> (behavior analysis events supported by picture
search) and <perimeterEventPicSearch> (perimeter events supported by picture search).
added one search condition "playCellphone" (playing mobile phone) to the node
<pictureSearchType>.
added 6 video types "running", "failDown", "violentMotion", "retention", "allPerimeterEvent",
"allBehaviorEvent" to the node <recordSearchType> (video file type to be searched for).
3. Extended message about version information of algorithm library XML_AlgorithmsVersion
(related URI: /ISAPI/System/algorithmsVersion ):
added two algorithm library names "streetBehavior" (street behavior) and "workBehavior"
(work behavior)
to the node <name> of <AlgorithmsVersionInfo>.
4. Extended error codes in Response Codes of Text Protocol :
added sub error codes to status code 4 (Invalid Operation):
0x400012a6-"vehicleEnginesNoResource" (Insufficient vehicle engine resources),
0x400050df-"noDetectionArea" (No detection area),
0x4000128A-"noMorePeopleNumChangeRulesAdded" (Maximum number of people number
changing rules reached), 0x4000128D-"noMoreViolentMotionRulesAdded" (Maximum number
of violent motion rules reached), 0x4000128E-"noMoreLeavePositionRulesAdded" (Maximum
number of leaving position rules reached), 0x400012a9-"noMoreRunningRulesAdded"
(Maximum number of running rules reached), 0x400012aa-"noMoreGroupRulesAdded"
(Maximum number of people gathering rules reached),
0x400012ab-"noMoreFailDownRulesAdded" (Maximum number of people falling down rules
reached), 0x400012ac-"noMorePlayCellphoneRulesAdded" (Maximum number of playing
cellphone rules reached), 0x400015ad-"noMoreRetentionRulesAdded" (Maximum number of
people retention rules reached), 0x400015ae-"noMoreSleepOnDutyRulesAdded" (Maximum
number of sleeping on duty rules reached).
added sub errors to status code 6 (Invalid Message Content):
0x60002023-"noSafetyHelmetRegion" (The hard hat detection area is not configured),
0x60001053-"behaviorAnalysisRuleInfoError" (Behavior analysis rule parameters error),
0x60001054-"safetyHelmetParamError" (Hard hat parameters error),
0x60001077-"OneChannelOnlyCanBindOneEngine" (No more engines can be bound).
17
Intelligent Security API (General) Developer Guide
Summary of Changes in Version 2.6_Jan., 2020
Related Product: DS-K1T341AM, DS-K1T341AMF, DS-K1T642M, DS-K1T642MF, DS-K1T642E, DS-
K1T642EF, DS-K1T642MW, DS-K1T642MFW, DS-K1T642EW, and DS-K1T642EFW Face Recognition
Terminal with Software Version 1.0
1. Added two URIs of getting the algorithm library information:
Get capability: GET /ISAPI/System/algorithmsInfo/capabilities?format=json ;
Get algorithm library information: GET /ISAPI/System/algorithmsInfo?format=json .
2. Extended device capability message XML_DeviceCap (related URI: /ISAPI/System/capabilities ):
added two nodes: <isSupportCertificateCaptureEvent>> (whether it supports certificate
capture and comparison events) and <isSupportAlgorithmsInfo> (whether it supports getting
the algorithm library version information).
18
Intelligent Security API (General) Developer Guide
Chapter 2 ISAPI Description
The design of Intelligent Security API (hereafter referred as to ISAPI) adopts RESTful style, so this
part introduces the predefined resource operation methods, API (URL) format, interaction message
format, time format, namespace, and error processing method.
2.1 Operation Method
The methods to operate resources via ISAPI are same as those of HTTP (Hyper Text Transport
Protocol) and RTSP (Real Time Streaming Protocol).
Note
The RTSP operation methods are mainly used to get the real-time stream for live view, two-way
audio, and playback in this manual. For details about HTTP and RTSP, please refer to https://
tools.ietf.org/html/rfc2612 and https://tools.ietf.org/html/rfc2326 .
Table 2-1 HTTP Operation Method
Method Description
POST Create resources. This method is only available for adding resource that does
not exist before.
GET Retrieve resources. This method cannot change the system status, only return
data as the response to the requester.
PUT Update resources. This method is usually for update the resource that already
exists, but it can also be used to create the resource if the specific resource
does not exist.
DELETE Delete resources.
Table 2-2 RTSP Operation Method
Method Description
OPTIONS Get the supported RTSP operation methods. See the request and response
message format below when interacting between client software and server.
OPTIONS %s RTSP/1.0\r\n //Request URL
CSeq:%u\r\n //Command No.
User-Agent:%s\r\n //Client software name
\r\n
/*Succeeded*/
RTSP/1.0 200 OK\r\n
CSeq: %u\r\n //Command No.
19
Intelligent Security API (General) Developer Guide
Method Description
Public: %s\r\n //Supported operation methods
Date:%s\r\n //Date and time
\r\n
/*Failed*/
RTSP/1.0 4XX/5XX %s\r\n
CSeq: %u\r\n //Command No.
Date:%s\r\n //Date and time
\r\n
DESCRIBE Transfer basic information by SDP (Session Description Protocol, see https://
tools.ietf.org/html/rfc2327 ) files, such as URL with SETUP command and so
on. See the request and response message format below when interacting
between client software and server.
DESCRIBE %s RTSP/1.0\r\n //URL
CSeq:%u\r\n //Command No.
Accept: application/sdp\r\n //The SDP description is accepted
Authorization:%s\r\n //Authentication information
User-Agent:%s\r\n //Client software name
\r\n
/*Succeeded*/
RTSP/1.0 200 OK\r\n
CSeq: %u\r\n //Command No.
Content-Type: application/sdp\r\n //The SDP description exists behind the command
Content-Base:%s\r\n //URL
Content-Length: %d\r\n //The length of contents behind the command
\r\n
[content] //SDP description
/*Failed*/
RTSP/1.0 4XX/5XX %s\r\n
CSeq: %u\r\n //Command No.
\r\n
SETUP Interact the session information, such as transmission mode, port number,
and so on. See the request and response message format below when
interacting between client software and server.
SETUP %s RTSP/1.0\r\n //URL
CSeq:%u\r\n //Command No.
Authorization:%s\r\n //Authentication information
Session:%s\r\n //Session ID is only returned at the even number of times
Transport: %s\r\n //Transmission protocol
User-Agent:%s\r\nv //Client software name
\r\n
/*Succeeded*/
RTSP/1.0 200 OK \r\n
20
Intelligent Security API (General) Developer Guide
Method Description
CSeq: %u\r\n
Session:%s\r\n //Session ID
Transport: s% //Transmission method
Date: s% //Date and time
/*Failed*/
RTSP/1.0 4XX/5XX %s\r\n
CSeq: %u\r\n //Command No.
\r\n
PLAY Start the stream transmission. See the request and response message format
below when interacting between client software and server.
PLAY %s RTSP/1.0\r\n //URL
CSeq:%u\r\n //Command No.
Authorization:%s\r\n //Authentication information
Session:%s\r\n //Session ID
Range: npt=%f-%f\r\n //Determine the play range
User-Agent:%s\r\n //Client software name
\r\n
/*Succeeded*/
RTSP/1.0 200 OK \r\n
CSeq: %u\r\n
Session:%s\r\n
RTP-Info:%s
Date: %s
/*Failed*/
RTSP/1.0 4XX/5XX %s\r\n
CSeq: %u\r\n //Command No.
Session:%s\r\n
\r\n
PAUSE Pause the stream transmission.
TEARDOWN Stop the stream transmission. See the request and response message format
below when interacting between client software and server.
TEARDOWN %s RTSP/1.0\r\n //URL
CSeq: %u\r\n //Command No.
Authorization:%s\r\n //Authentication information
Session:%s\r\n //Session ID
User-Agent:%s\r\n //Client software name
\r\n
/*Succeeded*/
RTSP/1.0 200 OK \r\n
CSeq: %u\r\n
Session:%s\r\n
21
Intelligent Security API (General) Developer Guide
Method Description
Date:%s\r\n
\r\n
/*Failed*/
RTSP/1.0 4XX/5XX %s\r\n
CSeq: %u\r\n //Command No.
Session:%s\r\n
\r\n
2.2 URL Format
URL (Uniform Resource Locator) is a further class of URIs, it can identify a resource and locate the
resource by describing its primary access mechanism.
The format of URL is defined as the follows: <protocol>://<host>[:port][abs_path [?query]].
protocol
Protocol types, i.e., HTTP (version 1.1) and RTSP (version 1.0).
host
Host name, IP address, or the FQDN (Fully Qualified Domain Name) of network devices.
port
Port number of host service for listening the connection status of TCP (Transmission Control
Protocol, see https://tools.ietf.org/html/rfc793 ) or UDP (User Datagram Protocol, see https://
tools.ietf.org/html/rfc768 ). If this field is not configured, the default port number will be
adopted. For HTTP, the default port number is 80, and for RTSP, the default port number is 554.
abs_path
Resource URI: /ServiceName/ResourceType/resource. Here, the ServiceName is ISAPI; the
ResourceType is predefined with upper camel case according to different functions , see details
in the following table; the resource is defined with lower camel case and can be extended in
actual applications. E.g., /ISAPI/System/Network/interfaces.
Predefined URI Model Description
/ISAPI/System/... System related resources
/ISAPI/Security/... Security related resources
/ISAPI/Event... Event/alarm related resources
/ISAPI/Image/... Video encoding and image related resources
/ISAPI/ContentMgmt/ Storage management related resources
...
query
22
Intelligent Security API (General) Developer Guide
Strings for describing resources information, including related parameters. The parameter
names and values must be listed as the following format in this field: ?p1=v1&p2=v2&…&pn=vn.
Note
• To locate the connected device, when operating lower-level device via the URL, the query
field should be filled as ?devIndex=uuid&p1=v1&p2=v2&…&pn=vn. The uuid (or guid) is a 32-
byte (128 bits) random number, which is unique and generated by operating system when
adding device, and its format is "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx".
• For message in JSON format, the query field should be filled as ?
format=json&p1=v1&p2=v2&…&pn=vn. For details about message format, refer to the next
section below. E.g.,http://10.17.132.22/ISAPI/System/time?
foramt=json&devIndex=550e8400e29b41d4a716446655440000.
2.3 Message Format
During the ISAPI integration, the request and response messages generated among the interaction
between devices and platform are data in XML format or JSON format.
Note
The message format here is only available for URLs based on HTTP.
XML Format
• For the previous integration, XML is a common format which may only cause a little changes in
the later integration.
• Generally, for configuration information, the Content-Type in the XML format message is
"application/xml; charset='UTF-8'", see details below.
//Request Message
GET /ISAPI/System/status HTTP/1.1
…
//Response Message
HTTP/1.1 200 OK
…
Content-Type: application/xml; charset="UTF-8"
…
<?xml version="1.0" encoding="UTF-8"?>
<DeviceStatus version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema">
…
</DeviceStatus>
For data (e.g., firmware, configuration files), the Content-Type in the XML format message is
"application/octet-stream", see details below.
//Request Message
PUT /ISAPI/System/configurationData HTTP/1.1
23
Intelligent Security API (General) Developer Guide
…
Content-Type: application/octet-stream
…
[proprietary configuration file data content]
//Response Message
HTTP/1.1 200 OK
…
Content-Type: application/xml; charset="UTF-8"
…
<?xml version="1.0" encoding="UTF-8"?>
<ResponseStatus version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema">
…
</ResponseStatus>
JSON Format Message
• The leaf node (without any sub node) in the message is named by lower camel case, while the
non-leaf node in the message in named by upper camel case.
• To communicate by the messages in JSON format, the devices must support the public
specifications in http://www.ecma-international.org/publications/files/ECMA-ST/
ECMA-404.pdf and HTTP with version 1.1.
Note
JSON is a lightweight data format which is a subset of JavaScript language and is small, fast, and
easy to be parsed.
• Generally, for configuration information, the Content-Type of message is "application/json", see
the example below:
//Request message
GET /ISAPI/System/status HTTP/1.1
…
//Response message
HTTP/1.1 200 OK
…
Content-Type: application/json
…
"DeviceStatus":""
…
For data (e.g., firmware, configuration files), the Content-Type of message is "application/octet-
stream", see the example below:
//Request message
PUT /ISAPI/System/configurationData HTTP/1.1
…
Content-Type: application/octet-stream
…
[proprietary configuration file data content]
24
Intelligent Security API (General) Developer Guide
//Response message
HTTP/1.1 200 OK
…
Content-Type: application/json
…
"ResponseStatus":""
…
2.4 Others
Time Format
The time format during ISAPI integration adopts ISO8601 standard (see details in http://
www.w3.org/TR/NOTE-datetime-970915 ), that is, YYY-MM-DDThh:mm:ss.sTZD (e.g.,
2017-08-16T20:17:06+08:00).
Namespace
For message in XML format, namespace is required. The following namespaces are available:
• xmlns=http://www.isapi.org/ver20/XMLSchema
• xmlns:xs="http://www.w3.org/2001/XMLSchema"
• xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
• xmlns:xlink="http://www.w3.org/1999/xlink"
Error Processing
During the integration applications of ISAPI protocol, when the error of URL based on HTTP
occurred, the ResponseStatus message (in XML or JSON format) which contains error code will be
returned. If the error of URL based on RTSP occurs, the corresponding status code will directly be
returned, for details, refer to https://tools.ietf.org/html/rfc2326 .
25
Intelligent Security API (General) Developer Guide
Chapter 3 Security
This part mainly introduces the authentication, user permission, and encryption in the integration
applications of ISAPI.
3.1 Authentication
When communicating via ISAPI protocol, the digest of the session must be authenticated.
Note
• The authentication must based on HTTP Authentication: Basic and Digest Access Authentication,
see https://tools.ietf.org/html/rfc2617 for details.
• The request session must contain authentication information, otherwise, device will return 401
error code.
The message digest, which contains user name, password, specific nonce value, HTTP or RTSP
operation methods, and request URL, is generated by the MD5 algorithm, see the calculation rules
below.
qop=Undefined
Digest=MD5(MD5(A1):<nonce>:MD5(A2))
qop="auth:"
Digest=MD5(MD5(A1):<nonce>:<nc>:<cnonce>:<qop>:MD5(A2))
qop="auth-int:"
Digest=MD5(MD5(A1):<nonce>:<nc>:<cnonce>:<qop>:MD5(A2))
Note
• The qop is a value for determining whether the authentication is required.
• A1 and A2 are two data blocks required for digest calculation.
A1: Data block about security, which contains user name, password, security domain, random
number, and so on. If the digest calculation algorithm is MD5, A1=<user>:<realm>:<password>;
if the algorithm is MD5-sess, A1=MD5(<user>:<realm>:<password>):<nonce>:<cnonce>.
A2: Data block about message, such as URL, repeated requests, message body, and so on, it
helps to prevent repeated, and realize the resource/message tamper-proof. If the qop is not
defined or it is "auth:", A2=<request-method>:<uri-directive-value>; if the qop is "auth-int:",
A2=<request-method>:<uri-directive-value>:MD5(<request-entity-body>).
• The nonce is the random number generated by service, the following generation formula is
suggested: nonce = BASE64(time-stamp MD5(time-stamp ":" ETag ":" private-key)). The time-
stamp in the formula is the time stamp generated by service or the unique serial No.; the ETag is
26
Intelligent Security API (General) Developer Guide
the value of HTTP ETag header in the request message; the priviate-key is the data that only
known by service.
If authentication failed, the device will return the XML_ResponseStatus_AuthenticationFailed
message, and the remaining authentication attempts will also be returned. If the remaining
attempts is 0, the user will be locked at the next authentication attempt.
3.2 User Permission
Three user types with different permissions are adopted in the security specifications to control
the access.
Administrator
The account of this user type is called "admin", which has the permissions to access all supported
resources. And it must be activated at any time.
Operator
The account of this user type has the permissions to access common resources and less advanced
resources, see details in the description of each resource.
Viewer
The account of this user type has the permissions to access common resources only, see details in
the description of each resource.
3.3 Encryption
Two encryption modes are available, including all information encryption (based on HTTPs) and
sensitive information (e.g., user name, password, card No. and so on) encryption.
Note
• The sensitive information varies with different applications, see details in the description of
protocol messages.
• Encryption will not affect the escape behavior of contents in XML format, which means that the
contents should be escaped before encrypting.
Encryption Capability
Before encrypting the information, the encryption capability of devices or client software should
be obtained via the URI: GET /ISAPI/Security/capabilities to know the available encryption
algorithm. The encryption algorithm information is returned by the securityVersion node in
response message XML_SecurityCap .
27
Intelligent Security API (General) Developer Guide
Note
Different values of securityVersion node correspond to different encrypted contents and
encryption modes. If node value is 1, it indicates that the encryption mode is AES128 CBC, and
only the password will be encrypted; if the node value is 2, the AES256 CBC mode is adopted, and
both the user name and password will be encrypted.
Encryption Flow
Flow of encrypting source data: Source Data → Encode by Base64 Method → Encrypt in AES128/
AEC256 CBC Mode .
Note
Encoding data by Base64 method is to be compatible with binary data and get the data size
before encrypting by AES128/AEC256 CBC mode (the data size is not real after encrypting as 0 will
be supplied).
Encryption Key
The key used for encryption is generated by iteratively encrypting the (Password
+"AaBbCcDd1234!@#$") according to SHA256 algorithm. E.g., if the device password is
abcd1234, then the key is SHA(SHA(SHA("abcd1234AaBbCcDd1234!@#$"))…).
Note
• The number of iterations is determined by device capability, see the node keyIterateNum in
XML_SecurityCap message.
• If the password is changed when generating the key, the previous password will be used.
• The device gets the key when it is authenticated, and the client software/system calculates the
key after logging in.
Encryption URI Format
The encryption modes are displayed by adding query parameters, i.e., security and iv, to the URI
(e.g., /ISAPI/xxx?security=1&iv=xxx).
Note
• The parameter security is the version No. of encryption scheme. When security does not exist,
it indicates that the data is not encrypted; when security=1, it indicates that the nodes of
sensitive information in the message are encrypted in AES128 CBC mode; when security=2, it
indicates that the nodes of sensitive information in the message are encrypted in AES256 CBC
mode.
• The parameter iv is the initialization vector, and it is required when security=1 or 2. The 16-
byte hexadecimal iv of AES128/AES256 CBC mode is generated by client software or system,
and it will be transformed to 32-byte characters when transmitting it to devices via URI. When
encrypting in AES128/AES256 CBC mode, loop encryption by data block size is not required,
28
Intelligent Security API (General) Developer Guide
and after encrypting for once, the iv will be changed, so if there are two or more nodes to be
encrypted, you should copy the iv during encoding to make sure the iv is same for encrypting
each node.
• When you want to determine the value of security in the URI, you must compare the
encryption scheme version No. of client software and device. If the supported versions are
different, you should adopt the lower version. E.g., if the client software supports security=2,
the device supports security=1, then security=1 will be adopted.
Suggestion About Extension
If there are other existing nodes in the message are regarded as sensitive information, you can
add values to the parameter security in the URI, e.g., security=3 (encrypt added sensitive
information in AES128 CBC mode) and security=4 (encrypt added sensitive information in AES256
CBC mode).
3.3.1 Encrypt Stream
To improve the security of real-time or history stream from devices and comply with the laws and
regulations of some parts of oversea markets, we have provided the stream encryption function
based on AES algorithm to encrypt the stream.
29
Intelligent Security API (General) Developer Guide
Steps
Figure 3-1 Programming Flow of Encrypting Stream
Note
• For devices with Hisilicon chips, up to 16 channels' stream can be encrypted. If the number of
channels is larger than 16, the error "insufficient resources" will be returned when starting live
view or playback.
• For Sky series devices, all channels' stream can be encrypted.
• The PlayCtrl library will not check if the stream is encrypted. If the stream is encrypted, but the
decryption key is not configured or incorrect decryption key is configured, the display image will
be black.
• If the encryption algorithm of the external stream is known, you can decrypt and play the stream
without the PlayCtrl library.
1. Call /ISAPI/System/capabilities or /ISAPI/Streaming/encryption/capabilities?format=json by
GET method to get device capability or encryption capability to check if the device or channel
supports stream encryption.
30
Intelligent Security API (General) Developer Guide
- The node <isSupportEncryption> is not returned in the capability message XML_DeviceCap
or the value of node <enable> in the capability message JSON_EncryptionCap is "false":
perform the steps below.
a. Call /ISAPI/System/Network/capabilities by GET method to get network capability to
check if the device supports encrypting EZVIZ stream.
Note
If the node <isSupportEZVIZ> is returned in the capability message XML_NetworkCap and
its value is "true", it indicates that encrypting EZVIZ stream is supported. Otherwise,
please end this task.
b. Call /ISAPI/System/Network/EZVIZ by PUT method to log in to Hik-Connect and set
encryption key to enable EZVIZ stream encryption.
- The node <isSupportEncryption> is returned in the capability message XML_DeviceCap and
its value is "true" or the value of node <enable> in the capability message
JSON_EncryptionCap is "true": the device or channel supports stream encryption, and
continue to perform the steps below.
a. Set encryption key: PUT /ISAPI/Streaming/encryption/secretKey?format=json .
b. Enable stream encryption: PUT /ISAPI/Streaming/encryption?format=json .
2. Get real-time or history stream, refer to Live View and Playback for details.
3. Call /ISAPI/System/Network/verificationCodeCheck by POST method to verify the encryption
key.
Note
To check if verifying verification code is supported, you can call /ISAPI/System/Network/
capabilities by GET method to get the device network capability ( XML_NetworkCap ). If
supports, the node <isSupportVerificationCodeCheck> is returned in the capability and its value
is "true".
4. Receive the encrypted stream by calling encrypted stream callback function
(PlayM4_SetEncryptTypeCallBack) of PlayCtrl Library SDK and decrypt the stream by the
encryption key.
Note
Refer to Cross-Platform PlayCtrl Library SDK User Manual for details of the encrypted stream
callback function and playing of the decrypted stream.
3.3.2 Encrypt Sensitive Information
Some sensitive information (such as user name, password, and so on) in the messages should be
encrypted to improve security during interaction with devices via ISAPI.
31
Intelligent Security API (General) Developer Guide
Steps
Figure 3-2 Programming Flow of Encrypting Sensitive Information
Note
Values of the following parameters in query parameters, XML messages, and JSON messages are
sensitive information that needs to be encrypted.
Table 3-1 Sensitive Information to be Encrypted
Format Parameters
Query identityKey (identity key, which is the key of the private face picture
library) and secretkey (secret key)
XML <userName> (user name), <password> (password), <loginPassword>
(login password), <snmpAuthenticationPassword> (SNMP
authentication password), <snmpPrivacyPassword> (SNMP encryption
password), <accountName> (account name), <encryptionKey>
(encryption key), <sharedKey> (shared key), <Username> (user name),
<passwd>(password), <name> (name), <authPasswd> (authentication
32
Intelligent Security API (General) Developer Guide
Format Parameters
password), <passWord> (password), <key> (key), <tokenKey> (token
key), <oldPwd> (old password), <newPwd> (new password), and
<terminalPwd> (terminal password)
JSON "userName" (user name), "password" (password), "loginPassword"
(login password), "snmpAuthenticationPassword" (SNMP authentication
password), "snmpPrivacyPassword" (SNMP encryption password),
"accountName" (account name), "encryptionKey" (encryption key),
"sharedKey" (shared key), "Username" (user name), "passwd"
(password), "authPasswd" (authentication password), "passWord"
(password), "key" (key), "tokenKey" (token key), "randomCode" (random
code), "AK" (access key), "SK" (encryption key), "Card" (card No.),
"Password" (password), "FingerPrint" (fingerprint),
"TemporaryPassword" (temporary password), "RemoteControl" (remote
control), and "WirelessInfo" (wireless information)
1. Call /ISAPI/Security/capabilities by GET method to get the device security capability to know
the encryption parameters.
The security capability is returned in the message XML_SecurityCap . Nodes of encryption
parameters include <securityVersion> (encryption scheme version), <keyIterateNum> (iteration
times), <isIrreversible> (whether the password is irreversible), and <salt> (salt value).
Note
The salt value will be returned only when the request URL contains the query parameter
username.
2. Calculate and generate the key for encryption and decryption according to the encryption
parameters.
- If <isIrreversible> is "true" and <salt> is also configured, the key is calculated and generated
by iteratively encrypting the value of (user name+salt+password) with SHA256 algorithm.
Note
• The value of <salt> should be different for different users.
• The password encrypted by this method is irreversible.
- If <isIrreversible> is "false" or does not exist, and <salt> is null, the key is calculated and
generated by iteratively encrypting the password with SHA256 algorithm.
Note
The password encrypted by this method is reversible.
3. Generate a byte array containing 16 elements randomly as the initialization vector (iv) and
covert the byte array to character array.
4. Encrypt the data.
1) Convert iv from character array to byte array.
33
Intelligent Security API (General) Developer Guide
2) Encode the data to be encrypted by using base64.
3) Set the AES key based on the encryption key and the encryption version.
Note
Currently, only AES-128 encryption is supported, which indicates that the securityVersion is
1.
4) Encrypt the data by using iv and AES key in AES-CBC mode.
5) Convert the encrypted data to character array.
5. Decrypt the encrypted data.
1) Convert iv from character array to byte array.
2) Convert the encrypted data from character array to byte array.
3) Set the AES key based on the encryption key and the encryption version.
Note
Currently, only AES-128 encryption is supported, which indicates that the securityVersion is
1.
4) Decrypt the encrypted data by using iv and AES key in AES-CBC mode.
5) Decode the decrypted data by using base64.
Example
Sample Code of Encrypting Sensitive Information
using System;
using System.Collections.Generic;
using System.Linq;
using System.Security.Cryptography;
using System.Text;
using System.Threading.Tasks;
namespace SystemManagement.InformationEncryption
{
class InfoEncryption
{
/// <summary>
/// Generate initialization vector (iv)
/// </summary>
/// <param name="strInitVector"></param>
/// <returns></returns>
public static void GetInitVector(out string strInitVector)
{
byte[] szInitVector = new byte[16];
Random ra = new Random();
ra.NextBytes(szInitVector);
byte[] byHexAes = AESEncryption.converByteArrayToCharArray(szInitVector, szInitVector.Length);
strInitVector = Encoding.UTF8.GetString(byHexAes).ToLower();//This must be in lowercase.
}
/// <summary>
/// Encrypt data with SHA256 algorithm. The data encrypted by this algorithm is reversible.
34
Intelligent Security API (General) Developer Guide
/// </summary>
/// <param name="strData"></param>
/// <returns></returns>
public static string sha256(string strData)
{
byte[] szData = Encoding.UTF8.GetBytes(strData);
byte[] szHash = SHA256Managed.Create().ComputeHash(szData);
byte[] szSha256 = AESEncryption.converByteArrayToCharArray(szHash, 32);//The standard algorithm is Hash. The
length 32 is set according to the sample document.
return Encoding.UTF8.GetString(szSha256);
}
/// <summary>
/// Encrypt (user name+salt+password) with SHA256 algorithm. The password encrypted by this algorithm is
irreversible.
/// </summary>
/// <param name="strUser"></param>
/// <param name="szSalt"></param>
/// <param name="strPassword"></param>
/// <returns></returns>
public static string calcSha256(string strUser, byte[] szSalt, string strPassword)
{
string strSrcData = strUser;
byte[] szRealSalt = new byte[64];//The size of the salt value is 64 bits.
if (szSalt.Length > 64)
{
return null;
}
Array.Copy(szSalt, szRealSalt, szSalt.Length);
strSrcData = strSrcData + Encoding.UTF8.GetString(szRealSalt) + strPassword;
return sha256(strSrcData);
}
/// <summary>
/// Generate encryption key
/// </summary>
/// <param name="strUserName"></param>
/// <param name="strSalt"></param>
/// <param name="strPassword"></param>
/// <param name="szOut"></param>
/// <param name="iKeyIterateNum"></param>
/// <param name="bIrreversible"></param>
/// <returns></returns>
public static void getEncryptKey(string strUserName, string strSalt, string strPassword, out byte[] szOut, int
iKeyIterateNum, bool bIrreversible)
{
byte[] szSalt = null;
if (strSalt != null)
{
szSalt = Encoding.UTF8.GetBytes(strSalt);
}
string strSrcData = string.Empty;
35
Intelligent Security API (General) Developer Guide
if (bIrreversible && szSalt.Length > 0)
{
string strIrrPsw = calcSha256(strUserName, szSalt, strPassword);
if (strIrrPsw.Length > 64)
{
strSrcData = strIrrPsw.Substring(0,64);
}
else
{
strSrcData = strIrrPsw;
}
}
else
{
if (strPassword.Length > 64)
{
strSrcData = strPassword.Substring(0,64);
}
else
{
strSrcData = strPassword;
}
}
strSrcData +="AaBbCcDd1234!@#$";
if (iKeyIterateNum <= 0)//Iterations
{
iKeyIterateNum = 100;
}
//For the SHA256 iteration, iKeyIterateNum represents the number of iterations returned by the capability set.
for (int i = 0; i < iKeyIterateNum; i++)
{
strSrcData = sha256(strSrcData);
}
byte[] szSHA256 = Encoding.UTF8.GetBytes(strSrcData);
//The result calculated with SHA256 algorithm is converted to a byte array for the last time.
byte[] szByteArray = AESEncryption.convertCharArrayToByteArray(szSHA256, szSHA256.Length);
if (szByteArray.Length > 32)
{
szOut = new byte[32];
Array.Copy(szByteArray, szOut, 32);
}
else
{
szOut = new byte[szByteArray.Length];
Array.Copy(szByteArray, szOut, szByteArray.Length);
}
}
/// <summary>
36
Intelligent Security API (General) Developer Guide
/// Encrypt content (sensitive information)
/// </summary>
/// <param name="strInitVextor"></param>
/// <param name="szAESKey"></param>
/// <param name="strSrcContent"></param>
/// <param name="strOut"></param>
/// <param name="iSecurityVersion"></param>
/// <returns></returns>
public static void getEncryptContent(string strInitVextor, byte[] szAESKey, string strSrcContent, out string strOut, int
iSecurityVersion)
{
if (iSecurityVersion != 1)//1 refers to the AES-128 algorithm. Currently only 1 is supported.
{
strOut = strSrcContent;
return;
}
//Convert to UTF-8
byte[] szInitVextor = Encoding.UTF8.GetBytes(strInitVextor);
byte[] szInitVextorByteArray = AESEncryption.convertCharArrayToByteArray(szInitVextor, szInitVextor.Length);
byte[] szSrcBytes = Encoding.UTF8.GetBytes(strSrcContent);
string strSrcBase64 = Convert.ToBase64String(szSrcBytes);
//AES encryption
byte[] szAesData = AESEncryption.AesEncrypt(strSrcBase64, szAESKey, szInitVextorByteArray);
byte[] szOut = AESEncryption.converByteArrayToCharArray(szAesData, szAesData.Length);
strOut = Encoding.UTF8.GetString(szOut);
}
/// <summary>
/// Decrypt content (sensitive information)
/// </summary>
/// <param name="strInitVextor"></param>
/// <param name="szAESKey"></param>
/// <param name="strSrcContent"></param>
/// <param name="strOut"></param>
/// <param name="iSecurityVersion"></param>
/// <returns></returns>
public static void getDecryptContent(string strInitVextor, byte[] szAESKey, string strSrcContent, out string strOut, int
iSecurityVersion)
{
if (iSecurityVersion != 1)//1 refers to the AES-128 algorithm. Currently only 1 is supported.
{
strOut = strSrcContent;
return;
}
//Convert to UTF-8
byte[] szInitVextor = Encoding.UTF8.GetBytes(strInitVextor);
byte[] szInitVextorByteArray = AESEncryption.convertCharArrayToByteArray(szInitVextor, szInitVextor.Length);
byte[] szSrcBytes = Encoding.UTF8.GetBytes(strSrcContent);
byte[] szSrcByteArray = AESEncryption.convertCharArrayToByteArray(szSrcBytes, szSrcBytes.Length);
37
Intelligent Security API (General) Developer Guide
string strAesData = AESEncryption.AesDecrypt(szSrcByteArray, szAESKey, szInitVextorByteArray);
byte[] szOut = Convert.FromBase64String(strAesData);
strOut = Encoding.UTF8.GetString(szOut);
}
}
}
Note
The sample code of the class AESEncryption is as shown below.
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Security.Cryptography;
using System.Text;
using System.Threading.Tasks;
namespace SystemManagement.InformationEncryption
{
class AESEncryption
{
/// <summary>
/// Convert hexadecimal to binary
/// </summary>
/// <param name="chstr"></param>
/// <returns></returns>
public static byte hexToBinary(byte chstr)
{
char crtn = '\0';
if (('0' <= chstr) && ('9' >= chstr))
{
crtn = (char)(chstr & 0x0F);
}
else if (('A' <= chstr) && ('F' >= chstr))
{
crtn = (char)(chstr - 'A' + 10);
}
else if (('a' <= chstr) && ('f' >= chstr))
{
crtn = (char)(chstr - 'a' + 10);
}
return (byte)crtn;
}
/// <summary>
/// Convert a character array to a byte array
/// </summary>
/// <param name="pSrc"></param>
/// <param name="nSrcLen"></param>
38
Intelligent Security API (General) Developer Guide
/// <returns></returns>
public static byte[] convertCharArrayToByteArray(byte[] pSrc, int nSrcLen)
{
byte[] byChallengeDst2 = new byte[nSrcLen / 2];
for (int i = 0; i < nSrcLen; i = i + 2)
{
byChallengeDst2[i / 2] = (byte)(hexToBinary(pSrc[i]) << 4);
byChallengeDst2[i / 2] += (byte)hexToBinary(pSrc[i + 1]);
}
return byChallengeDst2;
}
/// <summary>
/// Convert a byte array to a character array
/// </summary>
/// <param name="pSrc"></param>
/// <param name="nSrcLen"></param>
/// <returns></returns>
public static byte[] converByteArrayToCharArray(byte[] pSrc, int nSrcLen)
{
StringBuilder strB = new StringBuilder();
for (int i = 0; i < nSrcLen; i++)
{
strB.Append(pSrc[i].ToString("x2"));//Here x must be in lowercase, which means converting to a lowercase
hexadecimal character.
}
return Encoding.UTF8.GetBytes(strB.ToString());
}
/// <summary>
/// Encrypt in AES-CBC mode
/// </summary>
/// <param name="strSrcContent"></param>
/// <param name="szAESKey"></param>
/// <param name="iv"></param>
/// <returns></returns>
public static byte[] AesEncrypt(string strSrcContent, byte[] szAESKey, byte[] iv)
{
RijndaelManaged rijndaelCipher = new RijndaelManaged();
rijndaelCipher.Mode = CipherMode.CBC;
rijndaelCipher.Padding = PaddingMode.Zeros;//The end is all-zero padding
rijndaelCipher.KeySize = 128;
rijndaelCipher.BlockSize = 128;
byte[] keyBytes = new byte[16];
int len = szAESKey.Length;
if (len > keyBytes.Length)
{
len = keyBytes.Length;
}
System.Array.Copy(szAESKey, keyBytes, len);
39
Intelligent Security API (General) Developer Guide
rijndaelCipher.Key = keyBytes;
rijndaelCipher.IV = iv;
ICryptoTransform transform = rijndaelCipher.CreateEncryptor();
byte[] szSrcContent = Encoding.UTF8.GetBytes(strSrcContent);
byte[] szDstContent = transform.TransformFinalBlock(szSrcContent, 0, szSrcContent.Length);
return szDstContent;
}
/// <summary>
/// Decrypt in AES-CBC mode
/// </summary>
/// <param name="szSrcContent"></param>
/// <param name="szAESKey"></param>
/// <param name="iv"></param>
/// <returns></returns>
public static string AesDecrypt(byte[] szSrcContent, byte[] szAESKey, byte[] iv)
{
RijndaelManaged rijndaelCipher = new RijndaelManaged();
rijndaelCipher.Mode = CipherMode.CBC;
rijndaelCipher.Padding = PaddingMode.Zeros;//The end is all-zero padding
rijndaelCipher.KeySize = 128;
rijndaelCipher.BlockSize = 128;
byte[] keyBytes = new byte[16];
int len = szAESKey.Length;
if (len > keyBytes.Length)
{
len = keyBytes.Length;
}
System.Array.Copy(szAESKey, keyBytes, len);
rijndaelCipher.Key = keyBytes;
rijndaelCipher.IV = iv;
ICryptoTransform transform = rijndaelCipher.CreateDecryptor();
byte[] szDstContent = transform.TransformFinalBlock(szSrcContent, 0, szSrcContent.Length);
//After decrypting the last 16 bytes of the ciphertext, the decrypted data of the last 16 bytes will be checked.
//If the value of the last byte is 16, the 16-byte string data will be discarded.
//If the value of the last byte is smaller than 16, it indicates that the original text was padded during encryption.
The padding will be discarded.
for (int i = 0; i < szDstContent.Length; i++)
{
if (szDstContent[i] <= 16)
{
szDstContent[i] = 0;
}
}
//The \0 at the end needs to be removed.
return Encoding.UTF8.GetString(szDstContent).Replace("\0", "");
}
}
}
40
Intelligent Security API (General) Developer Guide
3.3.3 Encrypt Stream Based on RTSP/SRTP
Real Time Streaming Protocol (RTSP) is a network control protocol designed in RESTful style for use
in entertainment and communication systems to control streaming media servers, which can be
used for establishing and controlling media sessions between end points. The Secure Real-time
Transport Protocol (SRTP) is a profile of the Real-time Transport Protocol (RTP) which is intended to
provide encryption, message authentication and integrity, and replay attack protection for the RTP
data in both unicast and multicast applications. In this manual, the parameter interaction and
stream transmission control between third-party platforms and Hikvision devices are implemented
by RTSP APIs and messages, and the stream will be encrypted by SRTP for transmission.
The interaction process between third-party platforms and devices based on RTSP and SRTP is
shown as below.
41
Intelligent Security API (General) Developer Guide
Figure 3-3 Interaction Process Based on RTSP and SRTP
42
Intelligent Security API (General) Developer Guide
RTSP Message Syntax
The request and response messages defined by specific syntax are used to transmit the rules,
parameters, and data during the interaction process.
Note
For details about the URL format and operation methods of RTSP, refer to URL Format and
Operation Method .
Request Message
Request-Line
RTSP-Header(1)
…
RTSP-Header(n)
CRLF
[content]
Request-Line
Start line of request message, it is in the format of "[Method] SP [Request-URI] SP RTSP/
[Version] CRLF".
[Method]
RTSP operation method, including DESCRIBE, SETUP, PLAY, PAUSE, TEARDOWN, HEARTBEAT,
and PRIVATETRANS.
[Request-URI]
Resource address in URL format, for example, rtsp://10.21.81.22:554/ISAPI/streaming/
channels/101.
[RTSP-Version]
RTSP version No., in this manual, it should be set to "RTSP/1.0".
RTSP-Header
Multiple header lines are allowed after the start line, and each line should be ended with
"CRLF".
[content]
Additional binary data, its length is determined by the value of Content-Length in header lines.
Response Message
Status-Line
RTSP-Header(1)
…
RTSP-Header(n)
CRLF
[content]
43
Intelligent Security API (General) Developer Guide
Status-Line
Start line of response message, it is in the format of "[RTSP-Version] SP [Status-Code] SP
[Reason-Phrase] CRLF".
[RTSP-Version]
RTSP version No., in this manual, it should be set to "RTSP/1.0".
[Status-Code]
Communication status codes, which are classified as five types, i.e., Informational (code
starts with "1"), Success (code starts with "2"), Redirection (code starts with "3"), Client Error
(code starts with "4"), and Server Error (code starts from "5"). Each type contains multiple
sub types, refer to RTSP Status Code for details.
[Reason-Phrase]
Description of status code, refer to RTSP Status Code for details.
RTSP-Header
Multiple header lines are allowed after the start line, and each line should be ended with
"CRLF".
[content]
Additional binary data, its length is determined by the value of Content-Length in header lines.
Authentication
During the integration based on RTSP, the information transmission between third-party platform
and device adopts digest authentication. That is, when the third-party platform request for
resources, the nonce, realm, user name, password, operation method, request URL, and so on,
which obtained from device, will be encrypted by MD5 (Message-Digest) algorithm or SHA256
(Secure Hash Algorithm 256). And then, the information will be sent back to device for
authentication.
Steps
Figure 3-4 Authentication Process During RTSP Interaction
44
Intelligent Security API (General) Developer Guide
1. The third-party platform sends request without authentication information by DESCRIBE
method to device.
2. The device sends response with "401" (unauthorized) and supported authentication mode (i.e.,
digest authentication mode and basic authentication mode) to the third-party platform.
Note
If both the digest and basic authentication modes are supported, the digest authentication
mode is in high priority.
3. The third-party platform sends request with digest or basic authentication information
according to the supported authentication mode by different operation methods to device.
Note
The information sent by third-party platform to device for digest authentication is in the
following format:
Authorization:Digest username=%s,realm=%s,nonce=%s,uri=%s,response=%s \r\n;
• The values of realm and nonce fields are returned in the first DESCRIBE operation.
• The response field should be calculated by third-party platform and device for each
operation, and MD5 algorithm is suggested. The value of this field equals to
"md5(md5(username:realm:password):nonce:md5(public_method:url))", in which, the
public_method is the current operation method, e.g., DESCRIBE, SETUP.
Encryption
RTSP consists of two modules, i.e., signaling and stream. The signaling is transmitted via the link
encrypted by TLS (Transport Layer Security) in TCP (Transmission Control Protocol) mode. The
stream can be transmitted in TCP, UDP (User Datagram Protocol), or multicast mode. If the stream
is transmitted in TCP mode, the signaling and the stream are transmitted via the same link which is
encrypted by TLS. If the stream is transmitted in UDP or multicast mode, the signaling and the
stream are transmitted via different links, and the stream is encrypted by SRTP.
45
Intelligent Security API (General) Developer Guide
Figure 3-5 Encryption Process During RTSP Interaction
Encrypt Signaling
The signaling is transmitted via the link encrypted by TLS in TCP mode. That is, the third-party
platform establishes TLS connection with the device. The default signaling port of the device is 322,
and it can be obtained and configured by calling the URI /ISAPI/Security/adminAccesses with GET
and PUT method.
Note
For details about the URI of getting or setting the signaling port, refer to ISAPI (General) Developer
Guide.
Encrypt Stream
The default encryption algorithm is the Advanced Encryption Standard (AES). There are two
encryption modes for AES, and two modes are defined for running AES to convert the original AES
block ciphertext into the stream ciphertext:
• Counter Mode (Segmented Integer Counter Mode): AES in Counter Mode 128-bit
• F8 Mode: AES in F8 Mode 128-bit
46
Intelligent Security API (General) Developer Guide
Note
• In this manual, the mode for running AES is Counter Mode.
• The RTP package authentication algorithm is HMAC-SHA-1.
The third-party platform and the device negotiate the stream encryption key during the DESCRIBE
operation. For different transmission modes, the stream will be encrypted by different mechanism
as described below.
In TCP Mode
In TCP mode, the stream and the signaling are transmitted via the same link. This link is
encrypted by TLS, so the stream encryption key is determined by TLS. The request URL to be
called is: DESCRIBE rtsps://[host][:port]/SRTP/ISAPI/streaming/channels/<ID>.
Note
Encrypting stream in TCP mode is only available for RTSP.
In UDP Mode
In UDP mode, the third-party platform negotiates with the device by the request URL: DESCRIBE
rtsps://[host][:port]/SRTP/ISAPI/streaming/channels/<ID>?SRTP=. After receiving the DESCRIBE
request, the device will initialize the video encryption parameters, generate a random key, create
a MIKEY message, configure the media level attribute "a=key-mgmt" in SDP file, and respond to
the platform by the SDP file. The platform will parse the MIKEY message and get the video stream
decryption parameters after receiving the response from the device.
In Multicast Mode
In multicast mode, the third-party platform negotiates with the device by the request URL:
DESCRIBE rtsps://[host][:port]/SRTP/ISAPI/streaming/channels/<ID>?MULTI=?SRTP=.
Note
• The device will check whether the request from the third-party is unicast or multicast by the
request URL. If it is a multicast request, the device will reuse the master key and SSRC for the
same multicast group when generating a MIKEY message, and send the response message by
SDP file (it contains the MIKEY message) to the platform after receiving the DESCRIBE request.
For the unicast request, the master key and SSRC will not be reused.
• The query parameters MULTI and SRTP are not strongly related. If there is no encryption,
MULTI can also be set to 1.
Encrypt Metadata
When uploading metadata is enabled, you can get the metadata information from the stream
during live view via RTSP. Then the intelligent structured information in the metadata can be
selectively overlaid on the video for display. In TCP mode, the metadata is transmitted via the same
link as the signaling and stream, and the metadata will be encrypted by TLS. In UDP or multicast
mode, the metadata will not be encrypted, which means that the SDP response file of the
47
Intelligent Security API (General) Developer Guide
DESCRIBE request does not contain the MIKEY message for metadata and the SETUP request does
not contain the parameter "SRTP=1".
Negotiate Transmission Method
For transmitting encrypted stream, the third-party platform and the device negotiate the
transmission method during the SETUP operation. The requests and responses are as shown
below.
Third-Party Platform to Device
Transport: RTP/AVP/TCP;unicast;interleaved=%u1-%u2\r\n //RTP/RTSP
Transport: RTP/SAVP;unicast;client_port=%u-(%u+1)\r\n //SRTP/UDP
Transport: RTP/SAVP;multicast\r\n //SRTP/multicast
Device to Third-Party Platform
Transport: RTP/AVP/TCP;unicast;interleaved=%u1-%u2;ssrc=%u\r\n //RTP/RTSP
Transport: RTP/SAVP;unicast;client_port=%u-(%u +1);server_port=%u-(%u +1) ssrc=%u\r\n //SRTP/UDP
Transport: RTP/SAVP;multicast;destination=%s;port=%u-(%u +1);ssrc=%u\r\n //SRTP/multicast
Note
The interleaved refers to the channel ID of the RTP or RTCP package.
Example
Interaction Message of DESCRIBE Method in UDP Mode
DESCRIBE rtsps://10.8.97.31:322/test?SRTP=1 RTSP/1.0
CSeq: 3
User-Agent: GStreamer/1.14.0
Accept: application/sdp
Authorization: Basic dXNlcjpwYXNzd29yZA==
Date: Tue, 25 Dec 2018 08:59:48 GMT
RTSP/1.0 200 OK
CSeq: 3
Content-Type: application/sdp
Content-Base: rtsps://10.8.97.31:322/test?SRTP=1
Server: GStreamer RTSP server
Date: Tue, 25 Dec 2018 08:59:49 GMT
Content-Length: 909
v=0
o=- 17656709277245289819 1 IN IP4 127.0.0.1
s=Session streamed with GStreamer
t=0 0
a=range:npt=0-
m=video 0 RTP/SAVP 96
a=rtpmap:96 H264/90000
a=fmtp:96 packetization-mode=1;profile-level-id=42c015;sprop-parameter-
sets=Z0LAFdkBYJbAWoMAgtKAAAADAIAAAA9Hixck,aMuMsg==
a=control:stream=0
a=key-mgmt:mikey AQAFAMXXL3YBAABNaET
48
Intelligent Security API (General) Developer Guide
+AAAAAAsA38xwBPpfUnUKEKU9oYIscAkHWtm7D6PsJ9kBAAAAFQABAQEBEAIBAQMBCgcBAQgBAQoBAQAAACIAIAAeh
biETsBmk3jdc0p0PS5epwF6VglTO/+Yx0FcDvMGAA==
Live View and Playback
Live view helps to remotely get the real-time video or audio of monitoring area and know the
status of human, vehicle, object, and so on. During live view, you can record and store the
remarkable videos for remotely playback.
Live View
• Transmit basic information (e.g., URL, etc.) via SDP file for live view
Request URL with Method: DESCRIBE rtsp://[host][:port]/ISAPI/Streaming/channels/<ID>
• Transmit session information (e.g., transmission type, port No., etc.) for live view
Request URL with Method: SETUP rtsp://[host][:port]/ISAPI/Streaming/channels/<ID>/
trackID=
• Start stream transmission for live view
Request URL with Method: PLAY rtsp://[host][:port]/ISAPI/Streaming/channels/<ID>
• Stop stream transmission for live view
Request URL with Method: TEARDOW rtsp://[host][:port]/ISAPI/Streaming/channels/<ID>
Playback
• Get basic parameters for playback
Request URL with Method: DESCRIBE rtsp://<host>[:port]/ISAPI/Streaming/tracks/<ID>?
starttime=&endtime=
• Get session information for playback
Request URL with Method: SETUP rtsp://<host>[:port]/ISAPI/Streaming/tracks/<ID>/trackID=?
starttime=&endtime=
• Start playback
Request URL with Method: PLAY rtsp://<host>[:port]/ISAPI/Streaming/tracks/<ID>?
starttime=&endtime=
• Pause playback
Request URL with Method: PAUSE rtsp://<host>[:port]/ISAPI/Streaming/tracks/<ID>?
starttime=&endtime=
• Stop playback
Request URL with Method: TEARDOW rtsp://<host>[:port]/ISAPI/Streaming/tracks/<ID>?
starttime=&endtime=
49
Intelligent Security API (General) Developer Guide
Remarks
• The <ID> in the request URL refers to the value of (channel No. × 100 + value of stream type),
while, the value of stream type can be "1" (main stream), "2" (sub stream), and "3" (third
stream).
• trackID: the value of stream data type, for video stream data, the value is "1", and for audio
stream data, the value is "2".
• startime/endtime: Start time or end time of video to be played back, and the time format is
based on ISO 8601 standard, i.e., YYYYMMDD"T"HHmmSS.fraction"Z" (YYYY-year, MM-month,
DD-day, T-separator, HH-hour, mm-miniute, SS-second, Z-Zulu (GMT) time (optional)). For
example, "20130526T134258Z" means May 26th, 2013 at 1:42:58 PM GMT.
• When starting live view, the stream data is transmitted by RTP packet, and the platform can
check the stream data type (video or audio) according to the value of payload type (obtained
during the interaction of DESCRIBE method) in the RTP packet header. Refer to RTP Packet
Format for details.
Example
Interaction Message of DESCRIBE Method
DESCRIBE rtsp://10.17.133.46:554/ISAPI/streaming/channels/101 RTSP/1.0
CSeq: 0
Accept:application/sdp
User-Agent:NKPlayer-1.00.00.081112
RTSP/1.0 401 Unauthorized
CSeq: 0
WWW-Authenticate: Digest realm="4419b66d2485", nonce="47f172cffa4ce6e6942bbdcfa5931d0f", stale="FALSE"
Date: Tue, Mar 14 2017 10:42:35 GMT
DESCRIBE rtsp://10.17.133.46:554/ISAPI/streaming/channels/101 RTSP/1.0
CSeq:1
Accept:application/sdp
Authorization: Digest username="admin",
realm="4419b66d2485",
nonce="47f172cffa4ce6e6942bbdcfa5931d0f",
uri="rtsp://10.17.133.46:554/ISAPI/streaming/channels/101",
response="da5deb4033515f74ed0483d2da3f7fe0"
User-Agent:NKPlayer-1.00.00.081112
RTSP/1.0 200 OK
CSeq: 1
Content-Type: application/sdp
Content-Length: 604
v=0
o=- 1489488155469547 1489488155469547 IN IP4 10.17.133.46
s=Media Presentation
e=NONE
b=AS:5100
t=0 0
50
Intelligent Security API (General) Developer Guide
a=control:*
m=video 0 RTP/AVP 96
c=IN IP4 0.0.0.0
b=AS:5000
a=recvonly
a=x-dimensions:1280,720
a=control:trackID=1 //Return video stream for SETUP
a=rtpmap:96 H264/90000
a=fmtp:96 profile-level-id=420029;
packetization-mode=1;
sprop-parameter-sets=Z2QAH6wXKgFAFuhAAAHCAABX5CE=,
aP44sA==
m=audio 0 RTP/AVP 8
c=IN IP4 0.0.0.0
b=AS:50
a=recvonly
a=control:trackID=2 //Return audio stream for SETUP
a=rtpmap:8 PCMA/8000
a=Media_header:MEDIAINFO=494D4B48010200000400000111710110401F000000FA00000000000000000000000000
0000000000;
a=appversion:1.0
Example
Interaction Message Example of SETUP Method
SETUP rtsp://10.17.133.46:554/ISAPI/streaming/channels/101/trackID=1 RTSP/1.0 //Video stream data
CSeq:2
Authorization: Digest username="admin", realm="4419b66d2485",
nonce="47f172cffa4ce6e6942bbdcfa5931d0f",
uri="rtsp://10.17.133.46:554/ISAPI/streaming/channels/101",
response="db78bce6e6883ed2a7fb3adbd1631b1d"
Transport:RTP/AVP/UDP;unicast;client_port=20044-20045;ssrc=0
User-Agent:NKPlayer-1.00.00.081112
RTSP/1.0 200 OK
CSeq: 2
Session: 846509115;timeout=60
Transport: RTP/AVP/UDP;unicast;client_port=20044-20045;ssrc=2933ec5a;server_port=8372-8373;mode="play"
Date: Tue, Mar 14 2017 10:42:35 GMT
SETUP rtsp://10.17.133.46:554/ISAPI/streaming/channels/101/trackID=2 RTSP/1.0 //Audio stream data
CSeq:3
Authorization: Digest username="admin", realm="4419b66d2485",
nonce="47f172cffa4ce6e6942bbdcfa5931d0f",
uri="rtsp://10.17.133.46:554/ISAPI/streaming/channels/101",
response="db78bce6e6883ed2a7fb3adbd1631b1d"
Session:846509115;timeout=60
Transport:RTP/AVP/UDP;unicast;client_port=20046-20047;ssrc=0
User-Agent:NKPlayer-1.00.00.081112
RTSP/1.0 200 OK
CSeq: 3
51
Intelligent Security API (General) Developer Guide
Session: 846509115;timeout=60
Transport: RTP/AVP/UDP;unicast;client_port=20046-20047;ssrc=439bd478;server_port=8374-8375;mode="play"
Date: Tue, Mar 14 2017 10:42:35 GMT
Example
Interaction Message Example of PLAY Method
PLAY rtsp://10.17.133.46:554/ISAPI/streaming/channels/101 RTSP/1.0
CSeq:4
Authorization: Digest username="admin",
realm="4419b66d2485",
nonce="47f172cffa4ce6e6942bbdcfa5931d0f",
uri="rtsp://10.17.133.46:554/ISAPI/streaming/channels/101",
response="66fcea1521a99fba336fd0c4e444a732"
Session:846509115;timeout=60
Rate-Control:yes
Scale:1.000
User-Agent:NKPlayer-1.00.00.081112
RTSP/1.0 200 OK
CSeq: 4
Session: 846509115
Scale: 1.0
RTP-Info: url=trackID=1;seq=55143,url=trackID=2;seq=38217
Date: Tue, Mar 14 2017 10:42:35 GMT
Example
Interaction Message Example of TEARDOWN Method
TEARDOWN rtsp://10.17.133.46:554/ISAPI/streaming/channels/101 RTSP/1.0
CSeq: 5
Authorization: Digest username="admin",
realm="4419b66d2485",
nonce="47f172cffa4ce6e6942bbdcfa5931d0f",
uri="rtsp://10.17.133.46:554/ISAPI/streaming/channels/101",
response="31d5e172b87db528aa5b1dc07af3f530"
Session:846509115;timeout=60
User-Agent: NKPlayer-1.00.00.081112
RTSP/1.0 200 OK
CSeq: 5
Session: 846509115
Date: Tue, Mar 14 2017 10:42:36 GMT
Example
Interaction Message Example of PAUSE Method (Available for Playback Only)
PAUSE rtsp://10.16.98.88:554/ISAPI/streaming/tracks/101?
starttime=20190624T000000Z&endtime=20190625T235959Z RTSP/1.0
CSeq: 4
Authorization: Digest username="admin",
realm="IP Camera(C0581)",
nonce="86acaaf68f568dff4441eed8b8d26de4",
52
Intelligent Security API (General) Developer Guide
uri="rtsp://10.21.81.22:554/ISAPI/streaming/channels/101",
response="6fe52386f619bfce0dbf3d62a58123ba"
Session:180661110;timeout=60
Rate-Control:yes
Scale:1.000
User-Agent:NKPlayer-1.00.00.081112
RTSP/1.0 200 OK
CSeq: 4
Session: 180661110
Range: clock=20190624T000004Z-20190625T165416Z
Date: Mon, 24 Jun 2019 12:08:39 GMT
3.4 Security Service
Management and Configuration
Function Request URI
Get or set advanced GET or PUT /ISAPI/Security/advanced?format=json
parameters of security
management
Get or set security questions in GET or PUT /ISAPI/Security/questionConfiguration
batch
Search for security logs POST /ISAPI/ContentMgmt/security/logSearch
Security Mode Level of Private • Get configuration capability of security mode level of private
Protocol protocol: GET /ISAPI/Security/CommuMode/capabilities?
format=json
• Get parameters of security mode level of private protocol:
GET /ISAPI/Security/CommuMode?format=json
• Set parameters of security mode level of private protocol:
PUT /ISAPI/Security/CommuMode?format=json
Get capability of selecting GET /ISAPI/Security/certificate/select/capabilities?format=json
certificate
Get or set parameters of GET or PUT /ISAPI/Security/certificate/select/<functinName>?
selecting certificate format=json
Get or set certificate type GET or PUT /ISAPI/Security/webCertificate
parameters of web service
53
Intelligent Security API (General) Developer Guide
Network Certificate
Function Request URI
Get CA (Certificate Authority) GET /ISAPI/Security/deviceCertificate/capabilities?format=json
certificate capability
Import network certificate to PUT /ISAPI/Security/deviceCertificate
device
Import CA (Certificate PUT /ISAPI/Security/deviceCertificate?customID=
Authority) certificate to device
Network Certificate Search • Get capability of certificate search: GET /ISAPI/Security/
deviceCertificate/certificates/capabilities?format=json
• Search for certificate information in a batch:GET /ISAPI/
Security/deviceCertificate/certificates?format=json
• Search for information of a specific device certificate: GET /
ISAPI/Security/deviceCertificate/certificates/<customID>?
format=json
Delete network certificate DELETE /ISAPI/Security/deviceCertificate/certificates/<ID> or /
ISAPI/Security/deviceCertificate/certificates/<customID>?
format=json
Authentication Certificate
Function Request URI
Get, generate, or delete GET, PUT , or DELETE /ISAPI/Security/serverCertificate/
certificate signature request certSignReq
Download authentication GET /ISAPI/Security/serverCertificate/downloadCertSignReq
certificate
Get, install, or delete GET, PUT , or DELETE /ISAPI/Security/serverCertificate/
authentication certificate certificate
Export device's self-signed GET /ISAPI/Security/deviceCertificate/selfSignCert
certificate
Authentication Certificate • Get status of one authentication certificate: GET /ISAPI/
Status Search Security/deviceCertificate/certificates/<ID>/status?
format=json
• Get status of all authentication certificates: GET /ISAPI/
Security/deviceCertificate/certificates/status?format=json
54
Intelligent Security API (General) Developer Guide
Function Request URI
Generate one authentication PUT /ISAPI/Security/deviceCertificate/certificates/<ID>/
certificate recreate?format=json
Generate all authentication PUT /ISAPI/Security/deviceCertificate/certificates/recreate?
certificates format=json
Client/Server Certificate
Function Request URI
Get client/server certificate GET /ISAPI/Security/serverCertificate/capabilities?format=json
capability
Generate PKCS#10 signature POST /ISAPI/Security/serverCertificate/certSignReq?customID=
request of client/server
certificate
Get or generate PKCS#10 GET or PUT /ISAPI/Security/serverCertificate/selfSignCert?
signature request of client/ customID=
server self-signed certificate
Get information of multiple GET /ISAPI/Security/serverCertificate/certificates?format=json
client/server certificates in a
batch
Get or delete information of a GET or DELETE /ISAPI/Security/serverCertificate/certificates/
specific client/server certificate <customID>?format=json
Import client/server certificate POST /ISAPI/Security/serverCertificate/certificate?customID=
to device
Export client/server certificate GET /ISAPI/Security/serverCertificate/downloadCertSignReq?
customID=
55
Intelligent Security API (General) Developer Guide
Chapter 4 Login
Function Request URI
Login by digest GET /ISAPI/Security/userCheck
Lock for illegal login GET or PUT /ISAPI/Security/illegalLoginLock
Get or set maximum failed GET or PUT /ISAPI/Security/loginLinkNum?format=json
login attempts
56
Intelligent Security API (General) Developer Guide
Chapter 5 Device Management
5.1 Device Activation
5.1.1 Directly Activate Device
For the connected devices, you must activate them to make sure the device password is
reconfigured and the password string conforms to the security rule.
Steps
Figure 5-1 Direct Activation Sequence Diagram
1. Client software generates public and private key.
57
Intelligent Security API (General) Developer Guide
Note
The size of public key is 1024 bits (128 bytes). When transforming to the hexadecimal string,
each byte corresponds to two characters (e.g., 127 → FF ), so the public key is transformed to a
256-byte string finally.
2. Client software encodes the public key (a 256-byte string) by Base64 method and sends it to
device.
3. Device decodes the encoded public key by Base64 method and generates random strings.
4. Device encrypts the random strings based on RSA algorithm and encodes the encrypted strings
by Base64 method.
5. Call /ISAPI/Security/challenge by POST method to get the encrypted and encoded random
strings .
6. Client software decodes the obtained random strings by Base64 method and decrypts the
random strings by using private key.
7. Client software encrypts the activation password with the random strings in AES128 CBC mode
and encodes the password by Base64 method.
8. Call /ISAPI/System/activate by PUT method to send the activation password strings to device.
Note
The sent activation password strings consist of first 16 characters of random strings and actual
password.
Example
If the first 16 characters of random strings is "aaaabbbbccccdddd", and the actual password is
"Abc12345", the encrypted activation password strings is "aaaabbbbccccddddAbc12345".
9. Device decodes the activation password by Base64 method and decrypts the password with the
random string in AES128 CBC mode for verification.
10. Device starts activating and sends the activation result to client software.
5.1.2 Activate Network Camera via NVR
For network devices, except directly activating them, you can also activate them via NVR if they can
be searched on the same network domain of NVR.
Steps
1. Call /ISAPI/ContentMgmt/InputProxy/search by GET method to search for the online network
devices in the same network domain with the NVR.
2. Optional: Call /ISAPI/ContentMgmt/InputProxy/channels/activate/capabilities by GET
method to get the activation capability of network devices for reference.
3. Call /ISAPI/ContentMgmt/InputProxy/channels/activate by PUT method to activate the
searched online devices via NVR.
58
Intelligent Security API (General) Developer Guide
5.2 Reset Password by Setting Recovery Email
A recovery email is added or configured for resetting the password as required. The admin user can
set a recovery email after activating the device, and then receive the verification code from the
manufacturer via the recovery email to reset the device password.
Before You Start
Make sure you have activated the device.
Steps
Figure 5-2 Programming Flow of Resetting Password by Setting Recovery Email
Note
You can reset password by other methods, such as answering security question, importing GUID
files, and so on. But all methods should be supported by device, so you should call /ISAPI/
Security/extern/capabilities by GET method to get the other security capability
( XML_externSecurityCap ) before choosing method to reset password.
1. Call /ISAPI/Security/capabilities by GET method to check if the device supports setting recovery
email.
59
Intelligent Security API (General) Developer Guide
The security capability is returned in the message XML_SecurityCap .
If the node <isSupportSecurityEmail> exits in the returned message and its value is "true", it
indicates that setting recovery email is supported by the device, and you can continue to
perform the following steps; otherwise, end this task.
2. Optional: Call /ISAPI/Security/email/parameter/capabilities?format=json by GET method to
get recovery email configuration capability.
The recovery email configuration capability is returned in the message JSON_SecurityEmailCap
by the output parameter pointer (lpOutputParam).
3. Optional: Call /ISAPI/Security/email/parameter?format=json by GET method to get the
existing or configured recovery email parameters for reference.
4. Call /ISAPI/Security/email/parameter?format=json by PUT method to set the recovery email
for the device.
5. Call /ISAPI/Security/email/qrCode?format=json by GET method to get the QR code of the
recovery email.
6. Send the QR code to manufacturer service email address by any other emails for verification.
7. Receive the verification code in the configured recovery email.
8. Call /ISAPI/Security/emailCertification?format=json by PUT method to Enter the received
verification code for resetting the device password.
5.3 Online Upgrade Device
For the devices that can connect to Guarding Vision Server, you can online upgrade their firmware
via Guarding Vision Client, and get the upgrade progress. Besides, in the condition of bad network,
you can also enable automatic download of upgrade package in the background to improve the
upgrade speed.
Before You Start
Make sure you have activated the device.
60
Intelligent Security API (General) Developer Guide
Steps
Figure 5-3 Programming Flow of Online Upgrade Device
1. Call /ISAPI/System/onlineUpgrade/capabilities by GET method to check if the device support
online upgrade.
The online upgrade capability set is returned in XML_OnlineUpgradeCap .
2. Call /ISAPI/System/onlineUpgrade/server by GET method to get the connection status of
online upgrade server.
Note
Only when the node <connectStatus> is returned and values "true", you can go on for next step.
Otherwise, you should end this task.
The upgrade server connection status is returned in XML_OnlineUpgradeServer .
3. Optional: Call /ISAPI/System/onlineUpgrade/deviceParameter?format=json by PUT method to
set the device online upgrade parameters.
61
Intelligent Security API (General) Developer Guide
Note
Before setting the device online upgrade parameters, you can get these parameters by calling /
ISAPI/System/onlineUpgrade/deviceParameter?format=json via GET method.
4. Call /ISAPI/System/onlineUpgrade/version by GET method to get the new upgrade package
information.
5. Call /ISAPI/System/onlineUpgrade/downloadPackage?format=json by PUT method to
download the upgrade package.
6. Optional: During downloading the upgrade package, you can perform the following operations.
Pause Download PUT /ISAPI/System/onlineUpgrade/downloadPackage/pause?
format=json
Resume Download PUT /ISAPI/System/onlineUpgrade/downloadPackage/resume?
format=json
Cancel Download DELETE /ISAPI/System/onlineUpgrade/downloadPackage?
format=json
7. Call /ISAPI/System/onlineUpgrade/downloadPackage/status?format=json by GET method to
get the upgrade package download progress.
8. Call /ISAPI/System/onlineUpgrade/upgradeWithoutDownload?format=json by PUT method to
start upgrade when the upgrade package is downloaded.
9. Call /ISAPI/System/onlineUpgrade/status by GET method to get the upgrade status.
62
Intelligent Security API (General) Developer Guide
Chapter 6 Device Configuration and Maintenance
6.1 Basic
Device Information Settings
Function Request URI
Get device capability GET /ISAPI/System/deviceInfo/capabilities
Get or set device information GET or PUT /ISAPI/System/deviceInfo
Shut Down, Reboot and Restore to Default Settings
Function Request URI
Shut down device PUT /ISAPI/System/shutdown?format=json
Reboot device PUT /ISAPI/System/reboot
Restore device to default PUT /ISAPI/System/factoryReset?mode=
settings
Upgrade
Function Request URI
Get upgrade capability of GET /ISAPI/System/AcsUpdate/capabilities
peripherals' firmwares
Upgrade device's firmware PUT or POST /ISAPI/System/updateFirmware
Upgrade slave device's PUT or POST /ISAPI/System/updateFirmware?type=&id=
firmware
Upgrade peripheral module's PUT or POST /ISAPI/System/updateFirmware?
firmware type=&moduleAddress=
Get device upgrading status GET /ISAPI/System/upgradeStatus
Configuration File
Function Request URI
Get capability of exporting files GET /ISAPI/System/fileExport/capabilities?format=json
from device
Securely export files from POST /ISAPI/System/fileExport?format=json
device
63
Intelligent Security API (General) Developer Guide
Function Request URI
Note
To check if exporting files from device is supported by the
device, you can call GET /ISAPI/System/capabilities to get the
device capability ( XML_DeviceCap ). If supports, the node
<isSptFileExport> will be returned.
Algorithm
Function Request URI
Get algorithm version GET /ISAPI/System/algorithmsVersion
information of device
Get capability of getting GET /ISAPI/System/algorithmsInfo/capabilities?format=json
algorithm library information
Get algorithm library GET /ISAPI/System/algorithmsInfo?format=json
information
Device Attribute Code
Function Request URI
Get device attribute code GET /ISAPI/System/deviceInfo/characteristicCode?format=json
Note
To check whether the device support attribute code, you can
call GET /ISAPI/System/capabilities to get the device capability
( XML_DeviceCap ). If supports, the node <isSupportServer>
will be returned.
6.1.1 Securely Export and Import Configuration Files
You can export configuration files of devices to back up basic device parameters (such as network
parameters, stream parameters, etc.) timely, and the configuration files will be encrypted with the
encryption key when being exported. If several devices adopt the same configuration, you can
import configuration files to configure multiple devices in a batch. The devices will decrypt the
encrypted configuration file using the encryption key which ensures that the configuration file
cannot be used by unauthorized devices.
64
Intelligent Security API (General) Developer Guide
Steps
Figure 6-1 Programming Flow of Securely Exporting and Importing Configuration Files
1. Call /ISAPI/Security/capabilities by GET method to get the device security capability for
checking whether the device supports securely exporting configuration files.
The device security capability is returned in the message XML_SecurityCap .
If this function is supported by the device, the node <isSupportConfigFileExport> will be
returned and its value is "true", then you can perform the following steps.
Otherwise, please end this task.
2. Call /ISAPI/System/configurationData?secretkey= by GET method to export the configuration
file from the device securely.
Note
The query parameter secretKey is the sensitive information that should be encrypted for
transmission, and the parameter range to be encrypted is determined by the attributes "min"
and "max" of the node <cfgFileSecretKeyLenLimit> in message XML_SecurityCap . For details
about encrypting sensitive information, refer to Encrypt Sensitive Information .
3. Call /ISAPI/Security/capabilities by GET method to get the device security capability for
checking whether the device supports securely importing configuration files.
The device security capability is returned in the message XML_SecurityCap .
65
Intelligent Security API (General) Developer Guide
If this function is supported by the device, the node <isSupportConfigFileImport> will be
returned and its value is "true", then you can perform the following steps.
Otherwise, please end this task.
4. Call /ISAPI/System/configurationData?secretkey= by PUT method to import the configuration
file to the device securely.
Note
• The query parameter secretKey is the sensitive information that should be encrypted for
transmission, and the parameter range to be encrypted is determined by the attributes "min"
and "max" of the field <cfgFileSecretKeyLenLimit> in the message XML_SecurityCap . For
details about encrypting sensitive information, refer to Encrypt Sensitive Information .
• The value of secretKey for importing the configuration file should be the same as that for
exporting the file. Otherwise, importing will fail.
6.2 Log
Serial Port Log Redirection
Function Request URI
Get configuration capability of GET /ISAPI/System/serialLogCfg/capabilities?format=json
serial port log redirection
Get or set parameters of serial GET or PUT /ISAPI/System/serialLogCfg?format=json
port log redirection
Note
To check whether the device supports configuring serial port log
redirection, you can call /ISAPI/System/capabilities by GET
method to get the device capability ( XML_DeviceCap ). If it
supports, the node <isSptSerialLogCfg> will be returned and its
value is "true".
Log Settings
Function Request URI
Get log configuration capability GET /ISAPI/ContentMgmt/logConfig/capabilities
Get or set log parameters GET or PUT /ISAPI/ContentMgmt/logConfig
6.3 Status
66
Intelligent Security API (General) Developer Guide
Device Status
Function Request URI
Get device status capability GET /ISAPI/System/workingstatus/capabilities?format=json
Get all statuses of device GET /ISAPI/System/workingstatus?format=json
Channel Status
Function Request URI
Get status(es) of all channels or GET or POST /ISAPI/System/workingstatus/chanStatus?
one channel format=json
Get statuses of all channels by POST /ISAPI/System/Video/inputs/channels?format=json
condition
Get status of one channel by POST /ISAPI/System/Video/inputs/channels/<ID>?format=json
condition
Note
To check if getting channel status by condition is supported by device, you can call GET /ISAPI/
System/capabilities to get the device capability ( XML_DeviceCap ). If supports, the node
<isSupportFlexible> will be returned.
Others
Function Request URI
Get status(es) of all HDDs or GET or POST /ISAPI/System/workingstatus/hdStatus?
one HDD format=json
Get triggered I/O status GET /ISAPI/System/workingstatus/IOStatus?format=json
Get CPU and memory status GET /ISAPI/System/status
Upload status changes Refer to Subscribe Alarm/Event in Arming Mode for integration
process of uploading device status changes, and the node
<type> in the request message XML_SubscribeEvent for the
URIs (POST /ISAPI/Event/notification/subscribeEvent and PUT /
ISAPI/Event/notification/subscribeEvent/<ID> ) should be set to
"statusChanged".
The changes details can be obtained by calling /ISAPI/Event/notification/alertStream via GET
method.
67
Intelligent Security API (General) Developer Guide
Note
To check if getting device status and uploading status changes are supported by device, you can
call /ISAPI/System/capabilities by GET method to get the device capability ( XML_DeviceCap ). If
supports, the nodes <isSupportSimpleDevStatus>, <isSupportSimpleDevStatus>, and
<isSupportChangedUpload> will be returned and their values are "true".
6.4 Calibration
Accelerometer Zero Bias Calibration
Function Request URI
Get device capability to GET /ISAPI/System/capabilities ; the device capability is returned in
check if device supports the message XML_DeviceCap .
accelerometer zero bias If supports, the node <isSupportZeroBiasCalibration> is returned in
calibration the message XML_DeviceCap and its value is "true".
Calibrate accelerometer PUT /ISAPI/System/zeroBiasCalibration/channels/<ID>?
zero bias format=json
Installation Angle Calibration
Function Request URI
Get the device capability GET /ISAPI/System/capabilities ; the device capability is returned in
to check if device supports the message XML_DeviceCap .
installation angle If supports, the node <isSupportInstallationAngleCalibration> is
calibration returned in the message XML_DeviceCap and its value is "true".
Get capability of GET /ISAPI/System/installationAngleCalibration/channels/<ID>/
installation angle capabilities?format=json
calibration
Get installation angle GET or PUT /ISAPI/System/installationAngleCalibration/channels/
calibration status or <ID>?format=json
calibrate installation angle
68
Intelligent Security API (General) Developer Guide
Laser Optical Axis
Function Request URI
Get configuration GET /ISAPI/System/laserOpticalAxis/capabilities?format=json
capability of laser optical
axis
Get or set laser optical axis GET or PUT /ISAPI/System/laserOpticalAxis?format=json
parameters
Adjust laser optical axis PUT /ISAPI/System/laserOpticalAxis/goto?format=json
6.5 Auto Power On or Off
Function Request URI
Get capability of auto power on GET /ISAPI/System/autoSwitch/capabilities?format=json
or off
Get or set parameters of auto GET or PUT /ISAPI/System/autoSwitch?format=json
power on or off
6.6 Advanced
Automatic Maintenance
Function Request URI
Get configuration capability of GET /ISAPI/System/autoMaintenance/capabilities?format=json
automatic maintenance
Get or set parameters of GET or PUT /ISAPI/System/autoMaintenance?format=json
automatic maintenance
Note
To check if the device supports automatic maintenance, you can call the GET /ISAPI/System/
capabilities to get the device capability ( XML_DeviceCap ). If supports, the node
<isSupportAutoMaintenance> will be returned.
69
Intelligent Security API (General) Developer Guide
Device Diagnosis
Function Request URI
Get device diagnosis capability GET /ISAPI/System/diagnosis/capabilities?format=json
Diagnose device POST /ISAPI/System/diagnosis?format=json
Note
To check if configuring device diagnosis is supported by the device, you can call GET /ISAPI/
System/capabilities to get the device capability ( XML_DeviceCap ). If supports, the node
<isSptDiagnosis> will be returned.
Export Diagnose Information
Function Request URI
Get capability of exporting GET /ISAPI/System/diagnosedData/parameter/capabilities
device diagnose information
Get or set parameters of GET or PUT /ISAPI/System/diagnosedData/parameter
exporting device diagnose
information
Diagnostic Server
Function Request URI
Get diagnostic server capability GET /ISAPI/System/diagnosedData/server/capabilities?
format=json
Get or set diagnostic server GET or PUT /ISAPI/System/diagnosedData/server?format=json
parameters
Test diagnostic server POST /ISAPI/System/diagnosedData/server/test?format=json
Note
To check if the device supports diagnostic server configuration, you can call GET /ISAPI/System/
diagnosedData/parameter/capabilities to get the capability
( XML_Cap_DiagnosedDataParameter ). If device supports the function, the node
<isSupportServer> is returned and its value is true.
70
Intelligent Security API (General) Developer Guide
Device Anti-Theft
Function Request URI
Get device anti-theft GET /ISAPI/System/guardAgainstTheft/capabilities
configuration capability
Get or set device anti-theft GET or PUT /ISAPI/System/guardAgainstTheft
parameters
Note
To check if the anti-theft configuration is supported by the device, you can call GET /ISAPI/System/
capabilities to get the device capability ( XML_DeviceCap ). If this function is supported, the node
<isSupportGuardAgainstTheft> will be returned and its value is "true".
Device Discovery
Function Request URI
Get the configuration capability GET /ISAPI/System/discoveryMode/capabilities
of device discovery mode
Get or set the device discovery GET or PUT /ISAPI/System/discoveryMode
mode
71
Intelligent Security API (General) Developer Guide
Chapter 7 User Management
You can add, edit, and delete users to manage for logging in to the device via ISAPI protocol. And
you can also assign permission to users according to actual needs.
7.1 Manage Users
Function Request URI
Get the configuration capability GET /ISAPI/Security/users/<ID>/capabilities
of a specific user
Add one user GET /ISAPI/Security/users
Get, edit, or delete all users GET, PUT, or DELETE /ISAPI/Security/users
Get, edit, or delete one user GET, PUT, or DELETE /ISAPI/Security/users/<ID>
Get information of online users GET /ISAPI/Security/onlineUser
Note
The function of managing users cannot be integrated via EZVIZ Open Platform.
7.2 User Permission
Function Request URI
Get configuration capability of GET /ISAPI/Security/UserPermission/capabilities
all users' permissions
Get guest's permission GET /ISAPI/Security/UserPermission/viewerCap
capability
Get operator's permission GET /ISAPI/Security/UserPermission/operatorCap
capability
Get administrator's permission GET /ISAPI/Security/UserPermission/adminCap
capability
Get User Permission • Get permissions of all users: GET /ISAPI/Security/
UserPermission
• Get permission of one user: GET /ISAPI/Security/
UserPermission/<ID>
72
Intelligent Security API (General) Developer Guide
Function Request URI
• Get local permission of one user: GET /ISAPI/Security/
UserPermission/<ID>/localPermission
• Get remote permission of one user: GET /ISAPI/Security/
UserPermission/<ID>/remotePermission
• Get permission of anonymous user: GET /ISAPI/Security/
UserPermission/anonymouslogin
Assign Permission • Assign permission to all users: PUT /ISAPI/Security/
UserPermission
• Assign permission to one user: PUT /ISAPI/Security/
UserPermission/<ID>
• Assign local permission to one user: PUT /ISAPI/Security/
UserPermission/<ID>/localPermission
• Assign remote permission to one user: PUT /ISAPI/Security/
UserPermission/<ID>/remotePermission
• Assign permission to anonymous user: PUT /ISAPI/Security/
UserPermission/anonymouslogin
7.3 Lock and Unlock User
Function Request URI
Get configuration capability of GET /ISAPI/System/userLock/config/capabilities?format=json .
user locking and unlocking
Get information of all locked GET /ISAPI/System/userLock/lockedUsers?format=json
users
Get user locking parameter GET /ISAPI/System/userLock/config?format=json
Lock user PUT /ISAPI/System/userLock/config?format=json
Unlock user PUT /ISAPI/System/userLock/unlockUser?format=json
7.4 Configure Double Verification
Double verification helps to protect the critical video files of NVR/DVR by limiting playback and
download. The basic concept is that two users should always be required to start playback and
download. For example, when a normal user A (operator or guest) wants to play back the video of
a channel which requires double verification, he/she should ask a double verification user to enter
the correct user name and password for double verification.
73
Intelligent Security API (General) Developer Guide
Before You Start
Make sure you have logged in to the device.
74
Intelligent Security API (General) Developer Guide
Steps
Figure 7-1 Programming Flow of Configuring Double Verification
75
Intelligent Security API (General) Developer Guide
Note
• Only the admin can configure double verification.
• The admin is not required for double verification.
• The double verification user name and password is only for double verification, and cannot be
used for login.
1. Optional: Call /ISAPI/Security/capabilities by GET method to get the device security capability
to check whether the double verification function is supported.
The security capability XML_SecurityCap is returned.
2. Call /ISAPI/Security/doubleVerification?format=json by PUT method to enable double
verification
Note
Before enabling double verification, you can check whether double verification is enabled by
calling /ISAPI/Security/doubleVerification?format=json via GET method.
3. Optional: Call /ISAPI/Security/doubleVerification/users/capabilities?format=json by GET
method to get the capability of double verification user configuration.
4. Call /ISAPI/Security/doubleVerification/users?format=json by POST method to add a double
verification user.
Note
Before adding a double verification user, you can get all verification users by calling /ISAPI/
Security/doubleVerification/users?format=json via GET method.
The ID of added double verification user is returned in JSON_id .
5. Call /ISAPI/Security/doubleVerification/users/<ID>?format=json by PUT method to edit a
specified double verification user.
Note
Before editing the double verification user, you can get the user information by calling /ISAPI/
Security/doubleVerification/users/<ID>?format=json via GET method.
6. Optional: Call /ISAPI/Security/doubleVerification/users/<ID>?format=json by DELETE method
to delete a specified double verification user.
7. Optional: Call /ISAPI/Security/doubleVerification/UsersPermission/capabilities?format=json
by GET method to get the capability of permission configuration for double verification users.
8. Call /ISAPI/Security/doubleVerification/UsersPermission/<ID>?format=json by PUT method to
set the permission of a specified double verification user.
76
Intelligent Security API (General) Developer Guide
Note
Before setting the permission of a double verification user, you can get the permission
parameters by calling /ISAPI/Security/doubleVerification/UsersPermission/<ID>?format=json
via GET method.
What to do next
Configure the user permission, determine whether double verification are required for them
during playback and download.
77
Intelligent Security API (General) Developer Guide
Chapter 8 Video and Audio
This part provides the request URIs to implement the video and audio related functions, such as
video search, live view, playback, two-way audio, control video in live view (e.g., focus and iris
adjustment), and so on.
8.1 Search for Recording Start and End Time by Channel
You can check whether the channel has recorded videos and get the recording start and end time.
Steps
Figure 8-1 API Calling Flow of Searching for Recording Start and End Time by Channel
1. Call /ISAPI/ContentMgmt/capabilities by GET method to get the device's storage capability to
check whether it supports searching for recording start and end time.
The device's storage capability is returned in the message XML_RacmCap .
78
Intelligent Security API (General) Developer Guide
If the node <isSupportTimeSearch> is returned in the message and its value is "true", it
indicates that searching for recording start and end time is supported and you can continue to
perform the following steps.
Otherwise, searching for recording start and end time is not supported, please end this task.
2. Optional: Call /ISAPI/ContentMgmt/time/search/capabilities?format=json by GET method to
get the capability of searching for the recording start and end time for reference.
The capability is returned in the message JSON_Cap_TimeSearchCond .
3. Call /ISAPI/ContentMgmt/time/search?format=json by POST method to set the parameters to
search for the recording start and end time.
8.2 Live View and Playback
Live view helps to remotely get the real-time video or audio of monitoring area and know the
status of human, vehicle, object, and so on. During live view, you can record and store the
remarkable videos for remotely playback.
Live View
Table 8-1 Normal Operation
Function Request URI
Start or stop live view PLAY or TEARDOW
Table 8-2 Auto-Switch in Live View
Function Request URI
Get configuration capability of GET /ISAPI/System/Video/outputs/PreviewSwitch/capabilities
live view auto-switch
Get configuration capability of GET /ISAPI/System/Video/outputs/PreviewSwitch/capabilities?
live view auto-switch by video videoOutType=
output
Get or set parameters of live GET or PUT /ISAPI/System/Video/outputs/PreviewSwitch?
view auto-switch groupID=&videoOutType=
GET /ISAPI/System/Video/outputs/PreviewSwitch?
groupID=&videoOutType=&previewFrameNo=
Table 8-3 Control in Live View
Function Request URI
Perform manual focus PUT /ISAPI/System/Video/inputs/channels/<ID>/focus
Manually adjust iris PUT /ISAPI/System/Video/inputs/channels/<ID>/iris
79
Intelligent Security API (General) Developer Guide
Playback
Function Request URI
Start or stop playback PLAY or TEARDOW rtsp://<host>[:port]/ISAPI/Streaming/
tracks/<ID>?starttime=&endtime=
Refresh video index before PUT /ISAPI/ContentMgmt/record/control/manualRefresh/
playback for instant playback channels/<ID>
Example
Sample Code for Starting and Stopping Live View
Start Live View:
DESCRIBE rtsp://10.17.133.46:554/ISAPI/streaming/channels/101 RTSP/1.0
CSeq: 0
Accept:application/sdp
User-Agent:NKPlayer-1.00.00.081112
RTSP/1.0 401 Unauthorized
CSeq: 0
WWW-Authenticate: Digest realm="4419b66d2485", nonce="47f172cffa4ce6e6942bbdcfa5931d0f", stale="FALSE"
Date: Tue, Mar 14 2017 10:42:35 GMT
DESCRIBE rtsp://10.17.133.46:554/ISAPI/streaming/channels/101 RTSP/1.0
CSeq:1
Accept:application/sdp
Authorization: Digest username="admin",
realm="4419b66d2485",
nonce="47f172cffa4ce6e6942bbdcfa5931d0f",
uri="rtsp://10.17.133.46:554/ISAPI/streaming/channels/101",
response="da5deb4033515f74ed0483d2da3f7fe0"
User-Agent:NKPlayer-1.00.00.081112
RTSP/1.0 200 OK
CSeq: 1
Content-Type: application/sdp
Content-Length: 604
v=0
o=- 1489488155469547 1489488155469547 IN IP4 10.17.133.46
s=Media Presentation
e=NONE
b=AS:5100
t=0 0
a=control:*
m=video 0 RTP/AVP 96
c=IN IP4 0.0.0.0
b=AS:5000
a=recvonly
a=x-dimensions:1280,720
a=control:trackID=1
80
Intelligent Security API (General) Developer Guide
a=rtpmap:96 H264/90000
a=fmtp:96 profile-level-id=420029;
packetization-mode=1;
sprop-parameter-sets=Z2QAH6wXKgFAFuhAAAHCAABX5CE=,
aP44sA==
m=audio 0 RTP/AVP 8
c=IN IP4 0.0.0.0
b=AS:50
a=recvonly
a=control:trackID=2
a=rtpmap:8 PCMA/8000
a=Media_header:MEDIAINFO=494D4B48010200000400000111710110401F000000FA00000000000000000000000000
0000000000;
a=appversion:1.0
SETUP rtsp://10.17.133.46:554/ISAPI/streaming/channels/101/trackID=1 RTSP/1.0
CSeq:2
Authorization: Digest username="admin", realm="4419b66d2485",
nonce="47f172cffa4ce6e6942bbdcfa5931d0f",
uri="rtsp://10.17.133.46:554/ISAPI/streaming/channels/101",
response="db78bce6e6883ed2a7fb3adbd1631b1d"
Transport:RTP/AVP/UDP;unicast;client_port=20044-20045;ssrc=0
User-Agent:NKPlayer-1.00.00.081112
RTSP/1.0 200 OK
CSeq: 2
Session: 846509115;timeout=60
Transport: RTP/AVP/UDP;unicast;client_port=20044-20045;ssrc=2933ec5a;server_port=8372-8373;mode="play"
Date: Tue, Mar 14 2017 10:42:35 GMT
SETUP rtsp://10.17.133.46:554/ISAPI/streaming/channels/101/trackID=2 RTSP/1.0
CSeq:3
Authorization: Digest username="admin", realm="4419b66d2485",
nonce="47f172cffa4ce6e6942bbdcfa5931d0f",
uri="rtsp://10.17.133.46:554/ISAPI/streaming/channels/101",
response="db78bce6e6883ed2a7fb3adbd1631b1d"
Session:846509115;timeout=60
Transport:RTP/AVP/UDP;unicast;client_port=20046-20047;ssrc=0
User-Agent:NKPlayer-1.00.00.081112
RTSP/1.0 200 OK
CSeq: 3
Session: 846509115;timeout=60
Transport: RTP/AVP/UDP;unicast;client_port=20046-20047;ssrc=439bd478;server_port=8374-8375;mode="play"
Date: Tue, Mar 14 2017 10:42:35 GMT
PLAY rtsp://10.17.133.46:554/ISAPI/streaming/channels/101 RTSP/1.0
CSeq:4
Authorization: Digest username="admin",
realm="4419b66d2485",
nonce="47f172cffa4ce6e6942bbdcfa5931d0f",
uri="rtsp://10.17.133.46:554/ISAPI/streaming/channels/101",
response="66fcea1521a99fba336fd0c4e444a732"
81
Intelligent Security API (General) Developer Guide
Session:846509115;timeout=60
Rate-Control:yes
Scale:1.000
User-Agent:NKPlayer-1.00.00.081112
RTSP/1.0 200 OK
CSeq: 4
Session: 846509115
Scale: 1.0
RTP-Info: url=trackID=1;seq=55143,url=trackID=2;seq=38217
Date: Tue, Mar 14 2017 10:42:35 GMT
Stop Live View
TEARDOWN rtsp://10.17.133.46:554/ISAPI/streaming/channels/101 RTSP/1.0
CSeq: 5
Authorization: Digest username="admin",
realm="4419b66d2485",
nonce="47f172cffa4ce6e6942bbdcfa5931d0f",
uri="rtsp://10.17.133.46:554/ISAPI/streaming/channels/101",
response="31d5e172b87db528aa5b1dc07af3f530"
Session:846509115;timeout=60
User-Agent: NKPlayer-1.00.00.081112
RTSP/1.0 200 OK
CSeq: 5
Session: 846509115
Date: Tue, Mar 14 2017 10:42:36 GMT
Example
Sample Code for Starting and Stopping Playback
Enable:
DESCRIBE rtsp://10.17.133.46:554/ISAPI/streaming/tracks/101?
starttime=20170313T230652Z&endtime=20170314T025706Z RTSP/1.0
CSeq:0
Accept:application/sdp
User-Agent:NKPlayer-1.00.00.081112
RTSP/1.0 401 Unauthorized
CSeq: 0
WWW-Authenticate: Digest realm="4419b66d2485",
nonce="a0ecd9b1586ff9461f02f910035d0486",
stale="FALSE"
Date: Tue, Mar 14 2017 10:57:23 GMT
DESCRIBE rtsp://10.17.133.46:554/ISAPI/streaming/tracks/101?
starttime=20170313T230652Z&endtime=20170314T025706Z RTSP/1.0
CSeq:1
Accept:application/sdp
Authorization: Digest username="admin",
realm="4419b66d2485",
nonce="a0ecd9b1586ff9461f02f910035d0486",
82
Intelligent Security API (General) Developer Guide
uri="rtsp://10.17.133.46:554/ISAPI/streaming/tracks/101?
starttime=20170313T230652Z&endtime=20170314T025706Z",
response="1ebae505abbafd431fb433cec6e85189"
User-Agent:NKPlayer-1.00.00.081112
RTSP/1.0 200 OK
CSeq: 1
Content-Type: application/sdp
Content-Length: 604
v=0
o=- 1489489043122939 1489489043122939 IN IP4 10.17.133.46
s=Media Presentation
e=NONE
b=AS:5100
t=0 0
a=control:*
m=video 0 RTP/AVP 96
c=IN IP4 0.0.0.0
b=AS:5000
a=recvonly
a=x-dimensions:1280,720
a=control:trackID=1
a=rtpmap:96 H264/90000
a=fmtp:96 profile-level-id=420029; packetization-mode=1; sprop-parameter-
sets=Z2QAH6wXKgFAFuhAAAHCAABX5CE=,aP44sA==
m=audio 0 RTP/AVP 8
c=IN IP4 0.0.0.0
b=AS:50
a=recvonly
a=control:trackID=2
a=rtpmap:8 PCMA/8000
a=Media_header:MEDIAINFO=494D4B48010200000400000111710110401F000000FA00000000000000000000000000
0000000000;
a=appversion:1.0
SETUP rtsp://10.17.133.46:554/ISAPI/streaming/tracks/101?
starttime=20170313T230652Z&endtime=20170314T025706Z/trackID=1 RTSP/1.0
CSeq:2
Authorization: Digest username="admin",
realm="4419b66d2485",
nonce="a0ecd9b1586ff9461f02f910035d0486",
uri="rtsp://10.17.133.46:554/ISAPI/streaming/tracks/101?
starttime=20170313T230652Z&endtime=20170314T025706Z",
response="6a7a733b41908bd9549a4ac07c498509"
Transport:RTP/AVP/UDP;unicast;client_port=20056-20057;ssrc=0
User-Agent:NKPlayer-1.00.00.081112
RTSP/1.0 200 OK
CSeq: 2
Session: 2049381566;timeout=60
Transport: RTP/AVP/UDP;unicast;client_port=20056-20057;ssrc=7d3c07bc;server_port=8220-8221;mode="play"
83
Intelligent Security API (General) Developer Guide
Date: Tue, Mar 14 2017 10:57:23 GMT
SETUP rtsp://10.17.133.46:554/ISAPI/streaming/tracks/101?
starttime=20170313T230652Z&endtime=20170314T025706Z/trackID=2 RTSP/1.0
CSeq:3
Authorization: Digest username="admin",
realm="4419b66d2485",
nonce="a0ecd9b1586ff9461f02f910035d0486",
uri="rtsp://10.17.133.46:554/ISAPI/streaming/tracks/101?
starttime=20170313T230652Z&endtime=20170314T025706Z",
response="6a7a733b41908bd9549a4ac07c498509"
Session:2049381566;timeout=60
Transport:RTP/AVP/UDP;unicast;client_port=20058-20059;ssrc=0
User-Agent:NKPlayer-1.00.00.081112
RTSP/1.0 200 OK
CSeq: 3
Session: 2049381566;timeout=60
Transport: RTP/AVP/UDP;unicast;client_port=20058-20059;ssrc=06557745;server_port=8226-8227;mode="play"
Date: Tue, Mar 14 2017 10:57:23 GMT
PLAY rtsp://10.17.133.46:554/ISAPI/streaming/tracks/101?
starttime=20170313T230652Z&endtime=20170314T025706Z RTSP/1.0
CSeq:4
Authorization: Digest username="admin",
realm="4419b66d2485",
nonce="a0ecd9b1586ff9461f02f910035d0486",
uri="rtsp://10.17.133.46:554/ISAPI/streaming/tracks/101?
starttime=20170313T230652Z&endtime=20170314T025706Z",
response="fb986d385a7d839052ec4f0b2b70c631"
Session:2049381566;timeout=60
Range:clock=20170313T230652Z-20170314T025706Z
Rate-Control:yes
Scale:1.000
User-Agent:NKPlayer-1.00.00.081112
RTSP/1.0 200 OK
CSeq: 4
Session: 2049381566
Scale: 1.000
RTP-Info: url=trackID=1;seq=1,url=trackID=2;seq=1
Date: Tue, Mar 14 2017 10:57:23 GMT
Pause:
PAUSE rtsp://10.17.133.46:554/ISAPI/streaming/tracks/101?
starttime=20170313T230652Z&endtime=20170314T025706Z RTSP/1.0
CSeq: 5
Authorization: Digest username="admin",
realm="4419b66d2485",
nonce="a0ecd9b1586ff9461f02f910035d0486",
uri="rtsp://10.17.133.46:554/ISAPI/streaming/tracks/101?
starttime=20170313T230652Z&endtime=20170314T025706Z",
84
Intelligent Security API (General) Developer Guide
response="d229c4d2419df553212bc7d74bbfd432"
Session:2049381566;timeout=60
User-Agent: NKPlayer-1.00.00.081112
RTSP/1.0 200 OK
CSeq: 5
Session: 2049381566
Date: Tue, Mar 14 2017 10:57:24 GMT
Play in 2× Speed:
PLAY rtsp://10.17.133.46:554/ISAPI/streaming/tracks/101?
starttime=20170313T230652Z&endtime=20170314T025706Z RTSP/1.0
CSeq:6
Authorization: Digest username="admin",
realm="4419b66d2485",
nonce="a0ecd9b1586ff9461f02f910035d0486",
uri="rtsp://10.17.133.46:554/ISAPI/streaming/tracks/101?
starttime=20170313T230652Z&endtime=20170314T025706Z",
response="fb986d385a7d839052ec4f0b2b70c631"
Session:2049381566;timeout=60
Scale:2.000
User-Agent:NKPlayer-1.00.00.081112
RTSP/1.0 200 OK
CSeq: 6
Session: 2049381566
Scale: 2.000
RTP-Info: url=trackID=1;seq=1,url=trackID=2;seq=1
Date: Tue, Mar 14 2017 10:57:24 GMT
Pause:
PAUSE rtsp://10.17.133.46:554/ISAPI/streaming/tracks/101?
starttime=20170313T230652Z&endtime=20170314T025706Z RTSP/1.0
CSeq: 7
Authorization: Digest username="admin",
realm="4419b66d2485",
nonce="a0ecd9b1586ff9461f02f910035d0486",
uri="rtsp://10.17.133.46:554/ISAPI/streaming/tracks/101?
starttime=20170313T230652Z&endtime=20170314T025706Z",
response="d229c4d2419df553212bc7d74bbfd432"
Session:2049381566;timeout=60
User-Agent: NKPlayer-1.00.00.081112
RTSP/1.0 200 OK
CSeq: 7
Session: 2049381566
Date: Tue, Mar 14 2017 10:57:25 GMT
Play in 4× Speed:
PLAY rtsp://10.17.133.46:554/ISAPI/streaming/tracks/101?
starttime=20170313T230652Z&endtime=20170314T025706Z RTSP/1.0
CSeq:8
85
Intelligent Security API (General) Developer Guide
Authorization: Digest username="admin",
realm="4419b66d2485",
nonce="a0ecd9b1586ff9461f02f910035d0486",
uri="rtsp://10.17.133.46:554/ISAPI/streaming/tracks/101?
starttime=20170313T230652Z&endtime=20170314T025706Z",
response="fb986d385a7d839052ec4f0b2b70c631"
Session:2049381566;timeout=60
Scale:4.000
User-Agent:NKPlayer-1.00.00.081112
RTSP/1.0 200 OK
CSeq: 8
Session: 2049381566
Scale: 4.000
RTP-Info: url=trackID=1;seq=1,url=trackID=2;seq=1
Date: Tue, Mar 14 2017 10:57:25 GMT
Disable:
TEARDOWN rtsp://10.17.133.46:554/ISAPI/streaming/tracks/101?
starttime=20170313T230652Z&endtime=20170314T025706Z RTSP/1.0
CSeq: 9
Authorization: Digest username="admin",
realm="4419b66d2485",
nonce="a0ecd9b1586ff9461f02f910035d0486",
uri="rtsp://10.17.133.46:554/ISAPI/streaming/tracks/101?
starttime=20170313T230652Z&endtime=20170314T025706Z",
response="50c86f44780a497ee07622b70c050bcd"
Session:2049381566;timeout=60
User-Agent: NKPlayer-1.00.00.081112
RTSP/1.0 200 OK
CSeq: 9
Session: 2049381566
Date: Tue, Mar 14 2017 10:57:28 GMT
8.3 Start Two-Way Audio
Two-way audio function enables the voice talk of the camera. You can get not only the live video
but also the real-time audio from the camera. If the device has multiple two-way audio channels,
you can select the channel to start two-way audio.
86
Intelligent Security API (General) Developer Guide
Steps
Figure 8-2 Programming Flow of Starting Two-Way Audio
1. Optional: Call /ISAPI/System/TwoWayAudio/channels by GET method to get parameters,
including channel No., encoding mode, and so on, of all two-way audio channels.
Note
You can call /ISAPI/System/TwoWayAudio/channels/capabilities by GET method to get the
audio configuration capability of all two-way audio channels for knowing the configuration
details and notices.
2. Call /ISAPI/System/TwoWayAudio/channels/<ID>/open by PUT method to specify a channel of
device to start the two-way audio.
3. Perform the following operations to transmit the audio data between platform and device.
Send Audio Data to Device PUT /ISAPI/System/TwoWayAudio/channels/<ID>/
audioData
Receive Audio Data from Device
GET /ISAPI/System/TwoWayAudio/channels/<ID>/
audioData
4. Call /ISAPI/System/TwoWayAudio/channels/<ID>/close by PUT method to stop two-way audio
of the specific channel.
8.4 Stream Encoding
The following request URIs are used for configuring encoding parameters of video and audio
stream by one channel or multiple channels.
87
Intelligent Security API (General) Developer Guide
Encode Stream of Multiple Channels
Function Request URI
Get or set encoding parameters GET or PUT /ISAPI/Streaming/channels
of multiple channels
Get encoding status of multiple GET /ISAPI/Streaming/status
channels
Encode Stream of One Channel
Function Request URI
Get encoding capability of one GET /ISAPI/Streaming/channels/<ID>/capabilities
channel
Get dynamic encoding GET /ISAPI/Streaming/channels/<ID>/dynamicCap .
capability of one channel
Get or set encoding parameters GET or PUT /ISAPI/Streaming/channels/<ID>
of one channel
Get encoding status of one GET /ISAPI/Streaming/channels/<ID>/status
channel
88
Intelligent Security API (General) Developer Guide
Chapter 9 Capture and Recording
For some remarkable views in the live view, you can manually capture the views or record the
video segments and save the captured pictures or videos to the configured storage. For recording,
you can also configure recording schedule to record videos continuously or based on command or
event.
Capture
Function Request URI
Capture picture (available for GET /ISAPI/Streaming/channels/<ID>/picture
front-end devices)
Capture picture (available for GET /ISAPI/ContentMgmt/StreamingProxy/channels/<ID>/
rear-end devices) Picture
Get configuration capability of GET /ISAPI/Snapshot/channels/<ID>/capabilities
capturing pictures by schedule
Get or set parameters of GET or PUT /ISAPI/Snapshot/channels
multiple channels for capturing
pictures by schedule
Get or set parameters of a GET or PUT /ISAPI/Snapshot/channels/<ID>
specific channel for capturing
pictures by schedule
Get capability of digital video GET /ISAPI/ContentMgmt/StreamingProxy/channels/<ID>/
channel proxy capabilities
Get capability of capturing GET /ISAPI/ContentMgmt/StreamingProxy/channels/<ID>/
picture in URL format PictureByUrl/capabilities?format=json
Capture picture in URL format POST /ISAPI/ContentMgmt/StreamingProxy/channels/<ID>/
PictureByUrl?format=json
Recording
Table 9-1 Normal Operation
Function Request URI
Get video track type GET /ISAPI/ContentMgmt/record/profile
Set storage for recorded files PUT /ISAPI/ContentMgmt/record/storageMounts
89
Intelligent Security API (General) Developer Guide
Function Request URI
Note
To check if setting recording storage is supported, you can call
the GET /ISAPI/ContentMgmt/capabilities to get the device
storage management capability ( XML_RacmCap ).
Table 9-2 Recording Schedule
Function Request URI
Get configuration capability of GET /ISAPI/ContentMgmt/record/tracks/<ID>/capabilities
a recording schedule
Get all recording schedules GET /ISAPI/ContentMgmt/record/tracks
Add a recording schedule POST /ISAPI/ContentMgmt/record/tracks
Set a recording schedule PUT /ISAPI/ContentMgmt/record/tracks/<ID>
Table 9-3 Manual Recording
Function Request URI
Start manual recording POST /ISAPI/ContentMgmt/record/control/manual/start/
tracks/<ID>
Stop manual recording POST /ISAPI/ContentMgmt/record/control/manual/stop/
tracks/<ID>
90
Intelligent Security API (General) Developer Guide
Chapter 10 PTZ Control
PTZ control is to implement the panning, tilting, zoom functions of cameras, set presets for specific
monitoring areas to fast switch the cameras as needed, and group the user-defined presets as a
scanning track for patrol.
10.1 Configure Basic PTZ Parameters
Function Request URI
Get PTZ control capability GET /ISAPI/PTZCtrl/channels/<ID>/capabilities
Get or set zoom/focus GET or PUT /ISAPI/PTZCtrl/channels/<ID>/zoomFocus
coordinate parameters
Maximum Tilt Angle • Get configuration capability of maximum tilt angle: GET /
ISAPI/PTZCtrl/channels/<ID>/maxelevation/capabilities
• Get or set parameters of maximum tilt angle: GET or PUT /
ISAPI/PTZCtrl/channels/<ID>/maxelevation
Get PTZ position information of GET /ISAPI/PTZCtrl/channels/<ID>/save
current channel
Set PTZ position information of PUT /ISAPI/PTZCtrl/channels/<ID>/save?format=json
current channel
Get PTZ status of a specific GET /ISAPI/PTZCtrl/channels/<ID>/status
channel
Preset Configuration • Get all presets' parameters: GET /ISAPI/PTZCtrl/channels/
<ID>/presets
• Set all presets' parameters: PUT /ISAPI/PTZCtrl/channels/
<ID>/presets
• Added a preset: POST /ISAPI/PTZCtrl/channels/<ID>/presets
• Delete all presets: DELETE /ISAPI/PTZCtrl/channels/<ID>/
presets
• Get a preset's parameters: GET /ISAPI/PTZCtrl/channels/
<ID>/presets/<ID>
• Set a preset's parameters: PUT /ISAPI/PTZCtrl/channels/
<ID>/presets/<ID>
• Delete a preset: DELETE /ISAPI/PTZCtrl/channels/<ID>/
presets/<ID>
Get parking configuration GET /ISAPI/PTZCtrl/channels/<ID>/parkaction/capabilities
capability
91
Intelligent Security API (General) Developer Guide
Function Request URI
Get or set parking parameters GET or PUT /ISAPI/PTZCtrl/channels/<ID>/parkaction
Control 3D positioning PUT /ISAPI/PTZCtrl/Channels/<ID>/position3D
10.2 Configure Other PTZ Parameters
Function Request URI
Lens • Initialize lens: PUT /ISAPI/PTZCtrl/channels/<ID>/
onepushfoucs/reset
• Get lens correction capability: GET /ISAPI/PTZCtrl/channels/
<ID>/lensCorrection/capabilities?format=json
• Get or set lens correction parameters: GET or PUT /ISAPI/
PTZCtrl/channels/<ID>/lensCorrection?format=json
Note
To check if the lens correction is supported by device, you can
call the GET /ISAPI/PTZCtrl/channels/<ID>/capabilities to
get the PTZ control capability ( XML_PTZChanelCap ). If
supports, the node <isSupportLensCorrection> will be
returned.
Get or set PTZ locking time GET or PUT /ISAPI/PTZCtrl/channels/<ID>/lockPTZ
duration
Note
You can call the GET /ISAPI/PTZCtrl/channels/<ID>/capabilities
to get the supported locking time duration (<lockTime>) from
the PTZ control capability ( XML_PTZChanelCap ).
Get or set PTZ OSD parameters GET or PUT /ISAPI/PTZCtrl/channels/<ID>/PTZOSDDisplay
Get or set moving object GET or PUT /ISAPI/PTZCtrl/channels/<ID>/moveAutoTracking?
tracking status format=json
Get configuration capability of GET /ISAPI/PTZCtrl/channels/<ID>/trackingRatio/capabilities?
tracking parameters format=json
Get or set tracking parameters GET or PUT /ISAPI/PTZCtrl/channels/<ID>/trackingRatio?
format=json
92
Intelligent Security API (General) Developer Guide
10.3 Configure PTZ Auxiliary Status
Function Request URI
Get or set all PTZ auxiliaries GET or PUT /ISAPI/PTZCtrl/channels/<ID>/auxcontrols
status
Get or set the status of single GET or PUT /ISAPI/PTZCtrl/channels/<ID>/auxcontrols/<ID>
PTZ auxiliary
10.4 Configure E-PTZ Parameters
Function Request URI
Get or set e-PTZ parameters GET or PUT /ISAPI/Image/channels/<ID>/EPTZ
Get capability of switching e- GET /ISAPI/Image/channels/<ID>/EPTZ/mode/capabilities?
PTZ mode format=json
Get or set parameters of GET or PUT /ISAPI/Image/channels/<ID>/EPTZ/mode?
switching e-PTZ mode format=json
10.5 Configure Gyroscope Calibration Parameters
Function Request URI
Get gyroscope attitude GET /ISAPI/PTZCtrl/channels/<ID>/gyroVerify/capabilities?
calibration format=json
Set gyroscope attitude PUT /ISAPI/PTZCtrl/channels/<ID>/gyroVerify?format=json
calibration parameters
10.6 Configure GPS Calibration Parameters
Function Request URI
Get capability of verifying GPS GET /ISAPI/System/GPSVerification/channels/<ID>/points/
calibration capabilities?format=json
Get GPS calibration GET /ISAPI/System/GPSCalibratation/channels/<ID>/
configuration capability capabilities?format=json
93
Intelligent Security API (General) Developer Guide
Function Request URI
Configure a single GPS • Get parameters of a single GPS calibration point:
calibration point. GET /ISAPI/System/GPSCalibratation/channels/<ID>/points/
<PID>?format=json
• Set a single GPS calibration point:
PUT /ISAPI/System/GPSCalibratation/channels/<ID>/points/
<PID>?format=json
• Delete a single GPS calibration point:
DELETE /ISAPI/System/GPSCalibratation/channels/<ID>/
points/<PID>?format=json
Configure multiple GPS • Get parameters of multiple GPS calibration points in a batch:
calibration points GET /ISAPI/System/GPSCalibratation/channels/<ID>/points?
format=json
• Set multiple GPS calibration points in a batch:
PUT /ISAPI/System/GPSCalibratation/channels/<ID>/points?
format=json
• Delete multiple GPS calibration points in a batch
DELETE /ISAPI/System/GPSCalibratation/channels/<ID>/
points?format=json
Enable GPS calibration PUT /ISAPI/System/GPSPTZCalibratation/channels/<ID>/
calibratation?format=json
Get capability of verifying GPS GET /ISAPI/System/GPSVerification/channels/<ID>/points/
calibration capabilities?format=json
Configure multiple verification • Add a verification points:
points POST /ISAPI/System/GPSVerification/channels/<ID>/points?
format=json
• Get information of multiple verification points:
GET /ISAPI/System/GPSVerification/channels/<ID>/points?
format=json
• Set multiple verification points:
PUT /ISAPI/System/GPSVerification/channels/<ID>/points?
format=json
• Delete multiple verification points:
DELETE /ISAPI/System/GPSVerification/channels/<ID>/
points?format=json
Configure one specified • Get information of one specified verification point:
verification point GET /ISAPI/System/GPSVerification/channels/<ID>/points/
<ID>?format=json
• Set information of one specified verification point:
94
Intelligent Security API (General) Developer Guide
Function Request URI
PUT /ISAPI/System/GPSVerification/channels/<ID>/points/
<ID>?format=json
• Delete one specified verification point:
DELETE /ISAPI/System/GPSVerification/channels/<ID>/
points/<ID>?format=json
Get GPS calibration verification GET /ISAPI/System/GPSVerification/channels/<ID>/points/
results in a batch resultInfo?format=json
Get or set parameters of GET or PUT /ISAPI/System/GPSVerification/channels/<ID>/
displaying GPS calibration display?format=json
verification result
10.7 Control PTZ via Digital Channel
Function Request URI
Get PTZ control capability of GET /ISAPI/ContentMgmt/PTZCtrlProxy/capabilities
digital channels
Get PTZ control capability of a GET /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/
digital channel capabilities
Get or set parameters of all GET or PUT /ISAPI/ContentMgmt/PTZCtrlProxy/channels
digital PTZ channels
Get or set parameters of a GET or PUT /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>
digital PTZ channel
Perform scheduled PTZ control PUT /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/
via a digital channel momentary
Perform 3D positioning of a PUT /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/
digital PTZ channel position3D
Manually control PTZ via a PUT /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/
digital channel continuous
Control fan of a digital PTZ PUT /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/
channel autoPan
Perform one-touch focus via a PUT /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/
digital PTZ channel onepushfoucs/start
Get, set, or delete all presets of GET, PUT, or DELETE /ISAPI/ContentMgmt/PTZCtrlProxy/
a digital PTZ channel channels/<ID>/presets
95
Intelligent Security API (General) Developer Guide
Function Request URI
Add a preset via a digital PTZ POST /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/
channel presets
Get, set, or delete a preset of a GET, PUT, or DELETE /ISAPI/ContentMgmt/PTZCtrlProxy/
digital PTZ channel channels/<ID>/presets/<ID>
Call a preset via a digital PTZ PUT /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/
channel presets/<ID>/goto
Get, set, or delete all patrols of GET, PUT, or DELETE /ISAPI/ContentMgmt/PTZCtrlProxy/
a digital PTZ channel channels/<ID>/patrols
Add a patrol via a digital PTZ POST /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/
channel patrols
Get, set, or delete a patrol of a GET, PUT, or DELETE /ISAPI/ContentMgmt/PTZCtrlProxy/
digital PTZ channel channels/<ID>/patrols/<ID>
Get a patrol's status of a digital GET /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/
PTZ channel patrols/<ID>/status
Start calling a patrol of a digital PUT /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/
PTZ channel patrols/<ID>/start
Stop calling a patrol of a digital PUT /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/
PTZ channel patrols/<ID>/stop
Pause calling a patrol of a PUT /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/
digital PTZ channel patrols/<ID>/pause
10.8 Configure Master-Slave Tracking
The master-slave tracking system is formed by one fixed camera and one PTZ camera. The PTZ
camera smartly tracks multiple moving targets, and the fixed camera offers the panoramic view.
The master-slave tracking system provides detection and tracking of moving targets, and multiple
targets can be tracked simultaneously. The system mainly applies to major industrial
infrastructures requiring perimeter prevention, such as airport, prison, railway, museum,
enterprise, high-end villas, etc.
96
Intelligent Security API (General) Developer Guide
Steps
Figure 10-1 API Calling Flow of Configuring Master-Slave Tracking
1. Call /ISAPI/MasterSlaveTracking/capabilities by GET method to get the master-slave tracking
capability to know the supported configurations.
2. Call /ISAPI/MasterSlaveTracking/channels/<ID>/slaveCamera/capabilities by GET method to
get the configuration capability of basic parameters for the PTZ camera to know the basic
parameters that can be configured.
3. Call /ISAPI/MasterSlaveTracking/channels/<ID>/slaveCamera/<ID> by PUT method to set the
basic configuration parameters for the PTZ camera.
4. Optional: Call /ISAPI/MasterSlaveTracking/channels/<ID>/slaveCameraStatus by GET method
to get the connection status of the PTZ camera.
5. Optional: Call /ISAPI/MasterSlaveTracking/channels/<ID>/slaveCamera/<ID>/trackingRatio
by PUT method to set the tracking zoom ratio for the PTZ camera.
6. Call /ISAPI/MasterSlaveTracking/channels/<ID>/tracking/capabilities by GET method to get
the tracking configuration capability of the PTZ camera to know the tracking parameters that
can be configured.
7. Call /ISAPI/MasterSlaveTracking/channels/<ID>/slaveCamera/<ID>/tracking by PUT method
to set the tracking configuration parameters for the PTZ camera.
97
Intelligent Security API (General) Developer Guide
10.9 Configure Panorama Tracking
Tracking Takeover and Linked Tracking Capture are two mutually exclusive modes for panorama
tracking.
Linked Tracking Capture Parameters
Function Request URI
Get capability of linked tracking GET /ISAPI/MasterSlaveTracking/linkedTracking/capabilities?
capture configuration format=json
Get or set linked tracking GET or PUT /ISAPI/MasterSlaveTracking/linkedTracking?
capture parameters format=json
98
Intelligent Security API (General) Developer Guide
Chapter 11 Storage Management
11.1 Configure Log Storage Mode
You can save the log files in default mode or custom mode. In the default mode, each HDD can
save up to 64 MB log files, and the storage space will automatically be overwritten when the space
usage reaches 64 MB. In the custom mode, it is available to specify HDDs to save log files.
Steps
Figure 11-1 Programming Flow of Configuring Log Storage Mode
1. Optional: Call /ISAPI/ContentMgmt/Storage/extension/capabilities by GET method to get the
capability of log storage strategy for reference.
The capability is returned in the message XML_Cap_storageExtension .
2. Call /ISAPI/ContentMgmt/Storage/extension by PUT method, and set the node
<logStorageMode> as "system" (system default mode) or "custom" (custom mode) in the
message XML_storageExtension .
99
Intelligent Security API (General) Developer Guide
3. Optional: Call /ISAPI/ContentMgmt/Storage/hdd/capabilities by GET method to get the HDD
management capability.
The capability is returned in the message XML_Cap_hddList .
4. Optional: Call /ISAPI/ContentMgmt/Storage/hdd by GET method to get configuration
parameters of all HDDs.
The parameters are returned in the message XML_hddList .
5. Call /ISAPI/ContentMgmt/Storage/hdd/<ID>/logProTest?format=json by PUT method to
configure preverification for log HDDs
11.2 HDD Management
The HDD (Hard Disk Drive) is used for storage. Before storing information in HDD, you must format
it, and you can also reallocate its space for better storage management.
HDD Configuration
Function Request URI
Get HDD management GET / /ISAPI/ContentMgmt/Storage/hdd/capabilities
capability
Get parameters of all HDDs GET /ISAPI/ContentMgmt/Storage/hdd
Get or set parameters of one GET or PUT /ISAPI/ContentMgmt/Storage/hdd/<ID>
HDD
Get parameters of all HDD GET /ISAPI/ContentMgmt/Storage/quota
quotas
Get parameters of an HDD GET /ISAPI/ContentMgmt/Storage/quota/<ID>
quota
Set parameters of an HDD PUT /ISAPI/ContentMgmt/Storage/quota/<ID>
quota
Verify HDD encryption PUT /ISAPI/ContentMgmt/Storage/hdd/<ID>/encryptVerfy?
password format=json
HDD Formatting
Function Request URI
Format all HDDs PUT /ISAPI/ContentMgmt/Storage/hdd/format
Specify formatting type to PUT /ISAPI/ContentMgmt/Storage/hdd/<ID>/format?
format one HDD formatType=
100
Intelligent Security API (General) Developer Guide
Function Request URI
Format multiple specified HDDs PUT /ISAPI/ContentMgmt/Storage/hdd/specifyHddFormat?
format=json
Format an encrypted HDD PUT /ISAPI/ContentMgmt/Storage/hdd/<ID>/encryptFormat?
format=json
Get formatting status of one GET /ISAPI/ContentMgmt/Storage/hdd/<ID>/formatStatus
HDD
HDD Clearing
Function Request URI
Get HDD clearing capability GET /ISAPI/ContentMgmt/storage/hdd/clearingSpace/
capabilities?format=json
Get or set HDD clearing GET or PUT /ISAPI/ContentMgmt/storage/hdd/clearingSpace?
parameters format=json
HDD Checking
Function Request URI
Get or set parameters for GET or PUT /ISAPI/ContentMgmt/Storage/hdd/SMARTTest/
checking HDD status config
Start checking HDD status PUT /ISAPI/ContentMgmt/Storage/hdd/<ID>/SMARTTest/start
Get HDD checking status GET /ISAPI/ContentMgmt/Storage/hdd/<ID>/SMARTTest/
status
Start checking bad sectors of a PUT /ISAPI/ContentMgmt/Storage/hdd/<ID>/BadSectorsTest/
HDD start
Get bad sector checking status GET /ISAPI/ContentMgmt/Storage/hdd/<ID>/BadSectorsTest/
of a HDD status
Pause checking bad sectors of a PUT /ISAPI/ContentMgmt/Storage/hdd/<ID>/BadSectorsTest/
HDD pause
Resume checking bad sectors PUT /ISAPI/ContentMgmt/Storage/hdd/<ID>/BadSectorsTest/
of a HDD resume
Stop checking bad sectors of a PUT /ISAPI/ContentMgmt/Storage/hdd/<ID>/BadSectorsTest/
HDD stop
101
Intelligent Security API (General) Developer Guide
SHM (SkyHawk Health Management) Alarm Linkage
Function Request URI
Get or set linkage parameters GET or PUT /ISAPI/Event/triggers/highHDTemperature
of HDD high temperature
detection
Get or set linkage parameters GET or PUT /ISAPI/Event/triggers/lowHDTemperature
of HDD low temperature
detection
Get or set linkage parameters GET or PUT /ISAPI/Event/triggers/hdImpact
of HDD impact detection
Get or set linkage parameters GET or PUT /ISAPI/Event/triggers/hdBadBlock
of HDD bad sector detection
Get or set linkage parameters GET or PUT /ISAPI/Event/triggers/severeHDFailure
of HDD severe fault detection
HDD Sync Status
Function Request URI
Get HDD data sync status GET /ISAPI/ContentMgmt/Storage/hdd/<ID>/syncStatus?
format=json
11.3 Hot Spare Configuration
Table 11-1 Hot Spare
Function Request URI
Get hot spare capability GET /ISAPI/ContentMgmt/spare/capabilities?format=json
Get or set hot spare working GET or PUT /ISAPI/ContentMgmt/spare?format=json
mode
Table 11-2 Working Device Configuration
Function Request URI
Get working device list or add a GET or POST /ISAPI/ContentMgmt/spare/master?format=json
working device
Edit working device PUT or DELETE /ISAPI/ContentMgmt/spare/master/<ID>?
information or delete working format=json
device
102
Intelligent Security API (General) Developer Guide
Table 11-3 Hot Spare Device Configuration
Function Request URI
Get hot spare device list or add GET or POST /ISAPI/ContentMgmt/spare/backup?format=json
hot spare device
Edit hot spare device PUT or DELETE /ISAPI/ContentMgmt/spare/backup/<ID>?
information or delete hot spare format=json
device
11.4 Working Mode Configuration
Function Request URI
Get configuration capability of GET /ISAPI/ContentMgmt/Storage/capabilities
current storage working mode
Get or set current working GET or PUT /ISAPI/ContentMgmt/storage
mode of storage
Start disk data reconstruction PUT /ISAPI/ContentMgmt/Storage/dataReconstruction?
format=json
Get disk data reconstruction GET /ISAPI/ContentMgmt/Storage/dataReconstruction/
progress progress?format=json
11.5 SSD Management
The SSD (solid state driver) is used for storage. Here introduces the URIs to implement the
functions of SSD file system format, file system upgrade, SSD firmware upgrade, SSD S.M.A.R.T
(self-monitoring, analysis, and reporting technology) detection, and so on.
SSD File System
Function Request URI
Format SSD file system PUT /ISAPI/System/SSDFileSystem/format?format=json
Search for formatting progress GET /ISAPI/System/SSDFileSystem/format/status?format=json
of SSD file system
Get upgrade status of SSD file GET /ISAPI/System/SSDFileSystem/upgrade?format=json
system
Upgrade SSD file system PUT /ISAPI/System/SSDFileSystem/upgrade?format=json
103
Intelligent Security API (General) Developer Guide
Function Request URI
Search for upgrade progress of GET /ISAPI/System/SSDFileSystem/upgrade/status?
SSD file system format=json
Search for SSD storage quotas GET /ISAPI/System/SSDFileSystem/capacity?format=json
SSD Configuration
Function Request URI
Get SSD management GET /ISAPI/ContentMgmt/Storage/ssd/<ID>/capabilities?
capability format=json
Upgrade SSD firmware POST /ISAPI/System/SSDFileSystem/format/status?
format=json
Get SSD firmware upgrade GET /ISAPI/System/SSDFileSystem/upgrade?format=json
progress
Get a single SSD information GET /ISAPI/ContentMgmt/Storage/ssd/<ID>
Get all SSDs information GET /ISAPI/ContentMgmt/Storage/ssd
SSD S.M.A.R.T. Detection
Function Request URI
Run SSD S.M.A.R.T detection PUT /ISAPI/ContentMgmt/Storage/ssd/<ID>/SMARTTest/start
Get SSD S.M.A.R.T detection GET /ISAPI/ContentMgmt/Storage/ssd/<ID>/SMARTTest/
status status
11.6 Storage Health Detection
Function Request URI
Get storage health detection GET /ISAPI/Smart/storageDetection
parameters
Get configuration capability of GET /ISAPI/Smart/storageDetection/rwlock/capabilities
read & write lock of storage
health detection
Get or set read & write lock GET or PUT /ISAPI/Smart/storageDetection/rwlock
parameters of storage health
detection
104
Intelligent Security API (General) Developer Guide
11.7 Others
Table 11-4 APIs about Additional Information
Function API
Get storage capability of GET /ISAPI/ContentMgmt/Storage/ExtraInfo/capabilities
additional information
Get or set storage parameters GET or PUT /ISAPI/ContentMgmt/Storage/ExtraInfo
of additional information
105
Intelligent Security API (General) Developer Guide
Chapter 12 File Management
12.1 Video Files
Search Video Files
Function Request URI
Get search conditions GET /ISAPI/ContentMgmt/search/profile
Search video files POST /ISAPI/ContentMgmt/search
Note
This URI is not only used to search video files, it can also be
used to search any resources stored in the device.
Search video files by time POST /ISAPI/ContentMgmt/record/tracks/<ID>/
dailyDistribution
Get capability of searching GET /ISAPI/ContentMgmt/SmartSearch/capabilities
video files by VCA event
Search video files by VCA event POST /ISAPI/ContentMgmt/SmartSearch
Lock or Unlock Video Files
Function Request URI
Get video file locking and GET /ISAPI/ContentMgmt/record/control/locks/capabilities
unlocking capability
Lock or unlock video files by PUT /ISAPI/ContentMgmt/record/control/locks/name
name
Add Remarks to Video File
Function Request URI
Get capability of adding GET /ISAPI/ContentMgmt/record/control/remark/capabilities?
remarks to video files format=json
Add remarks to video files PUT /ISAPI/ContentMgmt/record/control/remark?format=json
106
Intelligent Security API (General) Developer Guide
Note
To check whether the device supports adding remarks to the video files, you can call /ISAPI/
ContentMgmt/capabilities by GET method to get the device storage capability ( XML_RacmCap ).
If it supports, the node <isSupportRemark> will be returned and its value is "true".
Clear Stored Video Files
Function Request URI
Get the capability of deleting GET /ISAPI/ContentMgmt/record/control/cleanUp/
files in a batch capabilities?format=json
Delete files in a batch POST /ISAPI/ContentMgmt/record/control/cleanUp?
format=json
Export Video or Picture Files to Device via USB
Function Request URI
Get capability of exporting GET /ISAPI/ContentMgmt/download/toUSB/capabilities?
video or picture files to devices format=json
via USB
Note
To check whether this function is supported by the device, you
can call /ISAPI/ContentMgmt/download/capabilities by GET
method to get the downloading capability
( XML_DownloadAbility ). If it supports, the node
<isSupportDownloadToUSB> will be returned and its value is
"true".
Export video or picture files to POST /ISAPI/ContentMgmt/download/toUSB?format=json
devices via USB
Get progress of exporting video GET /ISAPI/ContentMgmt/download/toUSB/<taskId>/
or picture files to devices via progress?format=json
USB
12.2 Audio Files
107
Intelligent Security API (General) Developer Guide
Custom Audio File Operations
Function Request URI
Check whether custom audio Call /ISAPI/Event/triggers/notifications/AudioAlarm/
operation is supported capabilities?format=json by GET method.
The capability is returned in JSON_AudioAlarmCap and if "true"
is returned in the node isSupportCustomAudio, it indicates that
custom audio operation is supported.
Download or delete custom Call /ISAPI/Event/triggers/notifications/AudioAlarm/
audio file customAudio/<customAudioID>?format=json by GET or DELETE
method.
Get or edit custom audio file Call /ISAPI/Event/triggers/notifications/AudioAlarm/
information customAudioInfo/<customAudioID>?format=json by GET or
PUT method.
Import custom audio file Call /ISAPI/Event/triggers/notifications/AudioAlarm/
customAudio?format=json by POST method.
Get encoding format Call /ISAPI/Event/triggers/notifications/AudioAlarm/
information of custom audio customAudioTypeInfo/channels?format=json by GET method.
file in a batch
Get information about custom GET /ISAPI/Event/triggers/notifications/AudioAlarm/
alarm sound file of specified customAudioInfo/channels/<channelID>?format=json
channel
Get audible warning GET /ISAPI/Event/triggers/notifications/channels/<ID>/
configuration capability of AudioAlarm/capabilities?format=json
specified channel
Audio Test
Function Request URI
Check whether audio test is Call /ISAPI/Event/triggers/notifications/AudioAlarm/
supported capabilities?format=json by GET method.
The capability is returned in JSON_AudioAlarmCap and if "true"
is returned in the node isSupportAudioTest, it indicates that
audio test is supported.
Audio test Call /ISAPI/Event/triggers/notifications/AudioAlarm/
<audioID>/test?format=json by PUT method.
108
Intelligent Security API (General) Developer Guide
12.3 Log Files
Table 12-1 Export Log to USB Flash Drive
Function Request URI
Get the configuration capability of exporting log GET /ISAPI/System/exportLogToUSB/
to USB flash drive capabilities?format=json
Set parameters of exporting logs to USB flash PUT /ISAPI/System/exportLogToUSB/mode?
drive format=json
Get the status of exporting logs to USB flash GET /ISAPI/System/exportLogToUSB/status?
drive format=json
Table 12-2 Export Log to PC
Function Request URI
Get the configuration capability of exporting GET /ISAPI/System/exportUSBLog/
logs to PC capabilities?format=json
Export logs to PC PUT /ISAPI/System/exportUSBLog?
format=json
Get the status of exporting logs to PC GET /ISAPI/System/exportUSBLog/status?
format=json
Table 12-3 Search and Export Log Files
Function Request URI
Search for log files Option1: POST /ISAPI/ContentMgmt/logSearch
Option 2: POST /ISAPI/ContentMgmt/logSearch?format=json
Export log files POST /ISAPI/ContentMgmt/logSearch/dataPackage
Note
To check whether the device supports exporting log files, you
can call /ISAPI/ContentMgmt/capabilities by GET method to
get the storage capability ( XML_RacmCap ). If it supports, the
node <isSupportLogDataPackage> is returned in the capability
message and its value is "true".
109
Intelligent Security API (General) Developer Guide
12.4 Download Files
Function Request URI
Get downloading capability GET /ISAPI/ContentMgmt/download/capabilities
Download files POST /ISAPI/ContentMgmt/download
110
Intelligent Security API (General) Developer Guide
Chapter 13 Alarm/Event
When the alarm is triggered or the event occurred, if you have configured alarm/event uploading
parameters, you can receive and process the alarm/event information in the third-party platform
or system by calling the request URLs of ISAPI. Two modes are available for receiving alarms,
including arming mode and listening mode.
Arming Mode
When the alarm is triggered or event occurred, the third-party platform or system can send the
request URL to the device for getting the alarm/event stream, and then the device uploads the
response message with alarm/event information.
Listening Mode
When alarm is triggered or event occurred, the device uploads the alarm information
automatically, and then the third-party platform or system can receives the alarm/event by
configuring listening port of HTTP host server.
13.1 Configure Audio Detection Alarm
The audio detection function can detect the abnormal sound in the surveillance scene, such as the
sudden increase or decrease of the sound intensity. If the alarm linkage is configured, some certain
actions can be taken as response when the audio detection alarm is triggered.
111
Intelligent Security API (General) Developer Guide
Steps
Figure 13-1 Programming Flow of Configuring Audio Detection Alarm
112
Intelligent Security API (General) Developer Guide
1. Call /ISAPI/Smart/capabilities by GET method to get the smart device capability and check
whether the device supports audio detection.
The smart device capability is returned in the message XML_SmartCap .
If the node <isSupportAudioDetection> will be returned in the message and its value is true, it
indicates that the audio detection is supported by the device, and then you can continue to
perform the following operations. Otherwise, it indicates that the audio detection is not
supported, please end this task.
2. Optional: Call /ISAPI/Smart/AudioDetection/channels/<ID>/capabilities by GET method to get
the configuration capability of the audio detection of a specific channel for knowing about the
configuration details or notices.
3. Optional: Call /ISAPI/Smart/AudioDetection/channels/<ID> by GET method to get the audio
detection parameters of a specific channel for reference.
4. Call /ISAPI/Smart/AudioDetection/channels/<ID> by PUT method to set the audio detection
parameters of a specific channel.
5. Optional: Call /ISAPI/Event/schedules/<EventType>/<ID> by GET method to get the default of
configured arming schedule parameters of a specific channel for reference.
Note
The <EventType> in the request URI should be set to <audioDetections> and the <ID> in the
request URI should be set in the format of <audioexception_<channelID>, e.g., /ISAPI/Event/
schedules/audioDetections/audioexception_101.
6. Call /ISAPI/Event/schedules/<EventType>/<ID> by PUT method to set the arming schedule of a
specific channel for audio detection.
Note
The <EventType> in the request URI should be set to <audioDetections> and the <ID> in the
request URI should be set in the format of <audioexception_<channelID>, e.g., /ISAPI/Event/
schedules/audioDetections/audioexception_101.
7. Optional: Call /ISAPI/Event/triggers/<eventType>-<ID> by GET method to get the default or
configured alarm linkage actions of a specific channel for reference.
Note
The <eventType> in the request URI should be set to <audioexception>, e.g., /ISAPI/Event/
triggers/audioexception-101.
8. Call /ISAPI/Event/triggers/<eventType>-<ID> by PUT method to set alarm linkage actions of a
specific channel for audio detection.
Note
The <eventType> in the request URI should be set to <audioexception>, e.g., /ISAPI/Event/
triggers/audioexception-101.
113
Intelligent Security API (General) Developer Guide
9. Receive the audio detection alarm in arming mode (refer to Receive Alarm/Event in Arming
Mode for details) or in listening mode (refer to Receive Alarm/Event in Listening Mode for
details) when the alarm is triggered.
Note
The audio detection alarm details are uploaded in the message
XML_EventNotificationAlert_AudioExceptionAlarmMsg and the corresponding alarm type
(eventType) is "audioexception".
10. Optional: Call /ISAPI/Smart/AudioDetection/channels/<ID>/status by GET method to get the
audio strength.
13.2 Configure Exception Alarm
To monitor the device status, you can configure the exception alarm, such as supply voltage
exception, PoE power exception, and so on. When the exception occurs, the configured linkage
action will be triggered and the alarm information will be uploaded automatically.
Supply Voltage Exception
Function Request URI
Get configuration capability of GET /ISAPI/Event/triggersCap
alarm linkage action
Get or set the linkage action of GET or PUT /ISAPI/Event/triggers/<eventType>-<ID> , and the
supply voltage exception alarm <ID> in the URI is "voltageinstable"
Receive supply voltage Refer to Receive Alarm/Event in Listening Mode for details, the
exception alarm in listening event type is "voltageinstable", and the alarm information is
mode returned in message
JSON_EventNotificationAlert_voltageinstable
Note
To check if the device supports supply voltage exception alarm, you can call /ISAPI/Event/
capabilities by GET method to get the device event capability ( XML_EventCap ). If supports, the
node <isSupportVoltageInstable> will be returned.
13.3 Configure Certificate Expiry Alarm
Generally, the device certificate is only valid in a specific period of time. You can configure the
certificate expiry alarm to remind the user a few days in advance. When the certificate is expired,
the alarm will be triggered and uploaded automatically.
114
Intelligent Security API (General) Developer Guide
Steps
Figure 13-2 Programming Flow of Configuring Certificate Expiry Alarm
115
Intelligent Security API (General) Developer Guide
1. Call /ISAPI/Event/capabilities by GET method to get the event capability of the device for
checking whether the device supports certificate expiry alarm.
The event capability of the device is returned in the message XML_EventCap . If the certificate
expiry alarm is supported, the node <isSupportCertificateRevocation> will be returned and its
value is "true", then you can perform the following steps. Otherwise, please end this task.
2. Call /ISAPI/Event/channels/<ID>/capabilities by GET method to get the event capability of the
channel for checking whether the certificate expiry alarm is supported by the channel.
The event capability supported by the channel is returned in the message
XML_ChannelEventCap . If the certificate expiry alarm is supported, the node <eventType> will
be returned and it contains "certificateRevocation".
3. Call /ISAPI/Security/deviceCertificate/certificateRevocation/capabilities?format=json by GET
method to get the configuration capability of certificate expiry alarm to know the supported
parameters of certificate expiry alarm that can be configured.
4. Optional: Call /ISAPI/Security/deviceCertificate/certificateRevocation?format=json by GET
method to get the parameters of certificate expiry alarm to get the existing or configured
parameters for reference.
5. Call /ISAPI/Security/deviceCertificate/certificateRevocation?format=json byPUT method to set
the parameters of certificate expiry alarm .
6. Optional: Call /ISAPI/Event/triggers/<eventType>-<ID> or /ISAPI/Event/triggers/<ID>/
notifications by GET method to get the linkage parameters of certificate expiry alarm to get the
existing or configured parameters for reference.
Note
The <ID> in the request URI refers to the channel No., and it should be set to the format
"certificateRevocation-<channelID>".
7. Call /ISAPI/Event/triggers/<eventType>-<ID> or /ISAPI/Event/triggers/<ID>/notifications by
PUT method to Set the linkage parameters of certificate expiry alarm.
Note
The <ID> in the request URI refers to the channel No., and it should be set to the format
"certificateRevocation-<channelID>".
8. Optional: Receive the uploaded certificate expiry alarm in arming mode (see details in Receive
Alarm/Event in Arming Mode ) or in listening mode (see details in Receive Alarm/Event in
Listening Mode ) when the certificate is expired.
The certificate expiry alarm details are returned in the message
JSON_EventNotificationAlert_CertificateExpiryAlarmMsg , and the corresponding alarm type
(eventType) is "certificateRevocation".
116
Intelligent Security API (General) Developer Guide
13.4 Configure Network Traffic Pre-alarm
You can set or search for data plans, monitor data usage, and set a traffic limit. When the limit is
exceeded, the alarm will be triggered and uploaded automatically.
Steps
Figure 13-3 Programming Flow of Configuring Network Traffic Pre-alarm
1. Call /ISAPI/System/capabilities by GET to check whether the device supports network traffic
pre-alarm.
2. Call /ISAPI/Event/channels/<ID>/capabilities by GET to check whether the channel supports
network traffic pre-alarm.
3. Optional: Call /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/trafficMonitor/
capabilities?format=json by GET to get network traffic monitoring capability for reference.
117
Intelligent Security API (General) Developer Guide
The capability is returned in the message JSON_TrafficMonitorCap .
4. Optional: Call /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/trafficMonitor?
format=json by GET to get default or configured network traffic monitoring parameters for
reference.
The parameters are returned in the message JSON_TrafficMonitor .
5. Call /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/trafficMonitor?format=json by
PUT to set parameters of network traffic monitoring.
6. Optional: Call /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/trafficMonitor/status?
format=json by GET to get network traffic monitoring status.
The status is returned in the message JSON_TrafficMonitorStatus .
7. Optional: Receive the uploaded network traffic alarm in arming mode (see details in Receive
Alarm/Event in Arming Mode ) or in listening mode (see details in Receive Alarm/Event in
Listening Mode ).
Note
The traffic pre-alarm only supports the default linkage action (upload to center) and arming
schedule (all-day schedule).
The network traffic alarm details are returned in the message
JSON_EventNotificationAlert_NetworkTrafficPrealarmMsg , and the corresponding alarm type
(eventType) is "dataPrealarm".
13.5 Configure Motion Detection Alarm
Motion detection detects the moving objects in the configured surveillance area, and a series of
actions can be taken when the alarm is triggered. In order to detect the moving objects accurately
and reduce the false alarm rate, detection target types (including human and vehicle), and
detection region types (including region, grid, and ROI) are selectable for different motion
detection environment.
118
Intelligent Security API (General) Developer Guide
Steps
Figure 13-4 API Calling Flow of Configuring Motion Detection Alarm
1. Configure motion detection.
119
Intelligent Security API (General) Developer Guide
1) Optional: Call /ISAPI/System/Video/inputs/channels/<ID>/motionDetection/capabilities by
GET method to get the motion detection capability for reference.
2) Optional: Call /ISAPI/System/Video/inputs/channels/<ID>/motionDetection by GET
method to get default or configured motion detection parameters for reference.
3) Call /ISAPI/System/Video/inputs/channels/<ID>/motionDetection by PUT method to set
motion detection parameters.
2. Configure rule region of motion detection to detect by region or by grid.
1) Optional: Call /ISAPI/System/Video/inputs/channels/<ID>/motionDetection/layout/
capabilities by GET method to get rule region configuration capability of motion detection
for reference.
2) Optional: Call /ISAPI/System/Video/inputs/channels/<ID>/motionDetection/layout by GET
method to get default or configured rule region parameters of motion detection for
reference.
3) Call /ISAPI/System/Video/inputs/channels/<ID>/motionDetection/layout by PUT method
to set rule region of motion detection to detect by region or by grid.
3. Check the value of query parameter regionType in the request URI of /ISAPI/System/Video/
inputs/channels/<ID>/motionDetection/layout/gridLayout .
- If the query parameter regionType in the request URI is set to "grid", call /ISAPI/System/
Video/inputs/channels/<ID>/motionDetection/layout/gridLayout by PUT method to set the
detection grids.
- If the query parameter regionType in the request URI is set to "region", perform the
following steps.
4. Configure arming schedule(s) of motion detection(s).
- Call /ISAPI/Event/schedules/motionDetections by PUT method to set arming schedules of all
channels' motion detection.
- Call /ISAPI/Event/schedules/motionDetections/<ID> by PUT method and set the <ID> in the
request URI to "VMD-<channelID>" (e.g., /ISAPI/Event/schedules/motionDetections/
VMD-101) to set arming schedule of a channel's motion detection.
5. Call /ISAPI/Event/triggers/<eventType>-<ID> by PUT method and set the <ID> in the request
URI to "VMD-<channelID>" (e.g., /ISAPI/Event/triggers/VMD-101) to set alarm linkage action of
a channel's motion detection.
6. Call the flow of Receive Alarm/Event in Arming Mode to receive the motion detection alarm
information if it is triggered and uploaded.
The motion detection alarm information with the event type (eventType) of "VMD" will be
returned in the message XML_EventNotificationAlert_MotionDetectionMsg .
13.6 Configure Vibration Detection Alarm
Vibration detection function can be applied to the scenes in which the real-time vibration status of
devices should be detected in case people damage the devices on purpose. You can configure the
arming schedule and linkage actions of the vibration detection alarm. For those triggered alarms,
you can also search for the related videos or pictures.
120
Intelligent Security API (General) Developer Guide
Steps
Figure 13-5 API Calling Flow of Configuring Vibration Detection Alarm
121
Intelligent Security API (General) Developer Guide
1. Call /ISAPI/System/capabilities by GET method to get the device capability and check whether
vibration detection is supported by the device.
The device capability is returned in the message XML_DeviceCap .
If the node <isSupportVibrationDetection> is returned in the message and its value is "true", it
indicates that the vibration detection is supported, and then you can continue to perform the
following steps.
Otherwise, the vibration detection is not supported, please end this task.
2. Optional: Call /ISAPI/System/channels/<ID>/vibrationDetection/capabilities?format=json by
GET method to get configuration capability of vibration detection.
3. Call /ISAPI/System/channels/<ID>/vibrationDetection?format=json by PUT method to set
parameters of vibration detection.
4. Optional: Call /ISAPI/Event/channels/capabilities or /ISAPI/Event/channels/<ID>/capabilities
by GET method to get event configuration capability of all channels or a single channel for
knowing the configuration details or notices.
5. Call /ISAPI/Event/schedules/vibrationDetection/<ID> by PUT method and set the <ID> in the
format of "vibrationDetection-<channelID>", e.g., /ISAPI/Event/schedules/vibrationDetection/
vibrationDetection-1, to set arming schedule of a specific channel for vibration detection alarm.
6. Optional: Call /ISAPI/Event/triggersCap by GET method to get alarm linkage configuration
capability of vibration detection.
The alarm linkage capability is returned in the message XML_EventTriggersCap .
7. Call /ISAPI/Event/triggers/<eventType>-<ID> by PUT method and set the <ID> in the format of
"vibrationDetection-<channelID>", e.g., /ISAPI/Event/triggers/vibrationDetection-1, to set the
alarm linkages.
8. Optional: Receive vibration detection alarm in arming mode (refer to Receive Alarm/Event in
Arming Mode for details) or in listening mode (refer to Receive Alarm/Event in Listening Mode
for details) when alarm is triggered.
Note
The vibration detection alarm details are uploaded in the message
JSON_EventNotificationAlert_vibrationDetection and the corresponding alarm type
(eventType) is "vibrationDetection".
9. Optional: Call /ISAPI/ContentMgmt/search by POST method to search for video or picture
information of the vibration detection alarms.
Note
To check whether searching for video or picture information of vibration detection events is
supported, you can call /ISAPI/ContentMgmt/capabilities by GET method to get the storage
capability message XML_RacmCap and check whether the event type "vibrationDetection"
exists in the nodes recordSearchType and pictureSearchType.
122
Intelligent Security API (General) Developer Guide
13.7 Receive Alarm/Event in Arming Mode
When alarm is triggered or event occurred, and the alarm/event linkage is configured, you can
send request message to device for getting the alarm/event stream, and then the device uploads
the corresponding response message, which contains alarm/event information.
Before You Start
Make sure you have configured alarm/event and triggered the alarm/event. For configuring alarm/
event parameters, refer to the some typical applications of alarm/event configuration.
Steps
Figure 13-6 API Calling Flow of Receiving Alarm/Event in Arming Mode
1. Call /ISAPI/Event/notification/alertStream by GET to get the alarm/event stream.
2. Check if the heartbeat receiving timed out or network disconnected.
- If the heartbeat keeps alive and the network still connected, perform the following step to
continue.
- If the heartbeat receiving timed out or network disconnected, perform the above step
repeatedly until reconnected.
3. Receive and process the alarm/event information.
Example
Sample Code of Receiving Alarm/Event in Arming Mode (without Binary Picture Data)
GET /ISAPI/Event/notification/alertStream HTTP/1.1
Host: data_gateway_ip
Connection: Keep-Alive
HTTP/1.1 401 Unauthorized
Date: Sun, 01 Apr 2018 18:58:53 GMT
123
Intelligent Security API (General) Developer Guide
Server:
Content-Length: 178
Content-Type: text/html
Connection: keep-alive
Keep-Alive: timeout=10, max=99
WWW-Authenticate: Digest qop="auth",
realm="IP Camera(C2183)",
nonce="4e5468694e7a42694e7a4d364f4449354d7a6b354d54513d",
stale="FALSE"
GET /ISAPI/Event/notification/alertStream HTTP/1.1
Authorization: Digest username="admin",
realm="IP Camera(C2183)",
nonce="4e5468694e7a42694e7a4d364f4449354d7a6b354d54513d",
uri="/ISAPI/Event/notification/alertStream",
cnonce="3d183a245b8729121ae4ca3d41b90f18",
nc=00000001,
qop="auth",
response="f2e0728991bb031f83df557a8f185178"
Host: 10.6.165.192
HTTP/1.1 200 OK
MIME-Version: 1.0
Connection: close
Content-Type: multipart/mixed; boundary=<frontier>
--<frontier>
Content-Type: application/xml; charset="UTF-8"
Content-Length: text_length
<EventNotificationAlert/>
--<frontier>
Note
Some alarm data is in JSON format, so the Content-Type may be "application/xml" or "application/
json".
13.8 Receive Alarm/Event in Listening Mode
When alarm is triggered or event occurred, and the alarm/event linkage is configured, the device
uploads the alarm/event information automatically, you can receive the alarm/event by
configuring the listening port of HTTP host server.
Before You Start
Make sure you have configured alarm/event and triggered the alarm/event. For configuring alarm/
event parameters, refer to the some typical applications of alarm/event configuration.
124
Intelligent Security API (General) Developer Guide
Steps
Figure 13-7 API Calling Flow of Receiving Alarm/Event in Listening Mode
1. Optional: Call /ISAPI/Event/notification/httpHosts/capabilities by GET method to get the
capability of HTTP listening server.
2. Call /ISAPI/Event/notification/httpHosts by PUT method to set the parameters (including
listening address and listening port) of HTTP listening server.
Note
Before setting the listening server, you'd better call the URI by GET method to get the default or
configured parameters for reference.
3. Call /ISAPI/Event/notification/httpHosts/<ID>/test by POST method to check if the listening
server is working normally.
4. Receive the alarm/event information from the listening server.
Example
Sample Code of Receiving Alarm/Event in Listening Mode
• with Binary Picture Data
//Request
POST requestUrl HTTP/1.1
125
Intelligent Security API (General) Developer Guide
Host: data_gateway_ip:port
Accept-Language: en-US
Date: YourDate
Content-Type: multipart/form-data;boundary=<frontier>
Content-Length: body_length
Connection: keep-alive
--<frontier>
Content-Disposition: form-data; name="Event_Type"
Content-Type: text/xml
Content-Length: xml_length
<EventNotificationAlert/>
--<frontier>
Content-Disposition: form-data; name="Picture_Name"
Content-Length: image_length
Content-Type: image/pjpeg
[binary picture data]
--<frontier>--
//Response
HTTP/1.1 HTTP statusCode
Date: YourDate
Connection: close
• without Binary Picture Data
//Request
POST requestUrl HTTP/1.1
Host: data_gateway_ip:port
Accept-Language: en-US
Date: YourDate
Content-Type: text/xml;
Content-Length: text_length
Connection: keep-alive
<EventNotificationAlert/>
//Response
HTTP/1.1 HTTP statusCode
Date: YourDate
Connection: close
Note
• The Host is the HTTP server domain name or IP address and port No.
• Some alarm data is in JSON format, so the Content-Type may be "text/xml" or "text/json".
126
Intelligent Security API (General) Developer Guide
13.9 Subscribe Alarm/Event in Arming Mode
For arming mode, the platform will connect to the devices automatically and send commands to
the devices for uploading alarm/event information when the alarm is triggered or event occurred.
To reduce the CPU and bandwidth usage of platform, and improve the device processing
performance, the platform can subscribe alarm/event types to receive alarm/event information as
required.
Before You Start
Configure alarm/event and trigger the alarm/event. For configuring alarm/event parameters, refer
to the some typical applications of alarm/event configuration.
Steps
Figure 13-8 Programming Flow of Subscribing Alarm/Event in Arming Mode
1. Call /ISAPI/System/capabilities by GET method to get device capability to check whether the
alarm/event subscription is supported.
The device capability is returned in the message XML_DeviceCap .
127
Intelligent Security API (General) Developer Guide
If the node <isSupportSubscribeEvent> is also returned in the message and its value is "true", it
indicates that alarm/event subscription is supported by device, and you can continue to
perform the following steps;
Otherwise, alarm/event subscription is not supported, please end the task.
2. Call /ISAPI/Event/notification/subscribeEventCap by GET method to get subscription capability
to get supported alarm/event types.
The alarm/event subscription capability is returned in the message XML_SubscribeEventCap .
3. Call /ISAPI/Event/notification/subscribeEvent by POST method to enable alarm/event
uploading.
Note
The sub node <type> of event type list (EventList) in the request message XML_SubscribeEvent
can be set to different values (refer to Supported Alarm/Event Types for details) to subscribe
different types of alarm/event information.
4. Optional: Call /ISAPI/Event/notification/subscribeEvent/<ID> by GET method to get subscribed
alarm/event types for reference.
5. Call /ISAPI/Event/notification/subscribeEvent/<ID> by PUT to set alarm/event type to
subscribe.
Note
The sub node <type> of event type list (EventList) in the request message XML_SubscribeEvent
can be set to different values (refer to Supported Alarm/Event Types for details) to subscribe
different types of alarm/event information.
6. Call /ISAPI/Event/notification/alertStream by GET method to receive the alarm/event
information.
7. Check if the heartbeat receiving timed out or network disconnected.
- If the heartbeat keeps alive and the network still connected, perform the following step to
continue.
- If the heartbeat receiving timed out or network disconnected, perform the above step
repeatedly until reconnected.
8. Call /ISAPI/Event/notification/unSubscribeEvent by PUT method to cancel subscribing alarm/
event.
128
Intelligent Security API (General) Developer Guide
Chapter 14 Parameter Configuration
14.1 I/O Settings
I/O (Alarm Input and Output)
Function Request URI
Get I/O configuration capability GET /ISAPI/System/IO/capabilities .
Get alarm input and output GET /ISAPI/System/IO
information
Get I/O status GET /ISAPI/System/IO/status
Get all soft I/O parameters GET /ISAPI/System/IO/softInputs?format=json
Alarm Input
Function Request URI
Get configuration capability of GET /ISAPI/System/IO/inputs/capabilities .
alarm inputs
Get parameters of all alarm GET /ISAPI/System/IO/inputs
inputs
Get or set parameters of one GET or PUT /ISAPI/System/IO/inputs/<ID>
alarm input
Get status of one alarm input GET /ISAPI/System/IO/inputs/<ID>/status
Alarm Input Configuration of
Note
Digital Channel
• To check if the alarm input configuration of digital channel is
supported, you can call the GET /ISAPI/ContentMgmt/
capabilities to get the device storage management capability
( XML_RacmCap ).
• If this function is supported, the node
<isSupportIOInputProxy> is returned and its value is "true".
• Get or set alarm input parameters of all digital channels: GET
or PUT /ISAPI/ContentMgmt/IOProxy/inputs
• Added alarm input configuration of a specific digital channel:
POST /ISAPI/ContentMgmt/IOProxy/inputs
• Get or set alarm input parameters of a specific digital channel:
GET or PUT /ISAPI/ContentMgmt/IOProxy/inputs/<ID>
129
Intelligent Security API (General) Developer Guide
Function Request URI
• Delete alarm input configuration of a specific digital channel:
DELETE /ISAPI/ContentMgmt/IOProxy/inputs/<ID>
• Get alarm input status of a specific digital channel: GET /
ISAPI/ContentMgmt/IOProxy/inputs/<ID>/status
Alarm Output
Function Request URI
Basic Alarm Output Parameters • Get configuration capability of alarm outputs:
GET /ISAPI/System/IO/outputs/capabilities
• Get parameters of all alarm outputs: GET /ISAPI/System/IO/
outputs
• Get or set parameters of one alarm output: GET or PUT /
ISAPI/System/IO/outputs/<ID>
• Get status of one alarm output: GET /ISAPI/System/IO/
outputs/<ID>/status
Supplement Light Alarm • Get configuration capability of supplement light alarm
Output outputs: GET /ISAPI/Event/triggers/notifications/
whiteLightAlarm/capabilities?format=json
• Get or set parameters of supplement light alarm outputs: GET
or PUT /ISAPI/Event/triggers/notifications/
whiteLightAlarm?format=json
Audible Alarm Output • Get configuration capability of audible alarm outputs: GET /
ISAPI/Event/triggers/notifications/AudioAlarm/capabilities?
format=json
• Get or set parameters of audible alarm outputs: GET or PUT /
ISAPI/Event/triggers/notifications/AudioAlarm?format=json
Manually trigger an alarm PUT /ISAPI/System/IO/outputs/<ID>/trigger
output
Alarm Output Configuration of
Note
Digital Channel
To check if the alarm output configuration of digital channel is
supported, you can call the GET /ISAPI/ContentMgmt/
capabilities to get the device storage management capability
( XML_RacmCap ).
If this function is supported, the node
<isSupportIOOutputProxy> is returned and its value is "true".
130
Intelligent Security API (General) Developer Guide
Function Request URI
• Get or set alarm output parameters of all digital channels: GET
or PUT /ISAPI/ContentMgmt/IOProxy/outputs
• Added alarm output configuration of a specific digital channel:
POST /ISAPI/ContentMgmt/IOProxy/outputs
• Get or set alarm output parameters of a specific digital
channel: GET or PUT /ISAPI/ContentMgmt/IOProxy/outputs/
<ID>
• Delete alarm output configuration of a specific digital channel:
DELETE /ISAPI/ContentMgmt/IOProxy/outputs/<ID>
• Get alarm output status of a specific digital channel: GET /
ISAPI/ContentMgmt/IOProxy/outputs/<ID>/status
• Trigger alarm output of a specific digital channel: PUT /ISAPI/
ContentMgmt/IOProxy/outputs/<ID>/trigger
Note
The alarm details are uploaded by the message
XML_EventNotificationAlert_AlarmInputAlarmMsg .
14.2 Video/Image Settings
Basic Image Parameters
Function Request URI
Get image configuration GET /ISAPI/Image/channels/<ID>/capabilities
capability
Get or set image GET or PUT /ISAPI/Image/channels
parameters of all channels
Get or set image GET or PUT /ISAPI/Image/channels/<ID>
parameters of one channel
Get basic image GET /ISAPI/Image/channels/<ID>/imageModes
parameters of all channels
Get basic image GET /ISAPI/Image/channels/<ID>/imageMode/<ID>
parameters of one channel
Get configuration GET /ISAPI/Image/channels/imageModes
parameters of all image
modes of all channels
131
Intelligent Security API (General) Developer Guide
Function Request URI
Get configuration GET /ISAPI/Image/channels/imageModes/<ID>
parameters of all image
modes of a specific
channel
Reset image parameters PUT /ISAPI/Image/channels/<ID>/reset
Restore to default image PUT /ISAPI/Image/channels/<ID>/restore
settings
Camera Video/Image Parameters
Function Request URI
Get or set day/night mode GET or PUT /ISAPI/Image/channels/<ID>/ISPMode
parameters
Get or set image auto flip GET or PUT /ISAPI/Image/channels/<ID>/ImageFlip
parameters
Get or set wide dynamic GET or PUT /ISAPI/Image/channels/<ID>/WDR
range (WDR) parameters
Get or set backlight GET or PUT /ISAPI/Image/channels/<ID>/BLC
compensation (BLC)
parameters
Get or set day/night auto GET or PUT /ISAPI/Image/channels/<ID>/IrcutFilter
switch parameters
Get or set 3-dimention GET or PUT /ISAPI/Image/channels/<ID>/noiseReduce
digital noise reduction (3D
DNR) parameters
Get or set white balance GET or PUT /ISAPI/Image/channels/<ID>/whiteBalance
(WB) parameters
Get or set sharpness GET or PUT /ISAPI/Image/channels/<ID>/sharpness
parameters
Get or set defog GET or PUT /ISAPI/Image/channels/<ID>/dehaze
parameters
Get or set image standard GET or PUT /ISAPI/Image/channels/<ID>/powerLineFrequency
132
Intelligent Security API (General) Developer Guide
Function Request URI
Get or set image rotate GET or PUT /ISAPI/Image/channels/<ID>/corridor
mode parameters
Get or set video input GET or PUT /ISAPI/Image/channels/<ID>/capturemode
mode parameters
Table 14-1 Exposure
Function Request URI
Get or set exposure GET or PUT /ISAPI/Image/channels/<ID>/exposure
parameters
Get or set shutter GET or PUT /ISAPI/Image/channels/<ID>/shutter
parameters in exposure
mode
Get or set gain parameters GET or PUT /ISAPI/Image/channels/<ID>/gain
in exposure mode
Table 14-2 Image Adjustment
Function Request URI
Get image adjustment GET /ISAPI/Image/channels/<ID>/color/capabilities
capability
Get or set image GET or PUT /ISAPI/Image/channels/<ID>/color
adjustment parameters
Other Video/Image Parameters
Table 14-3 Focus
Function Request URI
Get focus configuration GET /ISAPI/Image/channels/<ID>/focusConfiguration/capabilities
capability
Get or set focus GET or PUT /ISAPI/Image/channels/<ID>/focusConfiguration
parameters
Perform regional focus PUT /ISAPI/Image/channels/<ID>/regionalFocus
133
Intelligent Security API (General) Developer Guide
Function Request URI
Note
To check if the regional focus is supported by device, you can call the
GET to get the image capability ( XML_ImageCap ). If supports, the
node <isSupportRegionalFocus> will be returned in the capability.
Get focus status GET /ISAPI/Image/channels/<ID>/focusConfiguration/status?
format=json
Table 14-4 Target Coloration
Function Request URI
Get image configuration GET /ISAPI/Image/channels/<ID>/capabilities
capability of a specific
channel
Get or set the palettes GET or PUT /ISAPI/Image/channels/<ID>/Palettes
parameters
Table 14-5 On Screen Display (OSD)
Function Request URI
Get or set OSD parameters GET or PUT /ISAPI/System/Video/inputs/channels/<ID>/overlays
Note
To check if the OSD language configuration is supported by device,
you can call the GET / to get the video capability ( XML_VideoCap ).
If supports, the node <OSDLanguage> will be returned.
Get text overlay GET /ISAPI/ContentMgmt/InputProxy/channels/<ID>/video/
configuration capability of overlays/capabilities
a specific video digital
input channel
Get or set text overlay GET or PUT /ISAPI/ContentMgmt/InputProxy/channels/<ID>/video/
parameters of a specific overlays
video digital input channel
Get or set text language of GET /ISAPI/System/Video/inputs/OSDLanguage
OSD
134
Intelligent Security API (General) Developer Guide
Table 14-6 Stream Configuration for Displaying VCA Rules of Smart Events
Function Request URI
Get capability of GET /ISAPI/Streaming/channels/<ID>/smartOverlap/capabilities?
configuring stream for format=json
displaying VCA rules of
smart events Note
To check if the stream configuration for displaying VCA rules of smart
events is supported by the device, you can call the GET /ISAPI/
System/capabilities to get the device capability ( XML_DeviceCap ).
If this function is supported, the node
<supportSmartOverlapChannles> will be returned and its value is
"true".
Get or set stream GET or PUT /ISAPI/Streaming/channels/<ID>/smartOverlap?
parameters for displaying format=json
VCA rules of smart events
Table 14-7 Target Enhancement
Function Request URI
Get target enhancement GET /ISAPI/Image/channels/<ID>/targetEnhancement/capabilities
capability
Get or set target GET or PUT /ISAPI/Image/channels/<ID>/targetEnhancement
enhancement parameters
Table 14-8 Privacy Mask
Function Request URI
Get configuration GET /ISAPI/System/Video/inputs/channels/<ID>/privacyMask/
capability of privacy mask privacyMaskCap
Get or set privacy mask GET or PUT /ISAPI/System/Video/inputs/channels/<ID>/
parameters privacyMask
Get or set multiple privacy GET or PUT /ISAPI/System/Video/inputs/channels/<ID>/
mask regions privacyMask/regions
Get or set one privacy GET or PUT /ISAPI/System/Video/inputs/channels/<ID>/
mask region privacyMask/regions/<ID>
135
Intelligent Security API (General) Developer Guide
Table 14-9 Distortion Correction
Function Request URI
Get configuration GET /ISAPI/Image/channels/<ID>/lensDistortionCorrection/
capability of distortion capabilities
correction
Get or set distortion GET or PUT /ISAPI/Image/channels/<ID>/lensDistortionCorrection
correction parameters
Table 14-10 Target Cropping
Function Request URI
Get configuration GET /ISAPI/Streaming/channels/<ID>/regionClip/capabilities
capability of target
cropping
Get or set target cropping GET or PUT /ISAPI/Streaming/channels/<ID>/regionClip
parameters
Table 14-11 Temperature Range
Function Request URI
Get temperature range GET /ISAPI/Image/channels/<ID>/tempRange/capabilities
configuration capability
Get or set temperature GET or PUT /ISAPI/Image/channels/<ID>/tempRange
range
Table 14-12 Mounting Scenario
Function Request URI
Get configuration GET /ISAPI/Image/channels/<ID>/mountingScenario/capabilities
capability of mounting
scenario mode
Get or set mounting GET or PUT /ISAPI/Image/channels/<ID>/mountingScenario
scenario mode by channel
14.3 Audio Settings
136
Intelligent Security API (General) Developer Guide
Basic Audio Configuration
Function Request URI
Get audio capability GET /ISAPI/System/Audio/capabilities
Get dynamic audio capability GET /ISAPI/System/Audio/channels/<ID>/dynamicCap
by channel
Get parameters of all audio GET /ISAPI/System/Audio/channels
channels
Get parameters of a specific GET /ISAPI/System/Audio/channels/<ID>
audio channel
Audio Input Configuration
Function Request URI
Get audio input capability of a GET /ISAPI/System/Audio/AudioIn/channels/<ID>/capabilities
specific channel
Get or set audio input GET or PUT /ISAPI/System/Audio/AudioIn/channels/<ID>
parameters of a specific
channel
Get audio input configuration GET /ISAPI/System/Audio/AudioIn/capabilities
capability of all channels
Get or set audio input GET or PUT /ISAPI/System/Audio/AudioIn
parameters of all channels
Audio Output Configuration
Function Request URI
Get audio output capability of GET /ISAPI/System/Audio/AudioOut/channels/<ID>/
a specific channel capabilities
Get or set audio output GET or PUT /ISAPI/System/Audio/AudioOut/channels/<ID>
parameters of a specific
channel
14.4 Channel Settings
137
Intelligent Security API (General) Developer Guide
Basic Channel Parameters
Function Request URI
Get all channels' attributes GET /ISAPI/AUXInfo/attributes/Channels
Get one channel's attributes GET /ISAPI/AUXInfo/attributes/Channels/<ID>
Video Input Channel
Function Request URI
Get capability of configuring GET /ISAPI/System/Video/inputs/channels/capabilities
video input channels in a batch
Get configuration capability by GET /ISAPI/System/Video/inputs/channels/<ID>/capabilities
video input channel
Get parameters of all video GET /ISAPI/System/Video/inputs/channels?format=json
input channels
Get parameters of one video /ISAPI/System/Video/inputs/channels/<ID>?format=json
input channel
Video Output Channel
Function Request URI
Get parameters of all video GET /ISAPI/System/Video/outputs
outputs
Get configuration capability by GET /ISAPI/System/Video/outputs/channels/<ID>/capabilities
video output channel
Get parameters of all video GET /ISAPI/System/Video/outputs/channels
output channels
Get parameters of one video GET /ISAPI/System/Video/outputs/channels/<ID>
output channel
Digital Channel
Note
To check if the digital channel management or configuration is supported, you can call the GET /
ISAPI/ContentMgmt/capabilities to get the device storage management capability
( XML_RacmCap ).
138
Intelligent Security API (General) Developer Guide
Function Request URI
Get management capability of GET /ISAPI/ContentMgmt/InputProxy/channels/capabilities
all digital channels
Get management capability of GET /ISAPI/ContentMgmt/InputProxy/channels/<ID>/
one digital channel capabilities
Get supported number of POST /ISAPI/ContentMgmt/InputProxy/sourceCapability
digital channels
Get parameters of all digital GET /ISAPI/ContentMgmt/InputProxy/channels
channels
Get status of all digital GET /ISAPI/ContentMgmt/InputProxy/channels/status
channels
Get, add, or delete parameters GET, POST, or PUT /ISAPI/ContentMgmt/InputProxy/channels
of one digital channel
Get status of one digital GET /ISAPI/ContentMgmt/InputProxy/channels/<ID>/status
channel
Get or set control parameters GET or PUT /ISAPI/ContentMgmt/InputProxy/channels/<ID>/
of a digital channel chanCtrl
Reboot a digital channel GET /ISAPI/ContentMgmt/InputProxy/channels/<ID>/reboot
Check if port mapping is POST /ISAPI/ContentMgmt/InputProxy/channels/<ID>/
required for connecting to a portMapParam
digital channel
Get or set the device GET or PUT /ISAPI/ContentMgmt/InputProxy/channels/<ID>/
parameters of a digital channel deviceInfo
Get device parameters of all POST /ISAPI/ContentMgmt/InputProxy/deviceInfo
digital channels
Get firmware code list of the GET /ISAPI/System/firmwareCodeV2
digital channel
139
Intelligent Security API (General) Developer Guide
14.5 Peripherals Settings
Function Request URI
Get peripherals configuration GET /ISAPI/System/externalDevice/capabilities
capability
Get configuration capability of GET /ISAPI/Image/channels/<ID>/supplementLight/
built-in supplement light capabilities
Get or set parameters of built- GET or PUT /ISAPI/Image/channels/<ID>/supplementLight
in supplement light
Note
To check if configuring built-in supplement light is supported,
you can call the GET /ISAPI/Image/channels/<ID>/capabilities
to get the image channel capability
( XML_Cap_ImageChannel ). If supports, the node
<SupplementLight> will be returned in the message.
14.6 Picture Storage Server Settings
Function Request URI
Get picture storage server GET /ISAPI/System/PictureServer/capabilities?format=json
capability
Get picture storage server GET /ISAPI/System/PictureServer?format=json
parameters
Set picture storage server PUT /ISAPI/System/PictureServer?format=json
parameters
140
Intelligent Security API (General) Developer Guide
Chapter 15 System Configuration
15.1 Basic Settings
Function Request URI
Get Configuration Capability of GET /ISAPI/System/DeviceLanguage/capabilities
Device Language
Get or Set Device Language GET or PUT /ISAPI/System/DeviceLanguage
Get USB Mode Configuration GET /ISAPI/System/usb/capabilities?format=json
Capability
Get or Set USB Mode GET or PUT /ISAPI/System/usb?format=json
15.2 Network Settings
This chapter lists the request URIs for communication and network configurations of devices,
including network interface settings, wireless network settings, network access settings, email
settings, and so on.
Function Request URI
Get network capability GET /ISAPI/System/Network/capabilities
Import network certificate GET /ISAPI/Security/deviceCertificate
Remotely get connection GET /ISAPI/System/Network/socketIP
socket IP
Note
To check if getting socket IP is supported by device, you can call
the GET /ISAPI/System/Network/capabilities to get the device
capability ( XML_DeviceCap ). If supports, the node
<isSupportGetLinkSocketIP> will be returned.
Network Self-Adaptive • Get self-adaptive configuration capability: GET /ISAPI/
System/Network/adaption/capabilities?format=json
• Get self-adaptive parameters: GET /ISAPI/System/Network/
adaption?format=json&streamType=
• Set self-adaptive parameters: PUT /ISAPI/System/Network/
adaption?format=json&streamType=
141
Intelligent Security API (General) Developer Guide
Function Request URI
Note
To check if network self-adaptive configuration is supported,
you can get the network capability XML_NetworkCap by
the /ISAPI/System/Network/capabilities . If supports, the
node <Adaption> will be returned in the capability message.
15.2.1 Email
Function Request URI
Get email configuration GET /ISAPI/System/Network/mailing/capabilities
capability
Get or set parameters of GET or PUT /ISAPI/System/Network/mailing
multiple emails
Get or set parameters of one GET or PUT /ISAPI/System/Network/mailing/<ID>
email
Execute email test POST /ISAPI/System/Network/mailing/test
15.2.2 Network Access
Network Access Test by Ping
Function Request URI
Set ping test parameters POST /ISAPI/System/Network/pingtest
Protocol Access
Function Request URI
Get configuration capability of GET /ISAPI/Security/adminAccesses/capabilities
protocol access
Get or set access parameters of GET or PUT /ISAPI/Security/adminAccesses
multiple protocols
Get or set access parameters of GET or PUT /ISAPI/Security/adminAccesses/<ID>
one protocol
142
Intelligent Security API (General) Developer Guide
Function Request URI
Get 802.1 protocol access GET /ISAPI/System/Network/interfaces/<ID>/ieee802.1x/
capability capabilities
Get or set access parameters of GET or PUT /ISAPI/System/Network/interfaces/<ID>/
802.1 protocol ieee802.1x
Hik-Connect Access
Function Request URI
Get the Hik-Connect access GET /ISAPI/System/Network/EZVIZ/capabilities
configuration capability
Get or set access parameters of GET or PUT /ISAPI/System/Network/EZVIZ
Hik-Connect
Note
To check if the device supports accessing to Hik-Connect, you
can call the request URI: GET /ISAPI/System/Network/
capabilities to get the network capability ( XML_NetworkCap ).
If supports, the node <isSupportEhome> will be returned in the
capability and its value is "true".
Edit verification code for Hik- PUT /ISAPI/System/Network/EZVIZ/secretKey?format=json
Connect
Note
To check if the device supports editing verification code for Hik-
Connect, you can call the request URI: GET /ISAPI/System/
Network/capabilities to get the network capability sets
XML_NetworkCap . If supports, the node <secretKey> will be
returned.
Get Hik-Connect QR code • GET /ISAPI/System/Network/EZVIZ/QRCode?format=json
• GET /ISAPI/System/Network/EZVIZ/QRCode
Unbind devices from Hik- PUT /ISAPI/System/Network/EZVIZ/unbind?format=json
Connect account
EHome Server Access
Function Request URI
Get configuration capability of GET /ISAPI/System/Network/Ehome/capabilities
EHome server access
Get or set access parameters of GET or PUT /ISAPI/System/Network/Ehome
EHome server
143
Intelligent Security API (General) Developer Guide
Function Request URI
Get or set access parameters of GET or PUT /ISAPI/System/Network/Ehome?centerID=
EHome server according to the
center ID
Get configuration capability of GET /ISAPI/SecurityCP/ReportCenterCfg/capabilities?
report uploading method format=json
Get or set parameters of report GET or PUT /ISAPI/SecurityCP/ReportCenterCfg/<ID>?
uploading method format=json
Note
To check if the device supports accessing to EHome server, you can call the request URI: GET /
ISAPI/System/Network/capabilities to get the network capability ( XML_NetworkCap ). If
supports, the node <isSupportEZVIZ> will be returned in the capability and its value is "true".
SSH Server Access
Function Request URI
Get the SSH parameters GET /ISAPI/System/Network/ssh/capabilities
configuration capability
Get or set access parameters of GET or PUT /ISAPI/System/Network/ssh
SSH server
Note
To check if the device supports accessing to SSH server, you can call the request URI: GET /ISAPI/
System/Network/capabilities to get the network capability ( XML_NetworkCap ). If supports, the
node <isSupportSSH> will be returned in the capability and its value is "true".
SNMP Access
Function Request URI
Get batch configuration GET /ISAPI/System/Network/SNMP
parameters of SNMP
Get advanced configuration GET /ISAPI/System/Network/SNMP/advanced
parameters of SNMP
Get all trap address parameters GET /ISAPI/System/Network/SNMP/advanced/trapReceivers
of SNMP in version 3
Set all trap address parameters PUT /ISAPI/System/Network/SNMP/advanced/trapReceivers
of SNMP in version 3
144
Intelligent Security API (General) Developer Guide
Function Request URI
Add a new trap address of POST /ISAPI/System/Network/SNMP/advanced/trapReceivers
SNMP in version 3
Delete all trap addresses of DELETE /ISAPI/System/Network/SNMP/advanced/
SNMP in version 3 trapReceivers
Get a single trap address's GET /ISAPI/System/Network/SNMP/advanced/trapReceivers/
parameters of SNMP in version <ID>
3
Set parameters for a single trap PUT /ISAPI/System/Network/SNMP/advanced/trapReceivers/
address of SNMP in version 3 <ID>
Delete a single address of DELETE /ISAPI/System/Network/SNMP/advanced/
SNMP in version 3 trapReceivers/<ID>
15.2.3 Network Interface
Network Interface
Function Request URI
Get configuration capability of GET /ISAPI/System/Network/interfaces/capabilities
multiple network interfaces
Get configuration capability of GET /ISAPI/System/Network/interfaces/<ID>/capabilities
one network interface
Get information of multiple GET /ISAPI/System/Network/interfaces
network interfaces
Get or set parameters of one GET or PUT /ISAPI/System/Network/interfaces/<ID>
network interface
Get IP address of one network GET or PUT /ISAPI/System/Network/interfaces/<ID>/ipAddress
interface
Get connection configuration GET /ISAPI/System/Network/interfaces/<ID>/link/capabilities
capability of a specific network
interface
Get or set connection GET or PUT /ISAPI/System/Network/interfaces/<ID>/link
parameters of a specific
network interface
145
Intelligent Security API (General) Developer Guide
PoE
Function Request URI
Get configuration capability of GET /ISAPI/System/Network/POE/capabilities?format=json
PoE port
Get or set PoE port parameters GET or PUT /ISAPI/System/Network/POE?format=json
UPnP
Function Request URI
Get the UPnP configuration GET /ISAPI/System/Network/UPnP/capabilities
capability
Get or set UPnP parameters GET or PUT /ISAPI/System/Network/UPnP
Get or set parameters of all GET or PUT /ISAPI/System/Network/UPnP/ports
UPnP ports
Get or set parameters of one GET or PUT /ISAPI/System/Network/UPnP/ports/<ID>
UPnP port
Get mapping statuses of all GET /ISAPI/System/Network/UPnP/ports/status
UPnP ports
Get mapping status of one GET /ISAPI/System/Network/UPnP/ports/<ID>/status
UPnP port
15.2.4 Wireless Network
Wi-Fi
Function Request URI
Get Wi-Fi configuration capability GET /ISAPI/System/Network/interfaces/<ID>/
wireless/capabilities
Get or set Wi-Fi parameters of one network GET or PUT /ISAPI/System/Network/
interface interfaces/<ID>/wireless
Get wireless connection status GET /ISAPI/System/Network/interfaces/<ID>/
wireless/connectStatus
WPS (Wi-Fi Protected Get WPS configuration GET /ISAPI/System/Network/WPS/capabilities
Setup) capability
146
Intelligent Security API (General) Developer Guide
Function Request URI
Get or set WPS GET or PUT /ISAPI/System/Network/
parameters of a interfaces/<ID>/WPS
specific network
interface
Set parameters of PBC PUT /ISAPI/System/Network/interfaces/
(Push Button <ID>/WPS/AutoConnect
Configuration)
automatic connection
of WPS
Get or set parameters GET or PUT /ISAPI/System/Network/
of PIN (Personal interfaces/<ID>/WPS/ApPinCode
Identification Number)
code of wireless access
point
Get or set PIN GET or PUT /ISAPI/System/Network/
(Personal Identification interfaces/<ID>/WPS/devicePinCode
Number) code of WPS
of device
Update PIN (Personal PUT /ISAPI/System/Network/interfaces/
Identification Number) <ID>/WPS/devicePinCodeUpdate
code of WPS of device
Wireless Hotspot
Function Request URI
Get configuration capability of GET /ISAPI/System/Network/interfaces/<ID>/wirelessServer/
wireless hotspot capabilities
Get or set wireless hotspot GET or PUT /ISAPI/System/Network/interfaces/<ID>/
parameters wirelessServer
Get list of devices connected to GET /ISAPI/System/Network/interfaces/<ID>/wirelessServer/
hotspot accessDeviceList
Get information of a device GET /ISAPI/System/Network/interfaces/<ID>/wireless/
connected to hotspot accessDeviceList/<ID>
Get capability of devices GET /ISAPI/System/Network/interfaces/<ID>/wireless/
connected to hotspot accessDeviceList/capabilities
147
Intelligent Security API (General) Developer Guide
Function Request URI
Get hotspot list GET /ISAPI/System/Network/interfaces/<ID>/wireless/
accessPointList
Get one hotspot information GET /ISAPI/System/Network/interfaces/<ID>/wireless/
accessPointList/<ID>
Wireless Dial
Function Request URI
Get configuration capability of GET /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/
wireless dial dial/capabilities
Get or set wireless dial GET or PUT /ISAPI/System/Network/WirelessDial/Interfaces/
parameters <ID>/dial
Get wireless dial schedule GET /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/
schedule
Network Keepalive
Function Request URI
Get network keepalive GET /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/
capability keepAlive/capabilities?format=json
Get or set network keepalive GET or PUT /ISAPI/System/Network/WirelessDial/Interfaces/
parameters <ID>/keepAlive?format=json .
Test network keepalive POST /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/
configuration keepAlive/test?format=json
Network Traffic Monitoring
Function Request URI
Get network traffic monitoring GET /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/
capability trafficMonitor/capabilities?format=json ;
Get or set network traffic GET or PUT /ISAPI/System/Network/WirelessDial/Interfaces/
monitoring parameters <ID>/trafficMonitor?format=json .
Get network traffic monitoring GET /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/
status trafficMonitor/status?format=json .
Network traffic pre-alarm to be Alarm Details:
uploaded JSON_EventNotificationAlert_NetworkTrafficPrealarmMsg
148
Intelligent Security API (General) Developer Guide
SMS Configuration
Function Request URI
Get dial information GET /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/
configuration capability messageConfig/messageConfigCap ):
Get or set parameters of dial GET or PUT /ISAPI/System/Network/WirelessDial/Interfaces/
information configuration <ID>/messageConfig
Get all dial allowlist GET /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/
configuration messageConfig/WhiteList/<ID> )
Get or set specific dial allowlist GET or PUT /ISAPI/System/Network/WirelessDial/Interfaces/
configuration <ID>/messageConfig/WhiteList
15.2.5 Network Service
Software Service
Function Request URI
Get configuration capability of GET /ISAPI/System/Software/channels/<ID>/capabilities
software service
Get or set parameters of GET or PUT /ISAPI/System/Software/channels/<ID>
software service
Session Initialization Protocol (SIP) Server
Function Request URI
Get configuration capability of GET /ISAPI/System/Network/SIP/<ID>/capabilities
a specific SIP server
Get configuration capability of GET /ISAPI/System/Network/SIP/capabilities
all SIP servers
Get or set parameters of all SIP GET or PUT /ISAPI/System/Network/SIP
servers
Get or set parameters of one GET or PUT /ISAPI/System/Network/SIP/<ID>
SIP server
Get configuration capability of GET /ISAPI/System/Network/SIP/<ID>/SIPInfo/capabilities
SIP server
Get or set information of one GET or PUT /ISAPI/System/Network/SIP/<ID>/SIPInfo
SIP server
149
Intelligent Security API (General) Developer Guide
Function Request URI
Get or set information of all SIP GET or PUT /ISAPI/System/Network/SIP/<ID>/SIPInfo/
servers multiInfo
Get configuration capability of GET /ISAPI/System/Network/SIP/voiceTalkCtrl/capabilities?
SIP intercom format=json
Get or set SIP intercom GET or PUT /ISAPI/System/Network/SIP/voiceTalkCtrl/<ID>?
parameters format=json
File Transfer Protocol (FTP) Server
Function Request URI
Get configuration capability of GET /ISAPI/System/Network/ftp/capabilities
FTP server
Get or set parameters of one GET or PUT /ISAPI/System/Network/ftp/<ID>
FTP server
Get or set parameters of all FTP GET or PUT /ISAPI/System/Network/ftp
servers
Perform FTP server test POST /ISAPI/System/Network/ftp/test
Dynamic Domain Name Server (DDNS)
Function Request URI
Get DDNS configuration GET /ISAPI/System/Network/DDNS/capabilities
capability
Get or set parameters of all GET or PUT /ISAPI/System/Network/DDNS
DDNSs
Get or set parameters of one GET or PUT /ISAPI/System/Network/DDNS/<ID>
DDNS
Get configuration capability of GET /ISAPI/System/Network/interfaces/<ID>/
dynamic domain name dynamicHostName/capabilities?format=json
Get or set dynamic domain GET or PUT /ISAPI/System/Network/interfaces/<ID>/
name dynamicHostName?format=json
Note
To check if setting dynamic domain name is supported, you can call the GET /ISAPI/System/
Network/capabilities to get the network capability ( XML_NetworkCap ). If supports, the node
<isSupportDynamicHostName> is returned and its value is "true".
150
Intelligent Security API (General) Developer Guide
Log Server
Function Request URI
Get log server configuration GET /ISAPI/System/logServer/capabilities
capability
Get or set log server GET or PUT /ISAPI/System/logServer
parameters
Perform log server text POST /ISAPI/System/logServer/test
Static Routing
Function Request URI
Get, set, or delete static routing GET, PUT, or DELETE /ISAPI/System/Network/StaticRoute
parameters
15.3 Time Settings
This chapter lists the request URIs for device time configuration, including setting time, setting time
zone, and so on.
Function Request URI
Get time configuration GET /ISAPI/System/time/capabilities
capability
Note
To check if time configuration is supported, you can call the
GET /ISAPI/System/capabilities to get the device capability
( XML_DeviceCap ). If supports, the node <isSupportTimeCap>
will be returned.
Get or set time type GET or PUT /ISAPI/System/time/timeType?format=json
Get or set time parameters GET or PUT /ISAPI/System/time
Get or set time zone GET or PUT /ISAPI/System/time/timeZone
Get or set local time GET or PUT /ISAPI/System/time/localTime
parameters
NTP Server • Get NTP server capability: GET /ISAPI/System/time/
ntpServers/capabilities
• Get, set, or delete multiple NTP servers: GET, PUT, or DELETE /
ISAPI/System/time/ntpServers
151
Intelligent Security API (General) Developer Guide
Function Request URI
• Get set, or delete one NTP server: GET, PUT, or DELETE /ISAPI/
System/time/ntpServers/<ID>
• Add one NTP server: POST /ISAPI/System/time/ntpServers
• Execute NTP server test: POST /ISAPI/System/time/
ntpServers/test
15.4 System Diagnose
This chapter lists the request URIs for getting system diagnose information and the exporting
status.
Function Request URI
Get diagnose information GET /ISAPI/System/diagnosedData
Get process of exporting GET /ISAPI/System/diagnosedData/exportStatus
diagnose information
Note
To check if getting disgnose information is supported, you can
call /ISAPI/System/capabilities by GET method to get the
device capability ( XML_DeviceCap >. If supports, the node
<isSupportDiagnosedData> will be returned.
15.5 Data Replenishment
In the condition of disconnection between platform and NVR, the NVR saves the data of people
counting, heat map, temperature, and vehicle. When the connection is resumed, the platform can
get the specified data from NVR during disconnection period.
People Counting Data Replenishment
Function Request URI
Get data replenishment GET /ISAPI/System/Video/inputs/channels/counting/
capability of people counting collection/capabilities?format=json
Note
Before getting people counting data replenishment capability,
you should call /ISAPI/System/Video/capabilities by GET
method to check whether this function is supported by the
152
Intelligent Security API (General) Developer Guide
Function Request URI
device via the node <isSupportCountingCollection> in
XML_VideoCap .
Perform data replenishment of POST /ISAPI/System/Video/inputs/channels/counting/
people counting collection?format=json
Heat Map Data Replenishment
Function Request URI
Get data replenishment GET /ISAPI/System/Video/inputs/channels/heatMap/
capability of heat map collection/capabilities?format=json
Note
Before getting people counting data replenishment capability,
you should call /ISAPI/System/Video/capabilities by GET
method to check whether this function is supported by the
device via the node <isSupportHeatmapCollection> in
XML_VideoCap .
Perform data replenishment of POST /ISAPI/System/Video/inputs/channels/heatMap/
heat map collection?format=json
Temperature Data Replenishment
Function Request URI
Get data replenishment GET /ISAPI/Thermal/temperature/collection/capabilities?
capability of temperature format=json
Note
Before getting temperature data replenishment capability, you
should call /ISAPI/Thermal/capabilities by GET method to
check whether this function is supported by the device via the
node <isSupportTemperatureCollection> in XML_ThermalCap .
Perform temperature data POST /ISAPI/Thermal/temperature/collection?format=json
replenishment
153
Intelligent Security API (General) Developer Guide
Vehicle Detection Data Replenishment
Function Request URI
Get intelligent management GET /ISAPI/SDT/Management/IntelligentSearch/capabilities?
capability format=json
Perform vehicle detection data POST /ISAPI/SDT/Management/IntelligentSearch?format=json
replenishment
Note
Before searching for vehicle detection data, you should check
whether the device supports this function. If it supports, the
node <isSupportIntelligentSearch> will be returned in the
intelligent management capability
JSON_Cap_IntelliManagement (call /ISAPI/SDT/Management/
capabilities?format=json by GET method to get) and its value is
"true".
154
Intelligent Security API (General) Developer Guide
Appendix A. Request URIs
A.1 /ISAPI/AUXInfo
A.1.1 /ISAPI/AUXInfo/attributes/Channels
Get the attributes of channels.
Request URI Definition
Table A-1 GET /ISAPI/AUXInfo/attributes/Channels
Method GET
Description Get the attributes of channels.
Query None.
Request None.
Response XML_ChannelInfoList
A.1.2 /ISAPI/AUXInfo/attributes/Channels/<ID>
Get the attributes of a specific channel according to channel ID.
Request URI Definition
Table A-2 GET /ISAPI/AUXInfo/attributes/Channels/<ID>
Method GET
Description Get the attributes of a specific channel according to channel ID.
Query None.
Request None.
Response XML_ChannelInfo
Remarks
The <ID> in the request URI is the channel ID.
155
Intelligent Security API (General) Developer Guide
A.2 /ISAPI/ContentMgmt
A.2.1 /ISAPI/ContentMgmt/capabilities
Get storage capability.
Request URI Definition
Table A-3 GET /ISAPI/ContentMgmt/capabilities
Method GET
Description Get storage capability.
Query None.
Request None.
Response Succeeded: XML_RacmCap
Failed: XML_ResponseStatus
A.2.2 /ISAPI/ContentMgmt/download
Download the file via plug-in.
Request URI Definition
Table A-4 POST /ISAPI/ContentMgmt/download
Method POST
Description Download the file.
Query None.
Request XML_downloadRequest
Response File
A.2.3 /ISAPI/ContentMgmt/download/capabilities
Get the downloading capability sets.
156
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-5 GET /ISAPI/ContentMgmt/download/capabilities
Method GET
Description Get the downloading capability sets.
Query None.
Request None.
Response Succeeded: XML_DownloadAbility
Failed: XML_ResponseStatus
A.2.4 /ISAPI/ContentMgmt/download/toUSB/<taskId>/progress?format=json
Get the progress of exporting files to devices via USB.
Request URI Definition
Table A-6 GET /ISAPI/ContentMgmt/download/toUSB/<taskId>/progress?format=json
Method GET
Description Get the progress of exporting files to devices via USB.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_ProgressInfo
Failed: JSON_ResponseStatus
Remarks
The <taskId> in the request URI refers to the task ID, and it is returned in the message
JSON_ExporttoUSB_TaskInfo after calling the request URI: POST /ISAPI/ContentMgmt/download/
toUSB?format=json .
A.2.5 /ISAPI/ContentMgmt/download/toUSB/capabilities?format=json
Get the capability of exporting files to devices via USB.
157
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-7 GET /ISAPI/ContentMgmt/download/toUSB/capabilities?format=json
Method GET
Description Get the capability of exporting files to devices via USB.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_Cap_ExportInfo
Failed: JSON_ResponseStatus
A.2.6 /ISAPI/ContentMgmt/download/toUSB?format=json
Export files to devices via USB.
Request URI Definition
Table A-8 POST /ISAPI/ContentMgmt/download/toUSB?format=json
Method POST
Description Export files to devices via USB.
Query format: determine the format of request or response message.
Request JSON_ExportInfo
Response Succeeded: JSON_ExporttoUSB_TaskInfo
Failed: JSON_ResponseStatus
A.2.7 /ISAPI/ContentMgmt/InputProxy/channels
Operations about management of all digital channels.
Request URI Definition
Table A-9 GET /ISAPI/ContentMgmt/InputProxy/channels
Method GET
Description Get parameters of all digital channels.
Query None.
158
Intelligent Security API (General) Developer Guide
Request None.
Response XML_InputProxyChannelList
Table A-10 PUT /ISAPI/ContentMgmt/InputProxy/channels
Method PUT
Description Set parameters of all digital channels.
Query None.
Request XML_InputProxyChannelList
Response XML_ResponseStatus
Table A-11 POST /ISAPI/ContentMgmt/InputProxy/channels
Method POST
Description Add a digital channel.
Query None.
Request XML_InputProxyChannel
Response XML_ResponseStatus
A.2.8 /ISAPI/ContentMgmt/InputProxy/channels/<ID>
Operations about management of a specific digital channel.
Request URI Definition
Table A-12 GET /ISAPI/ContentMgmt/InputProxy/channels/<ID>
Method GET
Description Get parameter of a specific digital channel.
Query None.
Request None.
Response Succeeded: XML_InputProxyChannel
Failed: XML_ResponseStatus
Table A-13 PUT /ISAPI/ContentMgmt/InputProxy/channels/<ID>
Method PUT
Description Set parameters of a specific digital channel.
Query None.
159
Intelligent Security API (General) Developer Guide
Request XML_InputProxyChannel
Response XML_ResponseStatus
Table A-14 DELETE /ISAPI/ContentMgmt/InputProxy/channels/<ID>
Method DELETE
Description Delete a specific digital channel.
Query None.
Request None.
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the digital channel ID.
A.2.9 /ISAPI/ContentMgmt/InputProxy/channels/<ID>/capabilities
Get management capability of a specific digital channel.
Request URI Definition
Table A-15 GET /ISAPI/ContentMgmt/InputProxy/channels/<ID>/capabilities
Method GET
Description Get management capability of a specific digital channel.
Query None.
Request None.
Response Succeeded: XML_Cap_InputProxyChannel
Failed: XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the digital channel ID.
A.2.10 /ISAPI/ContentMgmt/InputProxy/channels/<ID>/chanCtrl
Get or set control parameters of a specific channel.
160
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-16 GET /ISAPI/ContentMgmt/InputProxy/channels/<ID>/chanCtrl
Method GET
Description Get control parameters of a specific channel.
Query None.
Request None.
Response Succeeded: XML_ChanCtrl
Failed: XML_ResponseStatus
Table A-17 PUT /ISAPI/ContentMgmt/InputProxy/channels/<ID>/chanCtrl
Method PUT
Description Set control parameters of a specific channel.
Query None.
Request XML_ChanCtrl
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the channel ID.
A.2.11 /ISAPI/ContentMgmt/InputProxy/channels/<ID>/deviceInfo
Get or set the device parameters of a digital channel.
Request URI Definition
Table A-18 GET /ISAPI/ContentMgmt/InputProxy/channels/<ID>/deviceInfo
Method GET
Description Get the device parameters of a digital channel.
Query None.
Request None.
Response Succeeded: XML_DeviceInfo
Failed: XML_ResponseStatus
161
Intelligent Security API (General) Developer Guide
Table A-19 PUT /ISAPI/ContentMgmt/InputProxy/channels/<ID>/deviceInfo
Method PUT
Description Set the device parameters of a digital channel.
Query None.
Request XML_DeviceInfo
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to channel ID.
A.2.12 /ISAPI/ContentMgmt/InputProxy/channels/<ID>/portMapParam
Check if port mapping is required for connecting to camera.
Request URI Definition
Table A-20 POST /ISAPI/ContentMgmt/InputProxy/channels/<ID>/portMapParam
Method POST
Description Check if port mapping is required for connecting to camera according
to the IP address of terminal.
Query None.
Request XML_PortMapParam
Response Succeeded: XML_PortMapParamRet
Failed: XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the channel ID.
A.2.13 /ISAPI/ContentMgmt/InputProxy/channels/<ID>/reboot
Reboot a specific channel.
Request URI Definition
Table A-21 GET /ISAPI/ContentMgmt/InputProxy/channels/<ID>/reboot
Method GET
Description Reboot a specific channel.
162
Intelligent Security API (General) Developer Guide
Query None.
Request None.
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the channel ID.
A.2.14 /ISAPI/ContentMgmt/InputProxy/channels/<ID>/status
Get status of a specific digital channel.
Request URI Definition
Table A-22 GET /ISAPI/ContentMgmt/InputProxy/channels/<ID>/status
Method GET
Description Get status of a specific digital channel.
Query None.
Request None.
Response XML_InputProxyChannelStatus
Remarks
The <ID> in the request URI refers to the digital channel ID.
A.2.15 /ISAPI/ContentMgmt/InputProxy/channels/<ID>/video/overlays
Get or set text overlay parameters of a specific video digital input channel.
Request URI Definition
Table A-23 GET /ISAPI/ContentMgmt/InputProxy/channels/<ID>/video/overlays
Method GET
Description Get text overlay parameters of a specific video digital input channel.
Query None.
Request None.
Response Succeeded: XML_Channel_VideoOverlay
Failed: XML_ResponseStatus
163
Intelligent Security API (General) Developer Guide
Table A-24 PUT /ISAPI/ContentMgmt/InputProxy/channels/<ID>/video/overlays
Method PUT
Description Set text overlay parameters of a specific video digital input channel.
Query None.
Request XML_Channel_VideoOverlay
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the channel No.
A.2.16 /ISAPI/ContentMgmt/InputProxy/channels/<ID>/video/overlays/
capabilities
Get the text overlay configuration capability of a specific video digital input channel.
Request URI Definition
Table A-25 GET /ISAPI/ContentMgmt/InputProxy/channels/<ID>/video/overlays/capabilities
Method GET
Description Get the text overlay configuration capability of a specific video digital
input channel.
Query None.
Request None.
Response Succeeded: XML_ChannelCap_VideoOverlay
Failed: XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the channel No.
A.2.17 /ISAPI/ContentMgmt/InputProxy/channels/activate
Activate the network devices.
164
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-26 PUT /ISAPI/ContentMgmt/InputProxy/channels/activate
Method PUT
Description Activate the network devices.
Query None
Request XML_VideoSourceActivation
Response XML_ResponseStatus
A.2.18 /ISAPI/ContentMgmt/InputProxy/channels/activate/capabilities
Get capability of activating network devices.
Request URI Definition
Table A-27 GET /ISAPI/ContentMgmt/InputProxy/channels/activate/capabilities
Method GET
Description Get capability of activating network devices.
Query None
Request None.
Response Succeeded: XML_VideoSourceActivationCapability
Failed: XML_ResponseStatus
A.2.19 /ISAPI/ContentMgmt/InputProxy/channels/capabilities
Get management capability of all digital channels.
Request URI Definition
Table A-28 GET /ISAPI/ContentMgmt/InputProxy/channels/capabilities
Method GET
Description Get management capability of all digital channels.
Query None.
Request None.
Response XML_Cap_InputProxyChannelListCap
165
Intelligent Security API (General) Developer Guide
A.2.20 /ISAPI/ContentMgmt/InputProxy/channels/status
Get status of all digital channels.
Request URI Definition
Table A-29 GET /ISAPI/ContentMgmt/InputProxy/channels/status
Method GET
Description Get status of all digital channels.
Query None.
Request None.
Response XML_InputProxyChannelStatusList
A.2.21 /ISAPI/ContentMgmt/InputProxy/deviceInfo
Get device parameters of all digital channels.
Request URI Definition
Table A-30 POST /ISAPI/ContentMgmt/InputProxy/deviceInfo
Method POST
Description Get device parameters of all digital channels.
Query None.
Request XML_ProxyDevicesInfoCondition
Response Succeeded: XML_ProxyDevicesInfoResult
Failed: XML_ResponseStatus
A.2.22 /ISAPI/ContentMgmt/InputProxy/search
Search for network cameras in the LAN (Local Area Network) that can be connected.
Request URI Definition
Table A-31 GET /ISAPI/ContentMgmt/InputProxy/search
Method GET
Description Search for network cameras in the LAN (Local Area Network) that can
be connected.
166
Intelligent Security API (General) Developer Guide
Query None.
Request None.
Response Succeeded: XML_VideoSourceList
Failed: XML_ResponseStatus
A.2.23 /ISAPI/ContentMgmt/InputProxy/sourceCapability
Get supported number of digital channels.
Request URI Definition
Table A-32 POST /ISAPI/ContentMgmt/InputProxy/sourceCapability
Method POST
Description Get supported number of digital channels.
Query None.
Request XML_sourceDescriptor
Response XML_sourceCapability
A.2.24 /ISAPI/ContentMgmt/IOProxy/inputs
Operations about the alarm input configuration of all digital channels.
Request URI Definition
Table A-33 GET /ISAPI/ContentMgmt/IOProxy/inputs
Method GET
Description Get the alarm input parameters of all digital channels.
Query None.
Request None.
Response Succeeded: XML_IOProxyInputPortList
Failed: XML_ResponseStatus
Table A-34 PUT /ISAPI/ContentMgmt/IOProxy/inputs
Method PUT
Description Set the alarm input parameters of all digital channels.
Query None.
167
Intelligent Security API (General) Developer Guide
Request XML_IOProxyInputPortList
Response XML_ResponseStatus
Table A-35 POST /ISAPI/ContentMgmt/IOProxy/inputs
Method POST
Description Add the alarm input configuration of a specific digital channel.
Query None.
Request XML_IOProxyInputPort
Response XML_ResponseStatus
A.2.25 /ISAPI/ContentMgmt/IOProxy/inputs/<ID>
Operations about the alarm input configuration of a specific digital channel.
Request URI Definition
Table A-36 GET /ISAPI/ContentMgmt/IOProxy/inputs/<ID>
Method GET
Description Get the alarm input parameters of a specific digital channel.
Query None.
Request None.
Response Succeeded: XML_IOProxyInputPort
Failed: XML_ResponseStatus
Table A-37 PUT /ISAPI/ContentMgmt/IOProxy/inputs/<ID>
Method PUT
Description Set the alarm input parameters of a specific digital channel.
Query None.
Request XML_IOProxyInputPort
Response XML_ResponseStatus
Table A-38 DELETE /ISAPI/ContentMgmt/IOProxy/inputs/<ID>
Method DELETE
Description Delete the alarm input configuration of a specific digital channel.
Query None.
168
Intelligent Security API (General) Developer Guide
Request None.
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the digital channel No.
A.2.26 /ISAPI/ContentMgmt/IOProxy/inputs/<ID>/status
Get the alarm input status of a specific digital channel.
Request URI Definition
Table A-39 GET /ISAPI/ContentMgmt/IOProxy/inputs/<ID>/status
Method GET
Description Get the alarm input status of a specific digital channel.
Query None.
Request None.
Response Succeeded: XML_IOPortStatus
Failed: XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the digital channel No.
A.2.27 /ISAPI/ContentMgmt/IOProxy/outputs
Operations about the alarm output configuration of all digital channels.
Request URI Definition
Table A-40 GET /ISAPI/ContentMgmt/IOProxy/outputs
Method GET
Description Get the alarm output parameters of all digital channels.
Query None.
Request None.
Response Succeeded: XML_IOProxyOutputPortList
Failed: XML_ResponseStatus
169
Intelligent Security API (General) Developer Guide
Table A-41 PUT /ISAPI/ContentMgmt/IOProxy/outputs
Method PUT
Description Set the alarm output parameters of all digital channels.
Query None.
Request XML_IOProxyOutputPortList
Response XML_ResponseStatus
Table A-42 POST /ISAPI/ContentMgmt/IOProxy/outputs
Method POST
Description Add the alarm output configuration of a specific digital channel.
Query None.
Request XML_IOProxyOutputPort
Response XML_ResponseStatus
A.2.28 /ISAPI/ContentMgmt/IOProxy/outputs/<ID>
Operations about the alarm output configuration of a specific digital channel.
Request URI Definition
Table A-43 GET /ISAPI/ContentMgmt/IOProxy/outputs/<ID>
Method GET
Description Get the alarm output parameters of a specific digital channel.
Query None.
Request None.
Response Succeeded: XML_IOProxyOutputPort
Failed: XML_ResponseStatus
Table A-44 PUT /ISAPI/ContentMgmt/IOProxy/outputs/<ID>
Method PUT
Description Set the alarm output parameters of a specific digital channel.
Query None.
Request XML_IOProxyOutputPort
Response XML_ResponseStatus
170
Intelligent Security API (General) Developer Guide
Table A-45 DELETE /ISAPI/ContentMgmt/IOProxy/outputs/<ID>
Method DELETE
Description Delete the alarm output configuration of a specific digital channel.
Query None.
Request None.
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the digital channel No.
A.2.29 /ISAPI/ContentMgmt/IOProxy/outputs/<ID>/status
Get the alarm output status of a specific digital channel.
Request URI Definition
Table A-46 GET /ISAPI/ContentMgmt/IOProxy/outputs/<ID>/status
Method GET
Description Get the alarm output status of a specific digital channel.
Query None.
Request None.
Response Succeeded: XML_IOPortStatus
Failed: XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the digital channel No.
A.2.30 /ISAPI/ContentMgmt/IOProxy/outputs/<ID>/trigger
Trigger alarm output of a specific digital channel.
Request URI Definition
Table A-47 PUT /ISAPI/ContentMgmt/IOProxy/outputs/<ID>/trigger
Method PUT
Description Trigger alarm output of a specific digital channel.
Query None.
171
Intelligent Security API (General) Developer Guide
Request XML_IOPortData
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the digital channel No.
A.2.31 /ISAPI/ContentMgmt/logConfig
Get or set log parameters.
Request URI Definition
Table A-48 GET /ISAPI/ContentMgmt/logConfig
Method GET
Description Get log parameters.
Query None.
Request None.
Response Succeeded: XML_LogConfig
Failed: XML_ResponseStatus
Table A-49 PUT /ISAPI/ContentMgmt/logConfig
Method PUT
Description Set log parameters.
Query None.
Request XML_LogConfig
Response XML_ResponseStatus
A.2.32 /ISAPI/ContentMgmt/logConfig/capabilities
Get log configuration capability.
Request URI Definition
Table A-50 GET /ISAPI/ContentMgmt/logConfig/capabilities
Method GET
Description Get log configuration capability.
Query None.
172
Intelligent Security API (General) Developer Guide
Request None.
Response Succeeded: XML_Cap_LogConfig
Failed: XML_ResponseStatus
A.2.33 /ISAPI/ContentMgmt/logSearch
Search for log files.
Request URI Definition
Table A-51 POST /ISAPI/ContentMgmt/logSearch
Method POST
Description Search for log files.
Query None.
Request XML_Log_CMSearchDescription
Response Succeeded: XML_Log_CMSearchResult
Failed: XML_ResponseStatus
A.2.34 /ISAPI/ContentMgmt/logSearch?format=json
Search log information.
Request URI Definition
Table A-52 POST /ISAPI/ContentMgmt/logSearch?format=json
Method POST
Description Search log information.
Query format: determine the format of request or response message.
Request JSON_SearchCondition
Response Succeeded: JSON_MatchList
Failed: JSON_ResponseStatus
A.2.35 /ISAPI/ContentMgmt/logSearch/dataPackage
Export device log files.
173
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-53 POST /ISAPI/ContentMgmt/logSearch/dataPackage
Method POST
Description Export device log files.
Query None.
Request XML_CMSearchDataPackage
Response Succeeded: XML_CMSearchDataPackageResult
Failed: XML_ResponseStatus
A.2.36 /ISAPI/ContentMgmt/PTZCtrlProxy/capabilities
Get PTZ control capability of digital channels.
Request URI Definition
Table A-54 /ISAPI/ContentMgmt/PTZCtrlProxy/capabilities
Method GET
Description Get PTZ control capability of digital channels.
Query None
Request None
Response Succeeded: XML_PTZCtrlCap
Failed: XML_ResponseStatus
A.2.37 /ISAPI/ContentMgmt/PTZCtrlProxy/channels
Get or set parameters of all digital PTZ channels.
Request URI Definition
Table A-55 GET /ISAPI/ContentMgmt/PTZCtrlProxy/channels
Method GET
Description Get parameters of all digital PTZ channels.
Query None
174
Intelligent Security API (General) Developer Guide
Request None
Response Succeeded: XML_PTZChannelList
Failed: XML_ResponseStatus
Table A-56 PUT /ISAPI/ContentMgmt/PTZCtrlProxy/channels
Method PUT
Description Set parameters of all digital PTZ channels.
Query None
Request XML_PTZChannelList
Response XML_ResponseStatus
A.2.38 /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>
Get or set parameters of a digital PTZ channel.
Request URI Definition
Table A-57 GET /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>
Method GET
Description Get parameters of a digital PTZ channel.
Query None
Request None
Response Succeeded: XML_PTZChannel
Failed: XML_ResponseStatus
Table A-58 PUT /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>
Method PUT
Description Set parameters of a digital PTZ channel.
Query None
Request XML_PTZChannel
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the digital PTZ channel ID.
175
Intelligent Security API (General) Developer Guide
A.2.39 /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/autoPan
Control the fans.
Request URI Definition
Table A-59 PUT /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/autoPan
Method PUT
Description Control the fans.
Query None
Request XML_autoPanData
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the digital channel No.
A.2.40 /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/capabilities
Get the capability of a digital PTZ channel.
Request URI Definition
Table A-60 GET /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/capabilities
Method GET
Description Get the capability of a digital PTZ channel.
Query None
Request None
Response Succeeded: XML_PTZChanelCap
Failed: XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the digital channel No.
A.2.41 /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/continuous
Manually control PTZ.
176
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-61 PUT /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/continuous
Method PUT
Description Manually control PTZ.
Query None
Request XML_Manual_PTZData
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the channel No.
A.2.42 /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/momentary
Perform scheduled PTZ control via digital channel.
Request URI Definition
Table A-62 PUT /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/momentary
Method PUT
Description Perform scheduled PTZ control via digital channel.
Query None
Request XML_Scheduled_PTZData
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the digital channel No.
A.2.43 /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/onepushfoucs/start
Perform one-touch focus via a digital PTZ channel.
Request URI Definition
Table A-63 PUT /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/onepushfoucs/start
Method PUT
Description Perform one-touch focus via a digital PTZ channel.
177
Intelligent Security API (General) Developer Guide
Query None
Request None
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the digital channel No.
A.2.44 /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/patrols
Get, set, or delete all patrols of a digital PTZ channel, or add a patrol.
Request URI Definition
Table A-64 GET /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/patrols
Method GET
Description Get all patrols of a digital PTZ channel.
Query None
Request None
Response Succeeded: XML_PTZPatrolList
Failed: XML_ResponseStatus
Table A-65 PUT /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/patrols
Method GET
Description Set all patrols of a digital PTZ channel.
Query None
Request XML_PTZPatrolList
Response XML_ResponseStatus
Table A-66 POST /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/patrols
Method POST
Description Add a patrol.
Query None
Request XML_PTZPatrol
Response XML_ResponseStatus
178
Intelligent Security API (General) Developer Guide
Table A-67 DELETE /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/patrols
Method DELETE
Description Delete all patrols of a digital PTZ channel.
Query None
Request None
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the digital channel No.
A.2.45 /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/patrols/<ID>
Get, set, or delete a patrol of a digital PTZ channel.
Request URI Definition
Table A-68 GET /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/patrols/<ID>
Method GET
Description Get a patrol of a digital PTZ channel.
Query None
Request None
Response Succeeded: XML_PTZPatrol
Failed: XML_ResponseStatus
Table A-69 PUT /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/patrols/<ID>
Method PUT
Description Set a patrol of a digital PTZ channel.
Query None
Request XML_PTZPatrol
Response XML_ResponseStatus
Table A-70 DELETE /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/patrols/<ID>
Method DELETE
Description Delete a patrol of a digital PTZ channel.
Query None
179
Intelligent Security API (General) Developer Guide
Request None
Response XML_ResponseStatus
Remarks
The first <ID> in the request URI refers to the digital channel No., and the second <ID> is the patrol
No.
A.2.46 /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/patrols/<ID>/pause
Pause calling a patrol of a digital PTZ channel.
Request URI Definition
Table A-71 PUT /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/patrols/<ID>/pause
Method PUT
Description Pause calling a patrol of a digital PTZ channel.
Query None
Request None
Response XML_ResponseStatus
Remarks
The first <ID> in the request URI refers to the digital channel No., and the second <ID> is the patrol
No.
A.2.47 /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/patrols/<ID>/start
Start calling a patrol of a digital PTZ channel.
Request URI Definition
Table A-72 PUT /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/patrols/<ID>/start
Method PUT
Description Start calling a patrol of a digital PTZ channel.
Query None
Request None
Response XML_ResponseStatus
180
Intelligent Security API (General) Developer Guide
Remarks
The first <ID> in the request URI refers to the digital channel No., and the second <ID> is the patrol
No.
A.2.48 /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/patrols/<ID>/status
Get a patrol's status of a digital PTZ channel.
Request URI Definition
Table A-73 GET /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/patrols/<ID>/status
Method GET
Description Get a patrol's status of a digital PTZ channel.
Query None
Request None
Response Succeeded: XML_PTZPatrolStatus
Failed: XML_ResponseStatus
Remarks
The first <ID> in the request URI refers to the digital channel No., and the second <ID> is the patrol
No.
A.2.49 /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/patrols/<ID>/stop
Stop calling a patrol of a digital PTZ channel.
Request URI Definition
Table A-74 PUT /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/patrols/<ID>/stop
Method PUT
Description Stop calling a patrol of a digital PTZ channel.
Query None
Request None
Response XML_ResponseStatus
Remarks
The first <ID> in the request URI refers to the digital channel No., and the second <ID> is the patrol
No.
181
Intelligent Security API (General) Developer Guide
A.2.50 /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/position3D
Perform 3D positioning.
Request URI Definition
Table A-75 PUT /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/position3D
Method PUT
Description Perform 3D positioning.
Query None
Request XML_Position3D
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the digital channel No.
A.2.51 /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/presets
Get, set or delete presets of a digital PTZ channel, or add a preset.
Request URI Definition
Table A-76 GET /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/presets
Method GET
Description Get presets of a digital PTZ channel.
Query None
Request None
Response Succeeded: XML_PTZPresetList
Failed: XML_ResponseStatus
Table A-77 PUT /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/presets
Method PUT
Description Set presets of a digital PTZ channel.
Query None
Request XML_PTZPresetList
Response XML_ResponseStatus
182
Intelligent Security API (General) Developer Guide
Table A-78 POST /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/presets
Method POST
Description Add a preset to a digital PTZ channel.
Query None
Request XML_PTZPreset
Response XML_ResponseStatus
Table A-79 DELETE /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/presets
Method DELETE
Description Delete presets of a digital PTZ channel.
Query None
Request None
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the digital channel No.
A.2.52 /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/presets/<ID>
Get, set, or delete a preset of a digital PTZ channel.
Request URI Definition
Table A-80 GET /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/presets/<ID>
Method GET
Description Get a preset of a digital PTZ channel.
Query None
Request None
Response Succeeded: XML_PTZPreset
Failed: XML_ResponseStatus
Table A-81 PUT /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/presets/<ID>
Method PUT
Description Set a preset of a digital PTZ channel.
Query None
183
Intelligent Security API (General) Developer Guide
Request XML_PTZPreset
Response XML_ResponseStatus
Table A-82 DELETE /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/presets/<ID>
Method DELETE
Description Delete a preset of a digital PTZ channel.
Query None
Request None
Response XML_ResponseStatus
Remarks
The first <ID> in the request URI refers to the digital channel No., and the second <ID> indicates
the preset No.
A.2.53 /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/presets/<ID>/goto
Call a preset of a digital PTZ channel.
Request URI Definition
Table A-83 PUT /ISAPI/ContentMgmt/PTZCtrlProxy/channels/<ID>/presets/<ID>/goto
Method PUT
Description Call a preset of a digital PTZ channel.
Query None
Request None
Response XML_ResponseStatus
Remarks
The first <ID> in the request URI refers to the digital channel No., and the second <ID> indicates
the preset No.
A.2.54 /ISAPI/ContentMgmt/record/control/cleanUp/capabilities?format=json
Get the capability of deleting saved files in a batch.
184
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-84 GET /ISAPI/ContentMgmt/record/control/cleanUp/capabilities?format=json
Method GET
Description Get the capability of deleting saved files in a batch.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_Cap_CleanUpFileList
Failed: JSON_ResponseStatus
A.2.55 /ISAPI/ContentMgmt/record/control/cleanUp?format=json
Delete saved files in a batch.
Request URI Definition
Table A-85 POST /ISAPI/ContentMgmt/record/control/cleanUp?format=json
Method POST
Description Delete saved files in a batch.
Query format: determine the format of request or response message.
Request JSON_CleanUpFileList
Response JSON_ResponseStatus
A.2.56 /ISAPI/ContentMgmt/record/control/locks/capabilities
Get video locking or unlocking capability.
Request URI Definition
Table A-86 GET /ISAPI/ContentMgmt/record/control/locks/capabilities
Method GET
Description Get video locking or unlocking capability.
Query security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
185
Intelligent Security API (General) Developer Guide
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
Request None
Response Succeeded: XML_LockCap
Failed: XML_ResponseStatus
A.2.57 /ISAPI/ContentMgmt/record/control/locks/name
Lock or unlock videos by file name.
Request URI Definition
Table A-87 PUT /ISAPI/ContentMgmt/record/control/locks/name
Method PUT
Description Lock or unlock videos by file name.
Query security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
Request XML_LockByName
Response XML_ResponseStatus
A.2.58 /ISAPI/ContentMgmt/record/control/manual/start/tracks/<ID>
Start manual recording.
Request URI Definition
Table A-88 POST /ISAPI/ContentMgmt/record/control/manual/start/tracks/<ID>
Method POST
Description Start manual recording.
Query None.
186
Intelligent Security API (General) Developer Guide
Request None.
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the recording channel ID.
A.2.59 /ISAPI/ContentMgmt/record/control/manual/stop/tracks/<ID>
Stop manual recording of a specific channel.
Request URI Definition
Table A-89 POST /ISAPI/ContentMgmt/record/control/manual/stop/tracks/<ID>
Method POST
Description Stop manual recording of a specific channel.
Query None.
Request None.
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the recording channel ID.
A.2.60 /ISAPI/ContentMgmt/record/control/manualRefresh/channels/<ID>
Refresh the video mode manually before playback.
Request URI Definition
Table A-90 PUT /ISAPI/ContentMgmt/record/control/manualRefresh/channels/<ID>
Method PUT
Description Refresh the video mode manually before playback.
Query None.
Request None.
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the channel No.
187
Intelligent Security API (General) Developer Guide
A.2.61 /ISAPI/ContentMgmt/record/control/remark/capabilities?format=json
Get capability of adding remarks for videos by video ID.
Request URI Definition
Table A-91 GET /ISAPI/ContentMgmt/record/control/remark/capabilities?format=json
Method GET
Description Get capability of adding remarks for videos by video ID.
Query format: determine the format of request or response message.
Request None
Response Succeeded: JSON_Cap_RemarkList
Failed: XML_ResponseStatus
A.2.62 /ISAPI/ContentMgmt/record/control/remark?format=json
Add remarks for videos by video ID.
Request URI Definition
Table A-92 PUT /ISAPI/ContentMgmt/record/control/remark?format=json
Method PUT
Description Add remarks for videos by video ID.
Query format: determine the format of request or response message.
Request JSON_RemarkList
Response XML_ResponseStatus
A.2.63 /ISAPI/ContentMgmt/record/profile
Get video track type.
Request URI Definition
Table A-93 GET /ISAPI/ContentMgmt/record/profile
Method GET
Description Get video track type.
Query None.
188
Intelligent Security API (General) Developer Guide
Request None.
Response Succeeded: XML_CMSRecordProfile
Failed: XML_ResponseStatus
A.2.64 /ISAPI/ContentMgmt/record/storageMounts
Set recording storage parameters.
Request URI Definition
Table A-94 PUT /ISAPI/ContentMgmt/record/storageMounts
Method PUT
Description Set recording storage parameters, including root directory, size, and
so on.
Query None.
Request XML_MountList
Response XML_ResponseStatus
A.2.65 /ISAPI/ContentMgmt/record/tracks
Operations about recording schedule configuration.
Request URI Definition
Table A-95 GET /ISAPI/ContentMgmt/record/tracks
Method GET
Description Get all recording schedules.
Query None.
Request None.
Response Succeeded: XML_TrackList
Failed: XML_ResponseStatus
Table A-96 PUT /ISAPI/ContentMgmt/record/tracks
Method PUT
Description Set all recording schedules.
Query None.
189
Intelligent Security API (General) Developer Guide
Request XML_TrackList
Response XML_ResponseStatus
Table A-97 POST /ISAPI/ContentMgmt/record/tracks
Method POST
Description Add a recording schedule.
Query None.
Request XML_Track
Response XML_ResponseStatus
A.2.66 /ISAPI/ContentMgmt/record/tracks/<ID>
Operations about a recording schedule.
Request URI Definition
Table A-98 GET /ISAPI/ContentMgmt/record/tracks/<ID>
Method GET
Description Get a recording schedule.
Query None.
Request None.
Response Succeeded: XML_Track
Failed: XML_ResponseStatus
Table A-99 PUT /ISAPI/ContentMgmt/record/tracks/<ID>
Method PUT
Description Set a recording schedule.
Query None.
Request XML_Track
Response XML_ResponseStatus
Table A-100 DELETE /ISAPI/ContentMgmt/record/tracks/<ID>
Method DELETE
Description Delete a recording schedule.
Query None.
190
Intelligent Security API (General) Developer Guide
Request None.
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the recording schedule ID.
A.2.67 /ISAPI/ContentMgmt/record/tracks/<ID>/capabilities
Get the configuration capability of the recording schedule.
Request URI Definition
Table A-101 GET /ISAPI/ContentMgmt/record/tracks/<ID>/capabilities
Method GET
Description Get the configuration capability of the recording schedule.
Query None.
Request None.
Response Succeeded: XML_Cap_Track
Failed: XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the recording schedule ID.
A.2.68 /ISAPI/ContentMgmt/record/tracks/<ID>/dailyDistribution
Search recorded video files by date.
Request URI Definition
Table A-102 POST /ISAPI/ContentMgmt/record/tracks/<ID>/dailyDistribution
Method POST
Description Search recorded video files by date.
Query None.
Request XML_trackDailyParam
Response XML_trackDailyDistribution
Remarks
The <ID> in the request URI refers to the recording channel ID.
191
Intelligent Security API (General) Developer Guide
A.2.69 /ISAPI/ContentMgmt/search
Search for specified resources.
Request URI Definition
Table A-103 GET or POST /ISAPI/ContentMgmt/search
Method GET or POST
Description Search for specific resources.
Query None.
Request XML_VideoPic_CMSearchDescription
Response Succeeded: XML_VideoPic_CMSearchResult
Failed: XML_ResponseStatus
Example
Sample Code for Searching Video Files Stored in Device
POST /ISAPI/ContentMgmt/search HTTP/1.1
Host: 10.17.132.49
Content-Length: 493
Connection: Keep-Alive
Authorization: Digest username="admin",
realm="DS-2CD2F12FWD-IWS",
nonce="4e7a46474e305a454d5445365a4445314e6a51345a54413d",
uri="/ISAPI/ContentMgmt/search",
cnonce="ce22590094d2f2bb352fc3c4cd2a1ca3",
nc=00000019,
response="ad6f2c23636f25c6db5911a113375ea9",
qop="auth"
<?xml version="1.0" encoding="utf-8"?>
<CMSearchDescription>
<searchID>C77384AD-66A0-0001-E7C2-1151F04F90B0</searchID>
<trackIDList>
<trackID>101</trackID>
</trackIDList>
<timeSpanList>
<timeSpan>
<startTime>2017-03-13T16:00:00Z</startTime>
<endTime>2017-03-16T15:59:59Z</endTime>
</timeSpan>
</timeSpanList>
<maxResults>40</maxResults>
<searchResultPostion>0</searchResultPostion>
<metadataList>
<metadataDescriptor>//recordType.meta.std-cgi.com</metadataDescriptor>
</metadataList>
192
Intelligent Security API (General) Developer Guide
</CMSearchDescription>
HTTP/1.1 200 OK
Date: Wed, 15 Mar 2017 09:40:02 GMT
Connection: close
Content-Length: 1649
Content-Type: application/xml
<?xml version="1.0" encoding="UTF-8"?>
<CMSearchResult version="2.0" xmlns="http://www.isapi.com/ver20/XMLSchema">
<searchID>{C77384AD-66A0-0001-E7C2-1151F04F90B0}</searchID>
<responseStatus>true</responseStatus>
<responseStatusStrg>OK</responseStatusStrg>
<numOfMatches>29</numOfMatches>
<matchList>
<searchMatchItem>
<sourceID>{0000000000-0000-0000-0000-000000000000}</sourceID>
<trackID>101</trackID>
<timeSpan>
<startTime>2017-03-14T10:32:01Z</startTime>
<endTime>2017-03-14T10:40:42Z</endTime>
</timeSpan>
<mediaSegmentDescriptor>
<contentType>video</contentType>
<codecType>H.264-BP</codecType>
<playbackURI>rtsp://10.17.132.49/Streaming/tracks/101/?
starttime=20170314T103201Z&endtime=20170314T104042Z&name=ch01_08000000016000000&size
=260358144</playbackURI>
</mediaSegmentDescriptor>
<metadataMatches>
<metadataDescriptor>recordType.meta.isapi.com/timing</metadataDescriptor>
</metadataMatches>
</searchMatchItem>
<searchMatchItem>
<sourceID>{0000000000-0000-0000-0000-000000000000}</sourceID>
<trackID>101</trackID>
<timeSpan>
<startTime>2017-03-14T10:40:42Z</startTime>
<endTime>2017-03-14T10:53:14Z</endTime>
</timeSpan>
<mediaSegmentDescriptor>
<contentType>video</contentType>
<codecType>H.264-BP</codecType>
<playbackURI>rtsp://10.17.132.49/Streaming/tracks/101/?
starttime=20170314T104042Z&endtime=20170314T105314Z&name=ch01_08000000017000000&size
=260603904</playbackURI>
</mediaSegmentDescriptor>
<metadataMatches>
<metadataDescriptor>recordType.meta.isapi.com/timing</metadataDescriptor>
</metadataMatches>
</searchMatchItem>
193
Intelligent Security API (General) Developer Guide
</matchList>
</CMSearchResult>
A.2.70 /ISAPI/ContentMgmt/search/profile
Get video search conditions.
Request URI Definition
Table A-104 GET /ISAPI/ContentMgmt/search/profile
Method GET
Description Get video search conditions.
Query None.
Request None.
Response Succeeded: XML_CMSearchProfile
Failed: XML_ResponseStatus
A.2.71 /ISAPI/ContentMgmt/security/logSearch
Search for security logs.
Request URI Definition
Table A-105 POST /ISAPI/ContentMgmt/security/logSearch
Method POST
Description Search for security logs.
Query None.
Request XML_VideoPic_CMSearchDescription
Response Succeeded: XML_VideoPic_CMSearchResult
Failed: XML_ResponseStatus
A.2.72 /ISAPI/ContentMgmt/SmartSearch
Search for video files by VCA event.
194
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-106 POST /ISAPI/ContentMgmt/SmartSearch
Method POST
Description Search for video files by VCA event.
Query None.
Request XML_SmartSearchDescription
Response XML_SmartSearchResult
A.2.73 /ISAPI/ContentMgmt/SmartSearch/capabilities
Get capability of searching videos by VCA event.
Request URI Definition
Table A-107 GET /ISAPI/ContentMgmt/SmartSearch/capabilities
Method GET
Description Get capability of searching videos by VCA event.
Query None.
Request None.
Response Succeeded: XML_Cap_SmartSearchDescription
Failed: XML_ResponseStatus
A.2.74 /ISAPI/ContentMgmt/spare/backup/<ID>?format=json
Edit the hot spare device information, delete a specified hot spare device.
Request URI Definition
Table A-108 PUT /ISAPI/ContentMgmt/spare/backup/<ID>?format=json
Method PUT
Description Edit the hot spare device information.
Query format: determine the format of request or response message.
security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
195
Intelligent Security API (General) Developer Guide
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
Request JSON_Backup
Response JSON_ResponseStatus
Table A-109 DELETE /ISAPI/ContentMgmt/spare/backup/<ID>?format=json
Method DELETE
Description Delete a specified hot spare device.
Query format: determine the format of request or response message.
security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
Request None
Response JSON_ResponseStatus
Remarks
The <ID> in the request URI refers to hot spare device ID.
A.2.75 /ISAPI/ContentMgmt/spare/backup?format=json
Get the hot spare device list or add a hot spare device.
Request URI Definition
Table A-110 GET /ISAPI/ContentMgmt/spare/backup?format=json
Method GET
Description Get the hot spare device list.
Query format: determine the format of request or response message.
security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
196
Intelligent Security API (General) Developer Guide
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
Request None
Response Succeeded: JSON_BackupList
Failed: JSON_ResponseStatus
Table A-111 POST /ISAPI/ContentMgmt/spare/backup?format=json
Method POST
Description Add a hot spare device.
Query format: determine the format of request or response message.
security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
Request JSON_Backup
Response Succeeded: JSON_BackupID
Failed: JSON_ResponseStatus
A.2.76 /ISAPI/ContentMgmt/spare/capabilities?format=json
Get the hot spare capability.
Request URI Definition
Table A-112 GET /ISAPI/ContentMgmt/spare/capabilities?format=json
Method GET
Description Get the hot spare capability.
Query format: determine the format of request or response message.
Request None
Response Succeeded: JSON_SpareCap
Failed: JSON_ResponseStatus
197
Intelligent Security API (General) Developer Guide
A.2.77 /ISAPI/ContentMgmt/spare/master/<ID>?format=json
Edit the working device information or delete a specified working device.
Request URI Definition
Table A-113 PUT /ISAPI/ContentMgmt/spare/master/<ID>?format=json
Method PUT
Description Edit the working device information.
Query format: determine the format of request or response message.
security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
Request JSON_Master
Response JSON_ResponseStatus
Table A-114 DELETE /ISAPI/ContentMgmt/spare/master/<ID>?format=json
Method DELETE
Description Delete a specified working device.
Query format: determine the format of request or response message.
security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
Request None
Response JSON_ResponseStatus
Remarks
The <ID> in the request URI refers to working device ID.
198
Intelligent Security API (General) Developer Guide
A.2.78 /ISAPI/ContentMgmt/spare/master?format=json
Get the working device list or add a working device.
Request URI Definition
Table A-115 GET /ISAPI/ContentMgmt/spare/master?format=json
Method GET
Description Get the working device list.
Query format: determine the format of request or response message.
security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
Request None
Response Succeeded: JSON_MasterList
Failed: JSON_ResponseStatus
Table A-116 POST /ISAPI/ContentMgmt/spare/master?format=json
Method POST
Description Add a working device.
Query format: determine the format of request or response message.
security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
Request JSON_Master
Response Succeeded: JSON_MasterList
Failed: JSON_ResponseStatus
199
Intelligent Security API (General) Developer Guide
A.2.79 /ISAPI/ContentMgmt/spare?format=json
Get or set the hot spare working mode.
Request URI Definition
Table A-117 GET /ISAPI/ContentMgmt/spare?format=json
Method GET
Description Get the hot spare working mode.
Query format: determine the format of request or response message.
Request None
Response Succeeded: JSON_Spare
Failed: JSON_ResponseStatus
Table A-118 PUT /ISAPI/ContentMgmt/spare?format=json
Method PUT
Description Set the hot spare working mode.
Query format: determine the format of request or response message.
Request JSON_Spare
Response JSON_ResponseStatus
A.2.80 /ISAPI/ContentMgmt/storage
Get or set the current working mode of storage.
Request URI Definition
Table A-119 GET /ISAPI/ContentMgmt/storage
Method GET
Description Get the current working mode of storage.
Query None.
Request None.
Response Succeeded: XML_storage
Failed: XML_ResponseStatus
200
Intelligent Security API (General) Developer Guide
Table A-120 PUT /ISAPI/ContentMgmt/storage
Method PUT
Description Set the current working mode of storage.
Query None.
Request XML_storage
Response XML_ResponseStatus
A.2.81 /ISAPI/ContentMgmt/Storage/capabilities
Get the configuration capability of current storage working mode.
Request URI Definition
Table A-121 GET /ISAPI/ContentMgmt/Storage/capabilities
Method GET
Description Get the configuration capability of current storage working mode.
Query None.
Request None.
Response Succeeded: XML_Cap_storage
Failed: XML_ResponseStatus
A.2.82 /ISAPI/ContentMgmt/Storage/dataReconstruction/progress?format=json
Get the disk data reconstruction progress.
Request URI Definition
Table A-122 GET /ISAPI/ContentMgmt/Storage/dataReconstruction/progress?format=json
Method GET
Description Get the disk data reconstruction progress.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_Reconstruction_ProgressLists
Failed: JSON_ResponseStatus
201
Intelligent Security API (General) Developer Guide
A.2.83 /ISAPI/ContentMgmt/Storage/dataReconstruction?format=json
Start disk data reconstruction.
Request URI Definition
Table A-123 PUT /ISAPI/ContentMgmt/Storage/dataReconstruction?format=json
Method PUT
Description Start disk data reconstruction.
Query format: determine the format of request or response message.
Request JSON_DataReconstruction
Response JSON_ResponseStatus
A.2.84 /ISAPI/ContentMgmt/Storage/extension
Get or set parameters of storage strategy.
Request URI Definition
Table A-124 GET /ISAPI/ContentMgmt/Storage/extension
Method GET
Description Get parameters of storage strategy.
Query None.
Request None.
Response Succeeded: XML_storageExtension
Failed: XML_ResponseStatus
Table A-125 PUT /ISAPI/ContentMgmt/Storage/extension
Method PUT
Description Set parameters of storage strategy.
Query None.
Request XML_storageExtension
Response XML_ResponseStatus
202
Intelligent Security API (General) Developer Guide
A.2.85 /ISAPI/ContentMgmt/Storage/extension/capabilities
Get configuration capability of log storage.
Request URI Definition
Table A-126 GET /ISAPI/ContentMgmt/Storage/extension/capabilities
Method GET
Description Get configuration capability of log storage.
Query None.
Request None
Response Succeeded: XML_Cap_storageExtension
Failed: JSON_ResponseStatus
A.2.86 /ISAPI/ContentMgmt/Storage/ExtraInfo
Operations about the configuration for storing additional information.
Request URI Definition
Table A-127 GET /ISAPI/ContentMgmt/Storage/ExtraInfo
Method GET
Description Get the parameters for storing additional information.
Query None.
Request None.
Response Succeeded: XML_ExtraInfo
Failed: XML_ResponseStatus
Table A-128 PUT /ISAPI/ContentMgmt/Storage/ExtraInfo
Method PUT
Description Set the parameters for storing additional information.
Query None.
Request XML_ExtraInfo
Response XML_ResponseStatus
203
Intelligent Security API (General) Developer Guide
A.2.87 /ISAPI/ContentMgmt/Storage/ExtraInfo/capabilities
Get the capability of storing additional information.
Request URI Definition
Table A-129 GET /ISAPI/ContentMgmt/Storage/ExtraInfo/capabilities
Method GET
Description Get the capability of storing additional information.
Query None.
Request None.
Response Succeeded: XML_Cap_ExtraInfo
Failed: XML_ResponseStatus
A.2.88 /ISAPI/ContentMgmt/Storage/hdd
Get configuration parameters of all HDDs.
Request URI Definition
Table A-130 GET /ISAPI/ContentMgmt/Storage/hdd
Method GET
Description Get configuration parameters of all HDDs.
Query None.
Request None.
Response Succeeded: XML_hddList
Failed: XML_ResponseStatus
A.2.89 /ISAPI/ContentMgmt/Storage/hdd/<ID>
Get and set parameters for a specific HDD.
Request URI Definition
Table A-131 GET /ISAPI/ContentMgmt/Storage/hdd/<ID>
Method GET
Description Get parameters for a specific HDD.
204
Intelligent Security API (General) Developer Guide
Query None.
Request None.
Response Succeeded: XML_hdd
Failed: XML_ResponseStatus
Table A-132 PUT /ISAPI/ContentMgmt/Storage/hdd/<ID>
Method PUT
Description Set parameters for a specific HDD.
Query None.
Request XML_hdd
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the HDD ID.
A.2.90 /ISAPI/ContentMgmt/Storage/hdd/<ID>/BadSectorsTest/pause
Pause checking bad sectors of a HDD.
Request URI Definition
Table A-133 PUT /ISAPI/ContentMgmt/Storage/hdd/<ID>/BadSectorsTest/pause
Method PUT
Description Pause checking bad sectors of a HDD.
Query None.
Request None.
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the HDD No.
A.2.91 /ISAPI/ContentMgmt/Storage/hdd/<ID>/BadSectorsTest/resume
Resume checking dad sectors of a HDD.
205
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-134 PUT /ISAPI/ContentMgmt/Storage/hdd/<ID>/BadSectorsTest/resume
Method PUT
Description Resume checking dad sectors of a HDD.
Query None.
Request None.
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the HDD No.
A.2.92 /ISAPI/ContentMgmt/Storage/hdd/<ID>/BadSectorsTest/start
Start checking bad sectors of a HDD.
Request URI Definition
Table A-135 PUT /ISAPI/ContentMgmt/Storage/hdd/<ID>/BadSectorsTest/start
Method PUT
Description Start checking bad sectors of a HDD.
Query None.
Request XML_BadSectorsTest
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the HDD No.
A.2.93 /ISAPI/ContentMgmt/Storage/hdd/<ID>/BadSectorsTest/status
Get bad sector checking status of a HDD.
Request URI Definition
Table A-136 GET /ISAPI/ContentMgmt/Storage/hdd/<ID>/BadSectorsTest/status
Method GET
Description Get bad sector checking status of a HDD.
206
Intelligent Security API (General) Developer Guide
Query None.
Request None.
Response Succeeded: XML_BadSectorsTestStatus
Failed: XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the HDD No.
A.2.94 /ISAPI/ContentMgmt/Storage/hdd/<ID>/BadSectorsTest/stop
Stop checking bad sectors of a HDD.
Request URI Definition
Table A-137 PUT /ISAPI/ContentMgmt/Storage/hdd/<ID>/BadSectorsTest/stop
Method PUT
Description Stop checking bad sectors of a HDD.
Query None.
Request None.
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the HDD No.
A.2.95 /ISAPI/ContentMgmt/Storage/hdd/<ID>/encryptFormat?format=json
Format an encrypted HDD.
Request URI Definition
Table A-138 PUT /ISAPI/ContentMgmt/Storage/hdd/<ID>/encryptFormat?format=json
Method PUT
Description Format an encrypted HDD.
Query security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
207
Intelligent Security API (General) Developer Guide
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
format: determine the format of request or response message.
Request JSON_EncryptFormat
Response JSON_ResponseStatus
Remarks
The <ID> in the request URI refers to the HDD ID.
A.2.96 /ISAPI/ContentMgmt/Storage/hdd/<ID>/encryptVerfy?format=json
Verify the HDD encryption password.
Request URI Definition
Table A-139 PUT /ISAPI/ContentMgmt/Storage/hdd/<ID>/encryptVerfy?format=json
Method PUT
Description Verify the HDD encryption password.
Query security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
format: determine the format of request or response message.
Request JSON_EncryptVerfy
Response JSON_ResponseStatus
Remarks
The <ID> in the request URI refers to the HDD ID.
A.2.97 /ISAPI/ContentMgmt/Storage/hdd/<ID>/formatStatus
Get the formatting status of a specific HDD.
208
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-140 GET /ISAPI/ContentMgmt/Storage/hdd/<ID>/formatStatus
Method GET
Description Get the formatting status of a specific HDD.
Query None.
Request None.
Response Succeeded: XML_formatStatus
Failed: XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the HDD ID.
A.2.98 /ISAPI/ContentMgmt/Storage/hdd/<ID>/format?formatType=
Format a specific HDD according to the specified formatting type. This URI is only available for SD
card.
Request URI Definition
Table A-141 PUT /ISAPI/ContentMgmt/Storage/hdd/<ID>/format?formatType=
Method PUT
Description Format a specific HDD according to the specified formatting type.
Query formatType: formatting type, the available values are "EXT4" and
"FAT32". But if you adopt the default formatting type "FAT32", this
query parameter is not required in the URI.
Request None.
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the HDD ID.
A.2.99 /ISAPI/ContentMgmt/Storage/hdd/<ID>/logProTest?format=json
Configure preverification for log HDDs.
209
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-142 PUT /ISAPI/ContentMgmt/Storage/hdd/<ID>/logProTest?format=json
Method PUT
Description Configure preverification for log HDD.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_logProTestResult
Failed: JSON_ResponseStatus
Remarks
The <ID> in the request URI refers to the HDD No.
A.2.100 /ISAPI/ContentMgmt/Storage/hdd/<ID>/SMARTTest/start
Start checking HDD status.
Request URI Definition
Table A-143 PUT /ISAPI/ContentMgmt/Storage/hdd/<ID>/SMARTTest/start
Method PUT
Description Start checking HDD status.
Query None.
Request XML_HDDSMARTTest
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the HDD No.
A.2.101 /ISAPI/ContentMgmt/Storage/hdd/<ID>/SMARTTest/status
Get HDD checking status.
210
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-144 GET /ISAPI/ContentMgmt/Storage/hdd/<ID>/SMARTTest/status
Method GET
Description Get HDD checking status.
Query None.
Request None.
Response Succeeded: XML_SMARTTestStatus
Failed: XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the HDD No.
A.2.102 /ISAPI/ContentMgmt/Storage/hdd/capabilities
Get HDD management capability.
Request URI Definition
Table A-145 GET /ISAPI/ContentMgmt/Storage/hdd/capabilities
Method GET
Description Get HDD management capability.
Query None.
Request None.
Response Succeeded: XML_Cap_hddList
Failed: XML_ResponseStatus
A.2.103 /ISAPI/ContentMgmt/storage/hdd/clearingSpace/capabilities?format=json
Get configuration capability of clearing HDD.
Request URI Definition
Table A-146 GET /ISAPI/ContentMgmt/storage/hdd/clearingSpace/capabilities?format=json
Method GET
Description Get configuration capability of clearing HDD.
211
Intelligent Security API (General) Developer Guide
Query format: determine the format of request or response message.
Request None
Response Succeeded: JSON_Cap_ClearingSpaceConfig
Failed: JSON_ResponseStatus
A.2.104 /ISAPI/ContentMgmt/storage/hdd/clearingSpace?format=json
Get or set parameters of clearing HDD.
Request URI Definition
Table A-147 GET /ISAPI/ContentMgmt/storage/hdd/clearingSpace?format=json
Method GET
Description Get parameters of clearing HDD.
Query format: determine the format of request or response message.
Request None
Response Succeeded: JSON_ClearingSpaceConfig
Failed: JSON_ResponseStatus
Table A-148 PUT /ISAPI/ContentMgmt/storage/hdd/clearingSpace?format=json
Method PUT
Description Set parameters of clearing HDD.
Query format: determine the format of request or response message.
Request JSON_ClearingSpaceConfig
Response JSON_ResponseStatus
A.2.105 /ISAPI/ContentMgmt/Storage/hdd/format
Format all HDDs.
Request URI Definition
Table A-149 PUT /ISAPI/ContentMgmt/Storage/hdd/format
Method PUT
Description Format all HDDs.
Query None.
212
Intelligent Security API (General) Developer Guide
Request None.
Response XML_ResponseStatus
A.2.106 /ISAPI/ContentMgmt/Storage/hdd/SMARTTest/config
Operations about the configuration of HDD SMART status detection.
Request URI Definition
Table A-150 GET /ISAPI/ContentMgmt/Storage/hdd/SMARTTest/config
Method GET
Description Get the parameters of HDD SMART status detection.
Query None.
Request None.
Response Succeeded: XML_SMARTTestConfig
Failed: XML_ResponseStatus
Table A-151 PUT /ISAPI/ContentMgmt/Storage/hdd/SMARTTest/config
Method PUT
Description Set the parameters of HDD SMART status detection.
Query None.
Request XML_SMARTTestConfig
Response XML_ResponseStatus
A.2.107 /ISAPI/ContentMgmt/Storage/hdd/<ID>/syncStatus?format=json
Get the HDD data sync status. Now only supports data sync from HDD to SSD.
Request URI Definition
Table A-152 GET /ISAPI/ContentMgmt/Storage/hdd/<ID>/syncStatus?format=json
Method GET
Description Get the HDD data sync status.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_SyncStatus
213
Intelligent Security API (General) Developer Guide
Failed: JSON_ResponseStatus
Remarks
• The <ID> in the request URI refers to the HDD ID.
• You can call this URI only when the value of sub node status (hddList> hdd>status) in
XML_storage is "synching" (related URI: /ISAPI/ContentMgmt/Storage).
A.2.108 /ISAPI/ContentMgmt/Storage/hdd/specifyHddFormat?format=json
Specify multiple HDDs to be formatted.
Request URI Definition
Table A-153 PUT /ISAPI/ContentMgmt/Storage/hdd/specifyHddFormat?format=json
Method PUT
Description Specify multiple HDDs to format.
Query format: determine the format of request or response message.
Request JSON_HddFormatList
Response JSON_ResponseStatus
A.2.109 /ISAPI/ContentMgmt/Storage/quota
Get parameters of all HDD quotas.
Request URI Definition
Table A-154 GET /ISAPI/ContentMgmt/Storage/quota
Method GET
Description Get parameters of all HDD quotas.
Query None.
Request None.
Response Succeeded: XML_diskQuotaList
Failed: XML_ResponseStatus
A.2.110 /ISAPI/ContentMgmt/Storage/quota/<ID>
Get parameters of an HDD quota.
214
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-155 GET /ISAPI/ContentMgmt/Storage/quota/<ID>
Method GET
Description Get parameters of an HDD quota.
Query None.
Request None.
Response Succeeded: XML_diskQuota
Failed: XML_ResponseStatus
Table A-156 PUT /ISAPI/ContentMgmt/Storage/quota/<ID>
Method PUT
Description Get parameters of an HDD quota.
Query None.
Request XML_diskQuota
Response XML_ResponseStatus
A.2.111 /ISAPI/ContentMgmt/Storage/ssd
Get the information of all SSDs.
Request URI Definition
Table A-157 GET /ISAPI/ContentMgmt/Storage/ssd
Method GET
Description Get the information of all SSDs.
Query None.
Request None.
Response Succeeded: XML_ssdList
Failed: XML_ResponseStatus
A.2.112 /ISAPI/ContentMgmt/Storage/ssd/<ID>
Get the specified SSD information.
215
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-158 GET /ISAPI/ContentMgmt/Storage/ssd/<ID>
Method GET
Description Get the specified SSD information.
Query None.
Request None.
Response Succeeded: XML_ssd
Failed: XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the SSD ID.
A.2.113 /ISAPI/ContentMgmt/Storage/ssd/<ID>/capabilities?format=json
Get the SSD management capability.
Request URI Definition
Table A-159 GET /ISAPI/ContentMgmt/Storage/ssd/<ID>/capabilities?format=json
Method GET
Description Get the SSD management capability.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_Cap_SSD
Failed: JSON_ResponseStatus
Remarks
• The <ID> in the request URI refers to the SSD ID.
• If the node isSupportSSDManagement is returned in the message XML_Cap_storage (related
URI: /ISAPI/ContentMgmt/Storage/capabilities ) and its value is true, it indicates that the
device supports this function.
A.2.114 /ISAPI/ContentMgmt/Storage/ssd/<ID>/SMARTTest/status
Get the SSD S.M.A.R.T (self-monitoring, analysis, and reporting technology) detection status.
216
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-160 GET /ISAPI/ContentMgmt/Storage/ssd/<ID>/SMARTTest/status
Method GET
Description Get the SSD S.M.A.R.T (self-monitoring, analysis, and reporting
technology) detection status.
Query None.
Request None.
Response Succeeded: XML_SSD_SmartTestStatus
Failed: XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the SSD ID.
A.2.115 /ISAPI/ContentMgmt/Storage/ssd/<ID>/SMARTTest/start
Run SSD S.M.A.R.T (self-monitoring, analysis, and reporting technology) detection.
Request URI Definition
Table A-161 PUT /ISAPI/ContentMgmt/Storage/ssd/<ID>/SMARTTest/start
Method PUT
Description Run SSD S.M.A.R.T (self-monitoring, analysis, and reporting
technology) detection.
Query None.
Request XML_SSDSMARTTest
Response XML_ResponseStatus
Remarks
• The <ID> in the request URI refers to the SSD ID.
• If the node isSupportSSDSMARTTest is returned in the message XML_RacmCap (related URI: /
ISAPI/ContentMgmt/capabilities ) and its value is true, it indicates that the device supports this
function.
A.2.116 /ISAPI/ContentMgmt/Storage/ssd/<ID>/upgrade/status?format=json
Get the SSD firmware upgrade progress.
217
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-162 GET /ISAPI/ContentMgmt/Storage/ssd/<ID>/upgrade/status?format=json
Method GET
Description Get the SSD firmware upgrade progress.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_SSD_UpgradeStatus
Failed: JSON_ResponseStatus
Remarks
The <ID> in the request URI refers to the SSD ID.
A.2.117 /ISAPI/ContentMgmt/Storage/ssd/<ID>/upgrade?format=json
Upgrade the SSD firmware.
Request URI Definition
Table A-163 POST /ISAPI/ContentMgmt/Storage/ssd/<ID>/upgrade?format=json
Method POST
Description Upgrade the SSD firmware.
Query format: determine the format of request or response message.
Request Binary data in form format
Response JSON_ResponseStatus
Remarks
• The <ID> in the request URI refers to the SSD ID.
• If the node isSupportSSDUpgrade is returned in the message JSON_Cap_SSD (related URI: /
ISAPI/ContentMgmt/Storage/ssd/<ID>/capabilities?format=json ) and its value is true, it
indicates that the device supports this function.
A.2.118 /ISAPI/ContentMgmt/StreamingProxy/channels/<ID>/Picture
Capture pictures via digital channel.
218
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-164 GET /ISAPI/ContentMgmt/StreamingProxy/channels/<ID>/Picture
Method GET
Description Capture pictures via digital channel.
Query None
Request None
Response Succeeded: Captured picture data, which is transmitted over HTTP.
Failed: XML_ResponseStatus
Remarks
• The <ID> in the request URI refers to the digital channel ID.
• The supported picture resolutions include QCIF (176 × 144), CIF (352 × 288) , and D1 (704 × 576).
A.2.119 /ISAPI/ContentMgmt/StreamingProxy/channels/<ID>/capabilities
Get the capability of digital video channel proxy.
Request URI Definition
Table A-165 GET /ISAPI/ContentMgmt/StreamingProxy/channels/<ID>/capabilities
Method GET
Description Get the capability of digital video channel proxy.
Query None.
Request None.
Response Succeeded: XML_Cap_StreamingChannel
Failed: XML_ResponseStatus
Remarks
The <ID> in the request URI refers to streaming channel ID, which is equal to (channel No. × 100 +
stream type), the stream type can be: 1 (main stream), 2 (sub-stream), and so on. For example,
when ID is 101, it indicates the main stream of channel 1, when ID is 302, it indicates the sub-
stream of channel 3.
219
Intelligent Security API (General) Developer Guide
A.2.120 /ISAPI/ContentMgmt/StreamingProxy/channels/<ID>/PictureByUrl/
capabilities?format=json
Get the capability of capturing picture in URL format
Request URI Definition
Table A-166 GET /ISAPI/ContentMgmt/StreamingProxy/channels/<ID>/PictureByUrl/
capabilities?format=json
Method GET
Description Get the capability of capturing picture in URL format
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_Cap_CaputreDescription
Failed: JSON_ResponseStatus
Remarks
The <ID> in the request URI refers to streaming channel ID, which is equal to (channel No. × 100 +
stream type), the stream type can be: 1 (main stream), 2 (sub-stream), and so on. For example,
when ID is 101, it indicates the main stream of channel 1, when ID is 302, it indicates the sub-
stream of channel 3.
A.2.121 /ISAPI/ContentMgmt/StreamingProxy/channels/<ID>/PictureByUrl?
format=json
Capture the picture in URL format.
Request URI Definition
Table A-167 POST /ISAPI/ContentMgmt/StreamingProxy/channels/<ID>/PictureByUrl?
format=json
Method POST
Description Capture the picture in URL format.
Query format: determine the format of request or response message.
Request JSON_CaputreDescription
Response Succeeded: JSON_CaputreResult
Failed: JSON_ResponseStatus
220
Intelligent Security API (General) Developer Guide
Remarks
• The <ID> in the request URI refers to streaming channel ID, which is equal to (channel No. × 100
+ stream type), the stream type can be: 1 (main stream), 2 (sub-stream), and so on. For example,
when ID is 101, it indicates the main stream of channel 1, when ID is 302, it indicates the sub-
stream of channel 3.
• If the node isSupportPictureByUrl is returned in the message XML_Cap_StreamingChannel
(related URI: /ISAPI/ContentMgmt/StreamingProxy/channels/<ID>/capabilities ) and its value
is true, it indicates that the device supports this function.
A.2.122 /ISAPI/ContentMgmt/time/search/capabilities?format=json
Get the capability of searching for recording start and end time.
Request URI Definition
Table A-168 GET /ISAPI/ContentMgmt/time/search/capabilities?format=json
Method GET
Description Get the capability of searching for recording start and end time.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_Cap_TimeSearchCond
Failed: JSON_ResponseStatus
A.2.123 /ISAPI/ContentMgmt/time/search?format=json
Search for the recording start and end time.
Request URI Definition
Table A-169 POST /ISAPI/ContentMgmt/time/search?format=json
Method POST
Description Search for the recording start and end time.
Query format: determine the format of request or response message.
Request JSON_TimeSearchCond
Response Succeeded: JSON_TimeSearchResult
Failed: JSON_ResponseStatus
221
Intelligent Security API (General) Developer Guide
A.3 /ISAPI/Event
A.3.1 /ISAPI/Event/capabilities
Get the device event capability.
Request URI Definition
Table A-170 GET /ISAPI/Event/capabilities
Method GET
Description Get the device event capability set.
Query None.
Request None.
Response Succeeded: XML_EventCap
Failed: XML_ResponseStatus
A.3.2 /ISAPI/Event/channels/<ID>/capabilities
Get event capabilities supported by the channel.
Request URI Definition
Table A-171 GET /ISAPI/Event/channels/<ID>/capabilities
Method GET
Description Get event capabilities supported by the channel.
Query None.
Request None.
Response Succeeded: XML_ChannelEventCap
Failed: XML_ResponseStatus
Remarks
The <ID> in the URI refers to the channel ID.
A.3.3 /ISAPI/Event/channels/capabilities
Get the event capability of all channels.
222
Intelligent Security API (General) Developer Guide
Request URL Definition
Table A-172 GET /ISAPI/Event/channels/capabilities
Method GET
Description Get the event capability of all channels.
Query None.
Request None.
Response Succeeded: XML_ChannelEventCapList
Failed: XML_ResponseStatus
A.3.4 /ISAPI/Event/notification/alertStream
Get the uploaded heartbeat or alarm/event information.
Request URI Definition
Table A-173 GET /ISAPI/Event/notification/alertStream
Method GET
Description Get the heartbeat or uploaded alarm/event information.
Query None.
Request None.
Response Option 1: XML_EventNotificationAlert_AlarmEventInfo or
XML_EventNotificationAlert_HeartbeatInfo
Option 2: JSON_EventNotificationAlert_Alarm/EventInfo
Note
The messages here only show the format of alarm/event
information to be uploaded. For details, refer to the corresponding
alarm/event configuration chapters.
Remarks
• After calling this URI, a persistent connection is set up between the device and the platform, and
the alarm or event information will be uploaded from device continuously once the alarm is
triggered or event occurred.
• You can check if the XML response message is the heartbeat information according to the nodes
<eventType> and <eventState>. If the values of these two node are "videoloss" and "inactive",
respectively, the returned message is the heartbeat information.
223
Intelligent Security API (General) Developer Guide
A.3.5 /ISAPI/Event/notification/httpHosts
Get or set parameters of all HTTP listening servers, add a HTTP listening server, and delete all HTTP
listening servers.
Request URI Definition
Table A-174 GET /ISAPI/Event/notification/httpHosts
Method GET
Description Get parameters of all HTTP listening servers.
Query security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
Request None
Response Succeeded: XML_HttpHostNotificationList
Failed: XML_ResponseStatus
Table A-175 PUT /ISAPI/Event/notification/httpHosts
Method PUT
Description Set parameters of all HTTP listening servers.
Query security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
Request XML_HttpHostNotificationList
Response XML_ResponseStatus
Table A-176 POST /ISAPI/Event/notification/httpHosts
Method POST
Description Add a HTTP listening server.
Query security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
224
Intelligent Security API (General) Developer Guide
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
Request XML_HttpHostNotification
Response XML_ResponseStatus
Table A-177 DELETE /ISAPI/Event/notification/httpHosts
Method DELETE
Description Delete all HTTP listening servers.
Query None
Request None
Response XML_ResponseStatus
A.3.6 /ISAPI/Event/notification/httpHosts/<ID>
Get or set the parameters of a HTTP listening server, and delete a HTTP listening server.
Request URI Definition
Table A-178 GET /ISAPI/Event/notification/httpHosts/<ID>
Method GET
Description Get the parameters of a HTTP listening server.
Query security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
Request None
Response Succeeded: XML_HttpHostNotification
Failed: XML_ResponseStatus
Table A-179 PUT /ISAPI/Event/notification/httpHosts/<ID>
Method PUT
Description Set the parameters of a HTTP listening server.
225
Intelligent Security API (General) Developer Guide
Query security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
Request XML_HttpHostNotification
Response XML_ResponseStatus
Table A-180 DELETE /ISAPI/Event/notification/httpHosts/<ID>
Method DELETE
Description Delete a HTTP listening server.
Query security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
Request None
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the HTTP listening server No.
A.3.7 /ISAPI/Event/notification/httpHosts/<ID>/test
Check whether the HTTP listening server is working normally.
Request URI Definition
Table A-181 POST /ISAPI/Event/notification/httpHosts/<ID>/test
Method POST
Description Check whether the HTTP listening server is working normally.
Query None
Request XML_HttpHostNotification
Response Succeeded: XML_HttpHostTestResult
Failed: XML_ResponseStatus
226
Intelligent Security API (General) Developer Guide
Remarks
The <ID> in the request URI refers to the HTTP listening server ID.
A.3.8 /ISAPI/Event/notification/httpHosts/capabilities
Get the configuration capabilities of all HTTP listening servers.
Request URI Definition
Table A-182 GET /ISAPI/Event/notification/httpHosts/capabilities
Method GET
Description Get the configuration capabilities of all HTTP listening servers.
Query None
Request None
Response Succeeded: XML_HttpHostNotificationCap
Failed: XML_ResponseStatus
A.3.9 /ISAPI/Event/notification/subscribeEvent
Subscribe events/alarms in arming mode.
Request URI Definition
Table A-183 POST /ISAPI/Event/notification/subscribeEvent
Method POST
Description Subscribe events/alarms in arming mode.
Query None.
Request XML_SubscribeEvent
Response Succeeded: XML_SubscribeEventResponse or
XML_EventNotificationAlert_SubscriptionHeartbeat and alarm/
event details message
Failed: XML_ResponseStatus
Remarks
The XML_EventNotificationAlert_SubscriptionHeartbeat and alarm/event details message is
uploaded repeatedly. The default time interval of uploading heartbeat information is 30s.
227
Intelligent Security API (General) Developer Guide
A.3.10 /ISAPI/Event/notification/subscribeEvent/<ID>
Get or set alarm/event subscription parameters.
Request URI Definition
Table A-184 GET /ISAPI/Event/notification/subscribeEvent/<ID>
Method GET
Description Get alarm/event subscription parameters.
Query None.
Request None.
Response Succeeded: XML_SubscribeEvent
Failed: XML_ResponseStatus
Table A-185 PUT /ISAPI/Event/notification/subscribeEvent/<ID>
Method PUT
Description Set alarm/event subscription parameters.
Query None.
Request XML_SubscribeEvent
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the subscription No. which is returned by the device. After
the persistent connection for receiving events or alarms in arming mode is closed, the device will
release the resource used by the <ID>.
A.3.11 /ISAPI/Event/notification/subscribeEventCap
Get event/alarm subscription capability.
Request URI Definition
Table A-186 GET /ISAPI/Event/notification/subscribeEventCap
Method GET
Description Get event/alarm subscription capability.
Query None.
228
Intelligent Security API (General) Developer Guide
Request None.
Response Succeeded: XML_SubscribeEventCap
Failed: XML_ResponseStatus
A.3.12 /ISAPI/Event/notification/unSubscribeEvent
Cancel subscribing alarm/event.
Request URI Definition
Table A-187 PUT /ISAPI/Event/notification/unSubscribeEvent
Method PUT
Description Cancel subscribing alarm/event.
Query None.
Request None.
Response XML_ResponseStatus
A.3.13 /ISAPI/Event/schedules/motionDetections
Get or set arming schedule of motion detection of all channels.
Request URI Definition
Table A-188 GET /ISAPI/Event/schedules/motionDetections
Method GET
Description Get arming schedule of motion detection of all channels.
Query None
Request None
Response Succeeded: XML_MotionDetectionScheduleList
Failed: XML_ResponseStatus
Table A-189 PUT /ISAPI/Event/schedules/motionDetections
Method PUT
Description Set arming schedule of motion detection of all channels.
Query None
229
Intelligent Security API (General) Developer Guide
Request XML_MotionDetectionScheduleList
Response XML_ResponseStatus
A.3.14 /ISAPI/Event/schedules/motionDetections/<ID>
Get or set the arming schedule of motion detection by channel.
Request URI Definition
Table A-190 GET /ISAPI/Event/schedules/motionDetections/<ID>
Method GET
Description Get the arming schedule of motion detection by channel.
Query None
Request None
Response Succeeded: XML_Schedule
Failed: XML_ResponseStatus
Table A-191 PUT /ISAPI/Event/schedules/motionDetections/<ID>
Method PUT
Description Set the arming schedule of motion detection by channel.
Query None
Request XML_Schedule
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the ID of channel that triggered motion detection alarm. It
consists of alarm type name ("VMD") and channel ID, its format is "VMD-<channelID>", e.g.,
"VMD-101".
A.3.15 /ISAPI/Event/schedules/vibrationDetection/<ID>
Get or set arming schedule of vibration detection by channel.
230
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-192 GET /ISAPI/Event/schedules/vibrationDetection/<ID>
Method GET
Description Get arming schedule of vibration detection by channel.
Query None.
Request None.
Response Succeeded: XML_Schedule
Failed: XML_ResponseStatus
Table A-193 PUT /ISAPI/Event/schedules/vibrationDetection/<ID>
Method PUT
Description Set arming schedule of vibration detection by channel.
Query None.
Request XML_Schedule
Response XML_ResponseStatus
Remarks
The <ID> in the request URI should be set in the format of "vibrationDetection-<channelID>",
e.g., /ISAPI/Event/schedules/vibrationDetection/vibrationDetection-101.
A.3.16 /ISAPI/Event/schedules/<EventType>/<ID>
Operations about arming schedule of specified event type.
Request URI Definition
Table A-194 GET /ISAPI/Event/schedules/<EventType>/<ID>
Method GET
Description Get the arming schedule of specified event type.
Query None.
Request None.
Response Succeeded: XML_Schedule
Failed: XML_ResponseStatus
231
Intelligent Security API (General) Developer Guide
Table A-195 PUT /ISAPI/Event/schedules/<EventType>/<ID>
Method PUT
Description Set the arming schedule of specified event type.
Query None.
Request XML_Schedule
Response XML_ResponseStatus
Remarks
The <EventType> in the URI refers to the specified event type.
The <ID> in the URI refers to the ID of channel, which is triggered by alarm.
A.3.17 /ISAPI/Event/triggers/hdBadBlock
Operations about the linkage configuration of the HDD bad sector detection.
Request URI Definition
Table A-196 GET /ISAPI/Event/triggers/hdBadBlock
Method GET
Description Get the linkage parameters of the HDD bad sector detection.
Query None.
Request None.
Response Succeeded: XML_EventTrigger
Failed: XML_ResponseStatus
Table A-197 PUT /ISAPI/Event/triggers/hdBadBlock
Method PUT
Description Set the linkage parameters of the HDD bad sector detection.
Query None.
Request XML_EventTrigger
Response XML_ResponseStatus
A.3.18 /ISAPI/Event/triggers/hdImpact
Operations about the linkage configuration of the HDD impact detection.
232
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-198 GET /ISAPI/Event/triggers/hdImpact
Method GET
Description Get the linkage parameters of the HDD impact detection.
Query None.
Request None.
Response Succeeded: XML_EventTrigger
Failed: XML_ResponseStatus
Table A-199 PUT /ISAPI/Event/triggers/hdImpact
Method PUT
Description Set the linkage parameters of the HDD impact detection.
Query None.
Request XML_EventTrigger
Response XML_ResponseStatus
A.3.19 /ISAPI/Event/triggers/highHDTemperature
Operations about the linkage configuration of the HDD high temperature detection.
Request URI Definition
Table A-200 GET /ISAPI/Event/triggers/highHDTemperature
Method GET
Description Get the linkage parameters of the HDD high temperature detection.
Query None.
Request None.
Response Succeeded: XML_EventTrigger
Failed: XML_ResponseStatus
Table A-201 PUT /ISAPI/Event/triggers/highHDTemperature
Method PUT
Description Set the linkage parameters of the HDD high temperature detection.
Query None.
233
Intelligent Security API (General) Developer Guide
Request XML_EventTrigger
Response XML_ResponseStatus
A.3.20 /ISAPI/Event/triggers/lowHDTemperature
Operations about the linkage configuration of the HDD low temperature detection.
Request URI Definition
Table A-202 GET /ISAPI/Event/triggers/lowHDTemperature
Method GET
Description Get the linkage parameters of the HDD low temperature detection.
Query None.
Request None.
Response Succeeded: XML_EventTrigger
Failed: XML_ResponseStatus
Table A-203 PUT /ISAPI/Event/triggers/lowHDTemperature
Method PUT
Description Set the linkage parameters of the HDD low temperature detection.
Query None.
Request XML_EventTrigger
Response XML_ResponseStatus
A.3.21 /ISAPI/Event/triggers/severeHDFailure
Operations about the linkage configuration of the HDD severe fault detection.
Request URI Definition
Table A-204 GET /ISAPI/Event/triggers/severeHDFailure
Method GET
Description Get the linkage parameters of the HDD severe fault detection.
Query None.
Request None.
Response Succeeded: XML_EventTrigger
234
Intelligent Security API (General) Developer Guide
Failed: XML_ResponseStatus
Table A-205 PUT /ISAPI/Event/triggers/severeHDFailure
Method PUT
Description Set the linkage parameters of the HDD severe fault detection.
Query None.
Request XML_EventTrigger
Response XML_ResponseStatus
A.3.22 /ISAPI/Event/triggers/<eventType>-<ID>
Get, set, or delete the alarm linkage action by channel.
Request URI Definition
Table A-206 GET /ISAPI/Event/triggers/<eventType>-<ID>
Method GET
Description Get the alarm linkage action by channel.
Query None
Request None
Response Succeeded: XML_EventTrigger
Failed: XML_ResponseStatus
Table A-207 PUT /ISAPI/Event/triggers/<eventType>-<ID>
Method PUT
Description Set the alarm linkage action by channel.
Query None
Request XML_EventTrigger
Response XML_ResponseStatus
Table A-208 DELETE /ISAPI/Event/triggers/<eventType>-<ID>
Method DELETE
Description Delete the alarm linkage action by channel.
Query None
235
Intelligent Security API (General) Developer Guide
Request None
Response XML_ResponseStatus
Remarks
The <eventType> in the request URI refers to the predefined event or alarm type name, and the
<ID> is the No. of the event detection channel. For example, if the No. of the face capture channel
is 101, the "<eventType>-<ID>" is "faceSnap-101".
A.3.23 /ISAPI/Event/triggers/<ID>/notifications
Operations about configurations of alarm/event linkage actions.
Request URI Definition
Table A-209 GET /ISAPI/Event/triggers/<ID>/notifications
Method GET
Description Get the configuration parameters of alarm/event linkage actions.
Query None.
Request None.
Response Succeeded: XML_EventTriggerNotificationList
Failed: XML_ResponseStatus
Table A-210 PUT /ISAPI/Event/triggers/<ID>/notifications
Method PUT
Description Set the configuration parameters for alarm/event linkage actions.
Query None.
Request XML_EventTriggerNotificationList
Response XML_ResponseStatus
Table A-211 DELETE /ISAPI/Event/triggers/<ID>/notifications
Method DELETE
Description Delete the configuration parameters of alarm/event linkage actions.
Query None.
Request None.
Response XML_ResponseStatus
236
Intelligent Security API (General) Developer Guide
Remarks
The <ID> in the request URI refers to No. of alarm triggered channel.
A.3.24 /ISAPI/Event/triggers/notifications/AudioAlarm/<audioID>/test?
format=json
Audio test.
Request URI Definition
Table A-212 PUT /ISAPI/Event/triggers/notifications/AudioAlarm/<audioID>/test?format=json
Method PUT
Description Audio test.
Query format: determine the format of request or response message.
Request None.
Response JSON_ResponseStatus
Remarks
The <audioID> in the URI refers to audio ID.
A.3.25 /ISAPI/Event/triggers/notifications/AudioAlarm/capabilities?format=json
Get audible warning configuration capability.
Request URI Definition
Table A-213 GET /ISAPI/Event/triggers/notifications/AudioAlarm/capabilities?format=json
Method GET
Description Get audible warning configuration capability.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_AudioAlarmCap
Failed: JSON_ResponseStatus
237
Intelligent Security API (General) Developer Guide
A.3.26 /ISAPI/Event/triggers/notifications/AudioAlarm/customAudio/
<customAudioID>?format=json
Download or delete custom alarm audio file.
Request URI Definition
Table A-214 GET /ISAPI/Event/triggers/notifications/AudioAlarm/customAudio/
<customAudioID>?format=json
Method GET
Description Download custom alarm audio file.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: The custom alarm audio file information is returned.
Failed: JSON_ResponseStatus
Table A-215 DELETE /ISAPI/Event/triggers/notifications/AudioAlarm/customAudio/
<customAudioID>?format=json
Method DELETE
Description Delete custom audio file.
Query format: determine the format of request or response message.
Request None.
Response JSON_ResponseStatus
Remarks
<customAudioID> in the URI refers to custom alarm audio ID and the value can be 1 to 3.
A.3.27 /ISAPI/Event/triggers/notifications/AudioAlarm/customAudioInfo/
channels/<channelID>?format=json
Get the information about custom alarm sound file of a specified channel.
238
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-216 GET /ISAPI/Event/triggers/notifications/AudioAlarm/customAudioInfo/channels/
<channelID>?format=json
Method GET
Description Get the information about custom alarm sound file of a specified
channel.
Query format: determine the format of request or response message.
Request None
Response Succeeded: JSON_Channel_CustomAudioInfo
Failed: JSON_ResponseStatus
Remarks
The <ID> in the request URI refers to the channel ID.
A.3.28 /ISAPI/Event/triggers/notifications/AudioAlarm/customAudio?format=json
Import custom alarm audio file.
Request URI Definition
Table A-217 POST /ISAPI/Event/triggers/notifications/AudioAlarm/customAudio?format=json
Method POST
Description Import custom alarm audio file.
Query format: determine the format of request or response message.
type: audio file type: url, bianry.
Request JSON_ImportCustomAudio
Response Succeeded: JSON_CustomAudioID
Failed: JSON_ResponseStatus
A.3.29 /ISAPI/Event/triggers/notifications/AudioAlarm/customAudioInfo/
<customAudioID>?format=json
Get or edit custom alarm audio file information.
239
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-218 GET /ISAPI/Event/triggers/notifications/AudioAlarm/customAudioInfo/
<customAudioID>?format=json
Method GET
Description Get custom alarm audio file information.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_CustomAudioInfo
Failed: JSON_ResponseStatus
Table A-219 PUT /ISAPI/Event/triggers/notifications/AudioAlarm/customAudioInfo/
<customAudioID>?format=json
Method PUT
Description Edit custom audio file information.
Query format: determine the format of request or response message.
Request JSON_CustomAudioInfo
Response JSON_ResponseStatus
Remarks
The <customAudioID> in the URI refers to custom alarm audio ID and the value can be 1 to 3.
A.3.30 /ISAPI/Event/triggers/notifications/AudioAlarm/customAudioInfo?
format=json
Get the custom alarm audio file.
Request URI Definition
Table A-220 GET /ISAPI/Event/triggers/notifications/AudioAlarm/customAudioInfo?format=json
Method GET
Description Get the custom alarm audio file.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_GetCustomAudio
Failed: JSON_ResponseStatus
240
Intelligent Security API (General) Developer Guide
A.3.31 /ISAPI/Event/triggers/notifications/AudioAlarm/customAudioTypeInfo/
channels?format=json
Get encoding format information of custom audio file in a batch.
Request URI Definition
Table A-221 GET /ISAPI/Event/triggers/notifications/AudioAlarm/customAudioTypeInfo/
channels?format=json
Method GET
Description Get encoding format information of custom audio file in a batch.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_CustomAudioTypeInfoList
Failed: JSON_ResponseStatus
A.3.32 /ISAPI/Event/triggers/notifications/AudioAlarm?format=json
Get or set audible warning parameters.
Request URI Definition
Table A-222 GET /ISAPI/Event/triggers/notifications/AudioAlarm?format=json
Method GET
Description Get parameters of audible warning.
Query format: determine the format of request or response message.
alarmType: alarm type, including "behavior"-behavior analysis,
"thermometry"-temperature measurement, "dynamicFire"-fire
detection, "smokingMode"-smoke detection, "noMaskDetection"-no
wearing mask detection.
Request None.
Response Succeeded: JSON_AudioAlarm
Failed: JSON_ResponseStatus
Note
For example, if you want to get the audible warning parameters of thermometry, the request URI
is: GET /ISAPI/Event/triggers/notifications/AudioAlarm?format=json&alarmType=thermometry
241
Intelligent Security API (General) Developer Guide
Table A-223 PUT /ISAPI/Event/triggers/notifications/AudioAlarm?format=json
Method PUT
Description Set parameters of audible warning.
Query format: determine the format of request or response message.
Request JSON_AudioAlarm
Response JSON_ResponseStatus
A.3.33 /ISAPI/Event/triggers/notifications/channels/<ID>/AudioAlarm/
capabilities?format=json
Get the audible warning configuration capability of a specified channel.
Request URI Definition
Table A-224 GET /ISAPI/Event/triggers/notifications/channels/<ID>/AudioAlarm/capabilities?
format=json
Method GET
Description Get the audible warning configuration capability of a specified
channel.
Query format: determine the format of request or response message.
Request None
Response Succeeded: JSON_ChannelAudioAlarmCap
Failed: JSON_ResponseStatus
Remarks
The <ID> in the request URI refers to the channel ID.
A.3.34 /ISAPI/Event/triggers/notifications/whiteLightAlarm?format=json
Operations about configuration of supplement light alarm linkage.
Request URI Definition
Table A-225 GET /ISAPI/Event/triggers/notifications/whiteLightAlarm?format=json
Method GET
Description Get parameters of supplement light alarm linkage.
242
Intelligent Security API (General) Developer Guide
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_WhiteLightAlarm
Failed: JSON_ResponseStatus
Table A-226 PUT /ISAPI/Event/triggers/notifications/whiteLightAlarm?format=json
Method PUT
Description Set parameters of supplement light alarm linkage.
Query format: determine the format of request or response message.
Request JSON_WhiteLightAlarm
Response JSON_WhiteLightAlarm
A.3.35 /ISAPI/Event/triggers/notifications/whiteLightAlarm/capabilities?
format=json
Get the configuration capability of supplement light alarm linkage.
Request URI Definition
Table A-227 GET /ISAPI/Event/triggers/notifications/whiteLightAlarm/capabilities?format=json
Method GET
Description Get the configuration capability of supplement light alarm linkage.
Query format: determine the format of request or response message.
Request None.
Response JSON_WhiteLightAlarmCap
A.3.36 /ISAPI/Event/triggersCap
Get alarm linkage capability.
Request URI Definition
Table A-228 GET /ISAPI/Event/triggersCap
Method GET
Description Get alarm linkage capability.
Query None
243
Intelligent Security API (General) Developer Guide
Request None
Response Succeeded: XML_EventTriggersCap
Failed: XML_ResponseStatus
A.3.37 http://<ipAddress>:<portNo>/<url>
HTTP listening sever sends alarm information to alarm center.
Request URL Definition
Table A-229 POST http://<ipAddress>:<portNo>/<url>
Method POST
Description HTTP listening sever sends alarm information to alarm center.
Query None
Request None
Response Succeeded: XML_EventNotificationAlert_AlarmEventInfo or
JSON_EventNotificationAlert_Alarm/EventInfo
Failed: XML_ResponseStatus
Remarks
• The <ipAddress> in the request URL refers to the IP address or domain name of HTTP listening
server, the <portNo> is the port No. of HTTP listening server, and the <url> represents the
streaming URL, which is configured via the HTTP listening server.
• The default port No. is 80, so the request URL without port No. is also valid.
A.4 /ISAPI/Image
A.4.1 /ISAPI/Image/channels
Operations about image configuration of all channels.
Request URI Definition
Table A-230 GET /ISAPI/Image/channels
Method GET
Description Get image parameters of all channels.
Query None.
244
Intelligent Security API (General) Developer Guide
Request None.
Response Succeeded: XML_ImageChannellist
Failed: XML_ResponseStatus
Table A-231 PUT /ISAPI/Image/channels
Method GET
Description Set image parameters of all channels.
Query None.
Request XML_ImageChannellist
Response XML_ResponseStatus
A.4.2 /ISAPI/Image/channels/<ID>
Operations about image configuration of a specific channel.
Request URI Definition
Table A-232 GET /ISAPI/Image/channels/<ID>
Method GET
Description Get image parameters of a specific channel.
Query None.
Request None.
Response Succeeded: XML_ImageChannel
Failed: XML_ResponseStatus
Table A-233 PUT /ISAPI/Image/channels/<ID>
Method PUT
Description Set image parameters of a specific channel.
Query None.
Request XML_ImageChannel
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the channel ID.
245
Intelligent Security API (General) Developer Guide
A.4.3 /ISAPI/Image/channels/<ID>/BLC
Operations about BLC (Backlight Compensation) configuration of a specific channel.
Request URI Definition
Table A-234 GET /ISAPI/Image/channels/<ID>/BLC
Method GET
Description Get BLC (Backlight Compensation) parameters of a specific channel.
Query None.
Request None.
Response Succeeded: XML_BLC
Failed: XML_ResponseStatus
Table A-235 PUT /ISAPI/Image/channels/<ID>/BLC
Method PUT
Description Set BLC (Backlight Compensation) parameters of a specific channel.
Query None.
Request XML_BLC
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the channel ID.
A.4.4 /ISAPI/Image/channels/<ID>/capabilities
Get image configuration capability of a specific channel.
Request URI Definition
Table A-236 GET /ISAPI/Image/channels/<ID>/capabilities
Method GET
Description Get image configuration capability of a specific channel.
Query None.
Request None.
Response Succeeded: XML_Cap_ImageChannel
246
Intelligent Security API (General) Developer Guide
Failed: XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the channel No.
A.4.5 /ISAPI/Image/channels/<ID>/capturemode
Operations about video input mode configuration of a specific channel.
Request URI Definition
Table A-237 GET /ISAPI/Image/channels/<ID>/capturemode
Method GET
Description Get video input modes of a specific channel.
Query None.
Request None.
Response Succeeded: XML_CaptureMode
Failed: XML_ResponseStatus
Table A-238 PUT /ISAPI/Image/channels/<ID>/capturemode
Method PUT
Description Set video input mode of a specific channel.
Query None.
Request XML_CaptureMode
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the channel ID.
A.4.6 /ISAPI/Image/channels/<ID>/color
Operations about the image adjustment parameters of a specific channel.
Request URI Definition
Table A-239 GET /ISAPI/Image/channels/<ID>/color
Method GET
Description Get the image adjustment parameters of a specific channel.
247
Intelligent Security API (General) Developer Guide
Query None.
Request None.
Response Succeeded: XML_Color
Failed: XML_ResponseStatus
Table A-240 PUT /ISAPI/Image/channels/<ID>/color
Method PUT
Description Set the image adjustment parameters of a specific channel.
Query None.
Request XML_Color
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the channel No.
A.4.7 /ISAPI/Image/channels/<ID>/color/capabilities
Get the image adjustment capability of a specified channel.
Request URI Definition
Table A-241 GET /ISAPI/Image/channels/<ID>/color/capabilities
Method GET
Description Get the image adjustment capability of a specified channel.
Query None.
Request None.
Response XML_Cap_Color
Remarks
The <ID> in the request URI refers to the channel No.
A.4.8 /ISAPI/Image/channels/<ID>/corridor
Operations about image rotate mode configuration of a specific channel.
248
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-242 GET /ISAPI/Image/channels/<ID>/corridor
Method GET
Description Get image rotate mode of a specific channel.
Query None.
Request None.
Response Succeeded: XML_corridor
Failed: XML_ResponseStatus
Table A-243 PUT /ISAPI/Image/channels/<ID>/corridor
Method PUT
Description Get image rotate mode of a specific channel.
Query None.
Request XML_corridor
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the channel ID.
A.4.9 /ISAPI/Image/channels/<ID>/dehaze
Operations about defog mode configuration of a specific channel.
Request URI Definition
Table A-244 GET /ISAPI/Image/channels/<ID>/dehaze
Method GET
Description Get defog mode parameters of a specific channel.
Query None.
Request None.
Response Succeeded: XML_Dehaze
Failed: XML_ResponseStatus
249
Intelligent Security API (General) Developer Guide
Table A-245 PUT /ISAPI/Image/channels/<ID>/dehaze
Method PUT
Description Set defog mode parameters of a specific channel.
Query None.
Request XML_Dehaze
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the channel ID.
A.4.10 /ISAPI/Image/channels/<ID>/EPTZ
Get or set the e-PTZ configuration.
Request URI Definition
Table A-246 GET /ISAPI/Image/channels/<ID>/EPTZ
Method GET
Description Get the e-PTZ parameters.
Query None.
Request None.
Response Succeeded: XML_EPTZ
Failed: XML_ResponseStatus
Table A-247 PUT /ISAPI/Image/channels/<ID>/EPTZ
Method PUT
Description Set the e-PTZ parameters.
Query None.
Request XML_EPTZ
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the channel No.
250
Intelligent Security API (General) Developer Guide
A.4.11 /ISAPI/Image/channels/<ID>/EPTZ/mode/capabilities?format=json
Get the capability of switching e-PTZ mode.
Request URI Definition
Table A-248 GET /ISAPI/Image/channels/<ID>/EPTZ/mode/capabilities?format=json
Method GET
Description Get the capability of switching e-PTZ mode.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_EPTZModeCap
Failed: JSON_ResponseStatus
Remarks
The <ID> in the request URI refers to the channel No.
A.4.12 /ISAPI/Image/channels/<ID>/EPTZ/mode?format=json
Get or set the configuration for switching e-PTZ mode.
Request URI Definition
Table A-249 GET /ISAPI/Image/channels/<ID>/EPTZ/mode?format=json
Method GET
Description Get the parameters of switching e-PTZ mode.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_EPTZMode
Failed: JSON_ResponseStatus
Table A-250 PUT /ISAPI/Image/channels/<ID>/EPTZ/mode?format=json
Method PUT
Description Set the parameters for switching e-PTZ mode.
Query format: determine the format of request or response message.
251
Intelligent Security API (General) Developer Guide
Request JSON_EPTZMode
Response JSON_ResponseStatus
Remarks
The <ID> in the request URI refers to the channel No.
A.4.13 /ISAPI/Image/channels/<ID>/exposure
Operations about exposure mode configuration of a specific channel.
Request URI Definition
Table A-251 GET /ISAPI/Image/channels/<ID>/exposure
Method GET
Description Get the exposure mode of a specific channel.
Query None.
Request None.
Response Succeeded: XML_Exposure
Failed: XML_ResponseStatus
Table A-252 PUT /ISAPI/Image/channels/<ID>/exposure
Method PUT
Description Set the exposure mode of a specific channel.
Query None.
Request XML_Exposure
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the channel ID.
A.4.14 /ISAPI/Image/channels/<ID>/focusConfiguration
Get or set the focus parameters of a specified channel.
252
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-253 GET /ISAPI/Image/channels/<ID>/focusConfiguration
Method GET
Description Get the focus parameters of a specified channel.
Query None.
Request None.
Response XML_FocusConfiguration
Table A-254 PUT /ISAPI/Image/channels/<ID>/focusConfiguration
Method PUT
Description Set the focus parameters of a specified channel.
Query None.
Request XML_FocusConfiguration
Response XML_ResponseStatus
A.4.15 /ISAPI/Image/channels/<ID>/focusConfiguration/capabilities
Get the focus configuration capability.
Request URI Definition
Table A-255 GET /ISAPI/Image/channels/<ID>/focusConfiguration/capabilities
Method GET
Description Get the focus configuration capability.
Query None.
Request None.
Response Succeeded: XML_Cap_FocusConfiguration
Failed: XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the channel No.
A.4.16 /ISAPI/Image/channels/<ID>/focusConfiguration/status?format=json
Get the focus status.
253
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-256 GET /ISAPI/Image/channels/<ID>/focusConfiguration/status?format=json
Method GET
Description Get the focus status.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_FocusStatus
Failed: JSON_ResponseStatus
A.4.17 /ISAPI/Image/channels/<ID>/gain
Operations about gain configuration in exposure of a specific channel.
Request URI Definition
Table A-257 GET /ISAPI/Image/channels/<ID>/gain
Method GET
Description Get gain parameters in exposure of a specific channel.
Query None.
Request None.
Response Succeeded: XML_Gain
Failed: XML_ResponseStatus
Table A-258 PUT /ISAPI/Image/channels/<ID>/gain
Method PUT
Description Set gain parameters in exposure of a specific channel.
Query None.
Request XML_Gain
Response XML_ResponseStatus
Remarks
• The <ID> in the request URI refers to the channel ID.
• PUT method is only valid when the node <ExposureType> in the message XML_Exposure is set
to "GainFirst".
254
Intelligent Security API (General) Developer Guide
A.4.18 /ISAPI/Image/channels/<ID>/imageCap
Get the image capability of a specific channel.
Request URI Definition
Table A-259 GET /ISAPI/Image/channels/<ID>/imageCap
Method GET
Description Get the image capability of a specific channel.
Query None.
Request NULL.
Response XML_ImageCap
A.4.19 /ISAPI/Image/channels/<ID>/ImageFlip
Operations about the image flipping status of a specific channel.
Request URI Definition
Table A-260 GET /ISAPI/Image/channels/<ID>/ImageFlip
Method GET
Description Get the image flipping status of a specific channel.
Query None.
Request None.
Response Succeeded: XML_ImageFlip
Failed: XML_ResponseStatus
Table A-261 PUT /ISAPI/Image/channels/<ID>/ImageFlip
Method PUT
Description Update the image flipping status of a specific channel.
Query None.
Request XML_ImageFlip
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the channel No.
255
Intelligent Security API (General) Developer Guide
A.4.20 /ISAPI/Image/channels/<ID>/imageMode/<ID>
Get the default configuration parameters of a specific image mode of a specific channel.
Request URI Definition
Table A-262 GET /ISAPI/Image/channels/<ID>/imageMode/<ID>
Method GET
Description Get the default configuration parameters of a specific image mode of
a specific channel.
Query None.
Request None.
Response XML_ImageMode
Remarks
This function is not supported by the traffic camera.
A.4.21 /ISAPI/Image/channels/<ID>/imageModes
Get the default image mode parameters of a specific channel.
Request URI Definition
Table A-263 GET /ISAPI/Image/channels/<ID>/imageModes
Method GET
Description Get the default image mode parameters of a specific channel.
Query None.
Request None.
Response XML_ImageModeList
Remarks
• This API is used to get default image mode configuration parameters. For different scenes, you
are recommended to set different image mode parameters for the device.
• The image mode is not supported by the traffic camera.
A.4.22 /ISAPI/Image/channels/<ID>/IrcutFilter
Operations about day/night auto switch configuration of a specific channel.
256
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-264 GET /ISAPI/Image/channels/<ID>/IrcutFilter
Method GET
Description Get day/night auto switch parameters of a specific channel.
Query None.
Request None.
Response Succeeded: XML_IrcutFilter
Failed: XML_ResponseStatus
Table A-265 PUT /ISAPI/Image/channels/<ID>/IrcutFilter
Method PUT
Description Set day/night auto switch parameters of a specific channel.
Query None.
Request XML_IrcutFilter
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the channel ID.
A.4.23 /ISAPI/Image/channels/<ID>/ISPMode
Operations about the day/night mode configuration of a specific channel.
Request URI Definition
Table A-266 GET /ISAPI/Image/channels/<ID>/ISPMode
Method GET
Description Get the day/night mode parameters of a specific channel.
Query None.
Request None.
Response Succeeded: XML_ISPMode
Failed: XML_ResponseStatus
257
Intelligent Security API (General) Developer Guide
Table A-267 PUT /ISAPI/Image/channels/<ID>/ISPMode
Method PUT
Description Set the day/night mode parameters of a specific channel.
Query None.
Request XML_ISPMode
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the channel No.
A.4.24 /ISAPI/Image/channels/<ID>/lensDistortionCorrection
Get or set parameters of image distortion correction.
Request URI Definition
Table A-268 GET /ISAPI/Image/channels/<ID>/lensDistortionCorrection
Method GET
Description Get parameters of image distortion correction.
Query None.
Request None.
Response Succeeded: XML_LensDistortionCorrection
Failed: XML_ResponseStatus
Table A-269 PUT /ISAPI/Image/channels/<ID>/lensDistortionCorrection
Method PUT
Description Set parameters of image distortion correction.
Query None.
Request XML_LensDistortionCorrection
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the video input channel ID.
258
Intelligent Security API (General) Developer Guide
A.4.25 /ISAPI/Image/channels/<ID>/lensDistortionCorrection/capabilities
Get capability of image distortion correction.
Request URI Definition
Table A-270 GET /ISAPI/Image/channels/<ID>/lensDistortionCorrection/capabilities
Method GET
Description Get capability of image distortion correction.
Query None.
Request None.
Response Succeeded: XML_Cap_LensDistortionCorrection
Failed: XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the video input channel ID.
A.4.26 /ISAPI/Image/channels/<ID>/mountingScenario
Operations about the mounting scenario mode of a camera.
Request URI Definition
Table A-271 GET /ISAPI/Image/channels/<ID>/mountingScenario
Method GET
Description Get the mounting scenario mode of a camera.
Query None.
Request None.
Response XML_MountingScenario
Table A-272 PUT /ISAPI/Image/channels/<ID>/mountingScenario
Method PUT
Description Set the mounting scenario mode of a camera.
Query None.
Request XML_MountingScenario
Response XML_ResponseStatus
259
Intelligent Security API (General) Developer Guide
Remarks
• The <ID> in the request URI refers to channel ID.
• The image parameters should be obtained again when mounting scenario mode changes.
A.4.27 /ISAPI/Image/channels/<ID>/mountingScenario/capabilities
Get the capability of configurations of mounting scenario mode.
Request URI Definition
Table A-273 GET /ISAPI/Image/channels/<ID>/mountingScenario/capabilities
Method GET
Description Get the capability of configurations of mounting scenario mode.
Query None.
Request None.
Response XML_Cap_MountingScenario
Remarks
The <ID> in the request URI refers to channel ID.
A.4.28 /ISAPI/Image/channels/<ID>/noiseReduce
Operations about 3D DNR (Digital Noise Reduction) configuration in auto mode of a specific
channel.
Request URI Definition
Table A-274 GET /ISAPI/Image/channels/<ID>/noiseReduce
Method GET
Description Get 3D DNR (Digital Noise Reduction) parameters in auto mode of a
specific channel.
Query None.
Request None.
Response Succeeded: XML_NoiseReduce
Failed: XML_ResponseStatus
260
Intelligent Security API (General) Developer Guide
Table A-275 PUT /ISAPI/Image/channels/<ID>/noiseReduce
Method PUT
Description Set 3D DNR (Digital Noise Reduction) parameters in auto mode of a
specific channel.
Query None.
Request XML_NoiseReduce
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the channel ID.
A.4.29 /ISAPI/Image/channels/<ID>/Palettes
Get or set the palettes parameters.
Request URI Definition
Table A-276 GET /ISAPI/Image/channels/<ID>/Palettes
Method GET
Description Get the palettes configuration parameters.
Query None.
Request None.
Response XML_Palettes
Table A-277 PUT /ISAPI/Image/channels/<ID>/Palettes
Method PUT
Description Set the palettes parameters.
Query None.
Request None.
Response XML_ResponseStatus
A.4.30 /ISAPI/Image/channels/<ID>/powerLineFrequency
Operations about image standard configuration of a specific channel.
261
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-278 GET /ISAPI/Image/channels/<ID>/powerLineFrequency
Method GET
Description Get image standard parameters of a specific channel.
Query None.
Request None.
Response Succeeded: XML_powerLineFrequency
Failed: XML_ResponseStatus
Table A-279 PUT /ISAPI/Image/channels/<ID>/powerLineFrequency
Method PUT
Description Set image standard parameters of a specific channel.
Query None.
Request XML_powerLineFrequency
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the channel ID.
A.4.31 /ISAPI/Image/channels/<ID>/regionalFocus
Focus on a specific region during live view.
Request URI Definition
Table A-280 GET /ISAPI/Image/channels/<ID>/regionalFocus
Method PUT
Description Focus on a specific region during live view.
Query None.
Request XML_RegionalFocus
Response XML_ResponseStatus
Remarks
The <ID> in the URI is the channel ID.
262
Intelligent Security API (General) Developer Guide
A.4.32 /ISAPI/Image/channels/<ID>/reset
Reset the image parameters of a specific channel.
Request URI Definition
Table A-281 PUT /ISAPI/Image/channels/<ID>/reset
Method PUT
Description Reset the image parameters of a specific channel.
Query None.
Request None.
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the channel ID.
A.4.33 /ISAPI/Image/channels/<ID>/restore
Restore the image parameters of a specific channel to default settings.
Request URI Definition
Table A-282 PUT /ISAPI/Image/channels/<ID>/restore
Method PUT
Description Restore the image parameters of a specific channel to default
settings.
Query None.
Request None.
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the channel ID.
A.4.34 /ISAPI/Image/channels/<ID>/sharpness
Operations about the sharpness parameters of s specific channel.
263
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-283 GET /ISAPI/Image/channels/<ID>/sharpness
Method GET
Description Get the sharpness parameters of s specific channel.
Query None.
Request None.
Response Succeeded: XML_Sharpness
Failed: XML_ResponseStatus
Table A-284 PUT /ISAPI/Image/channels/<ID>/sharpness
Method PUT
Description Set the sharpness parameters of s specific channel.
Query None.
Request XML_Sharpness
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the channel ID.
A.4.35 /ISAPI/Image/channels/<ID>/shutter
Operations about shutter configuration in exposure of a specific channel.
Request URI Definition
Table A-285 GET /ISAPI/Image/channels/<ID>/shutter
Method GET
Description Get shutter parameters in exposure of a specific channel.
Query None.
Request None.
Response Succeeded: XML_Shutter
Failed: XML_ResponseStatus
264
Intelligent Security API (General) Developer Guide
Table A-286 PUT /ISAPI/Image/channels/<ID>/shutter
Method PUT
Description Set shutter parameters in exposure of a specific channel.
Query None.
Request XML_Shutter
Response XML_ResponseStatus
Remarks
• The <ID> in the request URI refers to the channel ID.
• PUT method is only valid when the node <ExposureType> in the message XML_Exposure is set
to "ShutterFirst".
A.4.36 /ISAPI/Image/channels/<ID>/supplementLight
Get or set supplement light parameters by channel.
Request URI Definition
Table A-287 GET /ISAPI/Image/channels/<ID>/supplementLight
Method GET
Description Get supplement light parameters by channel.
Query None.
Request None.
Response Succeeded: XML_SupplementLight
Failed: XML_ResponseStatus
Table A-288 PUT /ISAPI/Image/channels/<ID>/supplementLight
Method PUT
Description Set supplement light parameters by channel.
Query None.
Request XML_SupplementLight
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the channel ID.
265
Intelligent Security API (General) Developer Guide
A.4.37 /ISAPI/Image/channels/<ID>/supplementLight/capabilities
Get supplement light configuration capability by channel.
Request URI Definition
Table A-289 GET /ISAPI/Image/channels/<ID>/supplementLight/capabilities
Method GET
Description Get supplement light configuration capability by channel.
Query None.
Request None.
Response Succeeded: XML_Cap_SupplementLight
Failed: XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the channel ID.
A.4.38 /ISAPI/Image/channels/<ID>/targetEnhancement
Get or set the target enhancement parameters.
Request URI Definition
Table A-290 GET /ISAPI/Image/channels/<ID>/targetEnhancement
Method GET
Description Get the target enhancement parameters.
Query None.
Request None.
Response Succeeded: XML_TargetEnhancement
Failed: XML_ResponseStatus
Table A-291 PUT /ISAPI/Image/channels/<ID>/targetEnhancement
Method PUT
Description Set the target enhancement parameters.
Query None.
266
Intelligent Security API (General) Developer Guide
Request XML_TargetEnhancement
Response XML_ResponseStatus
Remarks
• This URI is used in combination with URI /ISAPI/Image/channels/<ID> .
• The <ID> in the request URI refers to the channel No.
A.4.39 /ISAPI/Image/channels/<ID>/targetEnhancement/capabilities
Get the target enhancement capability.
Request URI Definition
Table A-292 GET /ISAPI/Image/channels/<ID>/targetEnhancement/capabilities
Method GET
Description Get the target enhancement capability.
Query None.
Request None.
Response Succeeded: XML_TargetEnhancementCap
Failed: XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the channel No.
A.4.40 /ISAPI/Image/channels/<ID>/tempRange
Operation about temperature range parameters of the specified channel.
Request URI Definition
Table A-293 GET /ISAPI/Image/channels/<ID>/tempRange
Method GET
Description Get the temperature range parameters.
Query None.
Request None.
Response Succeeded: XML_tempRange
Failed: XML_ResponseStatus
267
Intelligent Security API (General) Developer Guide
Table A-294 PUT /ISAPI/Image/channels/<ID>/tempRange
Method PUT
Description Set the temperature range parameters.
Query None.
Request None.
Response Succeeded: XML_tempRange
Failed: XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the channel No.
A.4.41 /ISAPI/Image/channels/<ID>/tempRange/capabilities
Get the temperature range configuration capability of a specified channel.
Request URI Definition
Table A-295 GET
Method GET
Description Get the temperature range configuration capability of a specified
channel.
Query None.
Request None.
Response Succeeded: XML_Cap_tempRange
Failed: XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the channel No.
A.4.42 /ISAPI/Image/channels/<ID>/WDR
Operations about the WDR (Wide Dynamic Range) configuration of a specific channel.
268
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-296 GET /ISAPI/Image/channels/<ID>/WDR
Method GET
Description Get WDR (Wide Dynamic Range) parameters of a specific channel.
Query None.
Request None.
Response Succeeded: XML_WDR
Failed: XML_ResponseStatus
Table A-297 PUT /ISAPI/Image/channels/<ID>/WDR
Method GET
Description Set WDR (Wide Dynamic Range) parameters of a specific channel.
Query None.
Request XML_WDR
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the channel ID.
A.4.43 /ISAPI/Image/channels/<ID>/whiteBalance
Operations about the white balance parameters of s specific channel.
Request URI Definition
Table A-298 GET /ISAPI/Image/channels/<ID>/whiteBalance
Method GET
Description Get the white balance parameters of s specific channel.
Query None.
Request None.
Response Succeeded: XML_WhiteBalance
Failed: XML_ResponseStatus
269
Intelligent Security API (General) Developer Guide
Table A-299 PUT /ISAPI/Image/channels/<ID>/whiteBalance
Method PUT
Description Set the white balance parameters of s specific channel.
Query None.
Request XML_WhiteBalance
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the channel No.
A.4.44 /ISAPI/Image/channels/capabilities
Get the complete video and image configuration capability of all channels.
Request URI Definition
Table A-300 GET /ISAPI/Image/channels/capabilities
Method GET
Description Get the complete video and image configuration capability of all
channels.
Query None.
Request None.
Response Succeeded: XML_Cap_ImageChannel
Failed: XML_ResponseStatus
A.4.45 /ISAPI/Image/channels/imageModes
Get the configuration parameters of all image modes of all channels.
Request URI Definition
Table A-301 GET /ISAPI/Image/channels/imageModes
Method GET
Description Get the configuration parameters of all image modes of all channels.
Query None.
270
Intelligent Security API (General) Developer Guide
Request None.
Response Succeeded: XML_ImageModeList
Failed: XML_ResponseStatus
A.4.46 /ISAPI/Image/channels/imageModes/<ID>
Get the configuration parameters of all image modes of a specific channel.
Request URI Definition
Table A-302 GET /ISAPI/Image/channels/imageModes/<ID>
Method GET
Description Get the configuration parameters of all image modes of a specific
channel.
Query None.
Request None.
Response Succeeded: XML_ImageMode
Failed: XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the channel No. which is of type int.
A.5 /ISAPI/MasterSlaveTracking
A.5.1 /ISAPI/MasterSlaveTracking/capabilities
Get the master-slave tracking capability.
Request URI Definition
Table A-303 GET /ISAPI/MasterSlaveTracking/capabilities
Method GET
Description Get the master-slave tracking capability.
Query None.
Request None.
Response XML_MasterSlaveTrackingCap
271
Intelligent Security API (General) Developer Guide
A.5.2 /ISAPI/MasterSlaveTracking/channels/<ID>/slaveCamera/<ID>
Operations about the basic configuration of the PTZ camera.
Request URI Definition
Table A-304 GET /ISAPI/MasterSlaveTracking/channels/<ID>/slaveCamera/<ID>
Method GET
Description Get the basic configuration parameters of the PTZ camera.
Query None.
Request None.
Response XML_SlaveCamera
Table A-305 PUT /ISAPI/MasterSlaveTracking/channels/<ID>/slaveCamera/<ID>
Method PUT
Description Set the basic configuration parameters for the PTZ camera.
Query None.
Request XML_SlaveCamera
Response XML_ResponseStatus
Remarks
The first <ID> in the request URI refers to the channel No. The second <ID> in the request URI
refers to the PTZ camera ID which ranges from 1 to 4.
A.5.3 /ISAPI/MasterSlaveTracking/channels/<ID>/slaveCamera/<ID>/tracking
Operations about the tracking configuration of the PTZ camera.
Request URI Definition
Table A-306 GET /ISAPI/MasterSlaveTracking/channels/<ID>/slaveCamera/<ID>/tracking
Method GET
Description Get the tracking configuration parameters of the PTZ camera.
Query None.
Request None.
Response XML_Tracking
272
Intelligent Security API (General) Developer Guide
Table A-307 PUT /ISAPI/MasterSlaveTracking/channels/<ID>/slaveCamera/<ID>/tracking
Method PUT
Description Set the tracking configuration parameters for the PTZ camera.
Query None.
Request XML_Tracking
Response XML_ResponseStatus
Remarks
The first <ID> in the request URI refers to the channel No. The second <ID> in the request URI
refers to the PTZ camera ID.
A.5.4 /ISAPI/MasterSlaveTracking/channels/<ID>/slaveCamera/<ID>/trackingRatio
Set the tracking zoom ratio for the PTZ camera.
Request URI Definition
Table A-308 PUT /ISAPI/MasterSlaveTracking/channels/<ID>/slaveCamera/<ID>/trackingRatio
Method PUT
Description Set the tracking zoom ratio for the PTZ camera.
Query None.
Request None.
Response XML_ResponseStatus
A.5.5 /ISAPI/MasterSlaveTracking/channels/<ID>/slaveCamera/capabilities
Get the configuration capability of basic parameters for the PTZ camera.
Request URI Definition
Table A-309 GET /ISAPI/MasterSlaveTracking/channels/<ID>/slaveCamera/capabilities
Method GET
Description Get the configuration capability of basic parameters for the PTZ
camera.
Query None.
273
Intelligent Security API (General) Developer Guide
Request None.
Response XML_Cap_SalveCamera
Remarks
The <ID> in the request URI refers to the channel No.
A.5.6 /ISAPI/MasterSlaveTracking/channels/<ID>/slaveCameraStatus
Get the connection status of the PTZ camera.
Request URI Definition
Table A-310 GET /ISAPI/MasterSlaveTracking/channels/<ID>/slaveCameraStatus
Method GET
Description Get the connection status of the PTZ camera.
Query None.
Request None.
Response XML_SlaveCameraStatus
Remarks
The <ID> in the request URI refers to the PTZ camera ID.
A.5.7 /ISAPI/MasterSlaveTracking/channels/<ID>/tracking/capabilities
Get the tracking configuration capability of the PTZ camera.
Request URI Definition
Table A-311 GET /ISAPI/MasterSlaveTracking/channels/<ID>/tracking/capabilities
Method GET
Description Get the tracking configuration capability of the PTZ camera.
Query None.
Request None.
Response XML_Cap_Tracking
274
Intelligent Security API (General) Developer Guide
A.5.8 /ISAPI/MasterSlaveTracking/linkedTracking/capabilities?format=json
Get capability of configuring advanced parameters of linked tracking capture.
Request URI Definition
Table A-312 GET /ISAPI/MasterSlaveTracking/linkedTracking/capabilities?format=json
Method GET
Description Get capability of configuring advanced parameters of linked tracking
capture.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_LinkedTrackingCap
Failed: JSON_ResponseStatus
A.5.9 /ISAPI/MasterSlaveTracking/linkedTracking?format=json
Get or set the advanced parameters of linked tracking capture.
Request URI Definition
Table A-313 GET /ISAPI/MasterSlaveTracking/linkedTracking?format=json
Method GET
Description Get the advanced parameters of linked tracking capture.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_LinkedTracking
Failed: JSON_ResponseStatus
Table A-314 PUT /ISAPI/MasterSlaveTracking/linkedTracking?format=json
Method PUT
Description Set the advanced parameters of linked tracking capture.
Query format: determine the format of request or response message.
Request JSON_LinkedTracking
Response JSON_ResponseStatus
275
Intelligent Security API (General) Developer Guide
A.6 /ISAPI/SDT
A.6.1 /ISAPI/SDT/Management/capabilities?format=json
Get the intelligent management capability of the device.
Request URI Definition
Table A-315 GET /ISAPI/SDT/Management/capabilities?format=json
Method GET
Description Get the intelligent management capability of the device to check the
intelligent functions supported by the device.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_Cap_IntelliManagement
Failed: JSON_ResponseStatus
A.6.2 /ISAPI/SDT/Management/IntelligentSearch/capabilities?format=json
Get intelligent search capability.
Request URI Definition
Table A-316 GET /ISAPI/SDT/Management/IntelligentSearch/capabilities?format=json
Method GET
Description Get intelligent search capability.
Query format: determine the format of request or response message.
Request None
Response Succeeded: JSON_IntelligentSearchCap
Failed: JSON_ResponseStatus
A.6.3 /ISAPI/SDT/Management/IntelligentSearch?format=json
Start intelligent search.
276
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-317 POST /ISAPI/SDT/Management/IntelligentSearch?format=json
Method POST
Description Start intelligent search.
Query format: determine the format of request or response message.
Request JSON_IntelligentSearchCondition
Response Succeeded: JSON_IntelligentSearchResult
Failed: JSON_ResponseStatus
A.7 /ISAPI/PTZCtrl
A.7.1 /ISAPI/PTZCtrl/channels/<ID>
Get or set the single PTZ control parameters.
Request URI Definition
Table A-318 GET /ISAPI/PTZCtrl/channels/<ID>
Method GET
Description Get the single PTZ control parameters.
Query None
Request None
Response Succeeded: XML_PTZChannel
Failed: XML_ResponseStatus
Table A-319 PUT /ISAPI/PTZCtrl/channels/<ID>
Method PUT
Description Set the single PTZ control parameters.
Query None
Request XML_PTZChannel
Response XML_ResponseStatus
Remarks
The <ID> in the URI refers to the channel No.
277
Intelligent Security API (General) Developer Guide
A.7.2 /ISAPI/PTZCtrl/channels/<ID>/auxcontrols
Get or set all PTZ auxiliaries status.
Request URI Definition
Table A-320 GET /ISAPI/PTZCtrl/channels/<ID>/auxcontrols
Method GET
Description Get all PTZ auxiliaries status.
Query None.
Request None.
Response Succeeded: XML_PTZAuxList
Failed: XML_ResponseStatus
Table A-321 PUT /ISAPI/PTZCtrl/channels/<ID>/auxcontrols
Method PUT
Description Set all PTZ auxiliaries status.
Query None.
Request XML_PTZAuxList
Response XML_ResponseStatus
Remarks
The <ID> in the URI refers to the channel No.
A.7.3 /ISAPI/PTZCtrl/channels/<ID>/auxcontrols/<ID>
Get or set the specified PTZ auxiliary status.
Request URI Definition
Table A-322 GET /ISAPI/PTZCtrl/channels/<ID>/auxcontrols/<ID>
Method GET
Description Get the specified PTZ auxiliary status.
Query None.
Request None.
Response Succeeded: XML_PTZAux
278
Intelligent Security API (General) Developer Guide
Failed: XML_ResponseStatus
Table A-323 PUT /ISAPI/PTZCtrl/channels/<ID>/auxcontrols/<ID>
Method PUT
Description Set the specified PTZ auxiliary status.
Query None.
Request XML_PTZAux
Response XML_ResponseStatus
Remarks
• The first <ID> in the URI refers to the channel number.
• The second <ID> in refers to the auxiliary number, e.g., when there is only one wiper, the second
<ID> is "1", when there are multiple wipers, the second <ID> varies according to the
requirement.
A.7.4 /ISAPI/PTZCtrl/channels/<ID>/capabilities
Get the PTZ control capabilities.
Request URI Definition
Table A-324 GET /ISAPI/PTZCtrl/channels/ID/capabilities
Method GET
Description Get the PTZ control capabilities.
Query None
Request None.
Response Succeeded: XML_PTZChanelCap
Failed: XML_ResponseStatus
A.7.5 /ISAPI/PTZCtrl/channels/<ID>/EagleFocusing/auto/capabilities?format=json
Get the capability of rapid focus automatic calibration.
279
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-325 GET /ISAPI/PTZCtrl/channels/<ID>/EagleFocusing/auto/capabilities?format=json
Method GET
Description Get the capability of rapid focus automatic calibration.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_AutoEagleFocusingCap
Failed: JSON_ResponseStatus
Remarks
The <ID> in the URI refers to the channel ID.
A.7.6 /ISAPI/PTZCtrl/channels/<ID>/EagleFocusing/auto?format=json
Automatically calibrate for rapid focus.
Request URI Definition
Table A-326 GET /ISAPI/PTZCtrl/channels/<ID>/EagleFocusing/auto?format=json
Method GET
Description Automatically calibrate for rapid focus.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_AutoEagleFocusing
Failed: JSON_ResponseStatus
Remarks
The <ID> in the URI refers to the channel ID.
A.7.7 /ISAPI/PTZCtrl/channels/<ID>/EagleFocusing/capabilities
Get the rapid focus capability.
280
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-327 GET /ISAPI/PTZCtrl/channels/<ID>/EagleFocusing/capabilities
Method GET
Description Get the rapid focus capability.
Query None.
Request None.
Response Succeeded: XML_Cap_EagleFocusing
Failed: XML_ResponseStatus
Remarks
The <ID> in the URI refers to the channel ID.
A.7.8 /ISAPI/PTZCtrl/channels/<ID>/GPS?format=json
Control the device turn to corresponding place according to applied GPS information.
Request URI Definition
Table A-328 PUT /ISAPI/PTZCtrl/channels/<ID>/GPS?format=json
Method PUT
Description Control the device turn to corresponding place according to applied
GPS information.
Query format: determine the format of request or response message.
Request JSON_GPSInfo
Response JSON_ResponseStatus
Remarks
The <ID> in the URI refers to channel No.
A.7.9 /ISAPI/PTZCtrl/channels/<ID>/gyroVerify/capabilities?format=json
Get the gyroscope calibration capability.
281
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-329 GET /ISAPI/PTZCtrl/channels/<ID>/gyroVerify/ capabilities?format=json
Method GET
Description Get the gyroscope calibration capability.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_GyroVerifyCap
Failed: JSON_ResponseStatus
Remarks
The <ID> in the URI refers to channel No.
A.7.10 /ISAPI/PTZCtrl/channels/<ID>/gyroVerify?format=json
Set the gyroscope calibration parameters.
Request URI Definition
Table A-330 PUT /ISAPI/PTZCtrl/channels/<ID>/gyroVerify?format=json
Method PUT
Description Set the gyroscope calibration parameters.
Query format: determine the format of request or response message.
Request JSON_GyroVerify
Response JSON_ResponseStatus
Remarks
The <ID> in the URI refers to channel No.
A.7.11 /ISAPI/PTZCtrl/channels/<ID>/lensCorrection/capabilities?format=json
Get the lens correction capability.
282
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-331 GET /ISAPI/PTZCtrl/channels/<ID>/lensCorrection/capabilities?format=json
Method GET
Description Get the lens correction capability.
Query format: determine the format of request or response message.
Request None.
Response JSON_LensCorrectionCap
A.7.12 /ISAPI/PTZCtrl/channels/<ID>/lensCorrection?format=json
Get or set the configuration parameters of lens correction.
Request URI Definition
Table A-332 GET /ISAPI/PTZCtrl/channels/<ID>/lensCorrection?format=json
Method GET
Description Get the configuration parameters of lens correction.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_LensCorrection
Failed: XML_ResponseStatus
Table A-333 PUT /ISAPI/PTZCtrl/channels/<ID>/lensCorrection?format=json
Method PUT
Description Set the lens correction parameters.
Query format: determine the format of request or response message.
Request JSON_LensCorrection
Response XML_ResponseStatus
A.7.13 /ISAPI/PTZCtrl/channels/<ID>/lockPTZ
Operations about locking PTZ of a specific channel.
283
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-334 GET /ISAPI/PTZCtrl/channels/<ID>/lockPTZ
Method GET
Description Get the remaining time before unlocking PTZ of a specific channel.
Query None.
Request None.
Response XML_LockPTZ
Table A-335 PUT /ISAPI/PTZCtrl/channels/<ID>/lockPTZ
Method PUT
Description Lock PTZ of a specific channel.
Query None.
Request XML_LockPTZ
Response XML_ResponseStatus
A.7.14 /ISAPI/PTZCtrl/channels/<ID>/maxelevation
Get or set the max. tilt-angle parameters.
Request URI Definition
Table A-336 GET /ISAPI/PTZCtrl/channels/<ID>/maxelevation
Method GET
Description Get the max. tilt-angle configuration parameters
Query None.
Request None.
Response XML_MaxElevation
Table A-337 PUT /ISAPI/PTZCtrl/channels/<ID>/maxelevation
Method PUT
Description Set the max. tilt-angle
Query None.
Request XML_MaxElevation
Response XML_ResponseStatus
284
Intelligent Security API (General) Developer Guide
Remarks
The <ID> in the URI indicates the channel ID.
A.7.15 /ISAPI/PTZCtrl/channels/<ID>/maxelevation/capabilities
Get the max. tilt-angle capability.
Request URI Definition
Table A-338 GET /ISAPI/PTZCtrl/channels/<ID>/maxelevation/capabilities
Method GET
Description Get the max. tilt-angle capability.
Query None.
Request None.
Response XML_Cap_MaxElevation
Remarks
The <ID> in the URI indicates the channel ID.
A.7.16 /ISAPI/PTZCtrl/channels/<ID>/moveAutoTracking?format=json
Get or set moving object tracking status.
Request URI Definition
Table A-339 GET /ISAPI/PTZCtrl/channels/<ID>/moveAutoTracking?format=json
Method GET
Description Get moving object tracking status.
Query format: determine the format of request or response message.
Request None
Response Succeeded: JSON_MoveAutoTracking
Failed: JSON_ResponseStatus
Table A-340 PUT /ISAPI/PTZCtrl/channels/<ID>/moveAutoTracking?format=json
Method PUT
Description Set moving object tracking status.
Query format: determine the format of request or response message.
285
Intelligent Security API (General) Developer Guide
Request JSON_MoveAutoTracking
Response JSON_ResponseStatus
Remarks
The <ID> in the request URI refers to the PTZ channel ID.
A.7.17 /ISAPI/PTZCtrl/channels/<ID>/onepushfoucs/reset
Initialize the lens.
Request URI Definition
Table A-341 PUT /ISAPI/PTZCtrl/channels/<ID>/onepushfoucs/reset
Method PUT
Description Initialize the lens.
Query None.
Request None.
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the channel No.
A.7.18 /ISAPI/PTZCtrl/channels/<ID>/parkaction
Get or set the parking parameters.
Request URI Definition
Table A-342 GET /ISAPI/PTZCtrl/channels/<ID>/parkaction
Method GET
Description Get the parking parameters.
Query None.
Request None.
Response Succeeded: XML_ParkAction
Failed: XML_ResponseStatus
286
Intelligent Security API (General) Developer Guide
Table A-343 PUT /ISAPI/PTZCtrl/channels/<ID>/parkaction
Method PUT
Description Set the parking parameters.
Query None.
Request XML_ParkAction
Response XML_ResponseStatus
A.7.19 /ISAPI/PTZCtrl/channels/<ID>/parkaction/capabilities
Get the parking configuration capability.
Request URI Definition
Table A-344 GET /ISAPI/PTZCtrl/channels/<ID>/parkaction/capabilities
Method GET
Description Get the parking configuration capability.
Query None.
Request None.
Response Succeeded: XML_Cap_ParkAction
Failed: XML_ResponseStatus
A.7.20 /ISAPI/PTZCtrl/Channels/<ID>/position3D
Control 3D positioning.
Request URI Definition
Table A-345 PUT /ISAPI/PTZCtrl/Channels/<ID>/position3D
Method PUT
Description Control 3D positioning.
Query None
Request XML_Position3D
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to channel ID.
287
Intelligent Security API (General) Developer Guide
A.7.21 /ISAPI/PTZCtrl/channels/<ID>/presets
Operations about all presets' configurations.
Request URI Definition
Table A-346 GET /ISAPI/PTZCtrl/channels/<ID>/presets
Method GET
Description Get all presets' parameters.
Query None.
Request None.
Response Succeeded: XML_PTZPresetList
Failed: XML_ResponseStatus
Table A-347 POST /ISAPI/PTZCtrl/channels/<ID>/presets
Method POST
Description Add a preset.
Query None.
Request XML_Set_PTZPreset
Response XML_ResponseStatus
Table A-348 DELETE /ISAPI/PTZCtrl/channels/<ID>/presets
Method DELETE
Description Delete all presets.
Query None.
Request None.
Response XML_ResponseStatus
Remarks
The <ID> in the URI is the camera ID.
A.7.22 /ISAPI/PTZCtrl/channels/<ID>/presets/<ID>
Get or set the a preset's parameters, or delete a preset.
288
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-349 GET /ISAPI/PTZCtrl/channels/<ID>/presets/<ID>
Method GET
Description Get a preset's parameters.
Query None.
Request None.
Response Succeeded: XML_PTZPreset
Failed: XML_ResponseStatus
Table A-350 PUT /ISAPI/PTZCtrl/channels/<ID>/presets/<ID>
Method PUT
Description Set a preset's parameters.
Query None.
Request XML_Set_PTZPreset
Response XML_ResponseStatus
Table A-351 DELETE /ISAPI/PTZCtrl/channels/<ID>/presets/<ID>
Method DELETE
Description Delete a preset.
Query None.
Request None.
Response XML_ResponseStatus
A.7.23 /ISAPI/PTZCtrl/channels/<ID>/PTZOSDDisplay
Get or set the on-screen display parameters of the PTZ status.
Request URI Definition
Table A-352 GET /ISAPI/PTZCtrl/channels/<ID>/PTZOSDDisplay
Method GET
Description Get the on-screen display parameters of the PTZ status.
Query None.
289
Intelligent Security API (General) Developer Guide
Request None.
Response Succeeded: XML_PTZOSDDisplay
Failed: XML_ResponseStatus
Table A-353 PUT /ISAPI/PTZCtrl/channels/<ID>/PTZOSDDisplay
Method PUT
Description Set the on-screen display parameters of the PTZ status.
Query None.
Request XML_PTZOSDDisplay
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the PTZ channel No.
A.7.24 /ISAPI/PTZCtrl/channels/<ID>/save
Get and save the PTZ position information of the current channel.
Request URI Definition
Table A-354 GET /ISAPI/PTZCtrl/channels/<ID>/save
Method GET
Description Get and save the PTZ position information (including panning, tilting,
and zooming parameters) of the current channel.
Query None.
Request None.
Response Succeeded: XML_PTZStatus
Failed: XML_ResponseStatus
A.7.25 /ISAPI/PTZCtrl/channels/<ID>/save?format=json
Save the PTZ position information of the current channel.
290
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-355 PUT /ISAPI/PTZCtrl/channels/<ID>/save?format=json
Method PUT
Description Save the PTZ position information, including panning, tilting, and
zooming parameters, of the current channel.
Query format: determine the format of request or response message.
Request None.
Response JSON_ResponseStatus
Remarks
The <ID> in the request URI refers to the PTZ channel No.
A.7.26 /ISAPI/PTZCtrl/channels/<ID>/saveptzpoweroff
Get or set parameters of power-off memory.
Request URI Definition
Table A-356 GET /ISAPI/PTZCtrl/channels/<ID>/saveptzpoweroff
Method GET
Description Get parameters of power-off memory.
Query None.
Request None.
Response Succeeded: XML_savePtzPoweroff
Failed: XML_ResponseStatus
Table A-357 PUT /ISAPI/PTZCtrl/channels/<ID>/saveptzpoweroff
Method PUT
Description Get parameters of power-off memory.
Query None.
Request XML_savePtzPoweroff
Response XML_ResponseStatus
291
Intelligent Security API (General) Developer Guide
A.7.27 /ISAPI/PTZCtrl/channels/<ID>/status
Get the PTZ status of a specific channel of the device.
Request URI Definition
Table A-358 GET /ISAPI/PTZCtrl/channels/<ID>/status
Method GET
Description Get the PTZ status of a specific channel of the device.
Query None.
Request None.
Response Succeeded: XML_PTZStatus
Failed: XML_ResponseStatus
A.7.28 /ISAPI/PTZCtrl/channels/<ID>/trackingRatio/capabilities?format=json
Get the configuration capability of tracking parameters.
Request URI Definition
Table A-359 GET /ISAPI/PTZCtrl/channels/<ID>/trackingRatio/capabilities?format=json
Method GET
Description Get the configuration capability of tracking parameters.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_TrackingRatioCap
Failed: JSON_ResponseStatus
A.7.29 /ISAPI/PTZCtrl/channels/<ID>/trackingRatio?format=json
Get or set the tracking parameters.
Request URI Definition
Table A-360 GET /ISAPI/PTZCtrl/channels/<ID>/trackingRatio?format=json
Method GET
Description Get the tracking parameters.
292
Intelligent Security API (General) Developer Guide
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_TrackingRatio
Failed: JSON_ResponseStatus
Table A-361 PUT /ISAPI/PTZCtrl/channels/<ID>/trackingRatio?format=json
Method PUT
Description Set the tracking parameters.
Query format: determine the format of request or response message.
Request JSON_TrackingRatio
Response JSON_ResponseStatus
A.7.30 /ISAPI/PTZCtrl/channels/<ID>/zoomFocus
Operations about zoom and focus coordinates configuration for zoom camera module.
Request URI Definition
Table A-362 GET /ISAPI/PTZCtrl/channels/<ID>/zoomFocus
Method GET
Description Get parameters of zoom and focus coordinates of zoom camera
module.
Query None.
Request None.
Response XML_ZoomFocus
Table A-363 PUT /ISAPI/PTZCtrl/channels/<ID>/zoomFocus
Method PUT
Description Set parameters of zoom and focus coordinates of zoom camera
module.
Query None.
Request XML_ZoomFocus
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the channel ID.
293
Intelligent Security API (General) Developer Guide
A.8 /ISAPI/Security
A.8.1 /ISAPI/Security/adminAccesses
Get or set parameters of all protocols supported by device.
Request URI Definition
Table A-364 GET /ISAPI/Security/adminAccesses
Method GET
Description Get parameters of all protocols supported by device.
Query None.
Request None.
Response Succeeded: XML_AdminAccessProtocolList
Failed: XML_ResponseStatus
Table A-365 PUT /ISAPI/Security/adminAccesses
Method PUT
Description Set parameters of all protocols supported by device.
Query None.
Request XML_AdminAccessProtocolList
Response XML_ResponseStatus
A.8.2 /ISAPI/Security/adminAccesses/<ID>
Get or set the parameters of a specific protocol that supported by device.
Request URI Definition
Table A-366 GET /ISAPI/Security/adminAccesses/<ID>
Method GET
Description Get the parameters of a specific protocol that supported by device.
Query None.
Request None.
Response Succeeded: XML_AdminAccessProtocol
294
Intelligent Security API (General) Developer Guide
Failed: XML_ResponseStatus
Table A-367 PUT /ISAPI/Security/adminAccesses/<ID>
Method PUT
Description Set the parameters of a specific protocol that supported by device.
Query None.
Request XML_AdminAccessProtocol
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the protocol ID.
A.8.3 /ISAPI/Security/adminAccesses/capabilities
Get device protocol capability.
Request URI Definition
Table A-368 GET /ISAPI/Security/adminAccesses/capabilities
Method GET
Description Get device protocol capability.
Query None.
Request None.
Response Succeeded: XML_Cap_AdminAccessProtocolList
Failed: XML_ResponseStatus
A.8.4 /ISAPI/Security/advanced?format=json
Get or set advacned parameters of security.
Request URI Definition
Table A-369 GET /ISAPI/Security/advanced?format=json
Method GET
Description Get advanced configuration parameters of security.
Query format: determine the format of request or response message.
295
Intelligent Security API (General) Developer Guide
Request None.
Response Succeeded: JSON_SecurityAdvanced
Failed: JSON_ResponseStatus
Table A-370 PUT /ISAPI/Security/advanced?format=json
Method PUT
Description Set advanced parameters of security.
Query format: determine the format of request or response message.
Request JSON_SecurityAdvanced
Response JSON_ResponseStatus
A.8.5 /ISAPI/Security/capabilities
Get the security capability of the device.
Request URI Definition
Table A-371 GET /ISAPI/Security/capabilities
Method GET
Description Get the security capability of the device.
Query username: user name, string, it should be encrypted.
Request None.
Response Succeeded: XML_SecurityCap
Failed: XML_ResponseStatus
A.8.6 /ISAPI/Security/certificate/select/<functinName>?format=json
Get or set the parameters of selecting the certificate.
Request URI Definition
Table A-372 GET /ISAPI/Security/certificate/select/<functinName>?format=json
Method GET
Description Get the parameters of selecting the certificate.
Query format: determine the format of request or response message.
296
Intelligent Security API (General) Developer Guide
Request None.
Response Succeeded: JSON_CertificateSelect
Failed: JSON_ResponseStatus
Table A-373 PUT /ISAPI/Security/certificate/select/<functinName>?format=json
Method PUT
Description Set the parameters of selecting the certificate.
Query format: determine the format of request or response message.
Request JSON_CertificateSelect
Response JSON_ResponseStatus
Remarks
The <functinName> in the request URI refers to the function name.
A.8.7 /ISAPI/Security/certificate/select/capabilities?format=json
Get the capability of selecting the certificate.
Request URI Definition
Table A-374 GET /ISAPI/Security/certificate/select/capabilities?format=json
Method GET
Description Get the capability of selecting the certificate.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_Cap_CertificateSelect
Failed: JSON_ResponseStatus
A.8.8 /ISAPI/Security/challenge
Get the random challenge strings.
Request URI Definition
Table A-375 POST /ISAPI/Security/challenge
Method POST
Description Get the random challenge strings.
297
Intelligent Security API (General) Developer Guide
Query None.
Request XML_PublicKey
Response XML_Challenge
A.8.9 /ISAPI/Security/CommuMode/capabilities?format=json
Get the configuration capability of the security mode level of the private protocol.
Request URI Definition
Table A-376 GET /ISAPI/Security/CommuMode/capabilities?format=json
Method GET
Description Get the configuration capability of the security mode level of the
private protocol.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_Cap_CommuMode
Failed: JSON_ResponseStatus
A.8.10 /ISAPI/Security/CommuMode?format=json
Operations about the configuration of the security mode level of the private protocol.
Request URI Definition
Table A-377 GET /ISAPI/Security/CommuMode?format=json
Method GET
Description Get the parameters of the security mode level of the private
protocol.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_CommuMode
Failed: JSON_ResponseStatus
298
Intelligent Security API (General) Developer Guide
Table A-378 PUT /ISAPI/Security/CommuMode?format=json
Method PUT
Description Set the parameters of the security mode level of the private protocol.
Query format: determine the format of request or response message.
Request JSON_CommuMode
Response JSON_ResponseStatus
A.8.11 /ISAPI/Security/deviceCertificate
Import network certificate to device.
Request URI Definition
Table A-379 PUT /ISAPI/Security/deviceCertificate
Method PUT
Description Import network certificate to device.
Query type: certificate type. It can be set to "wpa" (upload WPA
certificates), "ieee802.1x" (upload ieee802.1x certificates),
"securityLog" (upload CA certificates of security logs) or "LogServer"
(log server certificate); if no value is assigned to this parameter, it
indicates that the WPA certificate will be imported.
Request Certificate data (in binary format)
Response XML_ResponseStatus
Remarks
The imported certificate type is determined by "Content-type" in binary certificate data, which
contains "x-x509-ca-cert", "x-x509-client-cert", and "x-x509-client-key".
A.8.12 /ISAPI/Security/deviceCertificate/capabilities?format=json
Get the CA (Certificate Authority) certificate capability.
Request URI Definition
Table A-380 GET /ISAPI/Security/deviceCertificate/capabilities?format=json
Method GET
Description Get the CA (Certificate Authority) certificate capability.
299
Intelligent Security API (General) Developer Guide
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_DeviceCertificateCap
Failed: JSON_ResponseStatus
A.8.13 /ISAPI/Security/deviceCertificate/certificateRevocation/capabilities?
format=json
Get the configuration capability of the certificate expiry alarm.
Request URI Definition
Table A-381 GET /ISAPI/Security/deviceCertificate/certificateRevocation/capabilities?
format=json
Method GET
Description Get the configuration capability of the certificate expiry alarm.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_CertificateRevocationCap
Failed: JSON_ResponseStatus
A.8.14 /ISAPI/Security/deviceCertificate/certificateRevocation?format=json
Get or set the configuration of certificate expiry alarm.
Request URI Definition
Table A-382 GET /ISAPI/Security/deviceCertificate/certificateRevocation?format=json
Method GET
Description Get the parameters of certificate expiry alarm.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_CertificateRevocation
Failed: JSON_ResponseStatus
300
Intelligent Security API (General) Developer Guide
Table A-383 PUT /ISAPI/Security/deviceCertificate/certificateRevocation?format=json
Method PUT
Description Set the parameters of certificate expiry alarm.
Query format: determine the format of request or response message.
Request JSON_CertificateRevocation
Response JSON_ResponseStatus
A.8.15 /ISAPI/Security/deviceCertificate/certificates/<customID>?format=json
Get or delete the information of a specific device certificate.
Request URI Definition
Table A-384 GET /ISAPI/Security/deviceCertificate/certificates/<customID>?format=json
Method GET
Description Get the information of a specific device certificate.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_DeviceCertificate
Failed: JSON_ResponseStatus
Table A-385 DELETE /ISAPI/Security/deviceCertificate/certificates/<customID>?format=json
Method DELETE
Description Delete the information of a specific device certificate.
Query format: determine the format of request or response message.
Request None.
Response JSON_ResponseStatus
Remarks
The <customID> in the request URI refers to the custom certificate ID.
A.8.16 /ISAPI/Security/deviceCertificate/certificates/<ID>
Delete the certificate of a specific device.
301
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-386 DELETE /ISAPI/Security/deviceCertificate/certificates/<ID>
Method DELETE
Description Delete the certificate of a specific device.
Query None.
Request None.
Response XML_ResponseStatus
Remarks
The <ID> in the request URI is the device ID returned when searching certificate information.
A.8.17 /ISAPI/Security/deviceCertificate/certificates/<ID>/recreate?format=json
Regenerate a specific abnormal certificate.
Request URI Definition
Table A-387 PUT /ISAPI/Security/deviceCertificate/certificates/<ID>/recreate?format=json
Method PUT
Description Regenerate a specific certificate for authentication client.
Query format: determine the format of request or response message.
Request None.
Response JSON_ResponseStatus
Remarks
• The <ID> in the request URI refers to the certificate ID.
• This URI is only supported by HTTPS certificate, and it is available when the certificate exception
is detected.
A.8.18 /ISAPI/Security/deviceCertificate/certificates/<ID>/status?format=json
Get the status of a specific certificate.
302
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-388 GET /ISAPI/Security/deviceCertificate/certificates/<ID>/status?format=json
Method GET
Description Get the status of a specific certificate.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_DeviceCertificateStatus
Failed: JSON_ResponseStatus
Remarks
The <ID> in the request URI is the certificate ID, which is generated and returned by device.
A.8.19 /ISAPI/Security/deviceCertificate/certificates/capabilities?format=json
Get certificate search capability.
Request URI Definition
Table A-389 GET /ISAPI/Security/deviceCertificate/certificates/capabilities?format=json
Method GET
Description Get certificate search capability.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_DeviceCertificatesCap
Failed: JSON_ResponseStatus
A.8.20 /ISAPI/Security/deviceCertificate/certificates/recreate?format=json
Regenerate all abnormal certificates.
Request URI Definition
Table A-390 PUT /ISAPI/Security/deviceCertificate/certificates/recreate?format=json
Method PUT
Description Regenerate all abnormal certificates.
303
Intelligent Security API (General) Developer Guide
Query format: determine the format of request or response message.
Request None.
Response JSON_ResponseStatus
Remarks
This URI is only supported by HTTPS certificate, and it is available when the certificate exception is
detected.
A.8.21 /ISAPI/Security/deviceCertificate/certificates/status?format=json
Get status of all certificates.
Request URI Definition
Table A-391 GET /ISAPI/Security/deviceCertificate/certificates/status?format=json
Method GET
Description Get status of all certificates.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_DeviceCertificateStatusList
Failed: JSON_ResponseStatus
A.8.22 /ISAPI/Security/deviceCertificate/certificates?format=json
Get device certificate information in a batch.
Request URI Definition
Table A-392 GET /ISAPI/Security/deviceCertificate/certificates?format=json
Method GET
Description Get device certificate information in a batch.
Query format: determine the format of request or response message.
type: certificate type, it can be set to "wpa" (get all WPA certificates),
"ieee802.1x" (get all ieee802.1x certificates), and "securityLog" (get
all CA certificates of security logs); if no value is assigned to type, all
CA certificates will be searched and obtained.
304
Intelligent Security API (General) Developer Guide
Request None.
Response Succeeded: JSON_DeviceCertificates
Failed: JSON_ResponseStatus
A.8.23 /ISAPI/Security/deviceCertificate/selfSignCert
Export the device's self-signed certificate.
Request URI Definition
Table A-393 GET /ISAPI/Security/deviceCertificate/selfSignCert
Method GET
Description Export the device's self-signed certificate.
Query None.
Request None.
Response Succeeded: Binary data.
Failed: XML_ResponseStatus
A.8.24 /ISAPI/Security/deviceCertificate?customID=
Import a CA (Certificate Authority) certificate to the device.
Request URI Definition
Table A-394 PUT /ISAPI/Security/deviceCertificate?customID=
Method PUT
Description Import a CA (Certificate Authority) certificate to the device. The CA
certificate is used for 802.1x (radius) with various authentication
mechanism.
Query customID: custom certificate ID, string, it consists of digits and
characters.
Request Certificate data (its format depends on the device).
Response XML_ResponseStatus
305
Intelligent Security API (General) Developer Guide
Remarks
• When importing CA certificate by calling this URI, the function of CA certificate will not be
distinguished. The CA certificate and its function will be bound together afterward.
• The imported certificate type is determined by "Content-type" in the certificate data, which
contains "x-x509-ca-cert" (CA certificate (root certificate)), "x-x509-client-cert" (client certificate),
and "x-x509-client-key" (client password).
A.8.25 /ISAPI/Security/doubleVerification/users/<ID>?format=json
Operations about a specified double verification user.
Request URI Definition
Table A-395 GET /ISAPI/Security/doubleVerification/users/<ID>?format=json
Method GET
Description Get a double verification user.
Query format: determine the format of request or response message.
security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
Request None.
Response JSON_User
Table A-396 PUT /ISAPI/Security/doubleVerification/users/<ID>?format=json
Method PUT
Description Set a double verification user.
Query format: determine the format of request or response message.
security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
306
Intelligent Security API (General) Developer Guide
Request JSON_User
Response JSON_ResponseStatus
Table A-397 DELETE /ISAPI/Security/doubleVerification/users/<ID>?format=json
Method DELETE
Description Delete a double verification user.
Query format: determine the format of request or response message.
security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
Request None.
Response JSON_ResponseStatus
Remarks
The <ID> in the URI indicates the user ID.
A.8.26 /ISAPI/Security/doubleVerification/users/capabilities?format=json
Get the double verification configuration capability.
Request URI Definition
Table A-398 GET /ISAPI/Security/doubleVerification/users/capabilities?format=json
Method GET
Description Get the double verification configuration capability.
Query format: determine the format of request or response message.
Request None.
Response JSON_UserCap
A.8.27 /ISAPI/Security/doubleVerification/users?format=json
Get all double verification users and add a double verification user.
307
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-399 GET /ISAPI/Security/doubleVerification/users?format=json
Method GET
Description Get all double verification users.
Query format: determine the format of request or response message.
security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
Request None.
Response JSON_UserList
Table A-400 POST /ISAPI/Security/doubleVerification/users?format=json
Method POST
Description Add a double verification user.
Query format: determine the format of request or response message.
security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
Request JSON_User
Response Succeeded: JSON_ResponseStatus and JSON_id
Failed: JSON_ResponseStatus
A.8.28 /ISAPI/Security/doubleVerification/UsersPermission/<ID>?format=json
Get and set the permission of double verification user.
308
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-401 GET /ISAPI/Security/doubleVerification/UsersPermission/<ID>?format=json
Method GET
Description Get the configuration parameters of double verification user
permission.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_UserPermission
Failed: JSON_ResponseStatus
Table A-402 PUT /ISAPI/Security/doubleVerification/UsersPermission/<ID>?format=json
Method PUT
Description Set the double verification user permission.
Query format: determine the format of request or response message.
Request JSON_UserPermission
Response JSON_ResponseStatus
Remarks
The <ID> in the URI indicates the user ID.
A.8.29 /ISAPI/Security/doubleVerification/UsersPermission/capabilities?
format=json
Get the capability of permission configuration for double verification user.
Request URI Definition
Table A-403 GET /ISAPI/Security/doubleVerification/UsersPermission/capabilities?format=json
Method GET
Description Get the capability of permission configuration for double verification
user.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_UserPermissionCap
Failed: JSON_ResponseStatus
309
Intelligent Security API (General) Developer Guide
A.8.30 /ISAPI/Security/doubleVerification?format=json
Get the capability of double verification enabling configuration.
Request URI Definition
Table A-404 GET /ISAPI/Security/doubleVerification?format=json
Method GET
Description Get the capability of double verification enabling configuration.
Query format: determine the format of request or response message.
Request None.
Response JSON_DoubleVerification
Table A-405 PUT /ISAPI/Security/doubleVerification?format=json
Method PUT
Description Enable or disable the double verification.
Query format: determine the format of request or response message.
Request JSON_DoubleVerification
Response JSON_ResponseStatus
A.8.31 /ISAPI/Security/email/parameter/capabilities?format=json
Get recovery email configuration capability (only available in LAN and for admin user).
Request URI Definition
Table A-406 GET /ISAPI/Security/email/parameter/capabilities?format=json
Method GET
Description Get recovery email configuration capability.
Query format: determine the format of request or response message.
security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
310
Intelligent Security API (General) Developer Guide
Request None.
Response JSON_SecurityEmailCap
A.8.32 /ISAPI/Security/email/parameter?format=json
Operations about recovery email configuration (only available for LAN and for admin user).
Request URI Definition
Table A-407 GET /ISAPI/Security/email/parameter?format=json
Method GET
Description Get recovery email parameters.
Query format: determine the format of request or response message.
security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
Request None.
Response JSON_SecurityEmail
Table A-408 PUT /ISAPI/Security/email/parameter?format=json
Method PUT
Description Set recovery email parameters.
Query format: determine the format of request or response message.
security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
Request JSON_SecurityEmail
Response JSON_ResponseStatus
311
Intelligent Security API (General) Developer Guide
A.8.33 /ISAPI/Security/email/qrCode?format=json
Get the QR code of the configured recovery email (only available for LAN and for admin user).
Request URI Definition
Table A-409 GET /ISAPI/Security/email/qrCode?format=json
Method GET
Description Get the QR code of the configured recovery email.
Query format: determine the format of request or response message.
security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
Request None.
Response JSON_SecurityEmailQrCode
A.8.34 /ISAPI/Security/emailCertification?format=json
Reset password by the verification code via recovery email (only available for LAN and for admin
user).
Request URI Definition
Table A-410 PUT /ISAPI/Security/emailCertification?format=json
Method PUT
Description Reset password by the verification code via recovery email.
Query format: determine the format of request or response message.
Request JSON_EmailCertification
Response JSON_ResponseStatus
Remarks
For the encryption of passwords and security answers, first transform them by UTF8, and then
transcode them by BASE64, finally, encrypt them by AES128CB.
312
Intelligent Security API (General) Developer Guide
A.8.35 /ISAPI/Security/extern/capabilities
Get capability of other security configuration.
Request URI Definition
Table A-411 GET /ISAPI/Security/extern/capabilities
Method GET
Description Get capability of other security configuration.
Query None.
Request None.
Response XML_externSecurityCap
A.8.36 /ISAPI/Security/illegalLoginLock
Get or set locking parameters of illegal login.
Request URI Definition
Table A-412 GET /ISAPI/Security/illegalLoginLock
Method GET
Description Get locking parameters of illegal login.
Query None.
Request None.
Response Succeeded: XML_IllegalLoginLock
Failed: XML_ResponseStatus
Table A-413 PUT /ISAPI/Security/illegalLoginLock
Method PUT
Description Set locking parameters of illegal login.
Query None.
Request XML_IllegalLoginLock
Response XML_ResponseStatus
313
Intelligent Security API (General) Developer Guide
A.8.37 /ISAPI/Security/loginLinkNum?format=json
Get or set maximum number of logged in accounts.
Request URI Definition
Table A-414 GET /ISAPI/Security/loginLinkNum?format=json
Method GET
Description Get maximum number of logged in accounts.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_LoginLinkNum
Failed: JSON_ResponseStatus
Table A-415 PUT /ISAPI/Security/loginLinkNum?format=json
Method PUT
Description Set maximum number of logged in accounts.
Query format: determine the format of request or response message.
Request JSON_LoginLinkNum
Response JSON_ResponseStatus
A.8.38 /ISAPI/Security/onlineUser
Get the information of online users.
Request URI Definition
Table A-416 GET /ISAPI/Security/onlineUser
Method GET
Description Get the information of online users.
Query security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
314
Intelligent Security API (General) Developer Guide
Request None.
Response Succeeded: XML_OnlineUserList
Failed: XML_ResponseStatus
A.8.39 /ISAPI/Security/questionConfiguration
Get or set device security questions.
Request URI Definition
Table A-417 GET /ISAPI/Security/questionConfiguration
Method GET
Description Get device security questions.
Query None.
Request None.
Response Succeeded: XML_SecurityQuestion
Failed: XML_ResponseStatus
Table A-418 PUT /ISAPI/Security/questionConfiguration
Method PUT
Description Set device security questions.
Query security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
Request XML_SecurityQuestion
Response XML_ResponseStatus
A.8.40 /ISAPI/Security/RTSPCertificate
Get or set parameters of devices' RTSP authentication mode.
315
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-419 GET /ISAPI/Security/RTSPCertificate
Method GET
Description Get parameters of devices' RTSP authentication mode.
Query None.
Request None.
Response Succeeded: XML_RTSPCertificate
Failed: XML_ResponseStatus
Table A-420 PUT /ISAPI/Security/RTSPCertificate
Method PUT
Description Set parameters of devices' RTSP authentication mode.
Query None.
Request XML_RTSPCertificate
Response XML_ResponseStatus
A.8.41 /ISAPI/Security/RTSPCertificate/capabilities
Get the capability of devices' RTSP authentication mode.
Request URI Definition
Table A-421 GET /ISAPI/Security/RTSPCertificate/capabilities
Method GET
Description Get the capability of devices' RTSP authentication mode.
Query None.
Request None.
Response Succeeded: XML_RTSPCertificateCap
Failed: XML_ResponseStatus
A.8.42 /ISAPI/Security/serverCertificate/capabilities?format=json
Get the client/server certificate capability.
316
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-422 GET /ISAPI/Security/serverCertificate/capabilities?format=json
Method GET
Description Get the client/server certificate capability.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_ServerCertificateCap
Failed: JSON_ResponseStatus
A.8.43 /ISAPI/Security/serverCertificate/certificate
Get, upload, and delete device certificate information.
Request URI Definition
Table A-423 GET /ISAPI/Security/serverCertificate/certificate
Method GET
Description Get device certificate information.
Query type: certificate type, it can be set to "CCClentCertificate" (client
certificate for CC authentication) or "LogServer" (log server
certificate); if no value is assigned to type, it represents the HTTPS
certificate.
Request None.
Response Succeeded: XML_CertificateInfo
XML_ResponseStatus
Table A-424 PUT /ISAPI/Security/serverCertificate/certificate
Method PUT
Description Upload certificate to device.
Query type: certificate type, it can be set to "CCClentCertificate" (client
certificate for CC authentication) or "LogServer" (log server
certificate); if no value is assigned to type, it represents the HTTPS
certificate.
Request Certificate data (binary)
Response XML_ResponseStatus
317
Intelligent Security API (General) Developer Guide
Table A-425 DELETE /ISAPI/Security/serverCertificate/certificate
Method DELETE
Description Delete the installed certificate of device.
Query type: certificate type, it can be set to "CCClentCertificate" (client
certificate for CC authentication) or "LogServer" (log server
certificate); if no value is assigned to type, it represents the HTTPS
certificate.
Request None.
Response XML_ResponseStatus
A.8.44 /ISAPI/Security/serverCertificate/certificate?customID=
Import the client/server certificate to the device.
Request URI Definition
Table A-426 POST /ISAPI/Security/serverCertificate/certificate?customID=
Method POST
Description Import the client/server certificate to the device.
Query security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
customID: custom certificate ID, string, it consists of digits and
characters.
Request XML_CertificateReq_ImportCert +certificate data.
Response XML_ResponseStatus
Remarks
• When the node <certificateMode> in the request message XML_CertificateReq_ImportCert is
set to "signingRequest", it means importing a self-signed certificate to the device.
• When the node <certificateMode> in the request message XML_CertificateReq_ImportCert is
set to "privateKey", it means importing the certificate along with the private key by the following
two steps.
1. Import the message XML_CertificateReq_ImportCert and the certificate file.
318
Intelligent Security API (General) Developer Guide
Note
The node <dataType> in the message XML_CertificateReq_ImportCert should be set to
"certificate".
2. Import the message XML_CertificateReq_ImportCert and the private key.
Note
- The node <dataType> in the message XML_CertificateReq_ImportCert should be set to
"privateKey".
- This step depends on the first step. If exception occurs, the device will return error.
A.8.45 /ISAPI/Security/serverCertificate/certificates?format=json
Get the information of multiple client/server certificates in a batch.
Request URI Definition
Table A-427 GET /ISAPI/Security/serverCertificate/certificates?format=json
Method GET
Description Get the information of multiple client/server certificates in a batch.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_ServerCertificates
Failed: JSON_ResponseStatus
A.8.46 /ISAPI/Security/serverCertificate/certificates/<customID>?format=json
Get or delete the information of a specific client/server certificate.
Request URI Definition
Table A-428 GET /ISAPI/Security/serverCertificate/certificates/<customID>?format=json
Method GET
Description Get the information of a specific client/server certificate.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_DeviceCertificate
Failed: JSON_ResponseStatus
319
Intelligent Security API (General) Developer Guide
Table A-429 DELETE /ISAPI/Security/serverCertificate/certificates/<customID>?format=json
Method DELETE
Description Delete the information of a specific client/server certificate.
Query format: determine the format of request or response message.
Request None.
Response JSON_ResponseStatus
Remarks
The <customID> in the request URI refers to the custom certificate ID.
A.8.47 /ISAPI/Security/serverCertificate/certSignReq
Get signature request information, generate, and delete signature request of device certificate.
Request URI Definition
Table A-430 GET /ISAPI/Security/serverCertificate/certSignReq
Method GET
Description Get signature request information of device certificate.
Query type: certificate type, it can be set to "CCClentCertificate" (client
certificate for CC authentication) or "LogServer" (log server
certificate); if no value is assigned to type, it represents the HTTPS
certificate.
Request None.
Response Succeeded: XML_CertificateReqInfo
Failed: XML_ResponseStatus
Table A-431 PUT /ISAPI/Security/serverCertificate/certSignReq
Method PUT
Description Generate signature request information of device certificate.
Query type: certificate type, it can be set to "CCClentCertificate" (client
certificate for CC authentication) or "LogServer" (log server
certificate); if no value is assigned to type, it represents the HTTPS
certificate.
Request XML_CertificateReq
Response XML_ResponseStatus
320
Intelligent Security API (General) Developer Guide
Table A-432 DELETE /ISAPI/Security/serverCertificate/certSignReq
Method DELETE
Description Delete signature request of device certificate.
Query type: certificate type, it can be set to "CCClentCertificate" (client
certificate for CC authentication) or "LogServer" (log server
certificate); if no value is assigned to type, it represents the HTTPS
certificate.
Request None.
Response XML_ResponseStatus
A.8.48 /ISAPI/Security/serverCertificate/certSignReq?customID=
Create a PKCS#10 signature request of the client/server certificate.
Request URI Defintion
Table A-433 POST /ISAPI/Security/serverCertificate/certSignReq?customID=
Method POST
Description Create a PKCS#10 signature request of the client/server certificate.
Query customID: custom certificate ID, string, it consists of digits and
characters.
Request XML_CertificateReq
Response Succeeded: XML_CertificateResult
Failed: XML_ResponseStatus
A.8.49 /ISAPI/Security/serverCertificate/downloadCertSignReq
Download the certificate of authentication client.
Request URI Definition
Table A-434 GET /ISAPI/Security/serverCertificate/downloadCertSignReq
Method GET
Description Download the certificate of authenticated client.
Query type: certificate type, it can be set to "CCClentCertificate" (client
certificate for CC authentication) or "LogServer" (log server
321
Intelligent Security API (General) Developer Guide
certificate); if no value is assigned to type, it represents the HTTPS
certificate.
Request None.
Response Certificate data (binary)
A.8.50 /ISAPI/Security/serverCertificate/downloadCertSignReq?customID=
Export the client/server certificate.
Request URI Definition
Table A-435 GET /ISAPI/Security/serverCertificate/downloadCertSignReq?customID=
Method GET
Description Export the client/server certificate.
Query customID: custom certificate ID, string, it consists of digits and
characters.
Request None.
Response Certificate data.
Remarks
The returned certificate data should be either formatted exactly according to PKCS#10 standard or
a PKCS#10 file encoded in PEM format.
A.8.51 /ISAPI/Security/serverCertificate/selfSignCert?customID=
Get or generate the PKCS#10 signature request of the client/server self-signed certificate.
Request URI Definition
Table A-436 GET /ISAPI/Security/serverCertificate/selfSignCert?customID=
Method GET
Description Get the PKCS#10 signature request of the client/server self-signed
certificate.
Query customID: custom certificate ID, string, it consists of digits and
characters.
Request None.
Response Succeeded: XML_CertificateReq
322
Intelligent Security API (General) Developer Guide
Failed: XML_ResponseStatus
Table A-437 PUT /ISAPI/Security/serverCertificate/selfSignCert?customID=
Method PUT
Description Generate the PKCS#10 signature request of the client/server self-
signed certificate.
Query customID: custom certificate ID, string, it consists of digits and
characters.
Request XML_CertificateReq
Response XML_ResponseStatus
A.8.52 /ISAPI/Security/userCheck
Log in to the device by digest.
Request URI Definition
Table A-438 GET /ISAPI/Security/userCheck
Method GET
Description Log in to the device by digest. This URI is used to check whether the
user name matches with the password.
Query None.
Request None.
Response Succeeded: XML_userCheck
Failed: XML_ResponseStatus
A.8.53 /ISAPI/Security/UserPermission
Operations about the user permission of the device.
Request URI Definition
Table A-439 GET /ISAPI/Security/UserPermission
Method GET
Description Get the user permission of the device.
Query None.
323
Intelligent Security API (General) Developer Guide
Request None.
Response Succeeded: XML_UserPermissionList
Failed: XML_ResponseStatus
Table A-440 PUT /ISAPI/Security/UserPermission
Method PUT
Description Set the user permission of the device.
Query None.
Request XML_UserPermissionList
Response XML_ResponseStatus
A.8.54 /ISAPI/Security/UserPermission/<ID>
Operations about a specific user's permission.
Request URI Definition
Table A-441 GET /ISAPI/Security/UserPermission/<ID>
Method GET
Description Get a specific user's permission.
Query None.
Request None.
Response Succeeded: XML_UserPermission
Failed: XML_ResponseStatus
Table A-442 PUT /ISAPI/Security/UserPermission/<ID>
Method PUT
Description Set a specific user's permission.
Query None.
Request XML_UserPermission
Response XML_ResponseStatus
A.8.55 /ISAPI/Security/UserPermission/<ID>/localPermission
Get and set the local permission of a specified user.
324
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-443 GET /ISAPI/Security/UserPermission/<ID>/localPermission
Method GET
Description Get the local permission of a specified user.
Query None.
Request None.
Response XML_localPermission
Table A-444 PUT /ISAPI/Security/UserPermission/<ID>/localPermission
Method PUT
Description Set the local permission of a specified user.
Query None.
Request XML_localPermission
Response XML_ResponseStatus
A.8.56 /ISAPI/Security/UserPermission/<ID>/remotePermission
Get and set the remote permission of a specified user.
Request URI Definition
Table A-445 GET /ISAPI/Security/UserPermission/<ID>/remotePermission
Method GET
Description Get the remote permission of a specified user.
Query None.
Request None.
Response XML_remotePermission
Table A-446 PUT /ISAPI/Security/UserPermission/<ID>/remotePermission
Method PUT
Description Set the remote permission of a specified user.
Query None.
Request XML_remotePermission
Response XML_ResponseStatus
325
Intelligent Security API (General) Developer Guide
A.8.57 /ISAPI/Security/UserPermission/adminCap
Get the user permission capability of the administrator.
Request URI Definiton
Table A-447 GET /ISAPI/Security/UserPermission/adminCap
Method GET
Description Get the user permission capability of the administrator.
Query None.
Request None.
Response Succeeded: XML_UserPermissionCap
Failed: XML_ResponseStatus
Remarks
Only permissions that can be configured by the admin user should be returned.
A.8.58 /ISAPI/Security/UserPermission/anonymouslogin
Get or assign permission of the anonymous user.
Request URI Definition
Table A-448 GET /ISAPI/Security/UserPermission/anonymouslogin
Method GET
Description Get permission of the anonymous user.
Query None.
Request None.
Response Succeeded: XML_anonymouslogin
Failed: XML_ResponseStatus
Table A-449 PUT /ISAPI/Security/UserPermission/anonymouslogin
Method PUT
Description Assign permission of the anonymous user.
Query None.
326
Intelligent Security API (General) Developer Guide
Request XML_anonymouslogin
Response XML_ResponseStatus
A.8.59 /ISAPI/Security/UserPermission/capabilities
Get the configuration capability of all users' permissions.
Request URI Definition
Table A-450 GET /ISAPI/Security/UserPermission/capabilities
Method GET
Description Get the configuration capability of all users' permissions.
Query None.
Request None.
Response Succeeded: XML_Cap_UserPermissionList
Failed: XML_ResponseStatus
A.8.60 /ISAPI/Security/UserPermission/operatorCap
Get the user permission capability of the operator.
Request URI Definition
Table A-451 GET /ISAPI/Security/UserPermission/operatorCap
Method GET
Description Get the user permission capability of the operator.
Query None.
Request None.
Response Succeeded: XML_UserPermissionCap
Failed: XML_ResponseStatus
Remarks
Only permissions that can be configured by the operator should be returned.
327
Intelligent Security API (General) Developer Guide
A.8.61 /ISAPI/Security/UserPermission/viewerCap
Get the user permission capability of the viewer.
Request URI Definition
Table A-452 GET /ISAPI/Security/UserPermission/viewerCap
Method GET
Description Get the user permission capability of the viewer.
Query None.
Request None.
Response XML_UserPermissionCap
A.8.62 /ISAPI/Security/users
Get, set, or delete information of all users; add a new user.
Request URI Definition
Table A-453 GET /ISAPI/Security/users
Method GET
Description Get information of all users.
Query security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
Request None
Response Succeeded: XML_UserList
Failed: XML_ResponseStatus
Table A-454 PUT /ISAPI/Security/users
Method PUT
Description Set information of all users。
328
Intelligent Security API (General) Developer Guide
Query security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
Request XML_UserList
Response XML_ResponseStatus
Table A-455 DELETE /ISAPI/Security/users
Method DELETE
Description Delete information of all users.
Query None
Request None
Response XML_ResponseStatus
Table A-456 POST /ISAPI/Security/users
Method POST
Description Add a user。
Query security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
Request XML_User
Response XML_ResponseStatus
Remarks
• A default account "admin" must be provided with the administrator permission and it cannot be
deleted.
• Passwords can only be uploaded and cannot be displayed when getting the user list of the
device.
• The user ID should be returned when adding users to the user list.
Example
Sample Code for Adding User
329
Intelligent Security API (General) Developer Guide
POST /ISAPI/Security/users HTTP/1.1
Host: 10.17.132.49
Content-Length: 335
Connection: Keep-Alive
Authorization: Digest username="admin",
realm="DS-2CD2F12FWD-IWS",
nonce="4e6a4d774d6a63304f544936593255335a474d334f54673d",
uri="/ISAPI/Security/users",
cnonce="178e14d4977c835db891b5392b5d0a67",
nc=00000015,
response="d92518fb00cd2772cf212f5326b251be",
qop="auth"
<?xml version="1.0" encoding="UTF-8"?>
<User>
<id>0</id>
<userName>test</userName>
<password>1qaz2wsx</password>
<bondIpList>
<bondIp>
<id>1</id>
<ipAddress>0.0.0.0</ipAddress>
<ipv6Address>::</ipv6Address>
</bondIp>
</bondIpList>
<macAddress></macAddress>
<userLevel>Operator</userLevel>
<attribute>
<inherent>false</inherent>
</attribute>
</User>
HTTP/1.1 200 OK
Date: Tue, 14 Mar 2017 20:24:31 GMT
Server: App-webs/
Connection: close
Content-Length: 288
Content-Type: application/xml
<?xml version="1.0" encoding="UTF-8"?>
<ResponseStatus version="2.0" xmlns="http://www.isapi.com/ver20/XMLSchema">
<requestURL>/ISAPI/Security/users</requestURL>
<statusCode>1</statusCode>
<statusString>OK</statusString>
<id>2</id>
<subStatusCode>ok</subStatusCode>
</ResponseStatus>
Example
Sample Code for Setting User Permission
330
Intelligent Security API (General) Developer Guide
PUT /ISAPI/Security/UserPermission/2 HTTP/1.1
Host: 10.17.132.49
Content-Length: 891
Connection: Keep-Alive
Authorization: Digest username="admin",
realm="DS-2CD2F12FWD-IWS",
nonce="4e6a4d774d6a63304f544936593255335a474d334f54673d",
uri="/ISAPI/Security/UserPermission/2",
cnonce="178e14d4977c835db891b5392b5d0a67",
nc=00000016,
response="f69a20db00b36e9bb46c26c06e9bae80",
qop="auth"
<?xml version="1.0" encoding="utf-8"?>
<UserPermission>
<id>2</id>
<userID>2</userID>
<userType>operator</userType>
<remotePermission>
<parameterConfig>false</parameterConfig>
<logOrStateCheck>true</logOrStateCheck>
<upgrade>false</upgrade>
<voiceTalk>true</voiceTalk>
<restartOrShutdown>false</restartOrShutdown>
<alarmOutOrUpload>false</alarmOutOrUpload>
<contorlLocalOut>false</contorlLocalOut>
<transParentChannel>false</transParentChannel>
<preview>true</preview>
<record>true</record>
<ptzControl>true</ptzControl>
<playBack>true</playBack>
<videoChannelPermissionList>
<videoChannelPermission>
<id>1</id>
<preview>true</preview>
<record>true</record>
<playBack>true</playBack>
</videoChannelPermission>
</videoChannelPermissionList>
<ptzChannelPermissionList>
<ptzChannelPermission>
<id>1</id>
<ptzControl>true</ptzControl>
</ptzChannelPermission>
</ptzChannelPermissionList>
</remotePermission>
</UserPermission>
HTTP/1.1 200 OK
Date: Tue, 14 Mar 2017 20:24:31 GMT
Server: App-webs/
Connection: close
331
Intelligent Security API (General) Developer Guide
Content-Length: 288
Content-Type: application/xml
<?xml version="1.0" encoding="UTF-8"?>
<ResponseStatus version="2.0" xmlns="http://www.isapi.com/ver20/XMLSchema">
<requestURL>/ISAPI/Security/UserPermission/2</requestURL>
<statusCode>1</statusCode>
<statusString>OK</statusString>
<subStatusCode>ok</subStatusCode>
</ResponseStatus>
A.8.63 /ISAPI/Security/users/<ID>
Get, set, or delete information of a specific user.
Request URI Definition
Table A-457 GET /ISAPI/Security/users/<ID>
Method GET
Description Get a specific user's configuration of the device.
Query security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
Request None.
Response Succeeded: XML_User
Failed: XML_ResponseStatus
Table A-458 PUT /ISAPI/Security/users/<ID>
Method PUT
Description Get information of a specific user.
Query security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
332
Intelligent Security API (General) Developer Guide
Request XML_User
Response XML_ResponseStatus
Table A-459 DELETE /ISAPI/Security/users/<ID>
Method DELETE
Description Delete information of a specific user.
Query security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
loginPassword: encrypted administrator password.
Request None
Response XML_ResponseStatus
Remarks
• The <ID> in the request URI refer to user ID.
• The administrator account cannot be deleted.
A.8.64 /ISAPI/Security/users/<ID>/capabilities
Get the configuration capability of a specific user.
Request URI Definition
Table A-460 GET /ISAPI/Security/users/<ID>/capabilities
Method GET
Description Get the configuration capability of a specific user.
Query security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.iv: the initialization vector, and it is required
when security is 1 or 2.
333
Intelligent Security API (General) Developer Guide
Request None.
Response Succeeded: XML_Cap_User
Failed: XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the user ID.
A.8.65 /ISAPI/Security/webCertificate
Get or set the certificate type parameters of web service.
Request URI Definition
Table A-461 GET /ISAPI/Security/webCertificate
Method GET
Description Get the certificate type parameters of web service.
Query None.
Request None.
Response Succeeded: XML_WebCertificate
Failed: XML_ResponseStatus
Table A-462 PUT /ISAPI/Security/webCertificate
Method PUT
Description Set the certificate type parameters of web service.
Query None.
Request XML_WebCertificate
Response XML_ResponseStatus
A.8.66 /ISAPI/SecurityCP/ReportCenterCfg/capabilities?format=json
Get the configuration capability of the report uploading method.
Request URI Definition
Table A-463 GET /ISAPI/SecurityCP/ReportCenterCfg/capabilities?format=json
Method GET
Description Get the configuration capability of the report uploading method.
334
Intelligent Security API (General) Developer Guide
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_Cap_ReportCenterCfg
Failed: JSON_ResponseStatus
A.8.67 /ISAPI/SecurityCP/ReportCenterCfg/<ID>?format=json
Operations about the configuration of the report uploading method.
Request URI Definition
Table A-464 GET /ISAPI/SecurityCP/ReportCenterCfg/<ID>?format=json
Method GET
Description Get the parameters of the report uploading method.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_ReportCenterCfg
Failed: JSON_ResponseStatus
Table A-465 PUT /ISAPI/SecurityCP/ReportCenterCfg/<ID>?format=json
Method PUT
Description Set the parameters of the report uploading method.
Query format: determine the format of request or response message.
Request JSON_ReportCenterCfg
Response JSON_ResponseStatus
Remarks
The <ID> in the request URI refers to the center group No.
A.9 /ISAPI/Smart
A.9.1 /ISAPI/Smart/capabilities
Get the capability of smart devices.
335
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-466 GET /ISAPI/Smart/capabilities
Method GET
Description Get the capability of smart devices.
Query None
Request None
Response Succeeded: XML_SmartCap
Failed: XML_ResponseStatus
A.9.2 /ISAPI/Smart/AudioDetection/channels/<ID>
Get or set the audio detection parameters of a specific channel.
Request URI Definition
Table A-467 GET /ISAPI/Smart/AudioDetection/channels/<ID>
Method GET
Description Get the audio detection parameters of a specific channel.
Query None.
Request None.
Response Succeeded: XML_AudioDetection
Failed: XML_ResponseStatus
Table A-468 PUT /ISAPI/Smart/AudioDetection/channels/<ID>
Method PUT
Description Set the audio detection parameters of a specific channel.
Query None.
Request XML_AudioDetection
Response XML_ResponseStatus
A.9.3 /ISAPI/Smart/AudioDetection/channels/<ID>/capabilities
Get the configuration capability of audio detection of a specific channel.
336
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-469 GET /ISAPI/Smart/AudioDetection/channels/<ID>/capabilities
Method GET
Description Get the configuration capability of audio detection of a specific
channel.
Query None.
Request None.
Response Succeeded: XML_Cap_AudioDetection
Failed: XML_ResponseStatus
A.9.4 /ISAPI/Smart/AudioDetection/channels/<ID>/status
Get the audio strength.
Request URI Definition
Table A-470 GET /ISAPI/Smart/AudioDetection/channels/<ID>/status
Method GET
Description Get the audio strength.
Query None.
Request None.
Response Succeeded: XML_AudioStrengthStatus
Failed: XML_ResponseStatus
A.9.5 /ISAPI/Smart/storageDetection/rwlock
Get or set the read & write lock parameters of storage health detection.
Request URI Definition
Table A-471 GET /ISAPI/Smart/storageDetection/rwlock
Method GET
Description Get the read & write lock parameters of storage health detection.
Query None.
337
Intelligent Security API (General) Developer Guide
Request None.
Response Succeeded: XML_RWLock
Failed: XML_ResponseStatus
Table A-472 PUT /ISAPI/Smart/storageDetection/rwlock
Method PUT
Description Set the read & write lock parameters of storage health detection.
Query None.
Request XML_RWLock
Response XML_ResponseStatus
A.9.6 /ISAPI/Smart/storageDetection/rwlock/capabilities
Get the configuration capability of read & write lock of storage health detection.
Request URI Definition
Table A-473 GET /ISAPI/Smart/storageDetection/rwlock/capabilities
Method GET
Description Get the configuration capability of read & write lock of storage health
detection.
Query None.
Request None.
Response Succeeded: XML_Cap_RWLock
Failed: XML_ResponseStatus
A.9.7 /ISAPI/Smart/storageDetection
Get the storage health detection parameters.
Request URI Definition
Table A-474 GET /ISAPI/Smart/storageDetection
Method GET
Description Get the storage health detection parameters.
Query None.
338
Intelligent Security API (General) Developer Guide
Request None.
Response Succeeded: XML_StorageDetection
Failed: XML_ResponseStatus
A.10 /ISAPI/Snapshot
A.10.1 /ISAPI/Snapshot/channels
Get or set the parameters of multiple channels for capturing pictures by schedule.
Request URL Definition
Table A-475 GET /ISAPI/Snapshot/channels
Method GET
Description Get the parameters of multiple channels for capturing pictures by
schedule.
Query None.
Request None.
Response Succeeded: XML_SnapshotChannelList
Failed: XML_ResponseStatus
Table A-476 PUT /ISAPI/Snapshot/channels
Method PUT
Description Set the parameters of multiple channels for capturing pictures by
schedule.
Query None.
Request XML_SnapshotChannelList
Response XML_ResponseStatus
A.10.2 /ISAPI/Snapshot/channels/<ID>
Get or set the parameters of a specific channel for capturing pictures by schedule.
339
Intelligent Security API (General) Developer Guide
Request URL Definition
Table A-477 GET /ISAPI/Snapshot/channels/<ID>
Method GET
Description Get the parameters of a specific channel for capturing pictures by
schedule.
Query None.
Request None.
Response Succeeded: XML_SnapshotChannel
Failed: XML_ResponseStatus
Table A-478 PUT /ISAPI/Snapshot/channels/<ID>
Method PUT
Description Set the parameters of a specific channel for capturing pictures by
schedule.
Query None.
Request XML_SnapshotChannel
Response XML_ResponseStatus
Remarks
The <ID> in the request URL refers to the channel No.
A.10.3 /ISAPI/Snapshot/channels/<ID>/capabilities
Get the configuration capability of capturing pictures by schedule.
Request URI Definition
Table A-479 GET /ISAPI/Snapshot/channels/<ID>/capabilities
Method GET
Description Get the configuration capability of capturing pictures by schedule.
Query None.
Request None.
Response Succeeded: XML_Cap_SnapshotChannel
Failed: XML_ResponseStatus
340
Intelligent Security API (General) Developer Guide
A.11 /ISAPI/Streaming
A.11.1 /ISAPI/Streaming/channels
Operations about the encoding configuration of multiple channels.
Request URI Definition
Table A-480 GET /ISAPI/Streaming/channels
Method GET
Description Get the encoding parameters of multiple channels.
Query None.
Request None.
Response XML_StreamingChannelList
Table A-481 PUT /ISAPI/Streaming/channels
Method PUT
Description Set the encoding parameters of multiple channels.
Query None.
Request XML_StreamingChannelList
Response XML_ResponseStatus
Table A-482 POST /ISAPI/Streaming/channels
Method POST
Description Add an encoding channel.
Query None.
Request XML_StreamingChannel
Response XML_ResponseStatus
Table A-483 DELETE /ISAPI/Streaming/channels
Method DELETE
Description Delete all encoding channels.
Query None.
341
Intelligent Security API (General) Developer Guide
Request None.
Response XML_ResponseStatus
A.11.2 /ISAPI/Streaming/channels/<ID>
Operations about the encoding configurations of a specific channel.
Request URI Definition
Table A-484 GET /ISAPI/Streaming/channels/<ID>
Method GET
Description Get the encoding parameters of a specific channel.
Query None.
Request None.
Response Succeeded: XML_StreamingChannel
Failed: XML_ResponseStatus
Table A-485 PUT /ISAPI/Streaming/channels/<ID>
Method PUT
Description Set the encoding parameters of a specific channel.
Query None.
Request XML_StreamingChannel
Response XML_ResponseStatus
Table A-486 DELETE /ISAPI/Streaming/channels/<ID>
Method DELETE
Description Delete the encoding parameters of a specific channel.
Query None
Request None.
Response XML_ResponseStatus
Remarks
The <ID> in the URI refers to the channel ID.
Example
Interaction Example of Getting Encoding Parameters of A Specific Channel
342
Intelligent Security API (General) Developer Guide
GET /ISAPI/Streaming/channels/444 HTTP/1.1
…
HTTP/1.1 200 OK
Content-Type: application/xml; charset=“UTF-8”
Content-Length: ISAPI
<?xml version="1.0" encoding="UTF-8"?>
<StreamingChannel version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema">
<id>444</id>
<channelName>Input 1 MPEG-4 ASP</channelName>
<enabled>true</enabled>
<Transport>
<rtspPortNo>554</rtspPortNo>
<maxPacketSize>1446</maxPacketSize>
<ControlProtocolList>
<ControlProtocol>
<streamingTransport>RTSP</streamingTransport>
</ControlProtocol>
<ControlProtocol>
<streamingTransport>HTTP</streamingTransport>
</ControlProtocol>
</ControlProtocolList>
</Transport>
<Video>
<enabled>true</enabled>
<videoInputChannelID>2</videoInputChannelID>
<videoCodecType>MPEG4</videoCodecType>
<videoScanType>progressive</videoScanType>
<videoResolutionWidth> 640</videoResolutionWidth>
<videoResolutionHeight>480</videoResolutionHeight>
<videoPositionX>0</videoPositionX>
<videoPositionY>0</videoPositionY>
<videoQualityControlType>CBR</videoQualityControlType>
<constantBitRate>2000</constantBitRate>
<maxFrameRate>2500</maxFrameRate>
<keyFrameInterval>1000</keyFrameInterval>
<rotationDegree>0</rotationDegree>
<mirrorEnabled>false</mirrorEnabled>
<snapShotImageType>JPEG</snapShotImageType>
</Video>
<Audio>
<enabled>false</enabled>
<audioInputChannelID>2</audioInputChannelID>
<audioCompressionType> G.726</audioCompressionType>
<audioBitRate>24</audioBitRate>
<audioSamplingRate>8</audioSamplingRate>
</Audio>
</StreamingChannel>
343
Intelligent Security API (General) Developer Guide
A.11.3 /ISAPI/Streaming/channels/<ID>/capabilities
Get encoding capability of a specific channel.
Request URI Definition
Table A-487 GET /ISAPI/Streaming/channels/<ID>/capabilities
Method GET
Description Get the encoding capability of a specific channel.
Query None.
Request None.
Response Succeeded: XML_Cap_StreamingChannel
Failed: XML_ResponseStatus
Remarks
The <ID> in the URI refers to the channel ID.
Example
Interaction Example of Getting Encoding Capability of A Specific Channel
GET /ISAPI/Streaming/channels/444/capabilities HTTP/1.1
…
HTTP/1.1 200 OK
Content-Type: application/xml; charset="UTF-8"
Content-Length: ISAPI
<?xml version="1.0" encoding="UTF-8"?>
<StreamingChannel version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema">
<id opt="111,222,333,444">444</id>
<channelName min="0" max="64">Input 1 MPEG-4 ASP</channelName>
<enabled opt="true,false" def="true">true</enabled>
<Transport>
<rtspPortNo min="0" max="65535" def="554">554</rtspPortNo>
<maxPacketSize min="0" max="1500">1446</maxPacketSize>
<audioPacketLength min="0" max="5000"/>
<audioInboundPacketLength min="0" max="5000"/>
<audioInboundPortNo min="0" max="65535"/>
<videoSourcePortNo min="0" max="65535"/>
<audioSourcePortNo min="0" max="65535"/>
<ControlProtocolList>
<ControlProtocol>
<streamingTransport opt="RTSP/RTP,HTTP">RTSP</streamingTransport>
</ControlProtocol>
<ControlProtocol>
<streamingTransport opt="RTSP/RTP,HTTP">HTTP</streamingTransport>
</ControlProtocol>
344
Intelligent Security API (General) Developer Guide
</ControlProtocolList>
<Unicast>
<enabled opt="true,false" def="false"/>
<rtpTransportType opt="RTP/UDP,RTP/TCP"/>
</Unicast>
<Multicast>
<enabled opt="true,false" def="false"/>
<userTriggerThreshold/>
<videoDestPortNo min="0" max="65535"/>
<audioDestPortNo min="0" max="65535"/>
<destIPAddress min="8" max="16"/>
<destIPv6Address min="15" max="39"/>
<ttl min="0" max="127" def="1"/>
</Multicast>
<Security>
<enabled opt="true,false" def="false"/>
</Security>
</Transport>
<Video>
<enabled opt="true,false">true</enabled>
<videoInputChannelID opt="1,2,3,4">2</videoInputChannelID>
<videoCodecType opt="MJPEG,MPEG4">MPEG4</videoCodecType>
<videoScanType opt="interlaced,progressive">progressive</videoScanType>
<videoResolutionWidth min="0" max="640">640</videoResolutionWidth>
<videoResolutionHeight min="0" max="480">480</videoResolutionHeight>
<videoPositionX min="0" max="640">0</videoPositionX>
<videoPositionY min="0" max="480">0</videoPositionY>
<videoQualityControlType opt="CBR,VBR">CBR</videoQualityControlType>
<constantBitRate min="50" max="4000" dynamic="true">2000</constantBitRate>
<maxFrameRate opt="2500,1250,625,312,156,78,830" dynamic="true">2500</maxFrameRate>
<keyFrameInterval min="0", max="10000">1000</keyFrameInterval>
<rotationDegree opt="0,90,180,270" def="0">0</rotationDegree>
<mirrorEnabled opt="true,false" def="false">false</mirrorEnabled>
<snapShotImageType opt="JPEG" def="JPEG">JPEG</snapShotImageType>
</Video>
<Audio>
<enabled opt="true,false" def="false">false</enabled>
<audioInputChannelID opt="1,2,3,4">2</audioInputChannelID>
<audioCompressionType opt="G.726,G.711ulaw" def="G.726">G.726</audioCompressionType>
<audioBitRate opt="16,24,32,40" def="32" dynamic="true">24</audioBitRate>
<audioSamplingRate opt="8" dynamic="true">8</audioSamplingRate>
<audioResolution opt="3,4,5,6" dynamic="true"/>
</Audio>
</StreamingChannel>
A.11.4 /ISAPI/Streaming/channels/<ID>/dynamicCap
Get the dynamic encoding capability of a specific channel.
345
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-488 GET /ISAPI/Streaming/channels/<ID>/dynamicCap
Method GET
Description Get the dynamic encoding capability of a specific channel.
Query None.
Request None.
Response XML_DynamicCap
Remarks
The <ID> in the URI refers to the channel ID.
A.11.5 /ISAPI/Streaming/channels/<ID>/picture
Manually capture picture in the video stream of a specific channel.
Request URI Definition
Table A-489 GET /ISAPI/Streaming/channels/<ID>/picture
Method GET
Description Manually capture picture in the video stream of a specific channel.
Query (Optional) videoResolutionWidth: width of captured picture
resolution.
(Optional) videoResolutionHeight: height of captured picture
resolution.
(Optional) snapShotImageType: captured picture format, only the
JPEG format is supported.
Request None.
Response Picture data, which is transmitted on HTTP.
Remarks
• The <ID> in the request URI refers to the streaming channel ID, which is equal to (channel No. ×
100 + 1). For example, if a camera only has one channel, its ID is 101.
• This URI only supports capturing picture in main stream, and only JPEG format is supported.
Example
Sample Code for Manually Capturing Picture
GET /ISAPI/Streaming/channels/1/picture HTTP/1.1
Host: 10.17.132.49
346
Intelligent Security API (General) Developer Guide
Connection: Keep-Alive
Authorization: Digest username="admin",
realm="DS-2CD2F12FWD-IWS",
nonce="4d305134517a55344d6a55365a4445324f544130597a453d",
uri="/ISAPI/Streaming/channels/1/picture",
cnonce="481bb1afa48b24e512778b084bfe4977",
nc=00000001,
response="e5670d5d9d40c522afabb11b5fa35268",
qop="auth"
HTTP/1.1 200 OK
Content-Type: image/jpeg; charset="UTF-8"
Content-Length:19991
......JFIF.............C.
.
...
.. .....'... .)10.)-,3:J>36F7,- (Binary picture data)
A.11.6 /ISAPI/Streaming/channels/<ID>/regionClip
Get or set target cropping parameters by streaming channel.
Request URI Definition
Table A-490 GET /ISAPI/Streaming/channels/<ID>/regionClip
Method GET
Description Get target cropping parameters by streaming channel.
Query None.
Request None.
Response Succeeded: XML_RegionClip
Failed: XML_ResponseStatus
Table A-491 PUT /ISAPI/Streaming/channels/<ID>/regionClip
Method PUT
Description Set target cropping parameters by streaming channel.
Query None.
Request XML_RegionClip
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to streaming channel ID.
347
Intelligent Security API (General) Developer Guide
A.11.7 /ISAPI/Streaming/channels/<ID>/regionClip/capabilities
Get configuration capability of target cropping by streaming channel.
Request URI Definition
Table A-492 GET /ISAPI/Streaming/channels/<ID>/regionClip/capabilities
Method GET
Description Get configuration capability of target cropping by streaming channel.
Query None.
Request None.
Response Succeeded: XML_Cap_RegionClip
Failed: XML_ResponseStatus
Remarks
The <ID> in the request URI refers to streaming channel ID.
A.11.8 /ISAPI/Streaming/channels/<ID>/smartOverlap/capabilities?format=json
Get the capability of configuring the stream for displaying VCA rules of smart events.
Request URI Definition
Table A-493 GET /ISAPI/Streaming/channels/<ID>/smartOverlap/capabilities?format=json
Method GET
Description Get the capability of configuring the stream for displaying VCA rules
of smart events.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_SmartOverlapCap
Failed: JSON_ResponseStatus
Remarks
The <ID> in the request URI refers to the channel No.
348
Intelligent Security API (General) Developer Guide
A.11.9 /ISAPI/Streaming/channels/<ID>/smartOverlap?format=json
Get or set the stream parameters for displaying VCA rules of smart events.
Request URI Definition
Table A-494 GET /ISAPI/Streaming/channels/<ID>/smartOverlap?format=json
Method GET
Description Get the stream parameters for displaying VCA rules of smart events.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_SmartOverlap
Failed: JSON_ResponseStatus
Table A-495 PUT /ISAPI/Streaming/channels/<ID>/smartOverlap?format=json
Method PUT
Description Set the stream parameters for displaying VCA rules of smart events.
Query format: determine the format of request or response message.
Request JSON_SmartOverlap
Response JSON_ResponseStatus
Remarks
The <ID> in the request URI refers to the channel No.
A.11.10 /ISAPI/Streaming/channels/<ID>/status
Get the streaming or encoding status of a specific channel.
Request URI Definition
Table A-496 GET /ISAPI/Streaming/channels/<ID>/status
Method GET
Description Get the streaming or encoding status of a specific channel.
Query None.
Request None.
Response Succeeded: XML_StreamingSessionStatusList
349
Intelligent Security API (General) Developer Guide
Failed: XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the streaming channel ID.
A.11.11 /ISAPI/Streaming/encryption/capabilities?format=json
Get stream encryption capability.
Request URI Definition
Table A-497 GET /ISAPI/Streaming/encryption/capabilities?format=json
Method GET
Description Get stream encryption capability.
Query format: determine the format of request or response message.
Request None.
Response JSON_EncryptionCap
A.11.12 /ISAPI/Streaming/encryption/secretKey?format=json
Operations about the configuration of stream encryption key.
Request URI Definition
Table A-498 GET /ISAPI/Streaming/encryption/secretKey?format=json
Method GET
Description Get the configuration parameters of stream encryption key.
Query format: determine the format of request or response message.
security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
Request None.
Response JSON_secretKey
350
Intelligent Security API (General) Developer Guide
Table A-499 PUT /ISAPI/Streaming/encryption/secretKey?format=json
Method GET
Description Set stream encryption key.
Query format: determine the format of request or response message.
security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
Request JSON_secretKey
Response JSON_ResponseStatus
A.11.13 /ISAPI/Streaming/encryption?format=json
Operations about the configuration of stream encryption.
Request URI Definition
Table A-500 GET /ISAPI/Streaming/encryption?format=json
Method GET
Description Get the configuration parameters of stream encryption.
Query format: determine the format of request or response message.
Request None.
Response JSON_EnableEncryption
Table A-501 PUT /ISAPI/Streaming/encryption?format=json
Method GET
Description Enable stream encryption.
Query format: determine the format of request or response message.
Request JSON_EnableEncryption
Response JSON_ResponseStatus
351
Intelligent Security API (General) Developer Guide
A.11.14 /ISAPI/Streaming/status
Get the streaming or encoding status of all channels.
Request URI Definition
Table A-502 GET /ISAPI/Streaming/status
Method GET
Description Get the streaming or encoding status of all channels.
Query None.
Request None.
Response Succeeded: XML_StreamingStatus
Failed: XML_ResponseStatus
A.11.15 rtsp://<host>[:port]/ISAPI/Streaming/channels/<ID>
Get basic parameter or session information for live view, or start and stop live view.
Request URL Definition
Table A-503 DESCRIBE rtsp://<host>[:port]/ISAPI/Streaming/channels/<ID>
Method DESCRIBE
Description Get basic parameters for live view.
Query None.
Request None.
Response None.
Table A-504 SETUP rtsp://<host>[:port]/ISAPI/Streaming/channels/<ID>
Method SETUP
Description Get session information for live view.
Query None.
Request None.
Response None.
352
Intelligent Security API (General) Developer Guide
Table A-505 PLAY rtsp://<host>[:port]/ISAPI/Streaming/channels/<ID>
Method PLAY
Description Start live view.
Query None.
Request None.
Response None.
Table A-506 TEARDOW rtsp://<host>[:port]/ISAPI/Streaming/channels/<ID>
Method TEARDOW
Description Stop live view.
Query None.
Request None.
Response None.
Remarks
The <ID> in the URL is defined as (channel No.)*100+(stream type value).
channel No.
For analog channel, the No. starts from 1, and for digital channel, the No. starts from the last
analog channel No.
E.g., if the device has 16 analog channels and 16 digital channels, the analog channel No. is
between 1 and 16, and the digital channel No. is between 17 and 32.
stream type value
The stream type values contain 1, 2, and 3. 1-main stream, 2-sub-stream, 3-third stream.
E.g., if ID is 101, it indicates the main stream of channel No.1; if ID is 102, it indicates the sub-
stream of channel No. 2; if ID is 1601, it indicates the main stream of channel 16;...
A.11.16 rtsp://<host>[:port]/ISAPI/Streaming/channels/<ID>?npq=
Operations about multicast based on network protocol quality (NPQ).
Request URL Definition
Table A-507 DESCRIBE rtsp://<host>[:port]/ISAPI/Streaming/channels/<ID>?npq=
Method DESCRIBE
Description Request for getting basic parameters for multicast based on NPQ.
353
Intelligent Security API (General) Developer Guide
Query npq: Network Protocol Quality (NPQ), this query parameter is used
to enable streaming according to NPQ and by FEC (Forward Error
Correction) method if its value is set to "fec".
Request None.
Response None.
Table A-508 SETUP rtsp://<host>[:port]/ISAPI/Streaming/channels/<ID>?npq=
Method SETUP
Description Request for getting session information for multicast based on NPQ.
Query npq: Network Protocol Quality (NPQ), this query parameter is used
to enable streaming according to NPQ and by FEC (Forward Error
Correction) method if its value is set to "fec".
Request None.
Response None.
Table A-509 PLAY rtsp://<host>[:port]/ISAPI/Streaming/channels/<ID>?npq=
Method PLAY
Description Start multicast based on NPQ.
Query npq: Network Protocol Quality (NPQ), this query parameter is used
to enable streaming according to NPQ and by FEC (Forward Error
Correction) method if its value is set to "fec".
Request None.
Response None.
Table A-510 TEARDOW rtsp://<host>[:port]/ISAPI/Streaming/channels/<ID>?npq=
Method TEARDOW
Description Stop multicast based on NPQ.
Query npq: Network Protocol Quality (NPQ), this query parameter is used
to enable streaming according to NPQ and by FEC (Forward Error
Correction) method if its value is set to "fec".
Request None.
Response None.
Remarks
The <ID> in the request URL is the value of (channel No. × 100 + stream type value), e.g., if the
channel No. is 1, and the stream type value is 1, the ID equals to 101.
354
Intelligent Security API (General) Developer Guide
• For channel No., if the device contains analog and digital channels, the analog channel No. starts
from 1, and the digital channel No. starts from the next No. of the end analog channel. For
example, if the device contains 16 analog channels and 16 digital channels, the analog channel
No. is between 1 and 16, while the digital channel No. is between 17 and 32.
• For stream type, only two values are available, that is, 1 (main stream) and 2 (sub-stream).
A.11.17 rtsp://<host>[:port]/ISAPI/Streaming/tracks/<ID>?starttime=&endtime=
Operations about playback of a specific channel.
Request URL Definition
Table A-511 DESCRIBE rtsp://<host>[:port]/ISAPI/Streaming/tracks/<ID>?starttime=&endtime=
Method DESCRIBE
Description Request for getting basic parameters for playback.
Query starttime: start time of the target stream, whose format is based on
the ISO 8601 standard.
(Optional) endtime: end time of the target stream, whose format is
based on the ISO 8601 standard. If this field is empty, the stream will
be continuously obtained until the session is terminated or paused
manually.
Request None.
Response None.
Table A-512 SETUP rtsp://<host>[:port]/ISAPI/Streaming/tracks/<ID>?starttime=&endtime=
Method SETUP
Description Request for getting session information for playback.
Query starttime: start time of the target stream, whose format is based on
the ISO 8601 standard.
(Optional) endtime: end time of the target stream, whose format is
based on the ISO 8601 standard. If this field is empty, the stream will
be continuously obtained until the session is terminated or paused
manually.
Request None.
Response None.
355
Intelligent Security API (General) Developer Guide
Table A-513 PLAY rtsp://<host>[:port]/ISAPI/Streaming/tracks/<ID>?starttime=&endtime=
Method PLAY
Description Start playback.
Query starttime: start time of the target stream, whose format is based on
the ISO 8601 standard.
(Optional) endtime: end time of the target stream, whose format is
based on the ISO 8601 standard. If this field is empty, the stream will
be continuously obtained until the session is terminated or paused
manually.
Request None.
Response None.
Table A-514 TEARDOW rtsp://<host>[:port]/ISAPI/Streaming/tracks/<ID>?starttime=&endtime=
Method TEARDOW
Description Stop playback.
Query starttime: start time of the target stream, whose format is based on
the ISO 8601 standard.
(Optional) endtime: end time of the target stream, whose format is
based on the ISO 8601 standard. If this field is empty, the stream will
be continuously obtained until the session is terminated or paused
manually.
Request None.
Response None.
Remarks
The <ID> in the URL is defined as (channel No.)*100+(stream type value).
channel No.
For analog channel, the No. starts from 1, and for digital channel, the No. starts from the last
analog channel No.
E.g., if the device has 16 analog channels and 16 digital channels, the analog channel No. is
between 1 and 16, and the digital channel No. is between 17 and 32.
stream type value
The stream type values contain 1, 2, and 3. 1-main stream, 2-sub-stream, 3-third stream.
E.g., if ID is 101, it indicates the main stream of channel No.1; if ID is 102, it indicates the sub-
stream of channel No. 2; if ID is 1601, it indicates the main stream of channel 16;...
356
Intelligent Security API (General) Developer Guide
A.12 /ISAPI/System
A.12.1 /ISAPI/System/AcsUpdate/capabilities
Get the capability of upgrading device (slave access control device, peripheral module, etc.).
Request URI Definition
Table A-515 GET /ISAPI/System/AcsUpdate/capabilities
Method GET
Description Get the capability of upgrading device (slave access control device,
peripheral module, etc.).
Query None.
Request None.
Response Succeeded: XML_Cap_AcsUpdate
Failed: XML_ResponseStatus
A.12.2 /ISAPI/System/activate
Device activation.
Request URI Definition
Table A-516 PUT /ISAPI/System/activate
Method PUT
Description Send activation password to activate the device.
Query None.
Request XML_ActivateInfo
Response XML_ResponseStatus
A.12.3 /ISAPI/System/algorithmsInfo/capabilities?format=json
Get the capability of getting the algorithm library information.
357
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-517 GET /ISAPI/System/algorithmsInfo/capabilities?format=json
Method GET
Description Get the capability of getting the algorithm library information.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_AlgorithmsInfoCap
Failed: JSON_ResponseStatus
A.12.4 /ISAPI/System/algorithmsInfo?format=json
Get the algorithm library information.
Request URI Definition
Table A-518 GET /ISAPI/System/algorithmsInfo?format=json
Method GET
Description Get the algorithm library information.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_AlgorithmsInfo
Failed: JSON_ResponseStatus
A.12.5 /ISAPI/System/algorithmsVersion
Get the version information of algorithm library.
Request URI Definition
Table A-519 GET /ISAPI/System/algorithmsVersion
Method GET
Description Get the version information of algorithm library.
Query None
358
Intelligent Security API (General) Developer Guide
Request None
Response Succeeded: XML_AlgorithmsVersion
Failed: XML_ResponseStatus
A.12.6 /ISAPI/System/Audio/AudioIn
Get or set audio input parameters of all channels.
Request URI Definition
Table A-520 GET /ISAPI/System/Audio/AudioIn
Method GET
Description Get audio input parameters of all channels.
Query None.
Request None.
Response Succeeded: XML_AudioInConfig
Failed: XML_ResponseStatus
Table A-521 PUT /ISAPI/System/Audio/AudioIn
Method PUT
Description Set audio input parameters of all channels.
Query None.
Request XML_AudioInConfig
Response XML_ResponseStatus
A.12.7 /ISAPI/System/Audio/AudioIn/capabilities
Get the audio input configuration capability of all channels.
Request URI Definition
Table A-522 GET /ISAPI/System/Audio/AudioIn/capabilities
Method GET
Description Get the audio input configuration capability of all channels.
Query None.
359
Intelligent Security API (General) Developer Guide
Request None.
Response Succeeded: XML_AudioInConfigCap
Failed: XML_ResponseStatus
A.12.8 /ISAPI/System/Audio/AudioIn/channels/<ID>
Get or set audio input parameters of a specific channel.
Request URI Definition
Table A-523 GET /ISAPI/System/Audio/AudioIn/channels/<ID>
Method GET
Description Get audio input parameters of a specific channel.
Query None.
Request None.
Response Succeeded: XML_AudioIn
Failed: XML_ResponseStatus
Table A-524 PUT /ISAPI/System/Audio/AudioIn/channels/<ID>
Method PUT
Description Set audio input parameters of a specific channel.
Query None.
Request XML_AudioIn
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the channel No.
A.12.9 /ISAPI/System/Audio/AudioIn/channels/<ID>/capabilities
Get the audio input capability of a specific channel.
Request URI Definition
Table A-525 GET /ISAPI/System/Audio/AudioIn/channels/<ID>/capabilities
Method GET
Description Get the audio input capability of a specific channel.
360
Intelligent Security API (General) Developer Guide
Query None.
Request None.
Response Succeeded: XML_AudioInCap
Failed: XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the channel No.
A.12.10 /ISAPI/System/Audio/AudioOut/channels/<ID>
Get or set audio output parameters of a specific channel.
Request URI Definition
Table A-526 GET /ISAPI/System/Audio/AudioOut/channels/<ID>
Method GET
Description Get audio output parameters of a specific channel.
Query None.
Request None.
Response Succeeded: XML_AudioOut
Failed: XML_ResponseStatus
Table A-527 PUT /ISAPI/System/Audio/AudioOut/channels/<ID>
Method PUT
Description Set audio output parameters of a specific channel.
Query None.
Request XML_AudioOut
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the channel No.
A.12.11 /ISAPI/System/Audio/AudioOut/channels/<ID>/capabilities
Get the audio output capability of a specific channel.
361
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-528 GET /ISAPI/System/Audio/AudioOut/channels/<ID>/capabilities
Method GET
Description Get the audio output capability of a specific channel.
Query None.
Request None.
Response Succeeded: XML_AudioOutCap
Failed: XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the channel No.
A.12.12 /ISAPI/System/Audio/capabilities
Get the audio capability.
Request URI Definition
Table A-529 GET /ISAPI/System/Audio/capabilities
Method GET
Description Get the audio capability.
Query None.
Request None.
Response Succeeded: XML_AudioCap
Failed: XML_ResponseStatus
A.12.13 /ISAPI/System/Audio/channels
Get the configuration of all audio channels of the device.
Request URI Definition
Table A-530 GET /ISAPI/System/Audio/channels
Method GET
Description Get the configuration of all audio channels of the device.
362
Intelligent Security API (General) Developer Guide
Query None.
Request None.
Response Succeeded: XML_AudioChannelList
Failed: XML_ResponseStatus
A.12.14 /ISAPI/System/Audio/channels/<ID>
Get the configuration of a specific audio channel of the device.
Request URI Definition
Table A-531 GET /ISAPI/System/Audio/channels/<ID>
Method GET
Description Get the configuration of a specific audio channel of the device.
Query None.
Request None.
Response Succeeded: XML_AudioChannel
Failed: XML_ResponseStatus
A.12.15 /ISAPI/System/Audio/channels/<ID>/dynamicCap
Get dynamic audio capability by channel.
Request URI Definition
Table A-532 GET /ISAPI/System/Audio/channels/<ID>/dynamicCap
Method GET
Description Get dynamic audio capability by channel.
Query None.
Request XML_AudioDscriptor
Response Succeeded: XML_DynamicCap
Failed: XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the audio input channel ID.
363
Intelligent Security API (General) Developer Guide
A.12.16 /ISAPI/System/autoMaintenance/capabilities?format=json
Get the capability of automatic maintenance configuration.
Request URI Definition
Table A-533 GET /ISAPI/System/autoMaintenance/capabilities?format=json
Method GET
Description Get the capability of automatic maintenance configuration.
Query format: determine the format of request or response message.
Request None.
Response JSON_AutoMaintenanceCap
A.12.17 /ISAPI/System/autoMaintenance?format=json
Get automatic maintenance configuration parameters.
Request URI Definition
Table A-534 GET /ISAPI/System/autoMaintenance?format=json
Method GET
Description Get automatic maintenance configuration parameters.
Query format: determine the format of request or response message.
Request None.
Response JSON_AutoMaintenance
Table A-535 PUT /ISAPI/System/autoMaintenance?format=json
Method PUT
Description Set automatic maintenance parameters.
Query format: determine the format of request or response message.
Request JSON_AutoMaintenance
Response JSON_ResponseStatus
A.12.18 /ISAPI/System/autoSwitch/capabilities?format=json
Get configuration capability of auto power on or off.
364
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-536 GET /ISAPI/System/autoSwitch/capabilities?format=json
Method GET
Description Get configuration capability of auto power on or off.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_AutoSwitchCap
Failed: JSON_ResponseStatus
A.12.19 /ISAPI/System/autoSwitch?format=json
Get or set parameters of auto power on or off.
Request URI Definition
Table A-537 GET /ISAPI/System/autoSwitch?format=json
Method GET
Description Get parameters of auto power on or off.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_AutoSwitch
Failed: JSON_ResponseStatus
Table A-538 PUT /ISAPI/System/autoSwitch?format=json
Method PUT
Description Set parameters of auto power on or off.
Query None.
Request JSON_AutoSwitch
Response JSON_ResponseStatus
A.12.20 /ISAPI/System/Bluetooth/capabilities
Get the bluetooth configuration capability.
365
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-539 GET /ISAPI/System/Bluetooth/capabilities
Method GET
Description Get the bluetooth configuration capability.
Query None.
Request None.
Response Succeeded: XML_BluetoothCap
Failed: XML_ResponseStatus
A.12.21 /ISAPI/System/Bluetooth/ibeaconParam
Operations about the ibeacon bluetooth configuration.
Request URI Definition
Table A-540 GET /ISAPI/System/Bluetooth/ibeaconParam
Method GET
Description Get the ibeacon bluetooth parameters.
Query None.
Request None.
Response Succeeded: XML_IbeaconParam
Failed: XML_ResponseStatus
Table A-541 PUT /ISAPI/System/Bluetooth/ibeaconParam
Method PUT
Description Set the ibeacon bluetooth parameters.
Query None.
Request XML_IbeaconParam
Response XML_ResponseStatus
A.12.22 /ISAPI/System/Bluetooth/ibeaconParam/capabilities
Get the ibeacon bluetooth configuration capability.
366
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-542 GET /ISAPI/System/Bluetooth/ibeaconParam/capabilities
Method GET
Description Get the ibeacon bluetooth configuration capability.
Query None.
Request None.
Response Succeeded: XML_Cap_IbeaconParam
Failed: XML_ResponseStatus
A.12.23 /ISAPI/System/capabilities
Get device capability.
Request URI Definition
Table A-543 GET /ISAPI/System/capabilities
Method GET
Description Get device capability.
Query None
Request None.
Response Succeeded: XML_DeviceCap
Failed: XML_ResponseStatus
A.12.24 /ISAPI/System/channels/<ID>/vibrationDetection/capabilities?
format=json
Get the capability of vibration detection.
Request URI Definition
Table A-544 GET /ISAPI/System/channels/<ID>/vibrationDetection/capabilities?format=json
Method GET
Description Get the capability of vibration detection.
Query format: determine the format of request or response message.
367
Intelligent Security API (General) Developer Guide
Request None.
Response Succeeded: JSON_VibrationDetectionCap
Failed: JSON_ResponseStatus
Remarks
The <ID> in the URI refers to the channel ID.
A.12.25 /ISAPI/System/channels/<ID>/vibrationDetection?format=json
Get or set the vibration detection parameters.
Request URI Definition
Table A-545 GET /ISAPI/System/channels/<ID>/vibrationDetection?format=json
Method GET
Description Get vibration detection parameters.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_VibrationDetection
Failed: JSON_ResponseStatus
Table A-546 PUT /ISAPI/System/channels/<ID>/vibrationDetection?format=json
Method PUT
Description Set vibration detection parameters.
Query format: determine the format of request or response message.
Request JSON_VibrationDetection
Response JSON_ResponseStatus
Remarks
The <ID> in the URI refers to the channel ID.
A.12.26 /ISAPI/System/configurationData?secretkey=
Import or export configuration files securely.
368
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-547 GET /ISAPI/System/configurationData?secretkey=
Method GET
Description Export the configuration files securely.
Query security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
secretkey: the verification key, it is provided by the upper-layer. It
should be encrypted for exporting and recorded for importing.
Request None.
Response Opaque data (binary data).
Table A-548 PUT or POST /ISAPI/System/configurationData?secretkey=
Method PUT, POST
Description Import the configuration files securely.
Query security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
secretkey: the verification key, it must be the same as the exported
one and should be encrypted for importing.
Request Opaque data (binary data for PUT method, data in form format for
POST method).
Response XML_ResponseStatus
Remarks
The device may reboot after importing the configuration file.
369
Intelligent Security API (General) Developer Guide
A.12.27 /ISAPI/System/configurationData?type=
Import or export device configuration files safely.
Request URI Definition
Table A-549 GET /ISAPI/System/configurationData?type=
Method GET
Description Export device configuration files safely.
Query security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
secretkey: the verification key, which is provided by the upper-layer
and should be encrypted for importing.
type: the type of configuration parameters to be exported or
imported, which contains "OSD", "MODE", "IMAGE" and "IOOUT"
types. For "OSD" type, the OSD (On Screen Display) parameters will
be imported or exported; for "MODE" type, the application mode
parameters will be imported or exported; for "IMAGE" type, the
image parameters will be imported or exported; for "IOOUT" type,
the IO output parameters will be imported or exported. Multiple
types can be selected and they should be separated by commas,
e.g., /ISAPI/System/configurationData?
type=OSD,MODE,IMAGE,IOOUT. If no type is selected, it is
recommended to return failure response message or set type to
NULL.
Request None.
Response Succeeded: Opaque data.
Failed: XML_ResponseStatus
Table A-550 PUT or POST /ISAPI/System/configurationData?type=
Method PUT, POST
Description Import device configuration files safely.
Query security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
370
Intelligent Security API (General) Developer Guide
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
secretkey: the verification key, which is provided by the upper-layer
and should be encrypted for importing.
type: the type of configuration parameters to be exported or
imported, which contains "OSD", "MODE", "IMAGE" and "IOOUT"
types. For "OSD" type, the OSD (On Screen Display) parameters will
be imported or exported; for "MODE" type, the application mode
parameters will be imported or exported; for "IMAGE" type, the
image parameters will be imported or exported; for "IOOUT" type,
the IO output parameters will be imported or exported. Multiple
types can be selected and they should be separated by commas,
e.g., /ISAPI/System/configurationData?
type=OSD,MODE,IMAGE,IOOUT. If no type is selected, it is
recommended to return failure response message or set type to
NULL.
Request Opaque data.
Response XML_ResponseStatus
Remarks
• This URI will import or export all configuration parameters by default.
• The device needs to reboot for the imported parameters to take effect.
A.12.28 /ISAPI/System/deviceInfo
Operations about the device information.
Request URI Definition
Table A-551 GET /ISAPI/System/deviceInfo
Method GET
Description Get the device information.
Query None
Request None.
Response Succeeded: XML_DeviceInfo
Failed: XML_ResponseStatus
371
Intelligent Security API (General) Developer Guide
Table A-552 PUT /ISAPI/System/deviceInfo
Method PUT
Description Set the device information.
Query None
Request XML_DeviceInfo
Response XML_ResponseStatus
A.12.29 /ISAPI/System/deviceInfo/capabilities
Get the device information configuration capability.
Request URI Definition
Table A-553 GET /ISAPI/System/deviceInfo/capabilities
Method GET
Description Get the device information configuration capability.
Query None.
Request None.
Response Succeeded: XML_Cap_DeviceInfo
Failed: XML_ResponseStatus
A.12.30 /ISAPI/System/deviceInfo/characteristicCode?format=json
Get the device attribute code.
Request URI Definition
Table A-554 GET /ISAPI/System/deviceInfo/characteristicCode?format=json
Method GET
Description Get the device attribute code.
Query format: determine the format of request or response message.
security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
372
Intelligent Security API (General) Developer Guide
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
Request None.
Response Succeeded: JSON_Characteristic
Failed: JSON_ResponseStatus
A.12.31 /ISAPI/System/DeviceLanguage
Operations about device language configuration.
Request URI Definition
Table A-555 GET /ISAPI/System/DeviceLanguage
Method GET
Description Get device language configuration parameters.
Query None.
Request None.
Response Succeeded: XML_DeviceLanguage
Failed: XML_ResponseStatus
Table A-556 PUT /ISAPI/System/DeviceLanguage
Method PUT
Description Set device language parameters.
Query None.
Request XML_DeviceLanguage
Response XML_ResponseStatus
A.12.32 /ISAPI/System/DeviceLanguage/capabilities
Get the capability of device language configuration.
373
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-557 GET /ISAPI/System/DeviceLanguage/capabilities
Method GET
Description Get the capability of device language configuration.
Query None.
Request None.
Response Succeeded: XML_Cap_DeviceLanguage
Failed: XML_ResponseStatus
A.12.33 /ISAPI/System/diagnosedData
Get device diagnosis information.
Request URI Definition
Table A-558 GET /ISAPI/System/diagnosedData
Method GET
Description Get device diagnosis information.
Query None.
Request None.
Response Non-transparent data
Remarks
Before getting the device diagnosis information, you should get the information export status via
URI GET /ISAPI/System/diagnosedData/exportStatus , only when the node <status> in
XML_ExportStatus is "unexport", you can call this URI to get the device diagnosis information.
A.12.34 /ISAPI/System/diagnosedData/exportStatus
Get the export status of device diagnosis information.
Request URI Definition
Table A-559 GET /ISAPI/System/diagnosedData/exportStatus
Method GET
Description Get the export status of device diagnosis information.
374
Intelligent Security API (General) Developer Guide
Query None.
Request None.
Response XML_ExportStatus
A.12.35 /ISAPI/System/diagnosedData/parameter
Get or set the parameters of exporting device diagnose information.
Request URI Definition
Table A-560 GET /ISAPI/System/diagnosedData/parameter
Method GET
Description Get the parameters of exporting device diagnose information.
Query None.
Request None.
Response Succeeded: XML_DiagnosedDataParameter
Failed: XML_ResponseStatus
Table A-561 PUT /ISAPI/System/diagnosedData/parameter
Method PUT
Description Set the parameters of exporting device diagnose information.
Query None.
Request XML_DiagnosedDataParameter
Response XML_ResponseStatus
Remarks
The speed dome does not support getting parameters of exporting diagnose information.
A.12.36 /ISAPI/System/diagnosedData/parameter/capabilities
Get the capability of exporting device diagnose information.
Request URI Definition
Table A-562 GET /ISAPI/System/diagnosedData/parameter/capabilities
Method GET
Description Get the capability of exporting device diagnose information.
375
Intelligent Security API (General) Developer Guide
Query None.
Request None.
Response Succeeded: XML_Cap_DiagnosedDataParameter
Failed: XML_ResponseStatus
A.12.37 /ISAPI/System/diagnosedData/server/capabilities?format=json
Get the diagnostic server capability.
Request URI Definition
Table A-563 GET /ISAPI/System/diagnosedData/server/capabilities?format=json
lllMethod GET
Description Get the diagnostic server capability.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_DiagnosedDataServerCap
Failed: JSON_ResponseStatus
A.12.38 /ISAPI/System/diagnosedData/server?format=json
Get or set the diagnostic server parameters.
Request URI Definition
Table A-564 GET /ISAPI/System/diagnosedData/server?format=json
Method GET
Description Get the diagnostic server configuration.
Query format: determine the format of request or response message.
security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
376
Intelligent Security API (General) Developer Guide
Request None.
Response Succeeded: JSON_DiagnosedDataServerList
Failed: JSON_ResponseStatus
Table A-565 PUT /ISAPI/System/diagnosedData/server?format=json
Method PUT
Description Set the diagnostic server parameters.
Query format: determine the format of request or response message.
security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
Request JSON_DiagnosedDataServerList
Response JSON_ResponseStatus
Remarks
The following nodes in the message JSON_DiagnosedDataServerList should be encrypted:
password, userName, consoleCommand, and compressionKey.
A.12.39 /ISAPI/System/diagnosedData/server/test?format=json
Test the diagnostic server.
Request URI Definition
Table A-566 POST /ISAPI/System/diagnosedData/server/test?format=json
Method POST
Description Test the diagnostic server.
Query format: determine the format of request or response message.
security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
377
Intelligent Security API (General) Developer Guide
iv: the initialization vector, and it is required when security is 1 or 2.
Request JSON_TestDescription
Response JSON_ResponseStatus
Remarks
The two nodes password and userName in the message JSON_DiagnosedDataServerList should
be encrypted.
A.12.40 /ISAPI/System/diagnosis/capabilities?format=json
Get the device diagnosis capability.
Request URI Definition
Table A-567 GET /ISAPI/System/diagnosis/capabilities?format=json
Method GET
Description Get the device diagnosis capability.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_DiagnosisCondCap
Failed: JSON_ResponseStatus
A.12.41 /ISAPI/System/diagnosis?format=json
Diagnose the device.
Request URI Definition
Table A-568 POST /ISAPI/System/diagnosis?format=json
Method POST
Description Diagnose the device.
Query format: determine the format of request or response message.
Request JSON_DiagnosisCond
Response JSON_DiagnosisResult
378
Intelligent Security API (General) Developer Guide
A.12.42 /ISAPI/System/discoveryMode
Get or set the device discovery mode.
Request URI Definition
Table A-569 GET /ISAPI/System/discoveryMode
Method GET
Description Get the device discovery mode.
Query None.
Request None.
Response Succeeded: XML_DiscoveryMode
Failed: XML_ResponseStatus
Table A-570 PUT /ISAPI/System/discoveryMode
Method PUT
Description Set the device discovery mode.
Query None.
Request XML_DiscoveryMode
Response XML_ResponseStatus
A.12.43 /ISAPI/System/discoveryMode/capabilities
Get the configuration capability of device discovery mode.
Request URI Definition
Table A-571 GET /ISAPI/System/discoveryMode/capabilities
Method GET
Description Get the configuration capability of device discovery mode.
Query None.
Request None.
Response Succeeded: XML_Cap_DiscoveryMode
Failed: XML_ResponseStatus
379
Intelligent Security API (General) Developer Guide
A.12.44 /ISAPI/System/doubleLensParking/capabilities
Get the capability of dual-lens parking space camera.
Request URI Definition
Table A-572 GET /ISAPI/System/doubleLensParking/capabilities
Method GET
Description Get the capability of dual-lens parking space camera.
Query None.
Request None.
Response Succeeded: XML_DoubleLensParkingCap
Failed: XML_ResponseStatus
A.12.45 /ISAPI/System/dumpData
Get the dump file data of the device.
Request URI Definition
Table A-573 GET /ISAPI/System/dumpData
Method GET
Description Get the dump file data of the device.
Query None.
Request None.
Response Opaque data.
Remarks
The dump file data of the device may be in binary format or other format.
A.12.46 /ISAPI/System/exportLogToUSB/capabilities?format=json
Get the configuration capability of exporting log to USB flash drive.
380
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-574 GET /ISAPI/System/exportLogToUSB/capabilities?format=json
Method GET
Description Get the configuration capability of exporting log to USB flash drive.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_ExportLogToUSBCap
Failed: JSON_ResponseStatus
A.12.47 /ISAPI/System/exportLogToUSB/mode?format=json
Set parameters of exporting logs to USB flash drive.
Request URI Definition
Table A-575 PUT /ISAPI/System/exportLogToUSB/mode?format=json
Method PUT
Description Set parameters of exporting logs to USB flash drive.
Query format: determine the format of request or response message.
Request JSON_ExportLogToUSB
Response JSON_ResponseStatus
A.12.48 /ISAPI/System/exportLogToUSB/status?format=json
Get the status of exporting logs to USB flash drive.
Table A-576 GET /ISAPI/System/exportLogToUSB/status?format=json
Method GET
Description Get the status of exporting logs to USB flash drive.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_ExportLogToUSBStatus
Failed: JSON_ResponseStatus
381
Intelligent Security API (General) Developer Guide
A.12.49 /ISAPI/System/exportUSBLog/capabilities?format=json
Get the configuration capability of exporting logs to PC.
Request URI Definition
Table A-577 GET /ISAPI/System/exportUSBLog/capabilities?format=json
Method GET
Description Get the configuration capability of exporting logs to PC.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_ExportUSBLogCap
Failed: JSON_ResponseStatus
A.12.50 /ISAPI/System/exportUSBLog/status?format=json
Get the status of exporting logs to PC.
Request URI Definition
Table A-578 GET /ISAPI/System/exportUSBLog/status?format=json
Method GET
Description Get the status of exporting logs to PC.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_ExportUSBLogStatus
Failed: JSON_ResponseStatus
A.12.51 /ISAPI/System/exportUSBLog?format=json
Export logs from USB flash drive to PC.
Table A-579 PUT /ISAPI/System/exportUSBLog?format=json
Method PUT
Description Export logs from USB flash drive to PC.
Query format: determine the format of request or response message.
382
Intelligent Security API (General) Developer Guide
Request JSON_ExportUSBLog
Response JSON_ResponseStatus
A.12.52 /ISAPI/System/externalDevice/capabilities
Get peripherals configuration capability.
Request URI Definition
Table A-580 GET /ISAPI/System/externalDevice/capabilities
Method GET
Description Get peripherals configuration capability.
Query None.
Request None.
Response XML_Cap_ExternalDevice
A.12.53 /ISAPI/System/factoryReset?mode=
Restore the device to default settings.
Request URI Definition
Table A-581 PUT /ISAPI/System/factoryReset?mode=
Method PUT
Description Restore the device to default settings.
Query mode: The recovery mode, which contains "full", "basic", and "part"
mode. The default mode is "full", and all the device parameters will
be restored to default settings; for "basic" mode, the device
parameters, except network and user parameters, will be restored to
default settings; for "part" mode, only a part of default settings will
be restored.
Request None.
Response XML_ResponseStatus
383
Intelligent Security API (General) Developer Guide
Remarks
• For access control devices, this URI is only supported by facial recognition terminal, and the
"full" and "basic" recovery modes are not supported by passthrough method.
• For facial recognition terminal, if the recovery mode is set to "part", i.e., /ISAPI/System/
factoryReset?mode=part, the settings of card, face, event, fingerprint, schedule template,
network, user name, and password will be reserved without being restored.
A.12.54 /ISAPI/System/fileExport/capabilities?format=json
Get the capability of exporting files from the device.
Request URI Definition
Table A-582 GET /ISAPI/System/fileExport/capabilities?format=json
Method GET
Description Get the capability of exporting files from the device.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_FileExportCap
Failed: JSON_ResponseStatus
A.12.55 /ISAPI/System/fileExport?format=json
Export files from the device.
Request URI Definition
Table A-583 POST /ISAPI/System/fileExport?format=json
Method POST
Description Export files from the device.
Query format: determine the format of request or response message.
Request JSON_FileExport
Response JSON_FileExportResult
384
Intelligent Security API (General) Developer Guide
A.12.56 /ISAPI/System/firmwareCodeV2
Get firmware code list.
Request URI Definition
Table A-584 GET /ISAPI/System/firmwareCodeV2
Method GET
Description Get firmware code list.
Query None.
Request None.
Response Succeeded: XML_FirmwareCodeList
Failed: XML_ResponseStatus
A.12.57 /ISAPI/System/GPSCalibratation/channels/<ID>/capabilities?format=json
Get GPS calibration configuration capability.
Request URI Definition
Table A-585 GET /ISAPI/System/GPSCalibratation/channels/<ID>/capabilities?format=json
Method GET
Description Get GPS calibration configuration capability.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_GPSCalibratationCap
Failed: JSON_ResponseStatus
Remarks
The <ID> in the request URI refers to the video channel ID.
A.12.58 /ISAPI/System/GPSCalibratation/channels/<ID>/points/<PID>?
format=json
Get, set or delete configuration parameters of a single GPS calibration point.
385
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-586 GET /ISAPI/System/GPSCalibratation/channels/<ID>/points/<PID>?format=json
Method GET
Description Get the configuration parameters of a single GPS calibration point.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_GPSCalibratation
Failed: JSON_ResponseStatus
Table A-587 PUT /ISAPI/System/GPSCalibratation/channels/<ID>/points/<PID>?format=json
Method PUT
Description Set the configuration parameters of a single GPS calibration point.
Query format: determine the format of request or response message.
Request JSON_GPSCalibratation
Response JSON_ResponseStatus
Table A-588 DELETE /ISAPI/System/GPSCalibratation/channels/<ID>/points/<PID>?format=json
Method DELETE
Description Delete the configuration parameters of a single GPS calibration point.
Query format: determine the format of request or response message.
Request None.
Response JSON_ResponseStatus
Remarks
The first <ID> in the request URI refers to the video channel ID and the second <ID> refers to
calibration point ID.
A.12.59 /ISAPI/System/GPSCalibratation/channels/<ID>/points/status?
format=json
Get GPS calibration status.
386
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-589 GET /ISAPI/System/GPSCalibratation/channels/<ID>/points/status?format=json
Method GET
Description Get GPS calibration status.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_GPSCalibratationStatus
Failed: JSON_ResponseStatus
Remarks
The <ID> in the request URI refers to the video channel ID.
A.12.60 /ISAPI/System/GPSCalibratation/channels/<ID>/points?format=json
Get, set or delete configuration parameters of multiple GPS calibration points in a batch.
Request URI Definition
Table A-590 GET /ISAPI/System/GPSCalibratation/channels/<ID>/points?format=json
Method GET
Description Get configuration parameters of multiple GPS calibration points in a
batch.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_GPSCalibratationList
Failed: JSON_ResponseStatus
Table A-591 PUT /ISAPI/System/GPSCalibratation/channels/<ID>/points?format=json
Method PUT
Description Set configuration parameters of multiple GPS calibration points in a
batch.
Query format: determine the format of request or response message.
Request JSON_GPSCalibratationList
Response JSON_ResponseStatus
387
Intelligent Security API (General) Developer Guide
Table A-592 DELETE /ISAPI/System/GPSCalibratation/channels/<ID>/points?format=json
Method DELETE
Description Delete configuration parameters of multiple GPS calibration points in
a batch.
Query format: determine the format of request or response message.
Request None.
Response JSON_ResponseStatus
Remarks
The <ID> in the request URI refers to the video channel ID.
A.12.61 /ISAPI/System/GPSPTZCalibratation/channels/<ID>/calibratation?
format=json
Enable GPS calibration.
Request URI Definition
Table A-593 PUT /ISAPI/System/GPSPTZCalibratation/channels/<ID>/calibratation?format=json
Method PUT
Description Enable GPS calibration.
Query format: determine the format of request or response message.
Request None.
Response JSON_ResponseStatus
Remarks
The <ID> in the request URI refers to the video channel ID.
A.12.62 /ISAPI/System/GPSVerification/channels/<ID>/display?format=json
Get or set the parameters of displaying GPS calibration verification result.
Request URI Definition
Table A-594 GET /ISAPI/System/GPSVerification/channels/<ID>/display?format=json
Method GET
Description Get the parameters of displaying GPS calibration verification result.
388
Intelligent Security API (General) Developer Guide
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_VerificationDisplay
Failed: JSON_ResponseStatus
Table A-595 PUT /ISAPI/System/GPSVerification/channels/<ID>/display?format=json
Method PUT
Description Set the parameters of displaying GPS calibration verification result.
Query format: determine the format of request or response message.
Request JSON_VerificationDisplay
Response JSON_ResponseStatus
Remarks
The <ID> in the URI refers to channel No.
A.12.63 /ISAPI/System/GPSVerification/channels/<ID>/points/<ID>?format=json
Get, set, or delete a specified verification point.
Request URI Definition
Table A-596 GET /ISAPI/System/GPSVerification/channels/<ID>/points/<ID>?format=json
Method GET
Description Get the parameters of a specified verification point.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_VerificationPoint
Failed: JSON_ResponseStatus
Table A-597 PUT /ISAPI/System/GPSVerification/channels/<ID>/points/<ID>?format=json
Method PUT
Description Set the parameters of a specified verification point.
Query format: determine the format of request or response message.
Request JSON_VerificationPoint
Response JSON_ResponseStatus
389
Intelligent Security API (General) Developer Guide
Table A-598 DELETE /ISAPI/System/GPSVerification/channels/<ID>/points/<ID>?format=json
Method DELETE
Description Delete a specified verification point.
Query format: determine the format of request or response message.
Request None.
Response JSON_ResponseStatus
Remarks
The first <ID> in the URI refers to channel No., and second <ID> refers to verification point No.
A.12.64 /ISAPI/System/GPSVerification/channels/<ID>/points/capabilities?
format=json
Get the capability of verifying GPS calibration.
Request URI Definition
Table A-599 GET /ISAPI/System/GPSVerification/channels/<ID>/points/capabilities?format=json
Method GET
Description Get the capability of verifying GPS calibration.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_VerificationPointList
Failed: JSON_ResponseStatus
Remarks
The <ID> in the URI refers to channel No.
A.12.65 /ISAPI/System/GPSVerification/channels/<ID>/points/resultInfo?
format=json
Get the verification results of GPS calibration in a batch according to channel No.
390
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-600 GET /ISAPI/System/GPSVerification/channels/<ID>/points/resultInfo?format=json
Method GET
Description Get the verification results of GPS calibration in a batch according to
channel No.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_GPSVerification_ResultInfoList
Failed: JSON_ResponseStatus
Remarks
The <ID> in the URI refers to channel No.
A.12.66 /ISAPI/System/GPSVerification/channels/<ID>/points?format=json
Get, set, or delete multiple verification points in a batch, or add a verification point.
Request URI Definition
Table A-601 GET /ISAPI/System/GPSVerification/channels/<ID>/points?format=json
Method GET
Description Get the parameters of verification points in a batch according to
channel No.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_VerificationPointList
Failed: JSON_ResponseStatus
Table A-602 PUT /ISAPI/System/GPSVerification/channels/<ID>/points?format=json
Method PUT
Description Set the parameters of verification points in a batch according to
channel No.
Query format: determine the format of request or response message.
Request JSON_VerificationPointList
Response JSON_ResponseStatus
391
Intelligent Security API (General) Developer Guide
Table A-603 DELETE /ISAPI/System/GPSVerification/channels/<ID>/points?format=json
Method DELETE
Description Delete all verification points in a batch according to channel No.
Query format: determine the format of request or response message.
Request None.
Response JSON_ResponseStatus
Table A-604 POST /ISAPI/System/GPSVerification/channels/<ID>/points?format=json
Method POST
Description Add a verification point according to channel No.
Query format: determine the format of request or response message.
Request JSON_VerificationPoint
Response Succeeded: JSON_GPSVerification_ResultInfo
Failed: JSON_ResponseStatus
Remarks
The <ID> in the URI refers to channel No.
A.12.67 /ISAPI/System/guardAgainstTheft
Get or set device anti-theft parameters.
Request URI Definition
Table A-605 GET /ISAPI/System/guardAgainstTheft
Method GET
Description Get the device anti-theft parameters.
Query None.
Request None.
Response Succeeded: XML_GuardAgainstTheft
Failed: XML_ResponseStatus
Table A-606 PUT /ISAPI/System/guardAgainstTheft
Method PUT
Description Set the device anti-theft parameters.
392
Intelligent Security API (General) Developer Guide
Query None.
Request XML_GuardAgainstTheft
Response XML_ResponseStatus
A.12.68 /ISAPI/System/guardAgainstTheft/capabilities
Get the device anti-theft configuration capability.
Request URI Definition
Table A-607 GET /ISAPI/System/guardAgainstTheft/capabilities
Method GET
Description Get the device anti-theft configuration capability.
Query None.
Request None.
Response Succeeded: XML_Cap_GuardAgainstTheft
Failed: XML_ResponseStatus
A.12.69 /ISAPI/System/guideConfig/<guideEvent>/capabilities?format=json
Get the capability of quick setup instruction for specified event.
Request URI Definition
Table A-608 GET /ISAPI/System/guideConfig/<guideEvent>/capabilities?format=json
Method GET
Description Get the capability of quick setup instruction for specified event.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_GuideConfigCap
Failed: JSON_ResponseStatus
Remarks
The <guideEvent> in the URI refers to the event, which supports quick setup, and now only
"linkageCapture" (capture by linkage) is supported, i.e., the URI is: /ISAPI/System/guideConfig/
linkageCapture/capabilities?format=json
393
Intelligent Security API (General) Developer Guide
A.12.70 /ISAPI/System/guideConfig/<guideEvent>?format=json
Get the parameters of quick setup instruction for specified event.
Request URI Definition
Table A-609 GET /ISAPI/System/guideConfig/<guideEvent>?format=json
Method GET
Description Get the parameters of quick setup instruction for specified event.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_GuideConfig
Failed: JSON_ResponseStatus
Remarks
The <guideEvent> in the URI refers to the event, which supports quick setup, and now only
"linkageCapture" (capture by linkage) is supported, i.e., the URI is: /ISAPI/System/guideConfig/
linkageCapture?format=json
A.12.71 /ISAPI/System/Hardware
Operations about the device hardware configuration.
Request URI Definition
Table A-610 GET /ISAPI/System/Hardware
Method GET
Description Get the device hardware configuration parameters.
Query None.
Request None.
Response Succeeded: XML_HardwareService
Failed: XML_ResponseStatus
Table A-611 PUT /ISAPI/System/Hardware
Method PUT
Description Set the device hardware parameters.
Query None.
394
Intelligent Security API (General) Developer Guide
Request XML_HardwareService
Response XML_ResponseStatus
A.12.72 /ISAPI/System/Hardware/defog
Operations about the defogging control configuration.
Request URI Definition
Table A-612 GET /ISAPI/System/Hardware/defog
Method GET
Description Get the defogging control configuration parameters.
Query None.
Request None.
Response Succeeded: XML_Defog
Failed: XML_ResponseStatus
Table A-613 PUT /ISAPI/System/Hardware/defog
Method PUT
Description Set the defogging control parameters.
Query None.
Request XML_Defog
Response XML_ResponseStatus
A.12.73 /ISAPI/System/installationAngleCalibration/channels/<ID>/capabilities?
format=json
Get the capability of installation angle calibration.
Request URI Definition
Table A-614 GET /ISAPI/System/installationAngleCalibration/channels/<ID>/capabilities?
format=json
Method GET
Description Get the capability of installation angle calibration.
Query format: determine the format of request or response message.
395
Intelligent Security API (General) Developer Guide
Request None.
Response Succeeded: JSON_Cap_CalibrationStatus
Failed: JSON_ResponseStatus
Remarks
The <ID> in the request URI refers to the channel No.
A.12.74 /ISAPI/System/installationAngleCalibration/channels/<ID>?format=json
Get the installation angle calibration status or calibrate the installation angle.
Request URI Definition
Table A-615 GET /ISAPI/System/installationAngleCalibration/channels/<ID>?format=json
Method GET
Description Get the installation angle calibration status.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_CalibrationStatus
Failed: JSON_ResponseStatus
Table A-616 PUT /ISAPI/System/installationAngleCalibration/channels/<ID>?format=json
Method PUT
Description Calibrate the installation angle.
Query format: determine the format of request or response message.
Request None.
Response JSON_ResponseStatus
Remarks
The <ID> in the request URI refers to the channel No.
A.12.75 /ISAPI/System/IO
Get the alarm input and output information.
396
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-617 GET /ISAPI/System/IO
Method GET
Description Get the alarm input and output information.
Query None.
Request None.
Response Succeeded: XML_IOPortList
Failed: XML_ResponseStatus
A.12.76 /ISAPI/System/IO/capabilities
Get alarm input and output configuration capability.
Request URI Definition
Table A-618 GET /ISAPI/System/IO/capabilities
Method GET
Description Get alarm input and output configuration capability.
Query None.
Request None.
Response XML_IOCap
A.12.77 /ISAPI/System/IO/inputs
Get the information of all alarm input ports.
Request URI Definition
Table A-619 Get the information of all alarm input ports.
Method GET
Description Get the information of all alarm input ports.
Query None.
Request None.
Response XML_IOInputPortList
397
Intelligent Security API (General) Developer Guide
A.12.78 /ISAPI/System/IO/inputs/<ID>
Get or set an alarm input port.
Request URI Definition
Table A-620 GET /ISAPI/System/IO/inputs/<ID>
Method GET
Description Get an alarm input's information.
Query None.
Request None.
Response XML_IOInputPort
Table A-621 PUT /ISAPI/System/IO/inputs/<ID>
Method PUT
Description Set an alarm input's information.
Query None.
Request XML_IOInputPort
Response XML_ResponseStatus
A.12.79 /ISAPI/System/IO/inputs/<ID>/status
Get the status of a specific alarm input.
Request URI Definition
Table A-622 GET /ISAPI/System/IO/inputs/<ID>/status
Method GET
Description Get the status of a specific alarm input.
Query None.
Request None.
Response Succeeded: XML_IOPortStatus
Failed: XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the alarm input ID.
398
Intelligent Security API (General) Developer Guide
A.12.80 /ISAPI/System/IO/inputs/capabilities
Get alarm input configuration capability.
Request URI Definition
Table A-623 GET /ISAPI/System/IO/inputs/capabilities
Method GET
Description Get the alarm input configuration capability.
Query None.
Request None.
Response XML_Cap_IOInputPortList
A.12.81 /ISAPI/System/IO/outputs
Get the information of all I/O output ports.
Request URI Definition
Table A-624 GET /ISAPI/System/IO/outputs
Method GET
Description Get the information of all I/O output ports.
Query None.
Request None.
Response XML_IOOutputPortList
A.12.82 /ISAPI/System/IO/outputs/capabilities
Get the I/O output capability.
Request URI Definition
Table A-625 GET /ISAPI/System/IO/outputs/capabilities
Method GET
Description Get the I/O output capability.
Query None.
399
Intelligent Security API (General) Developer Guide
Request None.
Response XML_Cap_IOOutputPortList
A.12.83 /ISAPI/System/IO/outputs/<ID>
Get or set the information of specified I/O output port.
Table A-626 GET /ISAPI/System/IO/outputs/<ID>
Method GET
Description Get the information of specified I/O output port.
Query None.
Request None.
Response XML_IOOutputPort
Table A-627 PUT /ISAPI/System/IO/outputs/<ID>
Method PUT
Description Set the information of specified alarm output port.
Query XML_IOOutputPort
Request None.
Response XML_ResponseStatus
A.12.84 /ISAPI/System/IO/outputs/<ID>/status
Get status of a specific alarm output.
Request URI Definition
Table A-628 GET /ISAPI/System/IO/outputs/<ID>/status
Method GET
Description Get status of a specific alarm output.
Query None.
Request None.
Response Succeeded: XML_IOPortStatus
Failed: XML_ResponseStatus
400
Intelligent Security API (General) Developer Guide
Remarks
The <ID> in the request URI refers to the alarm output ID.
A.12.85 /ISAPI/System/IO/outputs/<ID>/trigger
Manually trigger a specific alarm output.
Request URI Definition
Table A-629 PUT /ISAPI/System/IO/outputs/<ID>/trigger
Method PUT
Description Manually trigger a specific alarm output.
Query none.
Request XML_IOPortData
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the alarm output ID.
A.12.86 /ISAPI/System/IO/softInputs/<ID>?format=json
Get or set parameters of a single soft I/O.
Request URI Definition
Table A-630 GET /ISAPI/System/IO/softInputs/<ID>?format=json
Method GET
Description Get parameters of a single soft I/O.
Query format: determine the format of request or response message.
Request None
Response Succeeded: JSON_singleSoftIO
Failed: JSON_ResponseStatus
Table A-631 PUT /ISAPI/System/IO/softInputs/<ID>?format=json
Method PUT
Description Set parameters of a single soft I/O.
Query format: determine the format of request or response message.
401
Intelligent Security API (General) Developer Guide
Request JSON_singleSoftIO
Response JSON_ResponseStatus
A.12.87 /ISAPI/System/IO/softInputs?format=json
Get all soft I/O parameters.
Request URI Definition
Table A-632 GET /ISAPI/System/IO/softInputs?format=json
Method GET
Description Get all soft I/O parameters.
Query format: determine the format of request or response message.
Request None
Response Succeeded: JSON_SoftIO
Failed: JSON_ResponseStatus
A.12.88 /ISAPI/System/IO/status
Get alarm input and output status.
Request URI Definition
Table A-633 GET /ISAPI/System/IO/status
Method GET
Description Get alarm input and output status.
Query None.
Request None.
Response Succeeded: XML_IOPortStatusList
Failed: XML_ResponseStatus
A.12.89 /ISAPI/System/laserOpticalAxis/capabilities?format=json
Get the configuration capability of laser optical axis.
402
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-634 GET /ISAPI/System/laserOpticalAxis/capabilities?format=json
Method GET
Description Get the configuration capability of laser optical axis.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_LaserOpticalAxisCap
Failed: JSON_ResponseStatus
A.12.90 /ISAPI/System/laserOpticalAxis/goto?format=json
Adjust the laser optical axis.
Request URI Definition
Table A-635 PUT /ISAPI/System/laserOpticalAxis/goto?format=json
Method PUT
Description Adjust the laser optical axis.
Query format: determine the format of request or response message.
Request JSON_LaserOpticalAxis_direction
Response JSON_ResponseStatus
A.12.91 /ISAPI/System/laserOpticalAxis?format=json
Get or set laser optical axis parameters.
Request URI Definition
Table A-636 GET /ISAPI/System/laserOpticalAxis?format=json
Method GET
Description Get the laser optical axis parameters.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_LaserOpticalAxis
403
Intelligent Security API (General) Developer Guide
Failed: JSON_ResponseStatus
Table A-637 PUT /ISAPI/System/laserOpticalAxis?format=json
Method PUT
Description Configure the laser optical axis.
Query format: determine the format of request or response message.
Request JSON_LaserOpticalAxis
Response JSON_ResponseStatus
A.12.92 /ISAPI/System/logServer
Get or set log server parameters.
Request URI Definition
Table A-638 GET /ISAPI/System/logServer
Method GET
Description Get log server parameters.
Query None.
Request None.
Response Succeeded: XML_LogServer
Failed: XML_ResponseStatus
Table A-639 PUT /ISAPI/System/logServer
Method PUT
Description Set log server parameters.
Query None.
Request XML_LogServer
Response XML_ResponseStatus
A.12.93 /ISAPI/System/logServer/capabilities
Get log server configuration capability.
404
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-640 GET /ISAPI/System/logServer/capabilities
Method GET
Description Get log server configuration capability.
Query None.
Request None.
Response Succeeded: XML_LogServerCap
Failed: XML_ResponseStatus
A.12.94 /ISAPI/System/logServer/test
Perform security log server test.
Request URI Definition
Table A-641 POST /ISAPI/System/logServer/test
Method POST
Description Perform security log server test.
Query None.
Request XML_LogServerTestDescription
Response XML_ResponseStatus
A.12.95 /ISAPI/System/Network/adaption/capabilities?format=json
Get network self-adaptive configuration capability.
Request URI Definition
Table A-642 GET /ISAPI/System/Network/adaption/capabilities?format=json
Method GET
Description Get network self-adaptive configuration capability.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_AdaptionCap
405
Intelligent Security API (General) Developer Guide
Failed: JSON_ResponseStatus
A.12.96 /ISAPI/System/Network/adaption?format=json&streamType=
Operations about network self-adaptive configuration.
Request URI Definition
Table A-643 GET /ISAPI/System/Network/adaption?format=json&streamType=
Method GET
Description Get network self-adaptive parameters.
Query format: determine the format of request or response message.
streamType: stream types, integer, the following values are available:
0-main stream, 1-sub-stream, 2-third stream, 3-virtual stream, 4-
stream 5, 5-stream 6, 7-stream 7, 8-stream 8, …, and so on.
Request None.
Response Succeeded: JSON_Adaption
Failed: JSON_ResponseStatus
Table A-644 PUT /ISAPI/System/Network/adaption?format=json&streamType=
Method GET
Description Set network self-adaptive parameters.
Query format: determine the format of request or response message.
streamType: stream types, integer, the following values are available:
0-main stream, 1-sub-stream, 2-third stream, 3-virtual stream, 4-
stream 5, 5-stream 6, 7-stream 7, 8-stream 8, …, and so on.
Request JSON_Adaption
Response XML_ResponseStatus
A.12.97 /ISAPI/System/Network/Bond
Get all network bonding configuration parameters.
406
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-645 GET /ISAPI/System/Network/Bond
Method GET
Description Get all network bonding configuration parameters.
Query None.
Request None.
Response Succeeded: XML_BondList
Failed: XML_ResponseStatus
A.12.98 /ISAPI/System/Network/Bond/<ID>
Operations about the bonding configuration of a specific network interface.
Request URI Definition
Table A-646 GET /ISAPI/System/Network/Bond/<ID>
Method GET
Description Get the bonding parameters of a specific network interface.
Query None.
Request None.
Response Succeeded: XML_Bond
Failed: XML_ResponseStatus
Table A-647 PUT /ISAPI/System/Network/Bond/<ID>
Method PUT
Description Set the bonding parameters of a specific network interface.
Query None.
Request XML_Bond
Response XML_ResponseStatus
A.12.99 /ISAPI/System/Network/capabilities
Get the network capability.
407
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-648 GET /ISAPI/System/Network/capabilities
Method GET
Description Get the network capability.
Query None.
Request None.
Response Succeeded: XML_NetworkCap
Failed: XML_ResponseStatus
A.12.100 /ISAPI/System/Network/channels/<ID>/buletooth/status
Operations about the bluetooth status configuration of a specific channel.
Request URI Definition
Table A-649 GET /ISAPI/System/Network/channels/<ID>/buletooth/status
Method GET
Description Get the bluetooth status parameters of a specific channel.
Query None.
Request None.
Response Succeeded: XML_BluetoothStatus
Failed: XML_ResponseStatus
Table A-650 PUT /ISAPI/System/Network/channels/<ID>/buletooth/status
Method PUT
Description Set the bluetooth status parameters of a specific channel.
Query None.
Request XML_BluetoothStatus
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the channel No.
408
Intelligent Security API (General) Developer Guide
A.12.101 /ISAPI/System/Network/DDNS
Operations about all DDNS configuration parameters.
Request URI Definition
Table A-651 GET /ISAPI/System/Network/DDNS
Method GET
Description Get all DDNS configuration parameters.
Query None.
Request None.
Response Succeeded: XML_DDNSList
Failed: XML_ResponseStatus
Table A-652 PUT /ISAPI/System/Network/DDNS
Method PUT
Description Set all DDNS configuration parameters.
Query None.
Request XML_DDNSList
Response XML_ResponseStatus
A.12.102 /ISAPI/System/Network/DDNS/capabilities
Get DDNS (Dynamic Domain Name Server) configuration capability.
Request URI Definition
Table A-653 GET /ISAPI/System/Network/DDNS/capabilities
Method GET
Description Get DDNS (Dynamic Domain Name Server) configuration capability.
Query None.
Request None.
Response Succeeded: XML_DDNSList
Failed: XML_ResponseStatus
409
Intelligent Security API (General) Developer Guide
A.12.103 /ISAPI/System/Network/DDNS/<ID>
Operations about the configuration of a specific DDNS.
Request URI Definition
Table A-654 GET /ISAPI/System/Network/DDNS/<ID>
Method GET
Description Get the configuration parameters of a specific DDNS.
Query None.
Request None.
Response Succeeded: XML_DDNS
Failed: XML_ResponseStatus
Table A-655 PUT /ISAPI/System/Network/DDNS/<ID>
Method PUT
Description Set the parameters of a specific DDNS.
Query None.
Request XML_DDNS
Response XML_ResponseStatus
A.12.104 /ISAPI/System/Network/DDNS/<ID>/capabilities
Get the configuration capability of a specific DDNS.
Request URI Definition
Table A-656 GET /ISAPI/System/Network/DDNS/<ID>/capabilities
Method GET
Description Get the configuration capability of a specific DDNS.
Query None.
Request None.
Response Succeeded: XML_Cap_DDNS
Failed: XML_ResponseStatus
410
Intelligent Security API (General) Developer Guide
A.12.105 /ISAPI/System/Network/Ehome
Operations about the EHome server access configuration.
Request URI Definition
Table A-657 GET /ISAPI/System/Network/Ehome
Method GET
Description Get the EHome server access parameters.
Query None.
Request None.
Response Succeeded: XML_Ehome
Failed: XML_ResponseStatus
Table A-658 PUT /ISAPI/System/Network/Ehome
Method PUT
Description Set the EHome server access parameters.
Query None.
Request XML_Ehome
Response XML_ResponseStatus
A.12.106 /ISAPI/System/Network/Ehome/capabilities
Get the configuration capability of EHome server access.
Request URI Definition
Table A-659 GET /ISAPI/System/Network/Ehome/capabilities
Method GET
Description Get the configuration capability of EHome server access.
Query None.
Request None.
Response Succeeded: XML_Cap_EHome
Failed: XML_ResponseStatus
411
Intelligent Security API (General) Developer Guide
A.12.107 /ISAPI/System/Network/Ehome?centerID=
Operations about the EHome server access configuration.
Request URI Definition
Table A-660 GET /ISAPI/System/Network/Ehome?centerID=
Method GET
Description Get the EHome server access parameters.
Query security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
centerID: EHome center ID, and if there is only one center, centerID
is 1.
Request None.
Response Succeeded: XML_Ehome
Failed: XML_ResponseStatus
Table A-661 PUT /ISAPI/System/Network/Ehome?centerID=
Method PUT
Description Set the EHome server access parameters.
Query security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
centerID: EHome center ID, and if there is only one center, centerID
is 1.
Request XML_Ehome
Response XML_ResponseStatus
412
Intelligent Security API (General) Developer Guide
A.12.108 /ISAPI/System/Network/EZVIZ
Operations about Hik-Connect access configurations.
Request URI Definition
Table A-662 GET /ISAPI/System/Network/EZVIZ
Method GET
Description Get Hik-Connect parameters.
Query security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
Request None.
Response XML_EZVIZ
Table A-663 PUT /ISAPI/System/Network/EZVIZ
Method PUT
Description Set Hik-Connect parameters.
Query security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
Request XML_EZVIZ
Response XML_ResponseStatus
A.12.109 /ISAPI/System/Network/EZVIZ/QRCode
Get the Guarding Vision QR code of the device.
413
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-664 GET /ISAPI/System/Network/EZVIZ/QRCode
Method GET
Description Get the Guarding Vision QR code of the device.
Query None.
Request None.
Response Succeeded: Binary data (QR code in binary format)
Failed: XML_ResponseStatus
A.12.110 /ISAPI/System/Network/EZVIZ/QRCode?format=json
Get the Hik-Connect QR code.
Request URI Definition
Table A-665 GET /ISAPI/System/Network/EZVIZ/QRCode?format=json
Method GET
Description Get the Hik-Connect QR code.
Query security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_EZVIZQRCode
Failed: JSON_ResponseStatus
Remarks
• You can use smart phone to scan the QR code to download Hik-Connect app or use Hik-Connect
to scan the QR code to bind the device.
• If the node isSupportEZVIZQRCode is returned in the message XML_Cap_EZVIZ (related URI: /
ISAPI/System/Network/EZVIZ/capabilities ) and the value is true, it indicates that the device
supports this function.
414
Intelligent Security API (General) Developer Guide
A.12.111 /ISAPI/System/Network/EZVIZ/capabilities
Get the Hik-Connect access configuration capability.
Request URI Definition
Table A-666 GET /ISAPI/System/Network/EZVIZ/capabilities
Method GET
Description Get the Hik-Connect access configuration capability.
Query None.
Request None.
Response Succeeded: XML_Cap_EZVIZ
Failed: XML_ResponseStatus
A.12.112 /ISAPI/System/Network/EZVIZ/secretKey?format=json
Edit the verification code for Hik-Connect.
Request URI Definition
Table A-667 PUT /ISAPI/System/Network/EZVIZ/secretKey?format=json
Method PUT
Description Edit the verification code for Hik-Connect.
Query security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
format: determine the format of request or response message.
Request JSON_EZVIZSecretKey
Response JSON_ResponseStatus
A.12.113 /ISAPI/System/Network/EZVIZ/unbind?format=json
Unbind devices from Hik-Connect account.
415
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-668 PUT /ISAPI/System/Network/EZVIZ/unbind?format=json
Method PUT
Description Unbind devices from Hik-Connect account.
Query format: determine the format of request or response message.
security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
Request JSON_EZVIZUnbind
Response JSON_ResponseStatus
Remarks
This URI can only be used in the same network segment in a LAN by admin users.
A.12.114 /ISAPI/System/Network/ftp
Operations about all FTP configurations.
Request URI Definition
Table A-669 GET /ISAPI/System/Network/ftp
Method GET
Description Get all FTP parameters.
Query None.
Request None.
Response Succeeded: XML_FTPNotificationList
Failed: XML_ResponseStatus
Table A-670 PUT /ISAPI/System/Network/ftp
Method PUT
Description Set all FTP parameters.
Query None.
416
Intelligent Security API (General) Developer Guide
Request XML_FTPNotificationList
Response XML_ResponseStatus
A.12.115 /ISAPI/System/Network/ftp/<ID>
Operations about the configuration of a specific FTP.
Request URI Definition
Table A-671 GET /ISAPI/System/Network/ftp/<ID>
Method GET
Description Get the parameters of a specific FTP.
Query None.
Request None.
Response Succeeded: XML_FTPNotification
Failed: XML_ResponseStatus
Table A-672 PUT /ISAPI/System/Network/ftp/<ID>
Method PUT
Description Set the parameters of a specific FTP.
Query None.
Request XML_FTPNotification
Response XML_ResponseStatus
A.12.116 /ISAPI/System/Network/ftp/capabilities
Get the FTP capability.
Request URI Definition
Table A-673 GET /ISAPI/System/Network/ftp/capabilities
Method GET
Description Get the FTP capability.
Query None.
Request None.
Response Succeeded: XML_Cap_FTPNotificationList
417
Intelligent Security API (General) Developer Guide
Failed: XML_ResponseStatus
A.12.117 /ISAPI/System/Network/ftp/test
Perform test to check if the FTP server is available.
Request URI Definition
Table A-674 POST /ISAPI/System/Network/ftp/test
Method POST
Description Perform test to check if the FTP server is available.
Query None.
Request XML_FTPTestDescription
Response Succeeded: XML_FTPTestResult
Failed: XML_ResponseStatus
A.12.118 /ISAPI/System/Network/interfaces
Get the information of multiple network interfaces.
Request URI Definition
Table A-675 GET /ISAPI/System/Network/interfaces
Method GET
Description Get the information of multiple network interfaces.
Query None.
Request None.
Response Succeeded: XML_NetworkInterfaceList
Failed: XML_ResponseStatus
Example
Sample Code of Getting Information of Multiple Network Interfaces
GET /ISAPI/System/Network/interfaces HTTP/1.1
…
HTTP/1.1 200 OK
Content-Type: application/xml; charset="UTF-8"
Content-Length: xxx
<?xml version="1.0" encoding="UTF-8"?>
418
Intelligent Security API (General) Developer Guide
<NetworkInterfaceList version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema">
<NetworkInterface>
<id>1</id>
<IPAddress>
<ipVersion>v4</ipVersion>
<addressingType>static</addressingType>
<ipAddress>172.6.64.7</ipAddress>
<subnetMask>255.255.255.0</subnetMask>
<DefaultGateway>
<ipAddress>172.6.64.1</ipAddress>
</DefaultGateway>
<PrimaryDNS>
<ipAddress>192.0.0.200</ipAddress>
</PrimaryDNS>
</IPAddress>
<Discovery>
<UPnP>
<enabled>true</enabled>
</UPnP>
<Zeroconf>
<enabled>true</enabled>
</Zeroconf>
</Discovery>
<Link>
<MACAddress> 00:40:48:4C:7F:F2</MACAddress>
<autoNegotiation>true</autoNegotiation>
<speed>1000<speed>
<duplex>full</duplex>
<MTU>1500</MTU>
</Link>
</NetworkInterface>
</NetworkInterfaceList>
A.12.119 /ISAPI/System/Network/interfaces/<ID>
Operations about the configuration of a specific network interface.
Request URI Definitions
Table A-676 GET /ISAPI/System/Network/interfaces/<ID>
Method GET
Description Get the information of a specific network interface.
Query None.
Request None.
Response Succeeded: XML_NetworkInterface
Failed: XML_ResponseStatus
419
Intelligent Security API (General) Developer Guide
PUT /ISAPI/System/Network/interfaces/<ID>
Method PUT
Description Set a specific network interface.
Query None.
Request XML_NetworkInterface
Response XML_ResponseStatus
A.12.120 /ISAPI/System/Network/interfaces/<ID>/capabilities
Get the capability of a specific network interface.
Request URI Definition
Table A-677 GET /ISAPI/System/Network/interfaces/<ID>/capabilities
Method GET
Description Get the capability of a specific network interface.
Query None.
Request None.
Response Succeeded: XML_Cap_NetworkInterface
Failed: XML_ResponseStatus
A.12.121 /ISAPI/System/Network/interfaces/<ID>/discovery
Operations about the network discovery configuration.
Request URI Definition
Table A-678 GET /ISAPI/System/Network/interfaces/<ID>/discovery
Method GET
Description Get the network discovery configuration parameters.
Query None.
Request None.
Response Succeeded: XML_Discovery
Failed: XML_ResponseStatus
420
Intelligent Security API (General) Developer Guide
Table A-679 PUT /ISAPI/System/Network/interfaces/<ID>/discovery
Method PUT
Description Set the network discovery configuration parameters.
Query None.
Request XML_Discovery
Response XML_ResponseStatus
A.12.122 /ISAPI/System/Network/interfaces/<ID>/discovery/capabilities
Get the configuration capability of network discovery.
Request URI Definition
Table A-680 GET /ISAPI/System/Network/interfaces/<ID>/discovery/capabilities
Method GET
Description Get the configuration capability of network discovery.
Query None.
Request None.
Response Succeeded: XML_Cap_Discovery
Failed: XML_ResponseStatus
A.12.123 /ISAPI/System/Network/interfaces/<ID>/dynamicHostName?
format=json
Get or set dynamic domain name.
Request URI Definition
Table A-681 GET /ISAPI/System/Network/interfaces/<ID>/dynamicHostName?format=json
Method GET
Description Get dynamic domain name.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_DynamicHostName
Failed: JSON_ResponseStatus
421
Intelligent Security API (General) Developer Guide
Table A-682 PUT /ISAPI/System/Network/interfaces/<ID>/dynamicHostName?format=json
Method PUT
Description Set dynamic domain name.
Query format: determine the format of request or response message.
Request JSON_DynamicHostName
Response JSON_ResponseStatus
Remarks
The <ID> in the request URI refers to the network interface ID.
A.12.124 /ISAPI/System/Network/interfaces/<ID>/dynamicHostName/
capabilities?format=json
Get configuration capability of dynamic domain name.
Request URI Definition
Table A-683 GET /ISAPI/System/Network/interfaces/<ID>/dynamicHostName/capabilities?
format=json
Method GET
Description Get configuration capability of dynamic domain name.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_DynamicHostNameCap
Failed: JSON_ResponseStatus
Remarks
The <ID> in the request URI refers to the network interface ID.
A.12.125 /ISAPI/System/Network/interfaces/<ID>/ieee802.1x
Operations about configuration of IEEE 802.1x protocol access.
422
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-684 GET /ISAPI/System/Network/interfaces/<ID>/ieee802.1x
Method GET
Description Get parameters of IEEE 802.1x protocol access.
Query None.
Request None.
Response Succeeded: XML_IEEE802_1x
Failed: XML_ResponseStatus
Table A-685 PUT /ISAPI/System/Network/interfaces/<ID>/ieee802.1x
Method PUT
Description Set parameters of IEEE 802.1x protocol access.
Query None.
Request XML_IEEE802_1x
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the network interface ID.
A.12.126 /ISAPI/System/Network/interfaces/<ID>/ieee802.1x/capabilities
Get configuration capability of IEEE802.1x protocol access.
Request URI Definition
Table A-686 GET /ISAPI/System/Network/interfaces/<ID>/ieee802.1x/capabilities
Method GET
Description Get configuration capability of IEEE802.1x protocol access.
Query None.
Request None.
Response XML_Cap_IEEE802_1x
A.12.127 /ISAPI/System/Network/interfaces/<ID>/ipAddress
Operations about IP address configuration of a specific network interface.
423
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-687 GET /ISAPI/System/Network/interfaces/<ID>/ipAddress
Method GET
Description Get the IP address of a specific network interface.
Query None.
Request None.
Response Succeeded: XML_IPAddress
Failed: XML_ResponseStatus
Table A-688 PUT /ISAPI/System/Network/interfaces/<ID>/ipAddress
Method PUT
Description Set IP address of a specific network interface.
Query None.
Request XML_IPAddress
Response XML_ResponseStatus
Example
Sample Code of Setting IP Address of A Specific Network Interface
PUT /ISAPI/System/Network/interfaces/1/ipAddress HTTP/1.1
…
Content-Type: application/xml; charset="UTF-8"
Content-Length: xxx
<?xml version="1.0" encoding="UTF-8"?>
<IPAddress version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema">
<ipVersion>v4</ipVersion>
<addressingType>static</addressingType>
<ipAddress>172.6.64.16</ipAddress>
<subnetMask>255.255.255.0</subnetMask>
<DefaultGateway>
<ipAddress>172.6.64.1</ipAddress>
</DefaultGateway>
<PrimaryDNS>
<ipAddress>192.0.0.200</ipAddress>
</PrimaryDNS>
</IPAddress>
HTTP/1.1 200 OK
…
Content-Type: application/xml; charset="UTF-8"
Content-Length:xxx
424
Intelligent Security API (General) Developer Guide
<?xml version="1.0" encoding="UTF-8"?>
<ResponseStatus version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema">
<requestURL>/Network/interfaces/1/ipAddress</requestURL>
<statusCode>1</statusCode>
<statusString>OK</statusString>
</ResponseStatus>
A.12.128 /ISAPI/System/Network/interfaces/<ID>/ipAddress/capabilities
Get the IP address configuration capability of a specific network interface.
Request URI Definition
Table A-689 GET /ISAPI/System/Network/interfaces/<ID>/ipAddress/capabilities
Method GET
Description Get the IP address configuration capability of a specific network
interface.
Query None.
Request None.
Response Succeeded: XML_Cap_IpAddress
Failed: XML_ResponseStatus
A.12.129 /ISAPI/System/Network/interfaces/<ID>/link
Operations about the connection configuration of a specific network interface.
Request URI Definition
Table A-690 GET /ISAPI/System/Network/interfaces/<ID>/link
Method GET
Description Get the connection parameters of a specific network interface.
Query None.
Request None.
Response Succeeded: XML_Link
Failed: XML_ResponseStatus
425
Intelligent Security API (General) Developer Guide
Table A-691 PUT /ISAPI/System/Network/interfaces/<ID>/link
Method PUT
Description Set the connection parameters of a specific network interface.
Query None.
Request XML_Link
Response XML_ResponseStatus
A.12.130 /ISAPI/System/Network/interfaces/<ID>/link/capabilities
Get the connection configuration capability of a specific network interface.
Request URI Definition
Table A-692 GET /ISAPI/System/Network/interfaces/<ID>/link/capabilities
Method GET
Description Get the connection configuration capability of a specific network
interface.
Query None.
Request None.
Response Succeeded: XML_Cap_Link
Failed: XML_ResponseStatus
A.12.131 /ISAPI/System/Network/interfaces/<ID>/NetworkMode
Operations about the working mode configuration of the network connection.
Request URI Definition
Table A-693 GET /ISAPI/System/Network/interfaces/<ID>/NetworkMode
Method GET
Description Get the working mode parameters of the network connection.
Query None.
Request None.
Response Succeeded: XML_NetWorkMode
Failed: XML_ResponseStatus
426
Intelligent Security API (General) Developer Guide
Table A-694 PUT /ISAPI/System/Network/interfaces/<ID>/NetworkMode
Method PUT
Description Set the working mode parameters of the network connection.
Query None.
Request XML_NetWorkMode
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the network interface ID.
A.12.132 /ISAPI/System/Network/interfaces/<ID>/wireless
Operations about Wi-Fi configuration of a specific network interface.
Request URI Definition
Table A-695 GET /ISAPI/System/Network/interfaces/<ID>/wireless
Method GET
Description Get the Wi-Fi parameters of a specific network interface.
Query security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
Request None.
Response Succeeded: XML_Wireless
Failed: XML_ResponseStatus
Table A-696 PUT /ISAPI/System/Network/interfaces/<ID>/wireless
Method PUT
Description Set Wi-Fi parameters of a specific network interface.
Query security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
427
Intelligent Security API (General) Developer Guide
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
Request XML_Wireless
Response XML_ResponseStatus
A.12.133 /ISAPI/System/Network/interfaces/<ID>/wireless/accessDeviceList/<ID>
Get the information of a specific device connected to the hotspot.
Request URI Definition
Table A-697 GET /ISAPI/System/Network/interfaces/<ID>/wireless/accessDeviceList/<ID>
Method GET
Description Get the information of a specific device connected to the hotspot.
Query None.
Request None.
Response Succeeded: XML_accessDevice
Failed: XML_ResponseStatus
Remarks
The first <ID> in the URI refers to the network interface ID, and the second <ID> refers to the
device ID.
A.12.134 /ISAPI/System/Network/interfaces/<ID>/wireless/accessDeviceList/
capabilities
Get the capability set of the device connected to the hotspot.
Request URI Definition
Table A-698 GET /ISAPI/System/Network/interfaces/<ID>/wireless/accessDeviceList/capabilities
Method GET
Description Get the capability set of the device connected to the hotspot.
Query None.
Request None.
Response Succeeded: XML_Cap_accessDeviceList
428
Intelligent Security API (General) Developer Guide
Failed: XML_ResponseStatus
Remarks
The <ID> in the URI refers to the network interface ID.
A.12.135 /ISAPI/System/Network/interfaces/<ID>/wireless/accessPointList
Get Wi-Fi hotspot list.
Request URI Definition
Table A-699 GET /ISAPI/System/Network/interfaces/<ID>/wireless/accessPointList
Method GET
Description Get Wi-Fi hotspot list.
Query None.
Request None.
Response Succeeded: XML_accessPointList
Failed: XML_ResponseStatus
A.12.136 /ISAPI/System/Network/interfaces/<ID>/wireless/accessPointList/<ID>
Get a specific Wi-Fi hotspot.
Request URI Definition
Table A-700 GET /ISAPI/System/Network/interfaces/<ID>/wireless/accessPointList/<ID>
Method GET
Description Get a specific Wi-Fi hotspot.
Query None.
Request None.
Response Succeeded: XML_accessPoint
Failed: XML_ResponseStatus
A.12.137 /ISAPI/System/Network/interfaces/<ID>/wireless/capabilities
Get the Wi-Fi configuration capability.
429
Intelligent Security API (General) Developer Guide
Request URI Definition
Method GET
Description Get the Wi-Fi configuration capability.
Query security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
Request None.
Response Succeeded: XML_Cap_Wireless
Failed: XML_ResponseStatus
A.12.138 /ISAPI/System/Network/interfaces/<ID>/wireless/connectStatus
Get the wireless connection status.
Request URI Definition
Table A-701 GET /ISAPI/System/Network/interfaces/<ID>/wireless/connectStatus
Method GET
Description Get the wireless connection status.
Query None.
Request None.
Response Succeeded: XML_WirelessConnectStatus
Failed: XML_ResponseStatus
A.12.139 /ISAPI/System/Network/interfaces/<ID>/wirelessServer
Operations about wireless hotspot configuration.
430
Intelligent Security API (General) Developer Guide
Request URI Definitions
Table A-702 GET /ISAPI/System/Network/interfaces/<ID>/wirelessServer
Method GET
Description Get wireless hotspot parameters.
Query None.
Request None.
Response XML_WirelessServer
Table A-703 PUT /ISAPI/System/Network/interfaces/<ID>/wirelessServer
Method PUT
Description Set wireless hotspot parameters.
Query None.
Request XML_WirelessServer
Response XML_ResponseStatus
Remarks
The <ID> in the URI refers to the network interface ID.
A.12.140 /ISAPI/System/Network/interfaces/<ID>/wirelessServer/accessDeviceList
Get list of devices that are connected to the hotspot.
Request URI Definition
Table A-704 GET /ISAPI/System/Network/interfaces/<ID>/wirelessServer/accessDeviceList
Method GET
Description Get list of devices that are connected to the hotspot.
Query None.
Request None.
Response Succeeded: XML_accessDeviceList
Failed: XML_ResponseStatus
Remarks
The <ID> in the URI refers to the network interface ID.
431
Intelligent Security API (General) Developer Guide
A.12.141 /ISAPI/System/Network/interfaces/<ID>/wirelessServer/capabilities
Get configuration capability of wireless hotspot.
Request URI Definition
Table A-705 GET /ISAPI/System/Network/interfaces/<ID>/wirelessServer/capabilities
Method GET
Description Get configuration capability of wireless hotspot.
Query None.
Request None.
Response XML_Cap_WirelessServer
A.12.142 /ISAPI/System/Network/interfaces/<ID>/wirelessServerStatus
Operations about the wireless hotspot status configuration.
Request URI Definition
Table A-706 GET /ISAPI/System/Network/interfaces/<ID>/wirelessServerStatus
Method GET
Description Get the wireless hotspot status parameters.
Query None.
Request None.
Response Succeeded: XML_WirelessServerStatus
Failed: XML_ResponseStatus
Table A-707 PUT /ISAPI/System/Network/interfaces/<ID>/wirelessServerStatus
Method PUT
Description Set the wireless hotspot status parameters.
Query None.
Request XML_WirelessServerStatus
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the network interface ID.
432
Intelligent Security API (General) Developer Guide
A.12.143 /ISAPI/System/Network/interfaces/<ID>/wirelessServerStatus/
capabilities
Get the wireless hotspot status capability.
Request URI Definition
Table A-708 GET /ISAPI/System/Network/interfaces/<ID>/wirelessServerStatus/capabilities
Method GET
Description Get the wireless hotspot status capability.
Query None.
Request None.
Response Succeeded: XML_Cap_WirelessServerStatus
Failed: XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the network interface ID.
A.12.144 /ISAPI/System/Network/interfaces/<ID>/wirelessStatus
Operations about the configuration of wireless network connection status.
Request URI Definition
Table A-709 GET /ISAPI/System/Network/interfaces/<ID>/wirelessStatus
Method GET
Description Get the parameters of wireless network connection status.
Query None.
Request None.
Response Succeeded: XML_WirelessStatus
Failed: XML_ResponseStatus
Table A-710 PUT /ISAPI/System/Network/interfaces/<ID>/wirelessStatus
Method PUT
Description Set the parameters of wireless network connection status.
Query None.
433
Intelligent Security API (General) Developer Guide
Request XML_WirelessStatus
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the network interface ID.
A.12.145 /ISAPI/System/Network/interfaces/<ID>/wirelessStatus/capabilities
Get the configuration capability of wireless network connection status.
Request URI Definition
Table A-711 GET /ISAPI/System/Network/interfaces/<ID>/wirelessStatus/capabilities
Method GET
Description Get the configuration capability of wireless network connection
status.
Query None.
Request None.
Response Succeeded: XML_Cap_WirelessStatus
Failed: XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the network interface ID.
A.12.146 /ISAPI/System/Network/interfaces/<ID>/WPS
Get or set the WPS (Wi-Fi Protected Setup) parameters of a specific network interface.
Request URI Definition
Table A-712 GET /ISAPI/System/Network/interfaces/<ID>/WPS
Method GET
Description Get the WPS (Wi-Fi Protected Setup) parameters of a specific
network interface.
Query None.
Request None.
Response Succeeded: XML_WPS
434
Intelligent Security API (General) Developer Guide
Failed: XML_ResponseStatus
Table A-713 PUT /ISAPI/System/Network/interfaces/<ID>/WPS
Method PUT
Description Set the WPS (Wi-Fi Protected Setup) parameters of a specific network
interface.
Query None.
Request XML_WPS
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the network interface ID.
A.12.147 /ISAPI/System/Network/interfaces/<ID>/WPS/ApPinCode
Operations about the configuration of PIN (Personal Identification Number) code of the wireless
access point.
Request URI Definition
Table A-714 GET /ISAPI/System/Network/interfaces/<ID>/WPS/ApPinCode
Method GET
Description Get the parameters of PIN (Personal Identification Number) code of
the wireless access point.
Query None.
Request None.
Response Succeeded: XML_WpsApPincode
Failed: XML_ResponseStatus
Table A-715 PUT /ISAPI/System/Network/interfaces/<ID>/WPS/ApPinCode
Method PUT
Description Set the parameters of PIN (Personal Identification Number) code of
the wireless access point.
Query None.
Request XML_WpsApPincode
Response XML_ResponseStatus
435
Intelligent Security API (General) Developer Guide
Remarks
The <ID> in the request URI refers to the network interface ID, and it is set to 2 by default.
A.12.148 /ISAPI/System/Network/interfaces/<ID>/WPS/AutoConnect
Set the configuration of PBC (Push Button Configuration) automatic connection of WPS (Wi-Fi
Protected Setup).
Request URI Definition
Table A-716 PUT /ISAPI/System/Network/interfaces/<ID>/WPS/AutoConnect
Method PUT
Description Set the parameters of PBC (Push Button Configuration) automatic
connection of WPS (Wi-Fi Protected Setup).
Query None.
Request XML_WPS
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the network interface ID, and it is set to 2 by default.
A.12.149 /ISAPI/System/Network/interfaces/<ID>/WPS/devicePinCode
Get the PIN (Personal Identification Number) code of WPS (Wi-Fi Protected Setup) of the device.
Request URI Definition
Table A-717 GET /ISAPI/System/Network/interfaces/<ID>/WPS/devicePinCode
Method GET
Description Get the PIN (Personal Identification Number) code of WPS (Wi-Fi
Protected Setup) of the device.
Query None.
Request None.
Response PIN code string.
436
Intelligent Security API (General) Developer Guide
A.12.150 /ISAPI/System/Network/interfaces/<ID>/WPS/devicePinCodeUpdate
Update the PIN (Personal Identification Number) code of WPS (Wi-Fi Protected Setup) of the
device.
Request URI Definition
Table A-718 PUT /ISAPI/System/Network/interfaces/<ID>/WPS/devicePinCodeUpdate
Method PUT
Description Update the PIN (Personal Identification Number) code of WPS (Wi-Fi
Protected Setup) of the device.
Query None.
Request None.
Response PIN code string.
Remarks
The <ID> in the request URI refers to the network interface ID, and it is set to 2 by default.
A.12.151 /ISAPI/System/Network/interfaces/capabilities
Get the configuration capability of multiple network interfaces.
Request URI Definition
Table A-719 GET /ISAPI/System/Network/interfaces/capabilities
Method GET
Description Get the configuration capability of multiple network interfaces.
Query None.
Request None.
Response Succeeded: XML_Cap_NetworkInterfaceList
Failed: XML_ResponseStatus
A.12.152 /ISAPI/System/Network/ipFilter
Operations about IP address filter configuration.
437
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-720 GET /ISAPI/System/Network/ipFilter
Method GET
Description Get the IP filter configuration parameters.
Query None.
Request None.
Response Succeeded: XML_IPFilter
Failed: XML_ResponseStatus
Table A-721 PUT /ISAPI/System/Network/ipFilter
Method PUT
Description Set the IP address filter.
Query None.
Request XML_IPFilter
Response XML_ResponseStatus
A.12.153 /ISAPI/System/Network/ipFilter/capabilities
Get IP address filter configuration capability.
Request URI Definition
Table A-722 GET /ISAPI/System/Network/ipFilter/capabilities
Method GET
Description Get the IP address configuration capability.
Query None.
Request None.
Response Succeeded: XML_Cap_IPFilter
Failed: XML_ResponseStatus
A.12.154 /ISAPI/System/Network/MACFilter
Operations about MAC address filter configuration.
438
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-723 GET /ISAPI/System/Network/MACFilter
Method GET
Description Get the MAC address filter configuration parameters.
Query None.
Request None.
Response XML_MACFilter
Table A-724 PUT /ISAPI/System/Network/MACFilter
Method PUT
Description Set the MAC address filter.
Query None.
Request XML_MACFilter
Response XML_ResponseStatus
A.12.155 /ISAPI/System/Network/MACFilter/capabilities
Get the MAC address filter configuration capability.
Request URI Definition
Table A-725 GET /ISAPI/System/Network/MACFilter/capabilities
Method GET
Description Get the MAC address filter configuration capability.
Query None.
Request None.
Response XML_Cap_MACFilter
A.12.156 /ISAPI/System/Network/mailing
Operations about email configuration.
439
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-726 GET /ISAPI/System/Network/mailing
Method GET
Description Get email configuration parameters.
Query None.
Request None.
Response XML_mailingList
Table A-727 PUT /ISAPI/System/Network/mailing
Method PUT
Description Set email parameters.
Query None.
Request XML_mailingList
Response XML_ResponseStatus
A.12.157 /ISAPI/System/Network/mailing/<ID>
Operations about the configuration of a specific email.
Request URI Definition
Table A-728 GET /ISAPI/System/Network/mailing/<ID>
Method GET
Description Get the configuration parameters of a specific email.
Query None.
Request None.
Response XML_mailing
Table A-729 PUT /ISAPI/System/Network/mailing/<ID>
Method PUT
Description Set the parameters of a specific email.
Query None.
Request XML_mailing
Response XML_ResponseStatus
440
Intelligent Security API (General) Developer Guide
Remarks
The <ID> in the URI refers to the email ID.
A.12.158 /ISAPI/System/Network/mailing/capabilities
Get email configuration capability.
Request URI Definition
Table A-730 GET /ISAPI/System/Network/mailing/capabilities
Method GET
Description Get email configuration capability.
Query None.
Request None.
Response XML_Cap_mailingList
A.12.159 /ISAPI/System/Network/mailing/test
Execute the email test to check if the email server and address are available.
Request URI Definition
Table A-731 POST /ISAPI/System/Network/mailing/test
Method POST
Description Execute the email test to check if the email server and address are
available.
Query None.
Request XML_mailingTestDescription
Response XML_mailingTestResult
A.12.160 /ISAPI/System/Network/pingtest
Start a ping test and get the test result.
441
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-732 POST /ISAPI/System/Network/pingtest
Method POST
Description Start a ping test and get the test result.
Query None.
Request XML_pingTestDescription
Response XML_pingTestResult
A.12.161 /ISAPI/System/Network/POE/capabilities?format=json
Get capability of PoE port parameters configuration.
Request URI Definition
Table A-733 GET /ISAPI/System/Network/POE/capabilities?format=json
Method GET
Description Get the capability of PoE port parameters configuration.
Query format: determine the format of request or response message.
Request None.
Response JSON_Cap_POE
A.12.162 /ISAPI/System/Network/POE?format=json
Get or set the PoE port configuration parameters.
Request URI Definition
Table A-734 GET /ISAPI/System/Network/POE?format=json
Method GET
Description Get PoE port configuration parameters.
Query format: determine the format of request or response message.
Request None.
Response JSON_POE
442
Intelligent Security API (General) Developer Guide
Table A-735 PUT /ISAPI/System/Network/POE?format=json
Method PUT
Description Set PoE port configuration parameters.
Query format: determine the format of request or response message.
Request JSON_POE
Response JSON_ResponseStatus
A.12.163 /ISAPI/System/Network/resourceStatistics?format=json
Get the information of network resource statistics.
Request URI Definition
Table A-736 GET /ISAPI/System/Network/resourceStatistics?format=json
Method GET
Description Get the information of network resource statistics.
Query None.
Request None.
Response Succeeded: JSON_resourceStatistics
Failed: JSON_ResponseStatus
A.12.164 /ISAPI/System/Network/SIP
Operations about the configuration of a specific SIP (Session Initiation Protocol) server.
Request URI Definition
Table A-737 GET /ISAPI/System/Network/SIP
Method GET
Description Get the parameters of a specific SIP (Session Initiation Protocol)
server.
Query None.
Request None.
Response Succeeded: XML_SIPServerList
Failed: XML_ResponseStatus
443
Intelligent Security API (General) Developer Guide
Table A-738 PUT /ISAPI/System/Network/SIP
Method PUT
Description Set the parameters of a specific SIP (Session Initiation Protocol)
server.
Query None.
Request XML_SIPServerList
Response XML_ResponseStatus
A.12.165 /ISAPI/System/Network/SIP/<ID>
Operations about the configuration of a specific SIP (Session Initiation Protocol) server.
Request URI Definition
Table A-739 GET /ISAPI/System/Network/SIP/<ID>
Method GET
Description Get the parameters of a specific SIP (Session Initiation Protocol)
server.
Query None.
Request None.
Response Succeeded: XML_SIPServer
Failed: XML_ResponseStatus
Table A-740 PUT /ISAPI/System/Network/SIP/<ID>
Method PUT
Description Set the parameters of a specific SIP (Session Initiation Protocol)
server.
Query None.
Request XML_SIPServer
Response XML_ResponseStatus
A.12.166 /ISAPI/System/Network/SIP/<ID>/capabilities
Get the configuration capability of a specific SIP (Session Initiation Protocol) server.
444
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-741 GET /ISAPI/System/Network/SIP/<ID>/capabilities
Method GET
Description Get the configuration capability of a specific SIP (Session Initiation
Protocol) server.
Query None.
Request None.
Response Succeeded: XML_Cap_SIPServer
Failed: XML_ResponseStatus
A.12.167 /ISAPI/System/Network/SIP/<ID>/SIPInfo
Operations about the configuration of a piece of SIP (Session Initiation Protocol) information.
Request URI Definition
Table A-742 GET /ISAPI/System/Network/SIP/<ID>/SIPInfo
Method GET
Description Get the parameters of a piece of SIP (Session Initiation Protocol)
information.
Query None.
Request None.
Response Succeeded: XML_SIPInfo
Failed: XML_ResponseStatus
Table A-743 PUT /ISAPI/System/Network/SIP/<ID>/SIPInfo
Method PUT
Description Set the parameters of a piece of SIP (Session Initiation Protocol)
information.
Query None.
Request XML_SIPInfo
Response XML_ResponseStatus
445
Intelligent Security API (General) Developer Guide
A.12.168 /ISAPI/System/Network/SIP/<ID>/SIPInfo/capabilities
Get the configuration capability of a specific piece of SIP (Session Initiation Protocol) information.
Request URI Definition
Table A-744 GET /ISAPI/System/Network/SIP/<ID>/SIPInfo/capabilities
Method GET
Description Get the configuration capability of a specific piece of SIP (Session
Initiation Protocol) information.
Query None.
Request None.
Response Succeeded: XML_Cap_SIPInfo
Failed: XML_ResponseStatus
A.12.169 /ISAPI/System/Network/SIP/<ID>/SIPInfo/multiInfo
Get or set the information list of SIP servers.
Request URI Definition
Table A-745 GET /ISAPI/System/Network/SIP/<ID>/SIPInfo/multiInfo
Method GET
Description Get the information list of SIP servers.
Query None.
Request None.
Response Succeeded: XML_SIPInfoList
Failed: XML_ResponseStatus
Table A-746 PUT /ISAPI/System/Network/SIP/<ID>/SIPInfo/multiInfo
Method PUT
Description Set the information list of SIP servers.
Query None.
Request XML_SIPInfoList
Response XML_ResponseStatus
446
Intelligent Security API (General) Developer Guide
Remarks
The <ID> in the request URI refers to the SIP server ID.
A.12.170 /ISAPI/System/Network/SIP/capabilities
Get the configuration capability of all SIP (Session Initiation Protocol) servers.
Request URL Definition
Table A-747 GET /ISAPI/System/Network/SIP/capabilities
Method GET
Description Get the configuration capability of all SIP (Session Initiation Protocol)
servers.
Query None.
Request None.
Response Succeeded: XML_SIPServerListCap
Failed: XML_ResponseStatus
A.12.171 /ISAPI/System/Network/SIP/voiceTalkCtrl/<ID>?format=json
Get or set SIP (Session Initiation Protocol) intercom parameters.
Request URI Definition
Table A-748 GET /ISAPI/System/Network/SIP/voiceTalkCtrl/<ID>?format=json
Method GET
Description Get SIP (Session Initiation Protocol) intercom parameters.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_voiceTalkCtrl
Failed: JSON_ResponseStatus
Table A-749 PUT /ISAPI/System/Network/SIP/voiceTalkCtrl/<ID>?format=json
Method PUT
Description Set SIP (Session Initiation Protocol) intercom parameters.
Query format: determine the format of request or response message.
447
Intelligent Security API (General) Developer Guide
Request JSON_voiceTalkCtrl
Response JSON_ResponseStatus
Remarks
The <ID> in the request URI is 1 by default.
A.12.172 /ISAPI/System/Network/SIP/voiceTalkCtrl/capabilities?format=json
Get the configuration capability of SIP (Session Initiation Protocol) intercom.
Request URI Definition
Table A-750 GET /ISAPI/System/Network/SIP/voiceTalkCtrl/capabilities?format=json
Method GET
Description Get the configuration capability of SIP (Session Initiation Protocol)
intercom.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_voiceTalkCtrlCap
Failed: JSON_ResponseStatus
A.12.173 /ISAPI/System/Network/SNMP
Get or set batch configuration parameters of SNMP (Simple Network Management Protocol).
Request URI Definition
Table A-751 GET /ISAPI/System/Network/SNMP
Method GET
Description Get batch configuration parameters of SNMP.
Query security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
448
Intelligent Security API (General) Developer Guide
Request None.
Response Succeeded: XML_SNMP
Failed: XML_ResponseStatus
Table A-752 PUT /ISAPI/System/Network/SNMP
Method PUT
Description Set batch configuration parameters of SNMP.
Query security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
Request XML_SNMP
Response XML_ResponseStatus
A.12.174 /ISAPI/System/Network/SNMP/advanced
Get or set advanced parameters of SNMP (Simple Network Management Protocol).
Request URI Definition
Table A-753 GET /ISAPI/System/Network/SNMP/advanced
Method GET
Description Get advanced parameters of SNMP.
Query None.
Request None.
Response Succeeded: XML_SNMPAdvanced
Failed: XML_ResponseStatus
Table A-754 PUT /ISAPI/System/Network/SNMP/advanced
Method PUT
Description Set advanced parameters of SNMP.
Query None.
449
Intelligent Security API (General) Developer Guide
Request XML_SNMPAdvanced
Response XML_ResponseStatus
A.12.175 /ISAPI/System/Network/SNMP/advanced/trapReceivers
Get, set, delete parameters of all trap address, or add a new trap address of SNMP in version 3.
Request URI Definition
Table A-755 GET /ISAPI/System/Network/SNMP/advanced/trapReceivers
Method GET
Description Get all trap address parameters of SNMP in version 3.
Query None.
Request None.
Response Succeeded: XML_SNMPTrapReceiverList
Failed: XML_ResponseStatus
Table A-756 PUT /ISAPI/System/Network/SNMP/advanced/trapReceivers
Method PUT
Description Set parameters for all trap addresses of SNMP in version 3.
Query None.
Request XML_SNMPTrapReceiverList
Response XML_ResponseStatus
Table A-757 DELETE /ISAPI/System/Network/SNMP/advanced/trapReceivers
Method DELETE
Description Delete all trap address parameters of SNMP in version 3.
Query None.
Request None.
Response XML_ResponseStatus
Table A-758 POST /ISAPI/System/Network/SNMP/advanced/trapReceivers
Method POST
Description Add a new trap address of SNMP.
Query None.
450
Intelligent Security API (General) Developer Guide
Request XML_SNMPTrapReceiver
Response XML_ResponseStatus
A.12.176 /ISAPI/System/Network/SNMP/advanced/trapReceivers/<ID>
Get, set or delete parameters for a single trap address.
Request URI Definition
Table A-759 GET /ISAPI/System/Network/SNMP/advanced/trapReceivers/<ID>
Method GET
Description Get trap address parameters of SNMP in version 3.
Query None.
Request None.
Response Succeeded: XML_SNMPTrapReceiver
Failed: XML_ResponseStatus
Table A-760 PUT /ISAPI/System/Network/SNMP/advanced/trapReceivers/<ID>
Method PUT
Description Set parameters for all trap addresses of SNMP in version 3.
Query None.
Request XML_SNMPTrapReceiver
Response XML_ResponseStatus
Table A-761 DELETE /ISAPI/System/Network/SNMP/advanced/trapReceivers/<ID>
Method DELETE
Description Delete a trap address of SNMP in version 3.
Query None.
Request None.
Response XML_ResponseStatus
A.12.177 /ISAPI/System/Network/socketIP
Get the socket IP of current connection.
451
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-762 GET /ISAPI/System/Network/socketIP
Method GET
Description Get the socket IP of current connection.
Query None.
Request None.
Response XML_SocketIP
A.12.178 /ISAPI/System/Network/ssh
Operations about SSH server configurations.
Request URI Definition
Table A-763 GET /ISAPI/System/Network/ssh
Method GET
Description Get SSH server parameters.
Query None.
Request None.
Response XML_SSH
Table A-764 PUT /ISAPI/System/Network/ssh
Method PUT
Description Set SSH server parameters.
Query None.
Request XML_SSH
Response XML_ResponseStatus
A.12.179 /ISAPI/System/Network/ssh/capabilities
Get the SSH parameters configuration capability.
452
Intelligent Security API (General) Developer Guide
Request URL Definition
Table A-765 GET /ISAPI/System/Network/ssh/capabilities
Method GET
Description Get the SSH parameters configuration capability.
Query None.
Request None.
Response Succeeded: XML_Cap_SSH
Failed: XML_ResponseStatus
A.12.180 /ISAPI/System/Network/StaticRoute
Get, set, or delete the parameters of static route.
Request URI Definition
Table A-766 GET /ISAPI/System/Network/StaticRoute
Method GET
Description Get the parameters of static route.
Query None.
Request None.
Response Succeeded: XML_staticRouteList
Failed: XML_ResponseStatus
Table A-767 PUT /ISAPI/System/Network/StaticRoute
Method PUT
Description Set the parameters of static route.
Query None.
Request XML_staticRouteList
Response XML_ResponseStatus
Table A-768 DELETE /ISAPI/System/Network/StaticRoute
Method DELETE
Description Delete the parameters of static route.
Query None.
453
Intelligent Security API (General) Developer Guide
Request None.
Response XML_ResponseStatus
A.12.181 /ISAPI/System/Network/telnetd
Operations about the telnetd service configuration.
Request URI Definition
Table A-769 GET /ISAPI/System/Network/telnetd
Method GET
Description Get the telnetd service parameters.
Query None.
Request None.
Response Succeeded: XML_Telnetd
Failed: XML_ResponseStatus
Table A-770 PUT /ISAPI/System/Network/telnetd
Method PUT
Description Set the telnetd service parameters.
Query None.
Request XML_Telnetd
Response XML_ResponseStatus
A.12.182 /ISAPI/System/Network/telnetd/capabilities
Get the telnetd service capability.
Request URI Definition
Table A-771 GET /ISAPI/System/Network/telnetd/capabilities
Method GET
Description Get the telnetd service capability.
Query None.
Request None.
Response Succeeded: XML_Cap_Telnetd
454
Intelligent Security API (General) Developer Guide
Failed: XML_ResponseStatus
A.12.183 /ISAPI/System/Network/UPnP
Operations about UPnP configuration.
Request URI Definition
Table A-772 GET /ISAPI/System/Network/UPnP
Method GET
Description Get UPnP parameters.
Query None.
Request None.
Response XML_UPnP
Table A-773 PUT /ISAPI/System/Network/UPnP
Method PUT
Description Set UPnP parameters.
Query None.
Request XML_UPnP
Response XML_ResponseStatus
A.12.184 /ISAPI/System/Network/UPnP/capabilities
Get the UPnP configuration capability.
Request URI Definition
Table A-774 GET /ISAPI/System/Network/UPnP/capabilities
Method GET
Description Get the UPnP configuration capability.
Query None.
Request None.
Response Succeeded: XML_Cap_UPnPCap
Failed: XML_ResponseStatus
455
Intelligent Security API (General) Developer Guide
A.12.185 /ISAPI/System/Network/UPnP/ports
Operations about configuration of all UPnP ports.
Request URI Definition
Table A-775 GET /ISAPI/System/Network/UPnP/ports
Method GET
Description Get the parameters of all UPnP ports.
Query None.
Request None.
Response XML_ports
Table A-776 PUT /ISAPI/System/Network/UPnP/ports
Method PUT
Description Set the parameters of all UPnP ports.
Query None.
Request XML_ports
Response XML_ResponseStatus
A.12.186 /ISAPI/System/Network/UPnP/ports/status
Get the mapping statuses of all UPnP ports.
Request URI Definition
Table A-777 GET /ISAPI/System/Network/UPnP/ports/status
Method GET
Description Get the mapping statuses of all UPnP ports.
Query None.
Request None.
Response XML_portsStatus
A.12.187 /ISAPI/System/Network/UPnP/ports/<ID>
Operations about configuration of a specific UPnP port.
456
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-778 GET /ISAPI/System/Network/UPnP/ports/<ID>
Method GET
Description Get the parameters of a specific UPnP port.
Query None.
Request None.
Response Succeeded: XML_port
Failed: XML_ResponseStatus
Table A-779 PUT /ISAPI/System/Network/UPnP/ports/<ID>
Method PUT
Description Set the parameters of a specific UPnP port.
Query None.
Request XML_port
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to UPnP port ID.
A.12.188 /ISAPI/System/Network/UPnP/ports/<ID>/status
Get mapping status of a specific UPnP port.
Request URI Definition
Table A-780 GET /ISAPI/System/Network/UPnP/ports/<ID>/status
Method GET
Description Get mapping status of a specific UPnP port.
Query None.
Request None.
Response Succeeded: XML_portStatus
Failed: XML_ResponseStatus
Remarks
The <ID> in the request URI refers to UPnP port ID.
457
Intelligent Security API (General) Developer Guide
A.12.189 /ISAPI/System/Network/verificationCodeCheck
Verify the encryption key or verification code.
Request URI Definition
Table A-781 POST /ISAPI/System/Network/verificationCodeCheck
Method POST
Description Verify the encryption key or verification code.
Query None.
Request XML_CheckInfo
Response XML_ResponseStatus
A.12.190 /ISAPI/System/Network/WirelessDial/Interfaces
Get or set parameters for all dial network cards.
Request URI Definition
Table A-782 GET /ISAPI/System/Network/WirelessDial/Interfaces
Method GET
Description Get parameters for all dial network cards.
Query None.
Request None.
Response Succeeded: XML_WirelessDialInterface
Failed: XML_ResponseStatus
Table A-783 PUT /ISAPI/System/Network/WirelessDial/Interfaces
Method PUT
Description Set parameters for all dial network cards.
Query None.
Request XML_WirelessDialInterface
Response XML_ResponseStatus
458
Intelligent Security API (General) Developer Guide
A.12.191 /ISAPI/System/Network/WirelessDial/Interfaces/<ID>
Get or set parameters for a single dial network card.
Request URI Definition
Table A-784 GET /ISAPI/System/Network/WirelessDial/Interfaces/<ID>
Method GET
Description Get parameters for a single dial network card.
Query None.
Request None.
Response Succeeded: XML_WirelessDialInterfaceList
Failed: XML_ResponseStatus
Table A-785 PUT /ISAPI/System/Network/WirelessDial/Interfaces/<ID>
Method PUT
Description Set the wireless dial-up parameters.
Query None.
Request XML_WirelessDialInterfaceList
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the network interface ID.
A.12.192 /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/dial
Operations about the wireless dial-up configuration.
Request URI Definition
Table A-786 GET /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/dial
Method GET
Description Get the configuration parameters of wireless dial-up.
Query security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
459
Intelligent Security API (General) Developer Guide
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
Request None.
Response Succeeded: XML_Dial
Failed: XML_ResponseStatus
Table A-787 PUT /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/dial
Method PUT
Description Set the wireless dial-up parameters.
Query security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
Request XML_Dial
Response XML_ResponseStatus
A.12.193 /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/dial/capabilities
Get the wireless dial-up capability.
Request URI Definition
Table A-788 GET /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/dial/capabilities
Method GET
Description Get the wireless dial-up capability.
Query security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
460
Intelligent Security API (General) Developer Guide
Request None.
Response Succeeded: XML_Cap_Dial
Failed: XML_ResponseStatus
A.12.194 /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/dialstatus
Operations about the configuration of wireless dial-up connection status.
Request URI Definition
Table A-789 GET /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/dialstatus
Method GET
Description Get the parameters of wireless dial-up connection status.
Query None.
Request None.
Response Succeeded: XML_Dialstatus
Failed: XML_ResponseStatus
Table A-790 PUT /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/dialstatus
Method PUT
Description Set the parameters of wireless dial-up connection status.
Query None.
Request XML_Dialstatus
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the network interface ID.
A.12.195 /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/keepAlive/
capabilities?format=json
Get the configuration capability of network keepalive.
461
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-791 GET /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/keepAlive/capabilities?
format=json
Method GET
Description Get the configuration capability of network keepalive.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_KeepAliveCap
Failed: JSON_ResponseStatus
Remarks
The <ID> in the request URI refers to the network interface ID.
A.12.196 /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/keepAlive/test?
format=json
Test network keepalive configuration.
Request URI Definition
Table A-792 POST /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/keepAlive/test?
format=json
Method POST
Description Test network keepalive configuration.
Query format: determine the format of request or response message.
Request JSON_KeepAlive
Response JSON_TestResult
Remarks
The <ID> in the request URI refers to the network interface ID.
A.12.197 /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/keepAlive?
format=json
Set network keepalive parameters.
462
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-793 PUT /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/keepAlive?format=json
Method PUT
Description Set network keepalive parameters.
Query format: determine the format of request or response message.
Request JSON_KeepAlive
Response JSON_ResponseStatus
Remarks
The <ID> in the request URI refers to the network interface ID.
A.12.198 /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/messageConfig
Get or set dial-up information parameters.
Request URI Definition
Table A-794 GET /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/messageConfig
Method GET
Description Get dial-up information parameters.
Query None.
Request None.
Response Succeeded: XML_messageConfig
Failed: XML_ResponseStatus
Table A-795 PUT /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/messageConfig
Method PUT
Description Set dial-up information parameters.
Query None.
Request XML_messageConfig
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the network interface ID.
463
Intelligent Security API (General) Developer Guide
A.12.199 /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/messageConfig/
messageConfigCap
Get dial-up information capability.
Request URI Definition
Table A-796 GET /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/messageConfig/
messageConfigCap
Method GET
Description Get dial-up information capability.
Query None.
Request None.
Response Succeeded: XML_messageConfigCap
Failed: XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the network interface ID.
A.12.200 /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/messageConfig/
WhiteList
Get or set all allowlist configuration.
Request URI Definition
Table A-797 GET /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/messageConfig/
WhiteList
Method GET
Description Get all allowlist configuration.
Query None.
Request None.
Response Succeeded: XML_SMSWhiteList
Failed: XML_ResponseStatus
464
Intelligent Security API (General) Developer Guide
Table A-798 PUT /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/messageConfig/
WhiteList
Method PUT
Description Set all allowlist configuration.
Query None.
Request XML_SMSWhiteList
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the network interface ID.
A.12.201 /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/messageConfig/
WhiteList/<ID>
Get or set specific allowlist configuration.
Request URI Definition
Table A-799 GET /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/messageConfig/
WhiteList/<ID>
Method GET
Description Get specific allowlist configuration.
Query security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.None.
iv: the initialization vector, and it is required when security is 1 or 2.
Request None.
Response Succeeded: XML_ListMember
Failed: XML_ResponseStatus
Table A-800 PUT /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/messageConfig/
WhiteList/<ID>
Method PUT
Description Set specific allowlist configuration.
465
Intelligent Security API (General) Developer Guide
Query security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.None.
iv: the initialization vector, and it is required when security is 1 or 2.
Request XML_ListMember
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the network interface ID.
A.12.202 /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/schedule
Get or set dial-up schedule parameters.
Request URI Definition
Table A-801 GET /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/schedule
Method GET
Description Get dial-up schedule parameters.
Query None.
Request None.
Response Succeeded: XML_Schedule
Failed: XML_ResponseStatus
Table A-802 PUT /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/schedule
Method PUT
Description Set dial-up schedule parameters.
Query None.
Request XML_Schedule
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the network interface ID.
466
Intelligent Security API (General) Developer Guide
A.12.203 /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/trafficMonitor/
capabilities?format=json
Get traffic monitoring configuration capability.
Request URI Definition
Table A-803 GET /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/trafficMonitor/
capabilities?format=json
Method GET
Description Get traffic monitoring configuration capability.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_TrafficMonitorCap
Failed: JSON_ResponseStatus
A.12.204 /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/trafficMonitor/
status?format=json
Get traffic monitoring status.
Request URI Definition
Table A-804 GET /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/trafficMonitor/status?
format=json
Method GET
Description Get traffic monitoring status.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_TrafficMonitorStatus
Failed: JSON_ResponseStatus
A.12.205 /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/trafficMonitor?
format=json
Get traffic monitoring parameters.
467
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-805 GET /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/trafficMonitor?
format=json
Method GET
Description Get traffic monitoring parameters.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_TrafficMonitor
Failed: JSON_ResponseStatus
Table A-806 PUT /ISAPI/System/Network/WirelessDial/Interfaces/<ID>/trafficMonitor?
format=json
Method PUT
Description Set traffic monitoring parameters.
Query None.
Request JSON_TrafficMonitor
Response JSON_ResponseStatus
Remarks
The <ID> in the request URI refers to the network interface ID.
A.12.206 /ISAPI/System/Network/WPS/capabilities
Get the WPS (Wi-Fi Protected Setup) configuration capability.
Request URI Definition
Table A-807 GET /ISAPI/System/Network/WPS/capabilities
Method GET
Description Get the WPS (Wi-Fi Protected Setup) configuration capability.
Query None.
Request None.
Response Succeeded: XML_Cap_WPS
Failed: XML_ResponseStatus
468
Intelligent Security API (General) Developer Guide
A.12.207 /ISAPI/System/onlineUpgrade/capabilities
Get the device online upgrade capability.
Request URI Definition
Table A-808 GET /ISAPI/System/onlineUpgrade/capabilities
Method GET
Description Get the device online upgrade capability.
Query None.
Request None.
Response XML_OnlineUpgradeCap
A.12.208 /ISAPI/System/onlineUpgrade/deviceParameter?format=json
Get and set the device online upgrade parameters.
Request URI Definition
Table A-809 GET /ISAPI/System/onlineUpgrade/deviceParameter?format=json
Method GET
Description Get the device online upgrade parameters.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_OnlineUpgradeParameter
Failed: JSON_ResponseStatus
Table A-810 PUT /ISAPI/System/onlineUpgrade/deviceParameter?format=json
Method PUT
Description Set the device online upgrade parameters.
Query format: determine the format of request or response message.
Request JSON_OnlineUpgradeParameter
Response JSON_ResponseStatus
A.12.209 /ISAPI/System/onlineUpgrade/downloadPackage/pause?format=json
Pause the upgrade package download.
469
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-811 PUT /ISAPI/System/onlineUpgrade/downloadPackage/pause?format=json
Method PUT
Description Pause upgrade package download.
Query format: determine the format of request or response message.
Request None.
Response JSON_ResponseStatus
A.12.210 /ISAPI/System/onlineUpgrade/downloadPackage/resume?format=json
Resume the upgrade package download.
Request URI Definition
Table A-812 PUT /ISAPI/System/onlineUpgrade/downloadPackage/resume?format=json
Method PUT
Description Resume the upgrade package download.
Query format: determine the format of request or response message.
Request None.
Response JSON_ResponseStatus
A.12.211 /ISAPI/System/onlineUpgrade/downloadPackage/status?format=json
Get the upgrade package download progress.
Request URI Definition
Table A-813 GET /ISAPI/System/onlineUpgrade/downloadPackage/status?format=json
Method GET
Description Get the upgrade package download progress.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_DownloadPackageStatus
Failed: JSON_ResponseStatus
470
Intelligent Security API (General) Developer Guide
A.12.212 /ISAPI/System/onlineUpgrade/downloadPackage?format=json
Start or cancel downloading upgrade package to device.
Request URI Definition
Table A-814 PUT /ISAPI/System/onlineUpgrade/downloadPackage?format=json
Method PUT
Description Start to download upgrade package to device.
Query format: determine the format of request or response message.
Request None.
Response JSON_ResponseStatus
Table A-815 DELETE /ISAPI/System/onlineUpgrade/downloadPackage?format=json
Method DELETE
Description Cancel the upgrade package download.
Query format: determine the format of request or response message.
Request None.
Response JSON_ResponseStatus
A.12.213 /ISAPI/System/onlineUpgrade/ignoreCurrentVersion?format=json
Ignore the current upgrade package version.
Request URI Definition
Table A-816 PUT /ISAPI/System/onlineUpgrade/ignoreCurrentVersion?format=json
Method PUT
Description Ignore the current upgrade package version.
Query format: determine the format of request or response message.
Request None.
Response JSON_ResponseStatus
Remarks
If the current upgrade package version is ignored, it will not be found in further detection.
471
Intelligent Security API (General) Developer Guide
A.12.214 /ISAPI/System/onlineUpgrade/server
Get the online upgrade server status.
Request URI Definition
Table A-817 GET /ISAPI/System/onlineUpgrade/server
Method GET
Description Get the online upgrade server status.
Query None.
Request None.
Response XML_OnlineUpgradeServer
A.12.215 /ISAPI/System/onlineUpgrade/status
Get the online upgrade progress of device.
Request URI Definition
Table A-818 GET /ISAPI/System/onlineUpgrade/status
Method GET
Description Get the online upgrade progress of device.
Query None.
Request None.
Response XML_OnlineUpgradeStatus
A.12.216 /ISAPI/System/onlineUpgrade/upgradeWithoutDownload?format=json
Start device upgrade with existed upgrade package.
Request URI Definition
Table A-819 PUT /ISAPI/System/onlineUpgrade/upgradeWithoutDownload?format=json
Method PUT
Description Start upgrade with existed upgrade package.
Query format: determine the format of request or response message.
472
Intelligent Security API (General) Developer Guide
Request None.
Response JSON_ResponseStatus
A.12.217 /ISAPI/System/onlineUpgrade/version
Get the information of new upgrade package.
Request URI Definition
Table A-820 GET /ISAPI/System/onlineUpgrade/version
Method GET
Description Get the information of new upgrade package.
Query check
Request None.
Response XML_OnlineUpgradeVersion
A.12.218 /ISAPI/System/PictureServer/capabilities?format=json
Get the picture storage server capability.
Request URI Definition
Table A-821 GET /ISAPI/System/PictureServer/capabilities?format=json
Method GET
Description Get the picture storage server capability.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_Cap_PictureServerInformation
Failed: JSON_ResponseStatus
A.12.219 /ISAPI/System/PictureServer?format=json
Operations about the picture storage server configuration parameters.
473
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-822 GET /ISAPI/System/PictureServer?format=json
Method GET
Description Get the picture storage server parameters.
Query format: determine the format of request or response message.
security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
Request None.
Response Succeeded: JSON_PictureServerInformation
Failed: JSON_ResponseStatus
Table A-823 PUT /ISAPI/System/PictureServer?format=json
Method PUT
Description Set the picture storage server parameters.
Query format: determine the format of request or response message.
security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
Request JSON_PictureServerInformation
Response JSON_ResponseStatus
A.12.220 /ISAPI/System/reboot
Reboot device.
474
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-824 PUT /ISAPI/System/reboot
Method PUT
Description Reboot device.
Query None.
Request None.
Response XML_ResponseStatus
A.12.221 /ISAPI/System/Serial/authentication/capabilities?format=json
Get capability of serial authentication service.
Request URI Definition
Table A-825 GET /ISAPI/System/Serial/authentication/capabilities?format=json
Method GET
Description Get capability of serial authentication service.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_AuthenticationCap
Failed: JSON_ResponseStatus
A.12.222 /ISAPI/System/Serial/authentication?format=json
Get or set parameters of serial authentication service.
Request URI Definition
Table A-826 GET /ISAPI/System/Serial/authentication?format=json
Method GET
Description Get parameters of serial authentication service.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_Authentication
475
Intelligent Security API (General) Developer Guide
Failed: JSON_ResponseStatus
Table A-827 PUT /ISAPI/System/Serial/authentication?format=json
Method PUT
Description Set parameters of serial authentication service.
Query format: determine the format of request or response message.
Request JSON_Authentication
Response JSON_ResponseStatus
A.12.223 /ISAPI/System/Serial/capabilities
Get the serial port capability of the device.
Request URI Definition
Table A-828 GET /ISAPI/System/Serial/capabilities
Method GET
Description Get the serial port capability of the device.
Query None.
Request None.
Response Succeeded: XML_SerialCap
Failed: XML_ResponseStatus
A.12.224 /ISAPI/System/Serial/ports
Get the list of serial ports supported by the device.
Request URI Definition
Table A-829 GET /ISAPI/System/Serial/ports
Method GET
Description Get the list of serial ports supported by the device.
Query None.
Request None.
Response Succeeded: XML_SerialPorList
Failed: XML_ResponseStatus
476
Intelligent Security API (General) Developer Guide
A.12.225 /ISAPI/System/Serial/ports/<ID>
Operations about the configuration of a specific serial port supported by the device.
Request URI Definition
Table A-830 GET /ISAPI/System/Serial/ports/<ID>
Method GET
Description Get the parameters of a specific port supported by the device.
Query None.
Request None.
Response Succeeded: XML_SerialPort
Failed: XML_ResponseStatus
Table A-831 PUT /ISAPI/System/Serial/ports/<ID>
Method PUT
Description Set the parameters of a specific serial port supported by the device.
Query None.
Request XML_SerialPort
Response XML_ResponseStatus
A.12.226 /ISAPI/System/Serial/ports/<ID>/capabilities
Get the capability of a specific serial port.
Request URI Definition
Table A-832 GET /ISAPI/System/Serial/ports/<ID>/capabilities
Method GET
Description Get the capability of a specific serial port.
Query None.
Request None.
Response Succeeded: XML_Cap_SerialPort
Failed: XML_ResponseStatus
477
Intelligent Security API (General) Developer Guide
A.12.227 /ISAPI/System/Serial/ports/capabilities
Get the capability of all serial ports.
Request URI Definition
Table A-833 GET /ISAPI/System/Serial/ports/capabilities
Method GET
Description Get the capability of all serial ports.
Query None.
Request None.
Response Succeeded: XML_Cap_SerialPortList
Failed: XML_ResponseStatus
A.12.228 /ISAPI/System/Serial/ports/command
Send a command to a serial port.
Request URI Definition
Table A-834 PUT /ISAPI/System/Serial/ports/command
Method PUT
Description Send a command to a serial port.
Query None.
Request XML_SerialCommand or query string with raw command in binary
format
Response XML_ResponseStatus
Remarks
• If the device is an encoder that converts analog signals to digital signals and it is connected to
analog cameras with PTZ enabled, the encoder will forward the command to the appropriate
serial port according to the <chainNo> node of the XML message or the query string of the HTTP
request.
• If the device is a digital camera with PTZ enabled, the camera will forward the PTZ command to
the corresponding serial port.
• The serial port command can be encapsulated in the <command> node of the XML message,
and the command should be encoded in hexadecimal notation; or the serial port command can
478
Intelligent Security API (General) Developer Guide
be directly uploaded as payload of the HTTP request, and in this case the Content-Type should
be set to "application/octet-stream", and the query string chainNo should be set.
Example
Sample Code of Command in XML Format
PUT /ISAPI/System/Serial/ports/999/command HTTP/1.1
Content-Type: application/xml; charset=”UTF-8”
Content-Length: xxx
<?xml version=“1.0” encoding=“UTF-8”?>
<SerialCommand>
<chainNo>0</chainNo>
<command>ab45be8778cd</command>
</SerialCommand>
Example
Sample Code of Command Using Query String
/ISAPI/System/Serial/ports/999/command?chainNo=1 HTTP/1.1
Content-Type: application/octet-stream
Content-Length: xxx
(...Raw data of the command should be inserted here...)
A.12.229 /ISAPI/System/Serial/ports/command/capabilities
Get the serial port command capability.
Request URI Definition
Table A-835 GET /ISAPI/System/Serial/ports/command/capabilities
Method GET
Description Get the serial port command capability.
Query None.
Request None.
Response Succeeded: XML_Cap_SerialCommand
Failed: XML_ResponseStatus
A.12.230 /ISAPI/System/serialLogCfg/capabilities?format=json
Get the configuration capability of serial port log redirection.
479
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-836 GET /ISAPI/System/serialLogCfg/capabilities?format=json
Method GET
Description Get the configuration capability of serial port log redirection.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_SerialLogCfgCap
Failed: JSON_ResponseStatus
A.12.231 /ISAPI/System/serialLogCfg?format=json
Operations about the redirection configuration of serial port log.
Request URI Definition
Table A-837 GET /ISAPI/System/serialLogCfg?format=json
Method GET
Description Get the redirection parameters of serial port log.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_SerialLogCfg
Failed: JSON_ResponseStatus
Table A-838 PUT /ISAPI/System/serialLogCfg?format=json
Method PUT
Description Set the redirection parameters of serial port log.
Query format: determine the format of request or response message.
Request JSON_SerialLogCfg
Response JSON_ResponseStatus
A.12.232 /ISAPI/System/shutdown?format=json
Shut down the device.
480
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-839 PUT /ISAPI/System/shutdown?format=json
Method PUT
Description Shut down the device.
Query format: determine the format of request or response message.
Request None.
Response JSON_ResponseStatus
A.12.233 /ISAPI/System/Software/channels/<ID>
Operation about software service configuration.
Request URI Definition
Table A-840 GET /ISAPI/System/Software/channels/<ID>
Method GET
Description Get software service parameters.
Query None.
Request None.
Response XML_SoftwareService
Table A-841 PUT /ISAPI/System/Software/channels/<ID>
Method PUT
Description Set software service parameters.
Query None.
Request XML_SoftwareService
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the channel No.
A.12.234 /ISAPI/System/Software/channels/<ID>/capabilities
Get the configuration capability of software service.
481
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-842 GET /ISAPI/System/Software/channels/<ID>/capabilities
Method GET
Description Get the configuration capability of software service.
Query None.
Request None.
Response XML_Cap_SoftwareService
Remarks
The <ID> in the request URI refers to the channel No.
A.12.235 /ISAPI/System/SSDFileSystem/capacity?format=json
Search for SSD storage quotas.
Request URI Definition
Table A-843 GET /ISAPI/System/SSDFileSystem/capacity?format=json
Method GET
Description Search for SSD storage quotas.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_SSDCapacity
Failed: JSON_ResponseStatus
Remarks
If the node isSupportSSDFileSystemCapacity is returned in the message XML_DeviceCap (related
URI: /ISAPI/System/capabilities ) and its value is true, it indicates that the device supports this
function.
A.12.236 /ISAPI/System/SSDFileSystem/format?format=json
Format SSD file system.
482
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-844 PUT /ISAPI/System/SSDFileSystem/format?format=json
Method PUT
Description Format SSD file system.
Query format: determine the format of request or response message.
Request None.
Response JSON_ResponseStatus
Remarks
Formatting SSD will erase its data, including those in face picture library, and cancel the alarms
linked to the library. The device will restart after formatting.
A.12.237 /ISAPI/System/SSDFileSystem/format/status?format=json
Search for the progress of SSD file system formatting.
Request URI Definition
Table A-845 GET /ISAPI/System/SSDFileSystem/format/status?format=json
Method GET
Description Search for the progress of SSD file system formatting.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_SSDFormatStatus
Failed: JSON_ResponseStatus
A.12.238 /ISAPI/System/SSDFileSystem/upgrade?format=json
Get the upgrade status of SSD file system or upgrade the SSD file system. The device will
automatically reboot after upgrade.
Request URI Definition
Table A-846 GET /ISAPI/System/SSDFileSystem/upgrade?format=json
Method GET
Description Get the upgrade status of SSD file system.
483
Intelligent Security API (General) Developer Guide
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_SSDUpgrade
Failed: JSON_ResponseStatus
Table A-847 PUT /ISAPI/System/SSDFileSystem/upgrade?format=json
Method PUT
Description Upgrade the SSD file system.
Query format: determine the format of request or response message.
Request None.
Response JSON_ResponseStatus
A.12.239 /ISAPI/System/SSDFileSystem/upgrade/status?format=json
Search for the upgrade progress of SSD file system.
Request URI Definition
Table A-848 GET /ISAPI/System/SSDFileSystem/upgrade/status?format=json
Method GET
Description Search for the upgrade progress of SSD file system.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_SSDUpgradeStatus
Failed: JSON_ResponseStatus
A.12.240 /ISAPI/System/status
Get device status, e.g., CPU, memory, and so on.
Request URI Definition
Table A-849 GET /ISAPI/System/status
Method GET
Description Get device status, e.g., CPU, memory, and so on.
Query None.
484
Intelligent Security API (General) Developer Guide
Request None.
Response Succeeded: XML_DeviceStatus
Failed: XML_ResponseStatus
A.12.241 /ISAPI/System/syncSignalOutput/<ID>
Operations about the configuration of synchronous signal output.
Request URI Definition
Table A-850 GET /ISAPI/System/syncSignalOutput/<ID>
Method GET
Description Get the parameters of synchronous signal output.
Query None.
Request None.
Response Succeeded: XML_SyncSignalOutputList
Failed: XML_ResponseStatus
Table A-851 PUT /ISAPI/System/syncSignalOutput/<ID>
Method PUT
Description Set the parameters of synchronous signal output.
Query None.
Request XML_SyncSignalOutputList
Response XML_ResponseStatus
A.12.242 /ISAPI/System/syncSignalOutput/<ID>/capabilities
Get the configuration capability of synchronous signal output.
Request URI Definition
Table A-852 GET /ISAPI/System/syncSignalOutput/<ID>/capabilities
Method GET
Description Get the configuration capability of synchronous signal output.
Query None.
485
Intelligent Security API (General) Developer Guide
Request None.
Response Succeeded: XML_Cap_SyncSignalOutputList
Failed: XML_ResponseStatus
A.12.243 /ISAPI/System/time
Get or set device time parameters.
Request URI Definition
Table A-853 GET /ISAPI/System/time
Method GET
Description Get device time parameters.
Query None
Request None
Response Succeeded: XML_Time
Failed: XML_ResponseStatus
Table A-854 PUT /ISAPI/System/time
Method PUT
Description Set device time parameters.
Query None
Request XML_Time
Response Succeeded: XML_ResponseStatus_IFSTime
Failed: XML_ResponseStatus
A.12.244 /ISAPI/System/time/capabilities
Get the time capability of the device.
Request URI Definition
Table A-855 GET /ISAPI/System/time/capabilities
Method GET
Description Get the time capability of the device.
Query None.
486
Intelligent Security API (General) Developer Guide
Request None.
Response Succeeded: XML_Cap_Time
Failed: XML_ResponseStatus
A.12.245 /ISAPI/System/time/localTime
Operations about the configuration of device local time.
Request URI Definition
Table A-856 GET /ISAPI/System/time/localTime
Method GET
Description Get the configuration parameters of device local time.
Query None.
Request None.
Response String with date and time information (ISO8601 format, e.g., 2018-
02-10T17:30:08)
Table A-857 PUT /ISAPI/System/time/localTime
Method PUT
Description Set device local time.
Query None.
Request String with date and time information (ISO8601 format, e.g., 2018-
02-10T17:30:08)
Response XML_ResponseStatus
A.12.246 /ISAPI/System/time/ntpServers
Get or set parameters of all NTP servers, add a NTP server, or delete all NTP servers.
Request URI Definition
Table A-858 GET /ISAPI/System/time/ntpServers
Method GET
Description Get parameters of all NTP servers.
Query None
487
Intelligent Security API (General) Developer Guide
Request None
Response Succeeded: XML_NTPServerList
Failed: XML_ResponseStatus
Table A-859 PUT /ISAPI/System/time/ntpServers
Method PUT
Description Set parameters of all NTP servers.
Query None
Request XML_NTPServerList
Response XML_ResponseStatus
Table A-860 POST /ISAPI/System/time/ntpServers
Method POST
Description Add a NTP server.
Query None
Request XML_NTPServer
Response XML_ResponseStatus
Table A-861 DELETE /ISAPI/System/time/ntpServers
Method DELETE
Description Delete all NTP servers.
Query None
Request None
Response XML_ResponseStatus
A.12.247 /ISAPI/System/time/ntpServers/<ID>
Get or set parameters of a NTP server, or delete a NTP server.
Request URI Definition
Table A-862 GET /ISAPI/System/time/ntpServers/<ID>
Method GET
Description Get the parameters of a NTP server.
Query None
488
Intelligent Security API (General) Developer Guide
Request None
Response Succeeded: XML_NTPServer
Failed: XML_ResponseStatus
Table A-863 PUT /ISAPI/System/time/ntpServers/<ID>
Method PUT
Description Set the parameters of a NTP server.
Query None
Request XML_NTPServer
Response XML_ResponseStatus
Table A-864 DELETE /ISAPI/System/time/ntpServers/<ID>
Method DELETE
Description Delete a NTP server.
Query None
Request None
Response XML_ResponseStatus
A.12.248 /ISAPI/System/time/ntpServers/<ID>/capabilities
Get the configuration capability of a specific NTP server.
Request URI Definition
Table A-865 GET /ISAPI/System/time/ntpServers/<ID>/capabilities
Method GET
Description Get the configuration capability of a specific NTP server.
Query None.
Request None.
Response Succeeded: XML_Cap_NTPServer
Failed: XML_ResponseStatus
A.12.249 /ISAPI/System/time/ntpServers/capabilities
Get the configuration capability of all NTP servers.
489
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-866 GET /ISAPI/System/time/ntpServers/capabilities
Method GET
Description Get the configuration capability of all NTP servers.
Query None
Request None
Response Succeeded: XML_Cap_NTPServerList
Failed: XML_ResponseStatus
A.12.250 /ISAPI/System/time/ntpServers/test
Execute a test to check if the NTP server is available.
Request URI Definition
Table A-867 POST /ISAPI/System/time/ntpServers/test
Method POST
Description Execute a test to check if the NTP server is available.
Query None
Request XML_NTPTestDescription
Response Succeeded: XML_NTPTestResult
Failed: XML_ResponseStatus
A.12.251 /ISAPI/System/time/timeType?format=json
Operations about device time type configuration.
Request URI Definition
Table A-868 GET /ISAPI/System/time/timeType?format=json
Method GET
Description Get the device time type.
Query format: determine the format of request or response message.
490
Intelligent Security API (General) Developer Guide
Request None.
Response JSON_TimeType
Table A-869 PUT /ISAPI/System/time/timeType?format=json
Method PUT
Description Set the device time type.
Query format: determine the format of request or response message.
Request JSON_TimeType
Response JSON_ResponseStatus
A.12.252 /ISAPI/System/time/timeZone
Operations about the configuration of device time zone.
Request URI Definition
Table A-870 GET /ISAPI/System/time/timeZone
Method GET
Description Get the device time zone parameters.
Query None.
Request None.
Response String containing time zone information
Table A-871 PUT /ISAPI/System/time/timeZone
Method PUT
Description Set the device time zone parameters.
Query None.
Request String containing time zone information
Response XML_ResponseStatus
A.12.253 /ISAPI/System/TwoWayAudio/channels
Get audio parameters of all two-way audio channels.
491
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-872 GET /ISAPI/System/TwoWayAudio/channels
Method GET
Description Get parameters of all two-way audio channels.
Query None.
Request None.
Response Succeeded: XML_TwoWayAudioChannelList
Failed: XML_ResponseStatus
Example
Sample Code for Getting Parameters of All Two-Way Audio Channels
GET /ISAPI/System/TwoWayAudio/channels HTTP/1.1
Host: 10.17.132.49
Connection: Keep-Alive
Authorization: Digest username="admin",
realm="DS-2CD2F12FWD-IWS",
nonce="4e4446464e6a6333516a63365a4445304f47526a4e32553d",
uri="/ISAPI/System/TwoWayAudio/channels",
cnonce="145ef1bc3ab456be09918d39b77e78ae",
nc=00000021,
response="d10bab23689c60e95241230fff3181b0",
qop="auth"
HTTP/1.1 200 OK
Date: Wed, 15 Mar 2017 09:25:29 GMT
Server: App-webs/
Connection: close
Content-Length: 467
Content-Type: application/xml
<?xml version="1.0" encoding="UTF-8"?>
<TwoWayAudioChannelList version="2.0" xmlns="http://www.isapi.com/ver20/XMLSchema">
<TwoWayAudioChannel version="2.0" xmlns="http://www.isapi.com/ver20/XMLSchema">
<id>1</id>
<enabled>false</enabled>
<audioCompressionType>G.711ulaw</audioCompressionType>
<audioInputType>MicIn</audioInputType>
<speakerVolume>50</speakerVolume>
<noisereduce>false</noisereduce>
</TwoWayAudioChannel>
</TwoWayAudioChannelList>
492
Intelligent Security API (General) Developer Guide
A.12.254 /ISAPI/System/TwoWayAudio/channels/<ID>
Operations about the configuration of a specific two-way audio channel.
Request URI Definition
Table A-873 GET /ISAPI/System/TwoWayAudio/channels/<ID>
Method GET
Description Get the parameters of a specific two-way audio channel.
Query None.
Request None.
Response Succeeded: XML_TwoWayAudioChannel
Failed: XML_ResponseStatus
Table A-874 PUT /ISAPI/System/TwoWayAudio/channels/<ID>
Method PUT
Description Set the parameters of a specific two-way audio channel.
Query None.
Request XML_TwoWayAudioChannel
Response XML_ResponseStatus
A.12.255 /ISAPI/System/TwoWayAudio/channels/<ID>/audioData
Receive or send audio data from or to a specific two-way audio channel.
Request URI Definition
Table A-875 GET /ISAPI/System/TwoWayAudio/channels/<ID>/audioData
Method GET
Description Receive audio data from a specific two-way audio channel.
Query sessionId: communication session ID, which is required when the
two-way audio is started between multiple channels and a channel;
otherwise, the session ID is not required.
Request None.
Response Succeeded: audio data
Failed: XML_ResponseStatus
493
Intelligent Security API (General) Developer Guide
Table A-876 PUT /ISAPI/System/TwoWayAudio/channels/<ID>/audioData
Method PUT
Description Send audio data to a specific two-way audio channel.
Query sessionId: communication session ID, which is required when the
two-way audio is started between multiple channels and a channel;
otherwise, the session ID is not required.
Request Audio data.
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the two-way audio channel ID.
Example
Sample Code for Sending Audio Data to Device
PUT /ISAPI/System/TwoWayAudio/channels/1/audioData HTTP/1.1
HOST: 10.17.132.49
Authorization: Digest username="admin",
realm="DS-2CD2F12FWD-IWS",
nonce="4e3055314e6a64434e7a59365a4445304f545668596a6b3d",
uri="/ISAPI/System/TwoWayAudio/channels/1/audioData",
response="6a03c7e85c17a35bae9ee6f3cfcd254b"
Connection: keep-alive
Content-Length: 0
Content-Type: application/octet-stream
HTTP/1.1 200 OK
..U....U..............U...........U........ (Binary audio data)
Example
Sample Code for Receiving Audio Data from Device
GET /ISAPI/System/TwoWayAudio/channels/1/audioData HTTP/1.1
HOST: 10.17.132.49
Authorization: Digest username="admin",
realm="DS-2CD2F12FWD-IWS",
nonce="4e3055314e6a64434e7a59365a4445304f5456685a44673d",
uri="/ISAPI/System/TwoWayAudio/channels/1/audioData",
response="7ea0ec7bd102b3c4cb225cbf33adb8f8"
Connection: keep-alive
HTTP/1.1 200 OK
Content-Type: audio/basic
Q......U..dzR..\.FfN...q[....z..q.......`. (Binary audio data)
494
Intelligent Security API (General) Developer Guide
A.12.256 /ISAPI/System/TwoWayAudio/channels/<ID>/capabilities
Get the capability of a specific two-way audio channel.
Request URI Definition
Table A-877 GET /ISAPI/System/TwoWayAudio/channels/<ID>/capabilities
Method GET
Description Get the capability of a specific two-way audio channel.
Query None.
Request None.
Response Succeeded: XML_TwoWayAudioChannelCap
Failed: XML_ResponseStatus
A.12.257 /ISAPI/System/TwoWayAudio/channels/<ID>/close
Stop two-way audio of a specific channel.
Request URI Definition
Table A-878 PUT /ISAPI/System/TwoWayAudio/channels/<ID>/close
Method PUT
Description Stop two-way audio of a specific channel.
Query None.
Request None.
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the two-way audio channel ID.
Example
Sample Code for Stopping Two-Way Audio
PUT /ISAPI/System/TwoWayAudio/channels/1/close HTTP/1.1
HOST: 10.17.132.49
Authorization: Digest username="admin",
realm="DS-2CD2F12FWD-IWS",
nonce="4e54457a4d7a67354d6a6b365a4445304f5463794d32553d",
uri="/ISAPI/System/TwoWayAudio/channels/1/close",
response="7d5acdc3ccf7c080400802800d7471e3"
Content-Length: 0
495
Intelligent Security API (General) Developer Guide
HTTP/1.1 200 OK
Date: Wed, 15 Mar 2017 09:25:35 GMT
Server: App-webs/
Connection: close
Content-Length: 298
Content-Type: application/xml
<?xml version="1.0" encoding="UTF-8"?>
<ResponseStatus version="2.0" xmlns="http://www.isapi.com/ver20/XMLSchema">
<requestURL>/ISAPI/System/TwoWayAudio/channels/1/close</requestURL>
<statusCode>1</statusCode>
<statusString>OK</statusString>
<subStatusCode>ok</subStatusCode>
</ResponseStatus>
A.12.258 /ISAPI/System/TwoWayAudio/channels/<ID>/open
Start two-way audio of a specific channel.
Request URI Definition
Table A-879 PUT /ISAPI/System/TwoWayAudio/channels/<ID>/open
Method PUT
Description Start two-way audio of a specific channel.
Query None.
Request None.
Response Succeeded: XML_TwoWayAudioSession
Failed: XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the two-way audio channel ID.
Example
Sample Code for Start Two-Way Audio
PUT /ISAPI/System/TwoWayAudio/channels/1/open HTTP/1.1
HOST: 10.17.132.49
Authorization: Digest username="admin",
realm="DS-2CD2F12FWD-IWS",
nonce="4e3055314e6a64434e7a59365a4445304f5456685957453d",
uri="/ISAPI/System/TwoWayAudio/channels/1/open",
response="368dda22535b9783bdccafc3b2ded29a"
Content-Length: 0
HTTP/1.1 200 OK
496
Intelligent Security API (General) Developer Guide
Date: Wed, 15 Mar 2017 09:25:29 GMT
Server: App-webs/
Connection: close
Content-Length: 183
Content-Type: application/xml
<?xml version="1.0" encoding="UTF-8"?>
<TwoWayAudioSession version="2.0" xmlns="http://www.isapi.com/ver20/XMLSchema">
<sessionId>2093716360</sessionId>
</TwoWayAudioSession>
A.12.259 /ISAPI/System/TwoWayAudio/channels/capabilities
Get the audio configuration capability of all two-way audio channels.
Request URI Definition
Table A-880 GET /ISAPI/System/TwoWayAudio/channels/capabilities
Method GET
Description Get the audio configuration capability of all two-way audio channels.
Query None.
Request None.
Response Succeeded: XML_Cap_TwoWayAudioChannelList
Failed: XML_ResponseStatus
A.12.260 /ISAPI/System/unitConfig/capabilities?format=json
Get the capability of unit unified configuration.
Request URI Definition
Table A-881 GET /ISAPI/System/unitConfig/capabilities?format=json
Method GET
Description Get the capability of unit unified configuration.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_unitConfigCap
Failed: JSON_ResponseStatus
497
Intelligent Security API (General) Developer Guide
A.12.261 /ISAPI/System/unitConfig?format=json
Get and set the unit unified configuration parameters.
Request URI Definition
Table A-882 GET /ISAPI/System/unitConfig?format=json
Method GET
Description Get the unit unified configuration parameters.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_unitConfig
Failed: JSON_ResponseStatus
Table A-883 PUT /ISAPI/System/unitConfig?format=json
Method PUT
Description Set the unit unified configuration parameters.
Query format: determine the format of request or response message.
Request JSON_unitConfig
Response JSON_ResponseStatus
A.12.262 /ISAPI/System/updateFirmware
Upgrade the device firmware.
Request URI Definition
Table A-884 PUT or POST /ISAPI/System/updateFirmware
Method PUT, POST
Description Upgrade the device firmware.
Query type: module type, which can be set to one of the following values:
"cardReader"-card reader, "FPModule"-fingerprint module,
"securityModule"-secure door control unit, "extendModule"-(IO)
extension module, "channelController"-lane controller, "IRModule"-
IR module, "lampModule"-indicator module, "elevatorController"-
slave elevator controller, "FPAlgorithmProgram"-fingerprint algorithm
program of the card reader, "uboot", "keypad", "wirelessRecv"-
wireless receiving module, "wiredZone"-wired zone module,
498
Intelligent Security API (General) Developer Guide
"ZigBee"-ZigBee module,"R3"-R3 module,"Rx"-Rx module,
"sirenIndoor"-siren indoor, "sirenOutdoor"-siren outdoor, "repeater"-
repeater, "automation"-automation.
Request Opaque data (binary data for PUT method, data in form format for
POST method).
Response XML_ResponseStatus
Remarks
After upgrading the device firmware, the device will automatically reboot according to the
response message. If upgrading failed, the following reasons may be returned: "upgrading"-the
device is upgrading, "badFlash"-flash error, "badLanguage"-language mismatches.
Example
The URL Interaction in Form Format
/ISAPI/System/updateFirmware
Accept: text/html, application/xhtml+xml,
Accept-Language: zh-CN
Content-Type: multipart/form-data; boundary=---------------------------7e13971310878
User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)
Accept-Encoding: gzip, deflate
Host: 10.10.36.29:8080
Content-Length: 9907
Connection: Keep-Alive
Cache-Control: no-cache
-----------------------------7e13971310878
Content-Disposition: form-data; name="updateFile";
Content-Type: application/octet-stream
Content-Length: 9907
..........`.`.....C........... .
..
................. $.' ",#..(7),01444.'9=82<.342...C. ....
-----------------------------7e13971310878--
A.12.263 /ISAPI/System/updateFirmware?type=&id=
Upgrade the slave device's firmware.
Request URI Definition
Table A-885 PUT or POST /ISAPI/System/updateFirmware?type=&id=
Method PUT, POST
Description Upgrade the slave device's firmware.
499
Intelligent Security API (General) Developer Guide
Query type: device or module type, string type, it can be set to one of the
following values: "cardReader"-card reader, "FPModule"-fingerprint
module, "securityModule"-secure door control unit,
"extendModule"- (IO) extension module, "channelController"-lane
controller, "IRModule"-IR module, "lampModule"-indicator module,
"elevatorController"-slave elevator controller, and
"FPAlgorithmProgram"-fingerprint algorithm program of the card
reader, "uboot", "ZigBee"-ZigBee module, "R3"-R3 module, "Rx"-Rx
module, "sirenIndoor"-siren indoor, "sirenOutdoor"-siren outdoor,
"repeater"-repeater, "automation"-automation.
id: slave device No., e.g., /ISAPI/System/updateFirmware?
type=cardReader&id=1 refers to upgrading firmware of card reader 1.
Request Opaque data (binary data for PUT method, data in form format for
POST method).
Response XML_ResponseStatus
Remarks
After upgrading the slave device's firmware, the device will automatically reboot according to the
response message. If upgrading failed, the following reasons may be returned: "upgrading"-the
device is upgrading, "badFlash"-flash error, "badLanguage"-language mismatches.
A.12.264 /ISAPI/System/updateFirmware?type=&moduleAddress=
Upgrade the peripheral module's firmware.
Request URI Definition
Table A-886 PUT or POST /ISAPI/System/updateFirmware?type=&moduleAddress=
Method PUT, POST
Description Upgrade the peripheral module's firmware.
Query type: device or module type, string type, it can be set to one of the
following values: "keypad", "wirelessRecv"-wireless receiving
module, "wiredZone"-wired zone module, "ZigBee"-ZigBee module,
"R3"-R3 module, "Rx"-Rx module, "sirenIndoor"-siren indoor,
"sirenOutdoor"-siren outdoor, "repeater"-repeater, "automation"-
automation.
moduleAddress: module address, e.g., /ISAPI/System/
updateFirmware?type=wirelessRecv&moduleAddress=1 refers to
upgrading firmware of the wireless receiving module with the
module address 1.
500
Intelligent Security API (General) Developer Guide
Request Opaque data (binary data for PUT method, data in form format for
POST method).
Response XML_ResponseStatus
Remarks
After upgrading the peripheral module's firmware, the device will automatically reboot according
to the response message. If upgrading failed, the following reasons may be returned: "upgrading"-
the device is upgrading, "badFlash"-flash error, "badLanguage"-language mismatches.
A.12.265 /ISAPI/System/upgradeStatus
Get the device upgrading status and progress.
Request URI Definition
Table A-887 GET /ISAPI/System/upgradeStatus
Method GET
Description Get the device upgrading status and progress.
Query None.
Request None.
Response Succeeded: XML_upgradeStatus
Failed: XML_ResponseStatus
A.12.266 /ISAPI/System/usb/capabilities?format=json
Get the USB parameters configuration capability.
Request URI Definition
Table A-888 GET /ISAPI/System/usb/capabilities?format=json
Method GET
Description Get the USB parameters configuration capability.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_USBCap
Failed: JSON_ResponseStatus
501
Intelligent Security API (General) Developer Guide
A.12.267 /ISAPI/System/usb?format=json
Get or set the USB parameters.
Request URI Definition
Table A-889 GET /ISAPI/System/usb?format=json
Method GET
Description Get the USB parameters.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_USB
Failed: JSON_ResponseStatus
Table A-890 PUT /ISAPI/System/usb?format=json
Method PUT
Description Set the USB parameters.
Query format: determine the format of request or response message.
Request JSON_USB
Response JSON_ResponseStatus
A.12.268 /ISAPI/System/userLock/config/capabilities?format=json
Get the configuration capability of locking IP address.
Request URI Definition
Table A-891 GET /ISAPI/System/userLock/config/capabilities?format=json
Method GET
Description Get the configuration capability of locking IP address.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_LockCfgCap
Failed: JSON_ResponseStatus
502
Intelligent Security API (General) Developer Guide
A.12.269 /ISAPI/System/userLock/config?format=json
Operations about IP address locking configuration.
Request URI Definition
Table A-892 GET /ISAPI/System/userLock/config?format=json
Method GET
Description Get the parameters of IP address locking.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_LockCfg
Failed: JSON_ResponseStatus
Table A-893 PUT /ISAPI/System/userLock/config?format=json
Method PUT
Description Set the parameters of IP address locking.
Query format: determine the format of request or response message.
Request JSON_LockCfg
Response JSON_ResponseStatus
A.12.270 /ISAPI/System/userLock/lockedUsers?format=json
Get all locked IP addresses.
Request URI Definition
Table A-894 GET /ISAPI/System/userLock/lockedUsers?format=json
Method GET
Description Get all locked IP addresses.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_List_IPAddress
Failed: JSON_ResponseStatus
503
Intelligent Security API (General) Developer Guide
A.12.271 /ISAPI/System/userLock/unlockUser?format=json
Unlock the IP address.
Request URI Definition
Table A-895 PUT /ISAPI/System/userLock/unlockUser?format=json
Method PUT
Description Unlock the IP address.
Query format: determine the format of request or response message.
Request JSON_operType
Response JSON_ResponseStatus
A.12.272 /ISAPI/System/Video/capabilities
Get video channel capability.
Request URI Definition
Table A-896 GET /ISAPI/System/Video/capabilities
Method GET
Description Get video channel capability.
Query None
Request None
Response Succeeded: XML_VideoCap
Failed: XML_ResponseStatus
A.12.273 /ISAPI/System/Video/inputs
Get the video input configuration of the device.
Request URI Definition
Table A-897 GET /ISAPI/System/Video/inputs
Method GET
Description Get the video input configuration parameters of the device.
Query None.
504
Intelligent Security API (General) Developer Guide
Request None.
Response Succeeded: XML_VideoInput
Failed: XML_ResponseStatus
A.12.274 /ISAPI/System/Video/inputs/channels
Get the configuration of all video input channels of the device.
Request URI Definition
Table A-898 GET /ISAPI/System/Video/inputs/channels
Method GET
Description Get the configuration parameters of all video input channels of the
device.
Query None.
Request None.
Response Succeeded: XML_VideoInputChannelList
Failed: XML_ResponseStatus
A.12.275 /ISAPI/System/Video/inputs/channels/<ID>
Operations about the configuration of a specific video input channel of the device.
Request URI Definition
Table A-899 GET /ISAPI/System/Video/inputs/channels/<ID>
Method GET
Description Get the parameters of a specific video input channel of the device.
Query None.
Request None.
Response Succeeded: XML_VideoInputChannel
Failed: XML_ResponseStatus
Table A-900 PUT /ISAPI/System/Video/inputs/channels/<ID>
Method PUT
Description Set the parameters of a specific video input channel of the device.
505
Intelligent Security API (General) Developer Guide
Query None.
Request XML_VideoInputChannel
Response XML_ResponseStatus
See Also
The <ID> in the request URI refers to the channel No.
A.12.276 /ISAPI/System/Video/inputs/channels?format=json
Get the information of all channels according to the request message.
Request URI Definition
Table A-901 POST /ISAPI/System/Video/inputs/channels?format=json
Method POST
Description Get the information of all channels according to the request
message.
Query format: determine the format of request or response message.
Request JSON_InputParam
Response Succeeded: JSON_ChannelInfoList
Failed: JSON_ResponseStatus
A.12.277 /ISAPI/System/Video/inputs/channels/<ID>/focus
Perform manual focus on a specific channel.
Request URI Definition
Table A-902 PUT /ISAPI/System/Video/inputs/channels/<ID>/focus
Method PUT
Description Perform manual focus on a specific channel.
Query None.
Request XML_FocusData
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to video input channel ID.
506
Intelligent Security API (General) Developer Guide
A.12.278 /ISAPI/System/Video/inputs/channels/<ID>?format=json
Get the information of a channel according to the request message.
Request URI Definition
Table A-903 POST /ISAPI/System/Video/inputs/channels/<ID>?format=json
Method POST
Description Get the information of a channel according to the request message.
Query format: determine the format of request or response message.
Request
Response Succeeded: JSON_ChannelInfo
Failed: JSON_ResponseStatus
Remarks
The <ID> in the request URI refers to the channel No.
A.12.279 /ISAPI/System/Video/inputs/channels/<ID>/capabilities
Get the configuration capability of a video input channel.
Request URI Definition
Table A-904 GET /ISAPI/System/Video/inputs/channels/<ID>/capabilities
Method GET
Description Get the configuration capability of a video input channel.
Query None.
Request None.
Response Succeeded: XML_Cap_VideoInputChannel
Failed: XML_ResponseStatus
Remarks
The <ID> in the request URI refers to video input channel ID.
A.12.280 /ISAPI/System/Video/inputs/channels/<ID>/iris
Manually adjust the iris of a specific video input channel.
507
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-905 PUT /ISAPI/System/Video/inputs/channels/<ID>/iris
Method PUT
Description Manually adjust the iris of a specific video input channel.
Query None.
Request XML_IrisData
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to video input channel ID.
A.12.281 /ISAPI/System/Video/inputs/channels/<ID>/motionDetection
Get or set the motion detection parameters of a specified video input channel.
Request URI Definition
Table A-906 GET /ISAPI/System/Video/inputs/channels/<ID>/motionDetection
Method GET
Description Get the motion detection parameters of a specified video input
channel.
Query None.
Request None.
Response Succeeded: XML_MotionDetection
Failed: XML_ResponseStatus
Table A-907 PUT /ISAPI/System/Video/inputs/channels/<ID>/motionDetection
Method PUT
Description Set the motion detection parameters of a specified video input
channel.
Query None.
Request XML_MotionDetection
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the video input channel No.
508
Intelligent Security API (General) Developer Guide
A.12.282 /ISAPI/System/Video/inputs/channels/<ID>/motionDetection/
capabilities
Get the motion detection capability of a specified video input channel.
Request URI Definition
Table A-908 GET /ISAPI/System/Video/inputs/channels/<ID>/motionDetection/capabilities
Method GET
Description Get the motion detection capability of a specified video input
channel.
Query None.
Request None.
Response Succeeded: XML_Cap_MotionDetection
Failed: XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the video input channel No.
A.12.283 /ISAPI/System/Video/inputs/channels/<ID>/motionDetection/layout
Get or set rule region parameters of motion detection.
Request URI Definition
Table A-909 GET /ISAPI/System/Video/inputs/channels/<ID>/motionDetection/layout
Method GET
Description Get rule region parameters of motion detection.
Query regionType: Detect by region or by grid, string, the available value is
"region" or "grid".
Request None
Response Succeeded: XML_MotionDetectionLayout
Failed: XML_ResponseStatus
Table A-910 PUT /ISAPI/System/Video/inputs/channels/<ID>/motionDetection/layout
Method PUT
Description Set rule region parameters of motion detection.
509
Intelligent Security API (General) Developer Guide
Query regionType: Detect by region or by grid, string, the available value is
"region" or "grid".
Request XML_MotionDetectionLayout
Response XML_ResponseStatus
Remarks
The <ID> in the URI refers to the video input channel ID.
A.12.284 /ISAPI/System/Video/inputs/channels/<ID>/motionDetection/layout/
capabilities
Get rule region configuration capability of motion detection.
Request URI Definition
Table A-911 GET /ISAPI/System/Video/inputs/channels/<ID>/motionDetection/layout/
capabilities
Method GET
Description Get rule region configuration capability of motion detection.
Query None
Request None
Response Succeeded: XML_Cap_MotionDetectionLayout
Failed: XML_ResponseStatus
Remarks
The <ID> in the URI refers to the video input channel ID.
A.12.285 /ISAPI/System/Video/inputs/channels/<ID>/motionDetection/layout/
gridLayout
Get or set grid layout parameters of motion detection.
Request URI Definition
Table A-912 GET /ISAPI/System/Video/inputs/channels/<ID>/motionDetection/layout/
gridLayout
Method GET
Description Get grid layout parameters of motion detection.
510
Intelligent Security API (General) Developer Guide
Query regionType: Detect by region or by grid, string, the available value is
"region" or "grid".
Request None
Response Succeeded: XML_MotionDetectionGridLayout
Failed: XML_ResponseStatus
Table A-913 PUT /ISAPI/System/Video/inputs/channels/<ID>/motionDetection/layout/
gridLayout
Method PUT
Description Set grid layout parameters of motion detection.
Query regionType: Detect by region or by grid, string, the available value is
"region" or "grid".
Request XML_MotionDetectionGridLayout
Response XML_ResponseStatus
Remarks
The <ID> in the URI refers to the video input channel ID.
A.12.286 /ISAPI/System/Video/inputs/channels/<ID>/overlays
Operations about OSD configuration of a specific video input channel.
Request URI Definition
Table A-914 GET /ISAPI/System/Video/inputs/channels/<ID>/overlays
Method GET
Description Get OSD configuration parameters of a specific video input channel.
Query None.
Request None.
Response Succeeded: XML_VideoOverlay
Failed: XML_ResponseStatus
Table A-915 PUT /ISAPI/System/Video/inputs/channels/<ID>/overlays
Method PUT
Description Set OSD parameters of a specific video input channel.
Query None.
511
Intelligent Security API (General) Developer Guide
Request XML_VideoOverlay
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the video input channel ID.
Example
Sample Code for Getting OSD Parameters
GET /ISAPI/System/Video/inputs/channels/1/overlays HTTP/1.1
Host: 10.17.132.49
Connection: Keep-Alive
Authorization: Digest username="admin",
realm="DS-2CD2F12FWD-IWS",
nonce="4d3046464f454e425254633659325534595749784f546b3d",
uri="/ISAPI/System/Video/inputs/channels/1/overlays",
cnonce="03e455047789a833deaae75e44381653",
nc=00000017,
response="ae141a01b415c1b9ab50ddea7ff467c3",
qop="auth"
HTTP/1.1 200 OK
Date: Tue, 14 Mar 2017 20:38:40 GMT
Server: App-webs/
Connection: close
Content-Length: 1087
Content-Type: application/xml
<?xml version="1.0" encoding="UTF-8"?>
<VideoOverlay version="2.0" xmlns="http://www.isapi.com/ver20/XMLSchema">
<normalizedScreenSize>
<normalizedScreenWidth>704</normalizedScreenWidth>
<normalizedScreenHeight>576</normalizedScreenHeight>
</normalizedScreenSize>
<attribute>
<transparent>false</transparent>
<flashing>false</flashing>
</attribute>
<fontSize>64*64</fontSize>
<TextOverlayList size="1">
<TextOverlay>
<id>1</id>
<enabled>true</enabled>
<positionX>0</positionX>
<positionY>576</positionY>
<displayText>222</displayText>
</TextOverlay>
</TextOverlayList>
<DateTimeOverlay>
<enabled>true</enabled>
<positionX>0</positionX>
512
Intelligent Security API (General) Developer Guide
<positionY>544</positionY>
<dateStyle>MM-DD-YYYY</dateStyle>
<timeStyle>24hour</timeStyle>
<displayWeek>true</displayWeek>
</DateTimeOverlay>
<channelNameOverlay version="2.0" xmlns="http://www.isapi.com/ver20/XMLSchema">
<enabled>true</enabled>
<positionX>512</positionX>
<positionY>64</positionY>
</channelNameOverlay>
<frontColorMode>auto</frontColorMode>
<frontColor>000000</frontColor>
</VideoOverlay>
A.12.287 /ISAPI/System/Video/inputs/channels/<ID>/overlays/
BatteryPowerOverlay
Operations about the battery overlay configuration of a specific video input channel.
Request URI Definition
Table A-916 GET /ISAPI/System/Video/inputs/channels/<ID>/overlays/BatteryPowerOverlay
Method GET
Description Get the battery overlay parameters of a specific video input channel.
Query None.
Request None.
Response Succeeded: XML_BatteryPowerOverlay
Failed: XML_ResponseStatus
Table A-917 PUT /ISAPI/System/Video/inputs/channels/<ID>/overlays/BatteryPowerOverlay
Method PUT
Description Set the battery overlay parameters of a specific video input channel.
Query None.
Request XML_BatteryPowerOverlay
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the video input channel No.
513
Intelligent Security API (General) Developer Guide
A.12.288 /ISAPI/System/Video/inputs/channels/<ID>/overlays/
BatteryPowerOverlay/capabilities
Get the configuration capability of battery overlay of a specific video input channel.
Request URI Definition
Table A-918 GET /ISAPI/System/Video/inputs/channels/<ID>/overlays/BatteryPowerOverlay/
capabilities
Method GET
Description Get the configuration capability of battery overlay of a specific video
input channel.
Query None.
Request None.
Response Succeeded: XML_Cap_BatteryPowerOverlay
Failed: XML_ResponseStatus
A.12.289 /ISAPI/System/Video/inputs/channels/<ID>/overlays/capabilities
Get the OSD capability of a specific video input channel.
Request URI Definition
Table A-919 GET /ISAPI/System/Video/inputs/channels/<ID>/overlays/capabilities
Method GET
Description Get the OSD capability of a specific video input channel.
Query None.
Request None.
Response Succeeded: XML_Cap_VideoOverlay
Failed: XML_ResponseStatus
A.12.290 /ISAPI/System/Video/inputs/channels/<ID>/overlays/
channelNameOverlay
Operations about the configuration of channel name overlay of a specific video input channel.
514
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-920 GET /ISAPI/System/Video/inputs/channels/<ID>/overlays/channelNameOverlay
Method GET
Description Get the parameters of channel name overlay of a specific video input
channel.
Query None.
Request None.
Response Succeeded: XML_channelNameOverlay
Failed: XML_ResponseStatus
Table A-921 PUT /ISAPI/System/Video/inputs/channels/<ID>/overlays/channelNameOverlay
Method PUT
Description Set the parameters of channel name overlay of a specific video input
channel.
Query None.
Request XML_channelNameOverlay
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the video input channel No.
A.12.291 /ISAPI/System/Video/inputs/channels/<ID>/overlays/dateTimeOverlay
Operations about the configuration of date and time information overlay of a specific video input
channel.
Request URI Definition
Table A-922 GET /ISAPI/System/Video/inputs/channels/<ID>/overlays/dateTimeOverlay
Method GET
Description Get the parameters of date and time information overlay of a specific
video input channel.
Query None.
Request None.
Response Succeeded:
515
Intelligent Security API (General) Developer Guide
Failed: XML_ResponseStatus
Table A-923 PUT /ISAPI/System/Video/inputs/channels/<ID>/overlays/dateTimeOverlay
Method PUT
Description Set the parameters of date and time information overlay of a specific
video input channel.
Query None.
Request
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the video input channel No.
A.12.292 /ISAPI/System/Video/inputs/channels/<ID>/overlays/dateTimeOverlay/
capabilities
Get the capability of date and time information overlay of a specific video input channel.
Request URI Definition
Table A-924 GET /ISAPI/System/Video/inputs/channels/<ID>/overlays/dateTimeOverlay/
capabilities
Method GET
Description Get the capability of date and time information overlay of a specific
video input channel.
Query None.
Request None.
Response Succeeded: XML_Cap_DatetimeOverlay
Failed: XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the video input channel No.
A.12.293 /ISAPI/System/Video/inputs/channels/<ID>/overlays/text
Operations about the text overlay configuration of a specific video input channel.
516
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-925 GET /ISAPI/System/Video/inputs/channels/<ID>/overlays/text
Method GET
Description Get the text overlay parameters of a specific video input channel.
Query None.
Request None.
Response Succeeded: XML_TextOverlayList
Failed: XML_ResponseStatus
Table A-926 PUT /ISAPI/System/Video/inputs/channels/<ID>/overlays/text
Method PUT
Description Set the text overlay parameters of a specific video input channel.
Query None.
Request XML_TextOverlayList
Response XML_ResponseStatus
Table A-927 POST /ISAPI/System/Video/inputs/channels/<ID>/overlays/text
Method POST
Description Add a text to overlay on the video for a specific video input channel.
Query None.
Request XML_TextOverlay
Response XML_ResponseStatus
Table A-928 DELETE /ISAPI/System/Video/inputs/channels/<ID>/overlays/text
Method DELETE
Description Delete the text overlay parameters of a specific video input channel.
Query None.
Request None.
Response XML_ResponseStatus
517
Intelligent Security API (General) Developer Guide
A.12.294 /ISAPI/System/Video/inputs/channels/<ID>/overlays/text/<ID>
Operations about the configuration of a specific piece of text overlay information of a specific
video input channel.
Request URI Definition
Table A-929 GET /ISAPI/System/Video/inputs/channels/<ID>/overlays/text/<ID>
Method GET
Description Get the parameters of a specific piece of text overlay information of a
specific video input channel.
Query None.
Request None.
Response Succeeded: XML_TextOverlay
Failed: XML_ResponseStatus
Table A-930 PUT /ISAPI/System/Video/inputs/channels/<ID>/overlays/text/<ID>
Method PUT
Description Set the parameters of a specific piece of text overlay information of a
specific video input channel.
Query None.
Request XML_TextOverlay
Response XML_ResponseStatus
Table A-931 DELETE /ISAPI/System/Video/inputs/channels/<ID>/overlays/text/<ID>
Method DELETE
Description Delete the parameters of a specific piece of text overlay information
of a specific video input channel.
Query None.
Request None.
Response XML_ResponseStatus
A.12.295 /ISAPI/System/Video/inputs/channels/<ID>/privacyMask
Get or set privacy mask parameters.
518
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-932 GET /ISAPI/System/Video/inputs/channels/<ID>/privacyMask
Method GET
Description Get or set privacy mask parameters.
Query None.
Request None.
Response Succeeded: XML_PrivacyMask
Failed: XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the video input channel ID.
A.12.296 /ISAPI/System/Video/inputs/channels/<ID>/privacyMask/
privacyMaskCap
Get configuration capability of privacy mask.
Request URI Definition
Table A-933 GET /ISAPI/System/Video/inputs/channels/<ID>/privacyMask/privacyMaskCap
Method GET
Description Get configuration capability of privacy mask.
Query None.
Request None.
Response Succeeded: XML_PrivacyMaskCap
Failed: XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the video input channel ID.
A.12.297 /ISAPI/System/Video/inputs/channels/<ID>/privacyMask/regions
Get, set, or delete parameters of privacy mask regions, and add a region.
519
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-934 GET /ISAPI/System/Video/inputs/channels/<ID>/privacyMask/regions
Method GET
Description Get parameters of privacy mask regions.
Query None.
Request None.
Response Succeeded: XML_PrivacyMaskRegionList
Failed: XML_ResponseStatus
Table A-935 PUT /ISAPI/System/Video/inputs/channels/<ID>/privacyMask/regions
Method PUT
Description Set parameters of privacy mask regions.
Query None.
Request XML_PrivacyMaskRegionList
Response XML_ResponseStatus
Table A-936 DELETE /ISAPI/System/Video/inputs/channels/<ID>/privacyMask/regions
Method DELETE
Description Delete parameters of privacy mask regions.
Query None.
Request None.
Response XML_ResponseStatus
Table A-937 POST /ISAPI/System/Video/inputs/channels/<ID>/privacyMask/regions
Method POST
Description Add a privacy mask region.
Query None.
Request XML_PrivacyMaskRegion
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the video input channel ID.
520
Intelligent Security API (General) Developer Guide
A.12.298 /ISAPI/System/Video/inputs/channels/<ID>/privacyMask/regions/<ID>
Get, set, or delete parameters of a privacy mask region.
Request URI Definition
Table A-938 GET /ISAPI/System/Video/inputs/channels/<ID>/privacyMask/regions/<ID>
Method GET
Description Get parameters of a privacy mask region.
Query None.
Request None.
Response Succeeded: XML_PrivacyMaskRegion
Failed: XML_ResponseStatus
Table A-939 PUT /ISAPI/System/Video/inputs/channels/<ID>/privacyMask/regions/<ID>
Method PUT
Description Set parameters of a privacy mask region.
Query None.
Request XML_PrivacyMaskRegion
Response XML_ResponseStatus
Table A-940 DELETE /ISAPI/System/Video/inputs/channels/<ID>/privacyMask/regions/<ID>
Method DELETE
Description Delete parameters of a privacy mask region.
Query None.
Request None.
Response XML_ResponseStatus
Remarks
The first <ID> in the request URI refers to the video input channel ID; and second <ID> is the
privacy mask region ID.
A.12.299 /ISAPI/System/Video/inputs/channels/<ID>/VCAResource
Operation about configuration of intelligent resources switch.
521
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-941 GET /ISAPI/System/Video/inputs/channels/<ID>/VCAResource
Method GET
Description Get parameters of intelligent resources switch.
Query None.
Request None.
Response Succeeded: XML_VCAResource
Failed: XML_ResponseStatus
Table A-942 PUT /ISAPI/System/Video/inputs/channels/<ID>/VCAResource
Method PUT
Description Set parameters of intelligent resources switch.
Query None.
Request XML_VCAResource
Response XML_ResponseStatus
Remarks
• The <ID> in the request URI refers to the video input channel ID.
• The intelligent resources switch supports three capture mode, i.e., target capture, face capture,
and perimeter capture.
• For target capture mode, the panoramic camera captures the human body and vehicle
pictures, the speed dome tracks and capture the human body for human body or face
recognition and comparison. If matched, the thumbnails and original pictures of human body
and face will be uploaded; otherwise, only the thumbnail and original picture of face will be
uploaded.
• For face capture mode, the panoramic camera transmits the videos without any intelligent
analysis, the speed dome captures face picture in up to 4 scenes.
• For perimeter capture, the panoramic camera captures vehicle pictures and performs HMS
+DGS detection, and it supports detecting and tracking the small target within 40 m; while the
speed dome tracks and captures the detected target, and outputs thumbnails and original
pictures of human body and face.
A.12.300 /ISAPI/System/Video/inputs/channels/<ID>/VCAResource/capabilities
Get capability of intelligent resources switch.
522
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-943 GET /ISAPI/System/Video/inputs/channels/<ID>/VCAResource/capabilities
Method GET
Description Get capability of intelligent resources switch.
Query None.
Request None.
Response Succeeded: XML_Cap_VCAResource
Failed: XML_ResponseStatus
A.12.301 /ISAPI/System/Video/inputs/channels/capabilities
Get the capability of configuring video input channels in a batch.
Request URI Definition
Table A-944 GET /ISAPI/System/Video/inputs/channels/capabilities
Method GET
Description Get the capability of configuring video input channels in a batch.
Query None.
Request None.
Response Succeeded: XML_VideoInputChannelsCap
Failed: XML_ResponseStatus
A.12.302 /ISAPI/System/Video/inputs/channels/counting/collection/capabilities?
format=json
Get the capability of people counting data replenishment.
Request URI Definition
Table A-945 GET /ISAPI/System/Video/inputs/channels/counting/collection/capabilities?
format=json
Method GET
Description Get the capability of people counting data replenishment.
Query format: determine the format of request or response message.
523
Intelligent Security API (General) Developer Guide
Request None.
Response JSON_PeopleCounting_CollectionDescriptionCap
A.12.303 /ISAPI/System/Video/inputs/channels/counting/collection?format=json
Perform people counting replenishment.
Request URI Definition
Table A-946 POST /ISAPI/System/Video/inputs/channels/counting/collection?format=json
Method POST
Description Perform people counting replenishment.
Query format: determine the format of request or response message.
Request JSON_PeopleCounting_CollectionDescription
Response JSON_PeopleCounting_CollectionResult
A.12.304 /ISAPI/System/Video/inputs/channels/heatMap/collection/capabilities?
format=json
Get the capability of heat map data replenishment.
Request URI Definition
Table A-947 GET /ISAPI/System/Video/inputs/channels/heatMap/collection/capabilities?
format=json
Method GET
Description Get the capability of heat map data replenishment.
Query format: determine the format of request or response message.
Request None.
Response JSON_HeatMap_CollectionDescriptionCap
A.12.305 /ISAPI/System/Video/inputs/channels/heatMap/collection?format=json
Perform heat map data replenishment.
524
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-948 POST /ISAPI/System/Video/inputs/channels/heatMap/collection?format=json
Method POST
Description Perform heat map data replenishment.
Query format: determine the format of request or response message.
Request JSON_HeatMap_CollectionDescription
Response JSON_HeatMap_CollectionResult
A.12.306 /ISAPI/System/Video/inputs/OSDLanguage
Operations about OSD language configuration.
Request URI Definition
Table A-949 GET /ISAPI/System/Video/inputs/OSDLanguag
Method GET
Description Get OSD language parameters.
Query None.
Request None.
Response XML_Language
Table A-950 PUT /ISAPI/System/Video/inputs/OSDLanguag
Method PUT
Description Set OSD language parameters.
Query None.
Request XML_Language
Response XML_ResponseStatus
A.12.307 /ISAPI/System/Video/outputs
Get configuration parameters of video outputs.
525
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-951 GET /ISAPI/System/Video/outputs
Method GET
Description Get configuration parameters of all video outputs.
Query None.
Request None.
Response Succeeded: XML_VideoOutput
Failed: XML_ResponseStatus
A.12.308 /ISAPI/System/Video/outputs/channels
Get configuration parameters of multiple video outputs.
Request URI Definition
Table A-952 GET /ISAPI/System/Video/outputs/channels
Method GET
Description Get configuration parameters of multiple video outputs.
Query None.
Request None.
Response Succeeded: XML_VideoOutputChannelList
Failed: XML_ResponseStatus
A.12.309 /ISAPI/System/Video/outputs/channels/<ID>
Get or set parameters of a video output.
Request URI Definition
Table A-953 GET /ISAPI/System/Video/outputs/channels/<ID>
Method GET
Description Get parameters of a video output.
Query None.
526
Intelligent Security API (General) Developer Guide
Request None.
Response Succeeded: XML_VideoOutputChannel
Failed: XML_ResponseStatus
Table A-954 PUT /ISAPI/System/Video/outputs/channels/<ID>
Method PUT
Description Set parameters of a video output.
Query None.
Request XML_VideoOutputChannel
Response XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the video output ID.
A.12.310 /ISAPI/System/Video/outputs/channels/<ID>/capabilities
Get video output configuration capability.
Request URI Definition
Table A-955 GET /ISAPI/System/Video/outputs/channels/<ID>/capabilities
Method GET
Description Get video output configuration capability.
Query None.
Request None.
Response Succeeded: XML_Cap_VideoOutputChannel
Failed: XML_ResponseStatus
Remarks
The <ID> in the request URI refers to the video output ID.
A.12.311 /ISAPI/System/Video/outputs/PreviewSwitch/capabilities
Get capability of auto-switch configuration during live view.
527
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-956 GET /ISAPI/System/Video/outputs/PreviewSwitch/capabilities
Method GET
Description Get capability of auto-switch configuration during live view.
Query None.
Request None.
Response Succeeded: XML_Cap_PreviewSwitch
Failed: XML_ResponseStatus
A.12.312 /ISAPI/System/Video/outputs/PreviewSwitch/capabilities?
videoOutType=
Get capability of auto-switch configuration during live view by video output.
Request URI Definition
Table A-957 GET /ISAPI/System/Video/outputs/PreviewSwitch/capabilities?videoOutType=
Method GET
Description Get capability of auto-switch configuration during live view by video
output.
Query videoOutType: video output type, string type, it can be the following
values: CVBS, HDMI, VGA, AUXOutput1, AUXOutput2, AUXOutput3,
AUXOutput4, extendHDMI1, extendHDMI2, extendHDMI3,
extendHDMI4, noSameSourceVGA1, noSameSourceVGA2,
noSameSourceVGA3, noSameSourceVGA4, sameSourceVGA,
mainLCD, AUX-VGA, AUX-LCD, and zeroChannel. If there are more
than two outputs are homologous, you can combine these outputs
by "/", e.g., if HDM1 and VGA1 are homologous outputs, the value of
videoOutType equals to HDM1/VGA1.
Request None.
Response Succeeded: XML_PreviewSwitchVideoOutCap
Failed: XML_ResponseStatus
A.12.313 /ISAPI/System/Video/outputs/PreviewSwitch?groupID=&videoOutType=
Operations about auto-switch configuration in live view.
528
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-958 GET /ISAPI/System/Video/outputs/PreviewSwitch?groupID=&videoOutType=
Method GET
Description Get configuration parameters of auto-switch in live view.
Query groupNo: group No., integer type, which is used to group the
windows for configuration, and up to 64 windows can be added to a
group.
videoOutType: video output type, string type, it can be the following
values: CVBS, HDMI, VGA, AUXOutput1, AUXOutput2, AUXOutput3,
AUXOutput4, extendHDMI1, extendHDMI2, extendHDMI3,
extendHDMI4, noSameSourceVGA1, noSameSourceVGA2,
noSameSourceVGA3, noSameSourceVGA4, sameSourceVGA,
mainLCD, AUX-VGA, AUX-LCD, and zeroChannel. If there are more
than two outputs are homologous, you can combine these outputs
by "/", e.g., if HDM1 and VGA1 are homologous outputs, the value of
videoOutType equals to HDM1/VGA1.
Request None.
Response Succeeded: XML_PreviewSwitch
Failed: XML_ResponseStatus
Table A-959 PUT /ISAPI/System/Video/outputs/PreviewSwitch?groupID=&videoOutType=
Method PUT
Description Set parameters for auto-switch in live view.
Query groupNo: group No., integer type, which is used to group the
windows for configuration, and up to 64 windows can be added to a
group.
videoOutType: video output type, string type, it can be the following
values: CVBS, HDMI, VGA, AUXOutput1, AUXOutput2, AUXOutput3,
AUXOutput4, extendHDMI1, extendHDMI2, extendHDMI3,
extendHDMI4, noSameSourceVGA1, noSameSourceVGA2,
noSameSourceVGA3, noSameSourceVGA4, sameSourceVGA,
mainLCD, AUX-VGA, AUX-LCD, and zeroChannel. If there are more
than two outputs are homologous, you can combine these outputs
by "/", e.g., if HDM1 and VGA1 are homologous outputs, the value of
videoOutType equals to HDM1/VGA1.
Request XML_PreviewSwitch
Response XML_ResponseStatus
529
Intelligent Security API (General) Developer Guide
A.12.314 /ISAPI/System/Video/outputs/PreviewSwitch?
groupID=&videoOutType=&previewFrameNo=
Get configuration parameters of auto-switch in live view.
Request URI Definition
Table A-960 GET /ISAPI/System/Video/outputs/PreviewSwitch?
groupID=&videoOutType=&previewFrameNo=
Method GET
Description Get configuration parameters of auto-switch in live view.
Query groupNo: group No., integer type, which is used to group the
windows for configuration, and up to 64 windows can be added to a
group.
videoOutType: video output type, string type, it can be the following
values: CVBS, HDMI, VGA, AUXOutput1, AUXOutput2, AUXOutput3,
AUXOutput4, extendHDMI1, extendHDMI2, extendHDMI3,
extendHDMI4, noSameSourceVGA1, noSameSourceVGA2,
noSameSourceVGA3, noSameSourceVGA4, sameSourceVGA,
mainLCD, AUX-VGA, AUX-LCD, and zeroChannel. If there are more
than two outputs are homologous, you can combine these outputs
by "/", e.g., if HDM1 and VGA1 are homologous outputs, the value of
videoOutType equals to HDM1/VGA1.
(Optional) previewFrameNo: number of live view windows, integer
string type, and it can be the following values: 1, 4, 6, 8, 9, 25, 32, 36,
auto1 (custom window division 1), auto2 (custom window division 2),
auto3 (custom window division 3), and auto4 (custom window
division 4).
Request None.
Response Succeeded: XML_PreviewSwitch
Failed: XML_ResponseStatus
A.12.315 /ISAPI/System/wiresharkToUSB/capabilities?format=json
Get the configuration capability of exporting captured packets to USB flash drive.
530
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-961 GET /ISAPI/System/wiresharkToUSB/capabilities?format=json
Method GET
Description Get the configuration capability of exporting captured packets to USB
flash drive.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_Cap_WiresharkToUSB
Failed: JSON_ResponseStatus
A.12.316 /ISAPI/System/wiresharkToUSB/mode?format=json
Set parameters of exporting captured packets to USB flash drive.
Request URI Definition
Table A-962 PUT /ISAPI/System/wiresharkToUSB/mode?format=json
Method PUT
Description Set parameters of exporting captured packets to USB flash drive.
Query format: determine the format of request or response message.
Request JSON_WiresharkToUSB
Response JSON_ResponseStatus
A.12.317 /ISAPI/System/wiresharkToUSB/status?format=json
Get the status of exporting captured packets to USB flash drive.
Request URI Definition
Table A-963 GET /ISAPI/System/wiresharkToUSB/status?format=json
Method GET
Description Get the status of exporting captured packets to USB flash drive.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_WiresharkToUSBStatus
531
Intelligent Security API (General) Developer Guide
Failed: JSON_ResponseStatus
A.12.318 /ISAPI/System/workingstatus/hdStatus?format=json
Get HDD status.
Request URI Definition
Table A-964 GET /ISAPI/System/workingstatus/hdStatus?format=json
Method GET
Description Get all HDDs' status.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_HDStatus
Failed: JSON_ResponseStatus
Table A-965 POST /ISAPI/System/workingstatus/hdStatus?format=json
Method POST
Description Get a specified HDD's status.
Query format: determine the format of request or response message.
Request JSON_HDCond
Response Succeeded: JSON_HDStatus
Failed: JSON_ResponseStatus
A.12.319 /ISAPI/System/workingstatus/chanStatus?format=json
Get channel status.
Request URI Definition
Table A-966 GET /ISAPI/System/workingstatus/chanStatus?format=json
Method GET
Description Get all channels' status.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_ChanStatus
532
Intelligent Security API (General) Developer Guide
Failed: JSON_ResponseStatus
Table A-967 POST /ISAPI/System/workingstatus/chanStatus?format=json
Method POST
Description Get a specified channel's status.
Query format: determine the format of request or response message.
Request JSON_ChanCond
Response Succeeded: JSON_ChanStatus
Failed: JSON_ResponseStatus
A.12.320 /ISAPI/System/workingstatus/capabilities?format=json
Get capability of getting all statuses of device.
Request URI Definition
Table A-968 GET /ISAPI/System/workingstatus/capabilities?format=json
Method GET
Description Get capability of getting all statuses of device.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_Cap_WorkingStatus
Failed: JSON_ResponseStatus
A.12.321 /ISAPI/System/workingstatus?format=json
Get device working status.
Request URI Definition
Table A-969 GET /ISAPI/System/workingstatus?format=json
Method GET
Description Get device working status.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_WorkingStatus
533
Intelligent Security API (General) Developer Guide
Failed: JSON_ResponseStatus
Remarks
Up to 20 bytes are allowed for a device's working status; up to 100 bytes are allowed for a
channel's status, a HDD's status, and an IO's status; up to 30 bytes are allowed for a two-way audio
channel's status.
A.12.322 /ISAPI/System/workingstatus/IOStatus?format=json
Get device IO status.
Request URI Definition
Table A-970 GET /ISAPI/System/workingstatus/IOStatus?format=json
Method GET
Description Get device IO status.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_IOStatus
Failed: JSON_ResponseStatus
A.12.323 /ISAPI/System/zeroBiasCalibration/channels/<ID>?format=json
Calibrate the accelerometer bias.
Request URI Definition
Table A-971 PUT /ISAPI/System/zeroBiasCalibration/channels/<ID>?format=json
Method PUT
Description Calibrate the accelerometer bias.
Query format: determine the format of request or response message.
Request None.
Response JSON_ResponseStatus
Remarks
The <ID> in the request URI refers to the channel No.
534
Intelligent Security API (General) Developer Guide
A.13 /ISAPI/Thermal
A.13.1 /ISAPI/Thermal/capabilities
Get thermal capability.
Request URI Definition
Table A-972 GET /ISAPI/Thermal/capabilities
Method GET
Description Get the thermal capability.
Query None.
Request None.
Response XML_ThermalCap
A.13.2 /ISAPI/Thermal/temperature/collection/capabilities?format=json
Get the capability of temperature data replenishment.
Request URI Definition
Table A-973 GET /ISAPI/Thermal/temperature/collection/capabilities?format=json
Method GET
Description Get the capability of temperature data replenishment.
Query format: determine the format of request or response message.
Request None.
Response JSON_Temperature_CollectionDescriptionCap
A.13.3 /ISAPI/Thermal/temperature/collection?format=json
Perform the temperature data replenishment.
535
Intelligent Security API (General) Developer Guide
Request URI Definition
Table A-974 GET /ISAPI/Thermal/temperature/collection?format=json
Method POST
Description Perform the temperature data replenishment.
Query format: determine the format of request or response message.
Request JSON_CollectionDescription
Response JSON_CollectionResult
536
Intelligent Security API (General) Developer Guide
Appendix B. Appendixes
B.1 Request and Response Messages
B.1.1 JSON Messages
JSON_Adaption
Adaption message in JSON format
{
"Adaption": {
"enable": ,
/*required, boolean type, whether to enable network self-adaptive function: true-no, false-yes; this function is bound
with IntraRefresh encoding strategy*/
"policy": ,
/*required,self-adaptive strategy, 0-self-adaptive (adjust the resolution and bit rate, the resolution value should be
smaller than or equal to the configured value, but the frame rate is constant), 1-resolution in priority (adjust bit rate,
resolution and frame rate are constant), 2-error correction and retransmission (resolution and frame rate are
constant)*/
"percentage":
/*this node is required when policy is "2", error correction percentage, unit: %, which is between 0 and 100; lager
percentage represents more corrected data, more higher requirement for bandwidth, and better effect*/
}
}
JSON_AdaptionCap
AdaptionCap message in JSON format
{
"AdaptionCap": {
"enable": "true,false",
/*required, boolean type, whether to enable network self-adaptive function: true-no, false-yes; this function is bound
with IntraRefresh encoding strategy*/
"policy": {
/*required,self-adaptive strategy, 0-self-adaptive (adjust the resolution and bit rate, the resolution value should be
smaller than or equal to the configured value, but the frame rate is constant), 1-resolution in priority (adjust bit rate,
resolution and frame rate are constant), 2-error correction and retransmission (resolution and frame rate are
constant)*/
"@opt": "0,1,2"
},
"percentage": {
/*this node is required when policy is "2", error correction percentage, unit: %, which is between 0 and 100; lager
percentage represents more corrected data, more higher requirement for bandwidth, and better effect*/
537
Intelligent Security API (General) Developer Guide
"@min": 0,
"@max": 100,
}
}
}
JSON_AlgorithmsInfo
AlgorithmsInfo message in JSON format
{
"AlgorithmsInfo":[{
"type":"",
/*required, string, algorithm library type, e.g, "face"*/
"name":"",
/*required, string, algorithm library name which is used to distinguish different algorithms, the maximum size is 256
bytes*/
"versionInfo":{
/*required, algorithm library version information*/
"major": ,
/*required, integer, major version of the algorithm library*/
"minor": ,
/*required, integer, minor version of the algorithm library*/
"revision":
/*required, integer, revision version of the algorithm library*/
},
"platform":"",
/*required, string, platform where the algorithm library runs*/
"os":"",
/*required, string, operating system adaptive to the algorithm library*/
"accuracy":"",
/*optional, string, computational accuracy of the algorithm library*/
"encryption":"",
/*required, string, encryption method*/
"buildTime":"",
/*required, string, compiling date in the format "buildyyyymmdd"*/
"versionProperties":""
/*required, string, version attribute: "alpha", "beta", "release", "custom"*/
}]
}
JSON_AlgorithmsInfoCap
AlgorithmsInfoCap capability message in JSON format
{
"AlgorithmsInfoCap":{
"type":{
/*required, string, algorithm library type, e.g., "face"*/
538
Intelligent Security API (General) Developer Guide
"@opt":["face"]
},
"maxSize": ,
/*required, integer, supported number of algorithm libraries*/
"name":{
/*required, string, algorithm library name which is used to distinguish different algorithms, the maximum size is 256
bytes*/
"@min": ,
"@max":
},
"versionInfo":{
/*required, algorithm library version information*/
"major":{
/*required, integer, major version of the algorithm library*/
"@min": ,
"@max":
},
"minor":{
/*required, integer, minor version of the algorithm library*/
"@min": ,
"@max":
},
"revision":{
/*required, integer, revision version of the algorithm library*/
"@min": ,
"@max":
}
},
"platform":{
/*required, string, platform where the algorithm library runs*/
"@min": ,
"@max":
},
"accuracy":{
/*optional, string, computational accuracy of the algorithm library*/
"@min": ,
"@max":
},
"os":{
/*required, string, operating system adaptive to the algorithm library*/
"@min": ,
"@max":
},
"encryption":{
/*required, string, encryption method*/
"@min": ,
"@max":
},
"buildTime":{
/*required, string, compiling date in the format "buildyyyymmdd"*/
"@min": ,
"@max":
539
Intelligent Security API (General) Developer Guide
},
"versionProperties":{
/*required, string, version attribute: "alpha", "beta", "release", "custom"*/
"@min": ,
"@max":
}
}
}
JSON_AudioAlarm
AudioAlarm message in JSON format
{
"AudioAlarm":{
"audioID": ,
/*required, alarm sound types, 1-siren, 2-"Warning, this is a restricted area", 3-"Waring, this is a restricted area,
please keep away", 4-"Warning, this is a no-parking zone", 5-"Warning, this is a no-parking zone, please keep away",
6-"Attention please. The area is under surveillance", 7-"Welcome,Please notice that the area is under surveillance",
8-"Welcome", 9-"Danger! Please keep away", 10-siren + "Danger, please keep away", 11-Audio Warning, 12-Beep
Sound, 13-custom alarm sound 1, 14-custom alarm sound 2, 15-custom alarm sound 3*/
"audioVolume": ,
/*required, int, volume, which is between 1 and 100*/
"alarmTimes": ,
/*required, int, times of alarm, which is between 1 and 50*/
"TimeRangeList":[{
/*optional, alarm output schedule list*/
"week": ,
"TimeRange":[{
"id": ,
/*required, int, ID of time period for each day*/
"beginTime":"",
/*required, string, start time in ISO8601 format*/
"endTime":""
/*required, string, end time in ISO8601 format*/
}]
}]
"audioClass": "",
/*optional, string, read-only, sound type, "alertAudio"-alarm sound (get the supported alarm sound types from the
node AlertAudioTypeListCap), "promptAudio"-prompt sound, "customAudio"-custom sound (configure it according to
customAudioID); if this node is not returned, you should get the supported sound types from the node
audioTypeListCap*/
"alertAudioID": ,
/*dependent, int, read-only, alarm sound ID, this node is valid only when audioClass is alertAudio, 1-"Siren",
2-"Warning, this is a restricted area", 3-"Waring,this is a restricted area,please keep away", 4-"Warning, this is a no-
parking zone", 5-"Warning,this is a no-parking zone,please keep away", 6-"Attention please. The area is under
surveillance", 7-"Welcome,Please notice that the area is under surveillance", 8-"Welcome", 9-"Danger! Please keep
away", 10-"(Siren)&Danger,please keep away, 11-Audio Warning"*/
"customAudioID": ,
/*dependent, int, read-only, custom sound ID, this node will be returned when audioClass is "customAudio". The
alarm sound file can only be uploaded via Guarding Vision in specified format. If there is no value returned in this
540
Intelligent Security API (General) Developer Guide
node, the custom sound (customAudio) will not be returned,either*/
"alarmType": "",
/*optional, string, alarm type: "behavior"-behavior analysis, "thermometry"-thermometry, "dynamicFire"-fire
detection, "smokingMode"-smoke detection, "noMaskDetection"-no wearing mask detection*/
}
}
Remarks
1. The user can configure the sound file via the node audioID only, and when the audioID is
specified, its value will be automatically synchronized to the nodes of audioClass, alertAudioID,
and customAudioID, which are read-only.
2. When the value of audioID is from 1 to 11, the corresponding value of audioClass is
"alertAudio", and the value of alertAudioID is also from 1 to 11; when the value of audioID is
12, the corresponding value of audioClass is "promptAudio"; when the value of audioID is from
13 to 15, the corresponding value of audioClass is "customAudio", and the value of
customAudioID is from 1 to 3.
JSON_AudioAlarmCap
JSON message about audible warning configuration capability
{
"AudioAlarmCap":{
"audioTypeListCap":[{
/*required, alarm sound types, 1-siren, 2-"Warning, this is a restricted area", 3-"Waring, this is a restricted area,
please keep away", 4-"Warning, this is a no-parking zone", 5-"Warning, this is a no-parking zone, please keep away",
6-"Attention please. The area is under surveillance", 7-"Welcome,Please notice that the area is under surveillance",
8-"Welcome", 9-"Danger! Please keep away", 10-siren + "Danger, please keep away", 11-Audio Warning, 12-Beep
Sound, 13-custom alarm sound 1, 14-custom alarm sound 2, 15-custom alarm sound 3, 16-AI custom audio file*/
"audioID": 1,
"audioDescription":"siren"
},
{
"audioID": 2,
"audioDescription":"Warning, this is a restricted area"
},
{
"audioID": 3,
"audioDescription":"Waring, this is a restricted area,please keep away"
}],
"audioVolume":{
/*required, int, volume, which is between 1 ad 100*/
"@min": 1,
"@max": 100,
"@def": 100
},
"alarmTimes":{
/*required, int, times of audible warning, which is between 1 and 50*/
"@min": 1,
541
Intelligent Security API (General) Developer Guide
"@max": 50,
"@def": 5
},
"TimeRangeCap":{
/*optional, audible warning schedule capability*/
"week":{
/*required, int, days of the week: 1-Monday, 2-Tuesday, 3-Wednesday, 4-Thursday, 5-Friday,6-Saturday, 7-Sunday*/
"@opt":"1, 2, 3, 4, 5, 6, 7"
},
"id":{
/*required, int, ID of time period for each day*/
"@maxSize": 8
},
"beginTime":{
/*required, string, start time in ISO8601 format*/
"@min":"00:00",
"@max":"24:00"
},
"endTime":{
/*required, string, end time in ISO8601 format*/
"@min":"00:00",
"@max":"24:00"
}
}
"audioClass": {
/*optional, string, read-only, sound type, "alertAudio"-alarm sound (get the supported alarm sound types from the
node AlertAudioTypeListCap), "promptAudio"-prompt sound, "customAudio"-custom sound (configure it according to
customAudioID); if this node is not returned, you should get the supported sound types from the node
audioTypeListCap*/
"@opt": "alertAudio, promptAudio, customAudio",
"@def": "alertAudio"
},
"AlertAudioTypeListCap": [{
/*dependent, read-only, list of supported alarm sound types, this node will be returned when audioClass is
"alertAudio": 1-"Siren", 2-"Warning, this is a restricted area", 3-"Waring,this is a restricted area,please keep away",
4-"Warning, this is a no-parking zone", 5-"Warning,this is a no-parking zone,please keep away", 6-"Attention please.
The area is under surveillance", 7-"Welcome,Please notice that the area is under surveillance", 8-"Welcome",
9-"Danger! Please keep away", 10-"(Siren)&Danger,please keep away, 11-Audio Warning"*/
"alertAudioID": 1,
"alertAudioDescription": "Siren"
}, {
"alertAudioID": 2,
"alertAudioDescription": "Warning, this is a restricted area"
}, {
"alertAudioID": 3,
"alertAudioDescription": "Waring,this is a restricted area,please keep away"
}
],
"customAudioID": {
/*dependent, int, read-only, custom sound ID, this node will be returned when audioClass is "customAudio". The
alarm sound file can only be uploaded via Guarding Vision in specified format. If there is no value returned in this
node, the custom sound (customAudio) will not be returned,either*/
542
Intelligent Security API (General) Developer Guide
"@min": 1,
"@max": 3,
"@def": 1
},
"alarmType":{
/*optional, string, alarm type: "behavior"-behavior analysis, "thermometry"-thermometry, "dynamicFire"-fire
detection, "smokingMode"-smoke detection*/
"@opt":"behavior,thermometry,dynamicFire,smokingMode",
"@def":"thermometry"
}
"AlarmBindAudioList":[{
/*optional, alarm type and the list of audio related to alarm type*/
"alarmType":"behavior",
/*optional, string, alarm type: "behavior"-behavior analysis, "thermometry"-temperature measurement,
"dynamicFire"-fire detection, "smokingMode"-smoke detection, "noMaskDetection"-no wearing mask detection*/
"audioID":{
/*optional, string, the audible warning type ID corresponding to alarm type, behavior analysis corresponds to 1-12,
thermometry corresponds to 13,fire detection corresponds to 14,smoke detection corresponds to 15*/
"@opt":"1,2,3,4,5,6,7,8,9,10,11,12"
}
}]
"isSupportCustomAudio": true,
/*optional, boolean, whether the device supports uploading, downloading, and editing custom alarm sound file*/
"isSupportAudioTest": true,
/*optional, boolean, whether the device supports sound file test*/
"customAudioName": {
/*optional, string, name of custom sound file, the maximum size is 24 bytes*/
"@min": 1,
"@max": 24
}
"isSupportCustomAudioFormatInfo":true,
/*optional, boolean, whether the device supports getting the custom audio file format*/
"isSupportCustomAudioURL":true,
/*optional, boolean, whether the device supports importing the custom audio file in URL format; if this node is not
returned, the device dose not support the function*/
"isSupportCustomAudioFiles":true
/*optional, boolean, whether the device supports importing the custom audio files in a batch; if this node is not
returned, the device dose not support the function*/
}
}
Remarks
1. The user can configure the sound file via the node audioID only, and when the audioID is
specified, its value will be automatically synchronized to the nodes of audioClass, alertAudioID,
and customAudioID, which are read-only.
2. When the value of audioID is from 1 to 11, the corresponding value of audioClass is
"alertAudio", and the value of alertAudioID is also from 1 to 11; when the value of audioID is
12, the corresponding value of audioClass is "promptAudio"; when the value of audioID is from
13 to 15, the corresponding value of audioClass is "customAudio", and the value of
customAudioID is from 1 to 3.
543
Intelligent Security API (General) Developer Guide
JSON_Authentication
JSON message about parameters of serial authentication service
{
"Authentication":{
"enabled":,
/*required, boolean, whether to enable serial authentication service*/
"serviceClosurePeriod":
/*dependent, integer, service life,unit: day; it is required when enabled is "false"*/
}
}
JSON_AuthenticationCap
JSON message about serial authentication service
{
"AuthenticationCap":{
"enabled":{
/*required, boolean, whether to enable serial authentication service*/
"@opt":[
true,
false
]
},
"serviceClosurePeriod":{
/*dependent, integer, service life,unit: day; it is required when enabled is "false"*/
"@min":1,
"@max":30,
"@def":7
}
}
}
JSON_AutoEagleFocusing
AutoEagleFocusing message in JSON format
{
"AutoEagleFocusing": {
/*required, auto calibration of rapid focus*/
"EagleFocusingRegion": [{
/*optional, string, rapid focus region*/
"sid": "",
/*optional, string, scene ID*/
"spotNum": ,
/*optional, integer, the number of calibration points*/
544
Intelligent Security API (General) Developer Guide
"type": "",
/*optional, string, region type now only supports "line"*/
"Region": [{
/*optional, region list*/
"x": ,
"y":
}],
"AbsoluteHigh": {
/*optional, PTZ position*/
"elevation": ,
/*optional, xs:integer, tilt angle, range: [-900,2700]*/
"azimuth": ,
/*optional, xs:integer, azimuth, range: [0,3600]*/
"absoluteZoom": 33
/*optional, xs:integer, zoom, range: [1,1000]*/
}
}]
}
}
JSON_AutoEagleFocusingCap
AutoEagleFocusingCap message in JSON format
{
"AutoEagleFocusingCap": {
/*required, auto calibration capability of rapid focus*/
"EagleFocusingRegion": {
"sid": {
/*optional, string, scene ID*/
"@min": 1,
"@max": 2
},
"spotNum": {
/*optional, integer, the number of calibration points*/
"@min": 1,
"@max": 64
},
"type": {
/*optional, string, region type now only supports "line"*/
"@opt": "line"
},
"RegionCap": {
"minSize": 3,
/*required, integer, the minimum number of region edges*/
"maxSize": 10,
/*required, integer, the maximum number of region edges*/
"x": {
/*required, float, X-coordinate, value range: 0.000 to 1*/
"@min": 0.000,
"@max": 1.000,
545
Intelligent Security API (General) Developer Guide
"#text": 0.120
},
"y": {
/*required, float, Y-coordinate, value range: 0.000 to 1*/
"@min": 0.000,
"@max": 1.000,
"#text": 0.120
}
},
"AbsoluteHighCap": {
"elevation": {
/*optional, xs:integer, tilt angle, range: [-900,2700]*/
"@min": -900,
"@max": 2700
},
"azimuth": {
/*optional, xs:integer, azimuth, range: [0,3600]*/
"@min": 0,
"@max": 3600
},
"absoluteZoom": {
/*optional, xs:integer, zoom, range: [1,1000]*/
"@min": 1,
"@max": 1000
}
}
}
}
}
JSON_AutoGotoCfg
AutoGotoCfg message in JSON format
{
"AutoGotoCfg":{
"enable": ,
/*optional, boolean type, whether to enable*/
"autoRecoveryTime":
/*optional, integer type, automatically restored time after the PTZ control is disabled, unit: second*/
}
}
JSON_AutoGotoCfgCap
AutoGotoCfgCap message in JSON format
{
"AutoGotoCfgCap":{
546
Intelligent Security API (General) Developer Guide
"enable":"true,false",
/*optional, whether to enable*/
"autoRecoveryTime":{
/*optional, automatically restored time after the PTZ control is disabled, unit: second*/
"@min": ,
"@max":
}
}
}
JSON_AutoMaintenance
AutoMaintenance message in JSON format
{
"AutoMaintenance":{
"enabled": true,
/*required, boolean, enable or not*/
"dayOfWeek": "",
/*required, integer, day of the week, ranges from 1 to 7, 1-Monday, 2-Tuesday, and so on*/
"rebootTime": "",
/*required, reboot time, corrects to minute, it is 0 by default, ISO8601 format, string*/
}
}
JSON_AutoMaintenanceCap
AutoMaintenanceCap message in JSON format
{
"AutoMaintenanceCap":{
"enabled": "true,false",
/*required, boolean, enable or not*/
"dayOfWeek":{
/*required, integer, day of the week, ranges from 1 to 7, 1-Monday, 2-Tuesday, and so on*/
"@min": 1,
"@max": 7,
"#text": 1
},
}
}
JSON_AutoSwitch
AutoSwitch message in JSON format
547
Intelligent Security API (General) Developer Guide
{
"AutoSwitch":{
"enabled":true,
/*required, boolean, whether to enable power on or off*/
"openTime":"10:00:00",
/*required, string, power on time, which is accurate to minute with the time format of ISO8601*/
"closeTime":"10:00:00"
}
}
JSON_AutoSwitchCap
AutoSwitchCap message in JSON format
{
"AutoSwitchCap":{
"enabled":"true,false"
/*required, boolean, whether to enable auto power on or off*/
}
}
JSON_Backup
JSON message about hot spare device information
{
"Backup":{
/*hot spare device information*/
"addressingFormatType": "ipaddress",
/*required, string, hot spare address type: "ipaddress" (IP address), "hostname"-domain name; the maximum length
is 32 bytes*/
"ipAddress": "ipv4",
/*dependent, string, IP address type: "ipv4", "ipv6"; the maximum length is 32 bytes. It is valid when the value of
addressingFormatType is "ipaddres"*/
"ipv6Address": "",
/*dependent, string, IPv6 address; the maximum length is 128 bytes. It is valid when the value of
addressingFormatType is "ipaddres"*/
"portNo": 10001,
/*optional, integer32, port No., default value: 10001*/
"hostName":"",
/*dependent, string, domain name; the maximum length is 128 bytes. It is valid when the value of
addressingFormatType is "hostname"*/
"admin":"",
/*required, write-only, string, user name; the maximum length is 16 bytes; the sensitive information is encrypted*/
"password":""
/*required, write-only, string, user password; the maximum length is 16 bytes; the sensitive information is encrypted*/
}
}
548
Intelligent Security API (General) Developer Guide
JSON_BackupID
JSON message about added hot spare device information
{
"backupID":
/*required, int, hot spare device ID, which is managed by the device; value range: [1,32]*/
}
JSON_BackupList
JSON message about hot spare device list
{
"Backup":[{
/*hot spare device information*/
"id":1,
/*required, int, hot spare device ID*/
"addressingFormatType": "ipaddress",
/*required, string, hot spare address type: "ipaddress" (IP address), "hostname"-domain name; the maximum length
is 32 bytes*/
"ipAddress": "ipv4",
/*dependent, string, IP address of hot spare device: "ipv4", "ipv6"; the maximum length is 32 bytes; it is valid when
the value of addressingFormatType is "ipaddres"*/
"ipv6Address": "",
/*dependent, string, IPv6 address of hot spare device; the maximum length is 128 bytes; it is valid when the value of
addressingFormatType is "ipaddres"*/
"portNo": 7200,
/*optional, integer32, port No., default value: 10001*/
"hostName":"",
/*dependent, string, domain name; the maximum length is 128 bytes; it is valid when the value of
addressingFormatType is "hostname"*/
}]
}
JSON_CalibrationStatus
CalibrationStatus message in JSON format
{
"CalibrationStatus":{
/*required, string type, installation angle calibration status: "Calibrated"-calibrated, "Uncalibrated"-uncalibrated*/
}
}
549
Intelligent Security API (General) Developer Guide
JSON_Cap_CalibrationStatus
CalibrationStatus message in JSON format
{
"CalibrationStatus":{
/*required, string type, installation angle calibration status: "Calibrated"-calibrated, "Uncalibrated"-uncalibrated*/
"@opt":"Calibrated,Uncalibrated"
}
}
JSON_Cap_CaputreDescription
JSON message about capability of capturing picture in URL format
{
"CaputreDescription":{
"imageType":{
/*required, string, picture type: "JEPG"*/
"@opt":["JPEG"]
},
"URLType":{
/*required, string, URL type: "cloudURL"*/
"@opt":["cloudURL"]
}
}
}
JSON_Cap_CertificateSelect
CertificateSelect capability message in JSON format
{
"CertificateSelect":{
"Function":[{
/*required, function list*/
"functionName":"HTTPS",
/*required, function name, it should be set to one of the following values:
"HTTPS","WebSocketS","SDK_OVER_TLS","SRTP","securityLog","ieee802.1x"*/
"certificateType":["client", "server", "CA"]
/*required, certificate type required by this function, it should be set to one or multiple values of the following
options: "client","server","CA"*/
}],
"clientCertificate":{
/*optional, optional client certificate types*/
"@opt":["name1"]
},
"serverCertificate":{
550
Intelligent Security API (General) Developer Guide
/*optional, optional server certificate types*/
"@opt":["name2"]
},
"CACertificate":{
/*optional, optional CA certificate types*/
"@opt":["name3"]
},
"SRTPSecurityAlgorithm":{
/*optional, string, optional encryption algorithms*/
"@opt":["AES128", "AES256"]
}
}
}
JSON_Cap_CleanUpFileList
Message about getting the capability of deleting saved files in a batch in JSON format
{
"CleanUpFileList": {
"@size": ,
/*required, int, the maximum number of files that can be deleted in a single time*/
"trackId":
/*required, boolean, No. of supported files, read-only*/
}
}
JSON_Cap_ClearingSpaceConfig
JSON message about configuration capability of HDD clearing
{
"ClearingSpaceConfig":{
/*when the free space of HDD reaches the configured value of insufficientSpace, and if the value of
clearingOriginalData is true, the configured HDD space size will be cleared*/
"insufficientSpace":{
/*required, int, HDD free space, which is used as the threshold to start clearing*/
"@min":0,
/*minimum value of the range*/
"@max":100
/*maximum value of the range*/
},
"clearingOriginalData":{
/*required, boolean, whether to enable clearing the original data*/
"opt":"true,false"
},
"clearingSpace":{
/*required, int, space size to clear*/
551
Intelligent Security API (General) Developer Guide
"@min":0,
/*minimum value of the range*/
"@max":100
/*maximum value of the range*/
}
}
}
JSON_Cap_CommuMode
CommuMode capability message in JSON format
{
"CommuMode":{
"mode":{
/*required, string type, security mode level of the private protocol: "compatibilityMode"-compatibility mode,
"safeMode"-security mode*/
"@opt":"compatibilityMode,safeMode"
}
}
}
JSON_Cap_ExportInfo
ExportInfo capability message in JSON format
{
"ExportInfo":{
"mediaType":{
/*required, string, exported data type: "video", "audio", "metadata", "text", "mixed", "other". It should be the same
as the search type. For pictures, this node should be set to "metadata"*/
"@opt":["video", "audio", "metadata", "text", "mixed", "other"]
},
"playbackURIList":{
/*required, array, file path*/
"@size":1
/*supported list size to be exported*/
}
}
}
JSON_Cap_IntelliManagement
JSON message about capability of intelligent management
{
"requestURL":"",
552
Intelligent Security API (General) Developer Guide
"statusCode": ,
"statusString":"",
"subStatusCode":"",
"errorCode": ,
"errorMsg":"",
/*see the description of this node and the above nodes in the message of JSON_ResponseStatus*/
"isSuportTask":true,
/*optional, boolean type, whether it supports task: "true"-yes, "false"-no*/
"isSupportCtrlCenter":true,
/*optional, boolean type, whether it supports control center: "true"-yes, "false"-no*/
"isSuportIntelligentSearch":true,
/*optional, boolean type, whether it supports intelligent search: "true"-yes, "false"-no*/
"isSuportExecuteControl":true,
/*optional, boolean type, whether it supports arming: "true"-yes, "false"-no*/
"isSuportDataStatistics":true,
/*optional, boolean type, whether it supports statistics: "true"-yes, "false"-no*/
"isSupportIntelligentStorage":true,
/*optional, boolean type, whether it supports intelligent storage: "true"-yes, "false"-no*/
"isSupportServer":true,
/*optional, boolean type, whether it supports service configuration: "true"-yes, "false"-no*/
"isSuportAlgorithmModel":true,
/*optional, boolean type, whether it supports algorithm model configuration: "true"-yes, "false"-no*/
"isSupportCluster":true,
/*optional, boolean type, whether it supports cluster: "true"-yes, "false"-no*/
"isSupportSearchResultDisplay":true,
/*optional, boolean type, whether it supports display configuration: "true"-yes, "false"-no*/
"isSuportTranscodeAnalysisUnit":true,
/*optional, boolean type, whether it supports transcoding analysis unit: "true"-yes, "false"-no*/
"isSuportFactoryReset":true,
/*optional, boolean type, whether it supports restoring to factory settings: "true"-yes, "false"-no*/
"isSupportUPS":true,
/*optional, boolean type, whether it supports UPS: "true"-yes, "false"-no*/
"isSuportCity":true,
/*optional, boolean type, whether it supports city: "true"-yes, "false"-no*/
"isSuportClusterEnableStatus":true,
/*optional, boolean type, whether it supports enabling cluster status: "true"-yes, "false"-no*/
"isSupportSensitivity":true,
/*optional, boolean type, whether it supports sensitivity configuration: "true"-yes, "false"-no*/
"isSupportConfidence":true,
/*optional, boolean type, whether it supports confidence configuration: "true"-yes, "false"-no*/
"isSuportEventSearch":true,
/*optional, boolean, whether it supports event search: "true"-yes, "false"-no*/
"isSupportAudioFileUpload":true,
/*optional, boolean type, whether it supports importing audio file: "true"-yes, "false"-no*/
"isSupportIntelligentMode":true,
/*optional, boolean type, whether it supports intelligent mode configuration: "true"-yes, "false"-no*/
"saveCapturedDataMaxDays":90,
/*optional, int*, the captured pictures can be saved in local HDD up to 90 days by default, when the number of days
reaches the limit, the records will be overwritten by day.*/
"isSupportAlgorithmTraining": true,
/*optional, boolean, whether it supports algorithm training, "true"-yes, "false"-no*/
"isSupportDataResync":true,
553
Intelligent Security API (General) Developer Guide
/*optional, boolean, whether it supports data resynchronization: "true"-yes, "false"-no*/
"isSupportCertificateImport":true,
/*optional, boolean, whether it supports importing software license certificate: "true"-yes, "false"-no*/
"isSupportFingerprint":true,
/*optional, boolean, whether it supports exporting hardware fingerprint: "true"-yes, "false"-no*/
"isSupportAuthorization":true,
/*optional, boolean, whether it supports authorization configuration of the algorithm center: "true"-yes, "false"-no*/
"isSupportLicensingDongle":true,
/*optional, boolean, whether it supports dongle: "true"-yes, "false"-no*/
"isSupportAlgorithmUpdate":true,
/*optional, boolean, whether it supports updating algorithm: "true"-yes, "false"-no*/
"isSupportModellingMode":true,
/*optional, boolean, whether it supports modeling mode configuration*/
"isSupportListLoading":true,
/*optional, boolean, whether it supports list library loading configuration*/
"isSupportTasksStatistics": true,
/*optional, boolean, whether it supports analysis task statistics*/
"isSupportTargetsStatistics": true,
/*optional, boolean, whether it supports analysis target statistics*/
"isSupportAuthAddress":true,
/*optional, boolean, whether it supports authorizing address*/
"isSupportCertificateStatus": true,
/*optional, boolean, whether it supports getting status of software authorization certificate*/
"certificateImportProductID": 555,
/*optional, int, product ID of software authorization, corresponding URI: /ISAPI/SDT/Management/certificateImport/
<productID>?format=json and /ISAPI/SDT/Management/fingerprint/<productID>?format=json*/
"algorithmAuthProductID": 556,
/*optional, int, product ID of algorithm authorization*/
"isSupportAnalysisResult":true,
/*optional, boolean, whether it supports searching for and counting the number of behavior analysis events: "true"-
yes, "false"-no*/
"isShowCenterComputing":true,
/*optional, boolean, whether to display the configuration interface of algorithm resources: "true"-yes, "false"-no. The
configuration interface of algorithm resources will be displayed only when this field is "true" in the single smart
mode*/
"isSupportVehicleRegion": true,
/*optional, boolean, whether it supports vehicle region configuration*/
"isSupportStorageParam":true,
/*optional, boolean, whether it supports storage parameters configuration*/
"isSupportFingerprintByName": true,
/*optional, boolean, whether it supports exporting hardware fingerprint*/
"isSupportAnalysisResultPerimeter": true,
/*optional, boolean, whether it supports perimeter protection (including line crossing detection, intrusion detection,
region entrance detection, and region exiting detection); if this node is not returned, it indicates that the events are
not classified as perimeter protection and behavior analysis*/
"isSupportGuardTask":true,
/*optional, boolean, whether it supports camera arming tasks. This node is read-only*/
"isSupportTrajectory": ,
/*optional, boolean, whether it supports person pattern function, related URI: /ISAPI/SDT/Management/trajectory/
capabilities?format=json*/
"isSupportMap": ,
/*optional, boolean, whether it supports e-map function, related URI: /ISAPI/SDT/Management/map/capabilities?
554
Intelligent Security API (General) Developer Guide
format=json*/
"isSupportAlgTrainResourceInfo": ,
/*optional, boolean, whether it supports getting the source information of the algorithm training platform, related
URI: /ISAPI/SDT/algorithmTraining/ResourceInfo?format=json*/
"isSupportAlgTrainAuthInfo": ,
/*optional, boolean, whether it supports getting the authorization information of the algorithm training platform,
related URI: /ISAPI/SDT/algorithmTraining/SoftLock/AuthInfo?format=json*/
"isSupportAlgTrainNodeList": ,
/*optional, boolean, whether it supports getting the node information of the algorithm training platform, related
URI: /ISAPI/SDT/algorithmTraining/NodeList?format=json*/
"isSupportHumanSelectStrategy":
/*optional, boolean, whether it supports configuring the strategy of selecting the human body analysis target*/
}
See Also
JSON_ResponseStatus
JSON_Cap_PictureServerInformation
PictureServerInformation capability message in JSON format
{
"PictureServerInformation":{
"pictureServerType":{
/*required, string type, picture storage server type: "tomact", "VRB", "cloudStorage"-cloud storage, "KMS"*/
"@opt":"tomact,VRB,cloudStorage,KMS",
"#text":""
},
"addressingFormatType":{
/*required, string type, format type of the picture storage server address: "ipaddress"-IP address (default),
"hostname"-host name*/
"@opt":"ipaddress,hostname",
"#text":""
},
"hostName":{
/*string type, domain name of the picture storage server, the string length is between 0 and 64. This field is valid
when addressingFormatType is "hostname"*/
"@min":0,
"@max":64,
"#text":""
},
"ipv4Address":{
/*string type, IPv4 address of the picture storage server, the string length is between 0 and 64. This field is valid when
addressingFormatType is "ipaddress"*/
"@min":0,
"@max":64,
"#text":""
},
"ipv6Address":{
/*string type, IPv6 address of the picture storage server, the string length is between 0 and 128. This field is valid
555
Intelligent Security API (General) Developer Guide
when addressingFormatType is "ipaddress"*/
"@min":0,
"@max":128,
"#text":""
},
"portNo":{
/*required, integer type, port No. of the picture storage server, which is between 1024 and 65535*/
"@min":1024,
"@max":65535,
"#text":
},
"underlyingProtocol":{
/*optional, string, bottom-level protocol of the picture storage server: "HTTP", "HTTPS". This field is valid when
pictureServerType contains "cloudStorage"*/
"@opt":["http","https"]
},
"cloudStorage":{
/*parameters of the clould storage server, which is valid when pictureServerType is "cloudStorage"*/
"cloudManageHttpPort":{
/*required, integer type, HTTP port No. for central management of the cloud storage server, which is between 1024
and 65535*/
"@min":1024,
"@max":65535,
"#text":
},
"cloudTransDataPort":{
/*required, integer type, data transmission port No. of the cloud storage server, which is between 1024 and 65535*/
"@min":1024,
"@max":65535,
"#text":
},
"cloudCmdPort":{
/*required, integer type, signaling port No. of the cloud storage server, which is between 1024 and 65535*/
"@min":1024,
"@max":65535,
"#text":
},
"cloudHeartBeatPort":{
/*required, integer type, heartbeat port No. of the cloud storage server, which is between 1024 and 65535*/
"@min":1024,
"@max":65535,
"#text":
},
"cloudStorageHttpPort":{
/*required, integer type, HTTP port No. of the cloud storage server, which is between 1024 and 65535*/
"@min":1024,
"@max":65535,
"#text":
},
"cloudUsername":{
/*required, string type, user name of the cloud storage server, the string length is between 0 and 32*/
"@min":0,
556
Intelligent Security API (General) Developer Guide
"@max":32,
"#text":""
},
"cloudPassword":{
/*required, string type, password of the cloud storage server, the string length is between 0 and 32*/
"@min":0,
"@max":32,
"#text":""
},
"cloudPoolId":{
/*required, integer type, cloud storage pool ID, which is between 1 and 4294967295. If this field is not configured by
the upper-level, this field will be set to 1 by default*/
"@min":1,
"@max":4294967295,
"#text":
},
"cloudPoolIdEx":{
/*optional, string, cloud storage pool ID, this node is valid when cloud storage pool ID of type string is supported*/
"@min":0,
"@max":0,
"#text":""
},
"clouldProtocolVersion":{
/*required, string type, protocol version of the cloud storage server, the string length is between 0 and 32*/
"@min":0,
"@max":32,
"#text":""
},
"clouldAccessKey":{
/*string type, cloud storage server access_key, the string length is between 0 and 64. This field is valid when
clouldProtocolVersion is "V2.0"*/
"@min":0,
"@max":64
},
"clouldSecretKey":{
/*string type, cloud storage server secret_key, the string length is between 0 and 64. This field is valid when
clouldProtocolVersion is "V2.0"*/
"@min":0,
"@max":64
}
}
}
}
JSON_Cap_POE
POE capability message in JSON format
{
"POE": {
"ipVersion": {
557
Intelligent Security API (General) Developer Guide
/*optional, supported IP address type, string type*/
"@opt": "ipV4,ipV6",
"#text": "ipV4"
}
}
}
JSON_Cap_RemarkList
JSON message about capability of adding remarks for videos by video ID
{
"RemarkList": {
"@size": 100,
/*maximum number of remarks can be added for once, the default value is 100*/
"trackId": ,
/*whether it supports file No.*/
"remarks": ,
/*whether it supports adding remarks for file*/
"recordName":{
/*optional, string, file name of video, audio, or picture*/
"@min":1,
"@max":100
},
"recorderCode":{
/*optional, string, ID of device that collects data, which should be encrypted*/
"@min":1,
"@max":100
},
"policeCode":{
/*optional, string, ID of police that collects the data, which should be encrypted*/
"@min":1,
"@max":100
}
}
}
JSON_Cap_ReportCenterCfg
ReportCenterCfg capability message in JSON format
{
"ReportCenterCfg":{
"CenterID":{
/*center group No.*/
"@min": ,
"@max":
},
"enable":"true,false",
558
Intelligent Security API (General) Developer Guide
/*optional, boolean type, whether to enable uploading report*/
"ChanAlarmMode":{
/*alarm channel of the center group*/
"maxSize":1,
"id":{
/*optional, integer type, channel ID: 1-main channel, 2-backup channel 1, 3-backup channel 2, 4-backup channel 3*/
"@min":1,
"@max":2
},
"chanAlarmMode":{
/*optional, string type, alarm channel mode: "T1"-T1 channel, "T2"-T2 channel, "N1"-N1 channel, "N2"-N2 channel,
"G1"-G1 channel, "G2"-G2 channel, "N3"-N3 channel, "N4"-N4 channel*/
"@opt":"T1,T2,N1,N2,G1,G2,N3,N4"
}
}
}
}
JSON_Cap_SSD
JSON message about SSD management capability
{
"SSD":{
"isSupportSSDUpgrade":true
/*optional, boolean, whether the device supports SSD firmware upgrade (related URI: /ISAPI/ContentMgmt/
storage/ssd/<ID>/upgrade?format=json)*/
}
}
JSON_Cap_TimeSearchCond
Capability message about searching for recording start and end time in JSON format
{
"TimeSearchCond": {
"@size": 1024,
/*the maximum number of search conditions that can be set*/
"channelID": {
/*required, int, channel No.*/
"@min": 1,
"@max": 256
/*value range of the channel No.*/
},
"streamType": {
/*optional, string, stream type, "main,sub,adaptive"*/
"@opt": [
"main",
"sub",
559
Intelligent Security API (General) Developer Guide
"adaptive"
]
}
},
"TimeSearchResult": {
"@size": 1024,
/*the maximum number of results that can be returned*/
"channelID": {
/*required, int, channel No.*/
"@min": 1,
"@max": 256
/*value range of the channel No.*/
},
"streamType": {
/*optional, string, stream type, "main,sub,adaptive"*/
"@opt": [
"main",
"sub",
"adaptive"
]
},
"hasRecord": {
/*required, boolean, whether the video exists, startTime and endTime are valid only when the value of hasRecord is
"true"*/
"@opt": [
true,
false
]
},
"startTime": {
/*optional, string, recording start time, e.g., 2010-01-01T00:00:00+08:00, this field is required when the value of
hasRecord is "true"*/
"@min": 0,
"@max": 64
},
"endTime": {
/*optional, string, recording end time, e.g., 2010-01-01T00:00:00+08:00, this field is required when the value of
hasRecord is "true"*/
"@min": 0,
"@max": 64
}
}
}
JSON_Cap_WiresharkToUSB
JSON message about configuration capability of exporting captured packets to USB flash drive
{
"WiresharkToUSB": {
"switch": "",
560
Intelligent Security API (General) Developer Guide
"operateCmd": "",
"DeviceCondList": [
{
"DeviceCond": {
"id": ,
"devType": "",
"devID": ,
"subSys": ,
}
}
]
}
}
JSON_Cap_WorkingStatus
WorkingStatus capability message in JSON format
{
"WorkingStatusCap":{
"devStatus":{
"@opt": "0,1,2"
/*required, integer type, value of device status: 0-normal, 1-CPU usage, higher than 85%, 2-hardware error (e.g., serial
port exception)*/
},
"ChanStatus":{
"chanNo": "",
/*required, integer type, channel No., which starts from 1*/
"enable": "",
/*integer type, it is valid for analog channel only, 0-disable, 1-enable*/
"online": "",
/*required, integer type, online status: 0-offline, 1-online*/
"record":{
"@opt": "0,1,2",
/*integer type, recording status: 0-recording, 1-recording exception (HDD exception), 2-recording exception (network
camera offline), 3-recording exception (other reason)*/
},
"signal": "",
/*required, integer type, signal status: 0-normal, 1-signal loss*/
"linkNum": "",
/*required, integer type, number of software clients connected to this channel*/
"bitRate": ""
/*required, integer type, channel bit rate, unit: Kpbs*/
},
"HDStatus":{
"hdNo": "",
/*required, integer type, HDD No., which starts from 1*/
"enable": "",
"status":{
"@opt": "0,1,2",
/*required, integer type, HDD status: 0-activate, 1-sleep, 2-exception, 3-sleepy HDD error, 4-unformated, 5-
561
Intelligent Security API (General) Developer Guide
disconnected (for network HDD), 6-formatting*/
},
"volume": "",
/*required, integer type, HDD capacity, unit: MB*/
"linkNum": "",
/*integer type, *number of connections*/
"freeSpace": "1"
/*required, integer type, free space, unit: MD*/
}
}
}
JSON_CaputreDescription
JSON message about parameters of capturing picture in URL format
{
"CaputreDescription":{
"imageType":"JPEG",
/*required, string, picture type: "JEPG"*/
"URLType":"cloudURL",
/*required, string, URL type: "cloudURL"-cloud storage or third party storage, "localURL"-device local storage*/
/*When the message is transmitted via ISUP protocol, the "URLType" should be "cloudURL"*/
}
}
JSON_CaputreResult
JSON message about picture capture result
{
"CaputreResult":{
"URLType":"cloudURL",
/*required, string, URL type: "cloudURL"-cloud storage or third party storage, "localURL"-device local storage*/
"imageURL":""
/*required, string, picture URL*/
}
}
JSON_CertificateRevocation
CertificateRevocation message in JSON format
{
"CertificateRevocation":{
"enabled": ,
/*required, boolean, whether to enable certificate expiry alarm*/
562
Intelligent Security API (General) Developer Guide
"expireAlarmTime": ,
/*required, integer, number of days to prompt in advance before the certificate is expired*/
"detecteTime":"",
/*required, time, detection time of certificate expiry alarm*/
"intervalTime":
/*required, integer, alarm interval, unit: day*/
}
}
JSON_CertificateRevocationCap
CertificateRevocationCap capability message in JSON format
{
"CertificateRevocationCap":{
"enabled":{
/*required, boolean, whether to enable certificate expiry alarm*/
"@opt":[true, false]
},
"expireAlarmTime":{
/*required, integer, number of days to prompt in advance before the certificate is expired*/
"@min":1,
"@max":30,
"@def":7
},
"detecteTime":{
/*required, time, detection time of certificate expiry alarm*/
"@min":"00:00",
"@max":"24:00",
"@def":"10:00"
},
"intervalTime":{
/*required, integer, alarm interval, unit: day*/
"@min":1,
"@max":30,
"@def":1
}
}
}
JSON_CertificateSelect
CertificateSelect message in JSON format
{
"CertificateSelect":{
/*you can choose one field among clientCertificate, serverCertificate, and CACertificate to configure as needed*/
"clientCertificate":"",
/*optional, string, client certificate type*/
563
Intelligent Security API (General) Developer Guide
"serverCertificate":"",
/*optional, string, server certificate type*/
"CACertificate":"",
/*optional, string, CA certificate type*/
"SRTPSecurityAlgorithm":""
/*optional, string, encryption algorithm*/
}
}
JSON_ChanCond
ChanCond message in JSON format
{
"ChanCond":{
"chanNo": […,…]
/*specify channel No. to get the status*/
}
}
JSON_ChanStatus
ChanStatus message in JSON format
{
"ChanStatus":[{
"chanNo": ,
/*required, integer type, channel No., which starts from 1*/
"enable": ,
/*integer type, it is valid for analog channel only, 0-disable, 1-enable*/
"online": ,
/*required, integer type, online status: 0-offline, 1-online*/
"record": ,
/*required, whether the device is recording, 0-no, 1-yes*/
"recordStatus ": ,
/*integer type, recording status: 0-recording, 1-recording exception (HDD exception), 2-recording exception (network
camera offline), 3-recording exception (other reason)*/
"signal": ,
/*required, integer type, signal status: 0-normal, 1-signal loss*/
"linkNum": ,
/*required, integer type, number of software clients connected to this channel*/
"bitRate":
/*required, integer type, channel bit rate, unit: Kpbs*/
},
{
"chanNo": ,
/*required, integer type, channel No., which starts from 1*/
"enable": ,
/*integer type, it is valid for analog channel only, 0-disable, 1-enable*/
564
Intelligent Security API (General) Developer Guide
"online": ,
/*required, integer type, online status: 0-offline, 1-online*/
"record": ,
/*required, whether the device is recording, 0-no, 1-yes*/
"recordStatus ": ,
/*integer type, recording status: 0-recording, 1-recording exception (HDD exception), 2-recording exception (network
camera offline), 3-recording exception (other reason)*/
"signal": ,
/*required, integer type, signal status: 0-normal, 1-signal loss*/
"linkNum": ,
/*required, integer type, number of software clients connected to this channel*/
"bitRate":
/*required, integer type, channel bit rate, unit: Kpbs*/
}]
}
JSON_Channel_CustomAudioInfo
JSON message about custom alarm sound file of a channel
{
"CustomAudioInfo": {
"CustomAudioList":[{
/*required, information list about custom alarm sound file*/
"customAudioID": ,
/*required, int, custom alarm sound file ID, value range: [1,3]*/
"customAudioName": ""
/*required, string, name of custom sound file; the maximum size is 24 bytes*/
}]
}
}
JSON_ChannelAudioAlarmCap
JSON message about the audible warning configuration capability of a channel
{
"AudioAlarmCap":{
"audioTypeListCap":[{
/*required, alarm sound types, 1-siren, 2-"Warning, this is a restricted area", 3-"Waring, this is a restricted area,
please keep away", 4-"Warning, this is a no-parking zone", 5-"Warning, this is a no-parking zone, please keep away",
6-"Attention please. The area is under surveillance", 7-"Welcome,Please notice that the area is under surveillance",
8-"Welcome", 9-"Danger! Please keep away", 10-siren + "Danger, please keep away", 11-Audio Warning, 12-Beep
Sound, 13-custom alarm sound 1, 14-custom alarm sound 2, 15-custom alarm sound 3, 16-AI custom audio file*/
"audioID": 1,
"audioDescription":"siren"
},
{
"audioID": 2,
565
Intelligent Security API (General) Developer Guide
"audioDescription":"Warning, this is a restricted area"
},
{
"audioID": 3,
"audioDescription":"Waring, this is a restricted area,please keep away"
}],
"audioVolume":{
/*required, int, volume, which is between 1 ad 100*/
"@min": 1,
"@max": 100,
"@def": 100
},
"alarmTimes":{
/*required, int, times of audible warning, which is between 1 and 50*/
"@min": 1,
"@max": 50,
"@def": 5
},
"TimeRangeCap":{
/*optional, audible warning schedule capability*/
"week":{
/*required, int, days of the week: 1-Monday, 2-Tuesday, 3-Wednesday, 4-Thursday, 5-Friday,6-Saturday, 7-Sunday*/
"@opt":"1, 2, 3, 4, 5, 6, 7"
},
"id":{
/*required, int, ID of time period for each day*/
"@maxSize": 8
},
"beginTime":{
/*required, string, start time in ISO8601 format*/
"@min":"00:00",
"@max":"24:00"
},
"endTime":{
/*required, string, end time in ISO8601 format*/
"@min":"00:00",
"@max":"24:00"
}
}
"audioClass": {
/*optional, string, read-only, sound type, "alertAudio"-alarm sound (get the supported alarm sound types from the
node AlertAudioTypeListCap), "promptAudio"-prompt sound, "customAudio"-custom sound (configure it according to
customAudioID); if this node is not returned, you should get the supported sound types from the node
audioTypeListCap*/
"@opt": "alertAudio, promptAudio, customAudio",
"@def": "alertAudio"
},
"AlertAudioTypeListCap": [{
/*dependent, read-only, list of supported alarm sound types, this node will be returned when audioClass is
"alertAudio": 1-"Siren", 2-"Warning, this is a restricted area", 3-"Waring,this is a restricted area,please keep away",
4-"Warning, this is a no-parking zone", 5-"Warning,this is a no-parking zone,please keep away", 6-"Attention please.
The area is under surveillance", 7-"Welcome,Please notice that the area is under surveillance", 8-"Welcome",
566
Intelligent Security API (General) Developer Guide
9-"Danger! Please keep away", 10-"(Siren)&Danger,please keep away, 11-Audio Warning"*/
"alertAudioID": 1,
"alertAudioDescription": "Siren"
}, {
"alertAudioID": 2,
"alertAudioDescription": "Warning, this is a restricted area"
}, {
"alertAudioID": 3,
"alertAudioDescription": "Waring,this is a restricted area,please keep away"
}
],
"customAudioID": {
/*dependent, int, read-only, custom sound ID, this node will be returned when audioClass is "customAudio". The
alarm sound file can only be uploaded via Hik-Connect in specified format. If there is no value returned in this node,
the custom sound (customAudio) will not be returned,either*/
"@min": 1,
"@max": 3,
"@def": 1
},
"alarmType":{
/*optional, string, alarm type: "behavior"-behavior analysis, "thermometry"-thermometry, "dynamicFire"-fire
detection, "smokingMode"-smoke detection*/
"@opt":"behavior,thermometry,dynamicFire,smokingMode",
"@def":"thermometry"
}
"AlarmBindAudioList":[{
/*optional, alarm type and the list of audio related to alarm type*/
"alarmType":"behavior",
/*optional, string, alarm type: "behavior"-behavior analysis, "thermometry"-temperature measurement,
"dynamicFire"-fire detection, "smokingMode"-smoke detection, "noMaskDetection"-no wearing mask detection*/
"audioID":{
/*optional, string, the audible warning type ID corresponding to alarm type, behavior analysis corresponds to 1-12,
thermometry corresponds to 13,fire detection corresponds to 14,smoke detection corresponds to 15*/
"@opt":"1,2,3,4,5,6,7,8,9,10,11,12"
}
}]
"isSupportCustomAudio": true,
/*optional, boolean, whether the device supports uploading, downloading, and editing custom alarm sound file*/
"isSupportAudioTest": true,
/*optional, boolean, whether the device supports sound file test*/
"HolidayBlockCap":{
/*optional, holiday list capability*/
"beginTime":{
/*required, string, start time in ISO 8601 format*/
"@min":"00:00",
"@max":"24:00"
},
"endTime":{
/*required, string, end time in ISO 8601 format*/
"@min":"00:00",
"@max":"24:00"
}
567
Intelligent Security API (General) Developer Guide
}
}
}
JSON_ChannelInfoList
ChannelInfoList message in JSON format
{
"ChannelInfoList":{
"ChannelInfo":[{
"chanNo": ,
/*required, integer type, channel No.*/
"enable": ,
/*integer type, it is valid for analog channel only, 0-disable, 1-enable*/
"name":"",
/*string type, channel name*/
"online": ,
/*integer type, online status: 0-offline, 1-online*/
"linknum":
}]
}
}
JSON_ChannelInfo
ChannelInfo message in JSON format
{
"ChannelInfo": [{
"chanNo": ,
/*required, integer type, channel No.*/
"enable": ,
/*integer type, it is valid for analog channel only, 0-disable, 1-enable*/
"name": "",
/*string type, channel name*/
"online": ,
/*integer type, online status: 0-offline, 1-online*/
"linknum": ,
/*number of live view channels*/
}]
}
JSON_ChangedStatus
ChangedStatus message in JSON format
568
Intelligent Security API (General) Developer Guide
{
ChangedStatus: {
"seq": ,
/*32-byte integer type, alarm No., for alarm acknowladge*/
"devStatus": ,
/*integer type, value of device status: 0-normal, 1-CPU usage, higher than 85%, 2-hardware error (e.g., serial port
exception)*/
"devCapHash": "";
/*global Hash value of device capability, which is generated by MD5, and encrypted by Base64; for NVR, the Hash
value of network camera should be the calculation source*
"zeroChanEnable": ,
/*boolean type, whether the channel-zero is enabled: true-yes, false-no*/
"cycleRecordEnable": true,
/*boolean type, whether to enable recoridng, true-yes, false-no*/
"chanChanged": […,…,…]
/*integer type, channel status changes, e.g., delete, edit, add, the Hash value of this channel changed*/
"hdChanged": […,…,…]
/*integer type, HDD status changes, e.g., delete, edit, add*/
"ChanStatus": [{
"chanNo": ,
/*integer type, channel No., read-only*/
"enable": 1,
/*integer type, it is valid for analog channel only, 0-disable, 1-enable*/
"online": ,
/*required, integer type, online status: 0-offline, 1-online*/
"recordStatus ": ,
/*integer type, recording status: 0-recording, 1-recording exception (HDD exception), 2-recording exception (network
camera offline), 3-recording exception (other reason)*/
"signal": ,
/*required, integer type, signal status: 0-normal, 1-signal loss*/
"arming": ,
/*integer type, network camera arming status: 0-armed, 1-arming failed*/
}],
"HDStatus":[{
"hdNo": ,
/*required, integer type, HDD No., which starts from 1*/
"status": ,
/*required, integer type, HDD status: 0-activate, 1-sleep, 2-exception, 3-sleepy HDD error, 4-unformated, 5-
disconnected (for network HDD), 6-formatting*/
}],
"CapChanged": [{
"name": "",
/*required, root node of changed capability set*/
"chan": ,
/*channel No., it is required when transmitting channel capability; it is optional when transmitting device capability*/
"url": "/ISAPI/Thermal/channels/1/fireDetection/capabilities",
/*capability set URL, it is required for capability set based on ISAPI protocol*/
},
{
"name": "",
/*required, capability set name, which is usually the root node*/
"chan": 1,
569
Intelligent Security API (General) Developer Guide
/*channel No., it is required when transmitting channel capability; it is optional when transmitting device capability*/
"abilityType": 0x700,
/*capability type, it is required if the capability is not based on ISAPI protocol*/
}]
}
}
JSON_Characteristic
JSON message about device attribute code
{
"Characteristic": {
/*required, attribute code*/
"code": "+/"
/*required, string, device attribute code, value range: [1,128]; following characters in the quotes are supported:
"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"*/
}
}
JSON_CleanUpFileList
Message about deleting saved files in a batch in JSON format
{
"CleanUpFileList": [{
"trackId ": ""
/*required, string, file No.*/
}
]
}
JSON_ClearingSpaceConfig
JSON message about HDD clearing parameters
{
"ClearingSpaceConfig":{
/*when the free space of HDD reaches the configured value of insufficientSpace, and if the value of
clearingOriginalData is true, the configured HDD space size will be cleared*/
"insufficientSpace": ,
/*required, int, HDD free space, which is used as the threshold to start clearing*/
"clearingOriginalData": ,
/*required, boolean, whether to enable clearing the original data*/
"clearingSpace":
/*required, int, space size to clear*/
570
Intelligent Security API (General) Developer Guide
}
}
JSON_CommuMode
CommuMode message in JSON format
{
"CommuMode":{
"mode":""
/*required, string type, security mode level of the private protocol: "compatibilityMode"-compatibility mode,
"safeMode"-security mode*/
}
}
JSON_CustomAudioID
JSON message about custom alarm sound ID
{
"customAudioID":
/*required, string, custom alarm sound ID, the value can be 1 to 3*/
}
JSON_CustomAudioInfo
JSON message about custom alarm sound file information
{
"CustomAudioInfo": {
/*required, related information about custom alarm sound file*/
"customAudioID": ,
/*required, int, custom alarm sound file ID, the value can be 1 to 3*/
"customAudioName": ""
/*required, string, name of custom sound file, the maximum size is 24 bytes*/
}
}
JSON_CustomAudioTypeInfoList
JSON message about encoding format of custom audio file
{
"CustomAudioTypeInfoList":[{
/*encoding format list of custom audio file*/
"CustomAudioTypeInfo":{
571
Intelligent Security API (General) Developer Guide
/*encoding format of custom audio file*/
"channelID":1,
/*required, channel ID*/
"audioType":["OPUS", "G726"],
/*required, string,audio encoding format type: OPUS, G726; now supports analog channels only*/
"bitRate":64,
/*required, int,bit rate, unit: kbps*/
"samplingRate":48,
/*optional, int,sampling rate, unit: k*/
"samplingBits":10,
/*optional, int,sampling bits, unit: bits*/
"AudioChannelNum":1,
/*optional, int,the number of audio channels*/
"AudioFileMaxCapacity":10
/*optional, int,the maximum size of audio file, unit: MB*/
}
}]
}
JSON_DataReconstruction
JSON message about disk data reconstruction parameters
{
"DataReconstruction":{
"dataType": "record",
/*required, string, reconstruction data type: "all", "record"*/
"diskID": [1,2],
/*optional, array of integers, disk ID for single disk mode*/
"IRAID": [1,2]
/*optional, array of integers, RAID ID for RAID mode*/
}
}
JSON_DeviceCertificate
DeviceCertificate message in JSON format
{
"DeviceCertificate":{
"CertificateInfo":{
"issuerDN":"",
/*required, string, read-only, name of the authority that issued the certificate*/
"subjectDN":"",
/*required, string, read-only, certificate holder name*/
"startDate":"",
/*required, date, read-only, start date of the certificate validity period, it is accurate to day*/
"endDate":"",
/*required, date, read-only, end date of the certificate validity period, it is accurate to day*/
572
Intelligent Security API (General) Developer Guide
"type":"",
/*optional, string, read-only, certificate type: "https", "websockets", "SDKoverTLS", "SRTP", "securityLog",
"ieee802.1x". Multiple types should be separated by commas*/
"status":"",
/*optional, string, read-only, certificate status: "normal", "expired", "exceptional"*/
"customID":""
/*optional, string, read-only, custom certificate ID, it is created when the user imports the certificate and it consists of
digits and characters*/
}
}
}
JSON_DeviceCertificateCap
DeviceCertificateCap capability message in JSON format
{
"DeviceCertificateCap":{
"customID":{
/*required, string, custom certificate ID, it is created when the user imports the certificate and it consists of digits and
characters*/
"@min":1,
"@max":64,
"status":{
/*optional, string, certificate status: "normal", "expired", "exceptional"*/
"@opt":["normal", "expired", "exceptional"]
}
}
}
}
JSON_DeviceCertificates
DeviceCertificates message in JSON format
{
"DeviceCertificates":{
"CertificateInfoList":{
"CertificateInfo": [{
"id": ,
/*required, integer32, read-only, certificate ID, which starts from 1*/
"issuerDN": "",
/*required, string, read-only, name of the authority that issued the certificate*/
"subjectDN": "",
/*required, string, read-only, certificate holder name*/
"startDate": "",
/*required, read-only, start date of certificate expiry period, it is accurate to day*/
"endDate": "",
/*required, read-only, end date of certificate expiry period, it is accurate to day*/
573
Intelligent Security API (General) Developer Guide
"type": "",
/*optional, read-only, certificate type: "wpa", "securityLog", "ieee802.1x", "HTTPS", "WebSocketS", "SDK_OVER_TLS",
"SRTP". Multiple types can be separated by commas*/
"status": "",
/*optional, string, read-only, certificate status: "normal", "expired", "exceptional"*/
"customID": ""
/*optional, string, read-only, custom certificate ID, it is created when the user imports the certificate and it consists of
digits and characters*/
}]
}
}
}
JSON_DeviceCertificatesCap
DeviceCertificatesCap message in JSON format
{
"DeviceCertificatesCap":{
"CertificateInfoList":{
"@size": 64,
/*required, integer32 type, read-only*/
"CertificateInfo": [{
"id": {
/*required, integer32 type, read-only, certificate ID, which starts from 1*/
"@min":1,
"@max":64,
"#text":
}
"issuerDN": "",
/*required, string type, read-only, certificate issue*/
"subjectDN": "",
/*required, string type, read-only, certificate holder name*/
"startDate": "",
/*required, read-only, start date of certificate expiry period, it accurate to day*/
"endDate": ""
/*required, read-only, end date of certificate expiry period, it accurate to day*/
"type": {
/*optional, read-only, certificate type*/
"@opt":"wpa, securityLog, ieee802.1x"
}
}]
}
}
}
574
Intelligent Security API (General) Developer Guide
JSON_DeviceCertificateStatus
DeviceCertificateStatus message in JSON format
{
"DeviceCertificateStatus": {
/*required, status of device certificate*/
"id": "",
/*required, read-only, string type, certificate ID, which is generated and returned by device*/
"status": ""
/*required, string type, certificate status: normal, abnormal*/
}
}
JSON_DeviceCertificateStatusList
DeviceCertificateStatusList message in JSON format
{
"DeviceCertificateStatusList": [{
"DeviceCertificateStatus": {
/*required, status of device certificate*/
"id": "",
/*required, read-only, string type, certificate ID, which is generated and returned by device*/
"status": ""
/*required, string type, certificate status: normal, abnormal*/
}
}]
}
JSON_DiagnosedDataServerCap
JSON message about diagnostic server capability
{
"DiagnosedDataServerCap":{
/*required, diagnostic server capability*/
"id":{
"@min":1,
"@max":1
},
"protocol":{
/*required, string, transmission protocol: "FTP,SFTP"*/
"@opt":["FTP", "SFTP"]
},
"enabled":{
/*required, boolean, whether to enable*/
"@opt":[true, false]
575
Intelligent Security API (General) Developer Guide
},
"addressingFormatType":{
/*optional, string, address type: "ipaddress" (IP address), "hostname" (host name)*/
"@opt":["ipaddress", "hostname"]
},
"hostName":{
/*dependent, string, host name, the maximum length is 64 bytes; it is valid when the value of addressingFormatType
is "hostname"*/
"@min":1,
"@max":64
},
"ipVersion":{
/*dependent, string, IP version: "ipv4", "ipv6"; it is valid when the value of addressingFormatType is "ipaddress"*/
"@opt":["ipv4", "ipv6"]
},
"portNo":{
/*optional, int, port No., value range: [1,65535]*/
"@min":1,
"@max":65535
},
"userName":{
/*required, string, user name, the maximum length is 32 bytes*/
"@min":0,
"@max":32
},
"password":{
/*string, write-only, password, the maximum length is 16 bytes*/
"@min":0,
"@max":16
},
"isSupportStartTime":true,
/*required, boolean, whether the device supports start time, i.e., uploads the diagnosis information and running logs
of device from the start time; the time is in ISO 8601 format*/
"isSupportEndTime":true,
/*required, boolean, whether the device supports end time., i.e., no longer uploads the diagnosis information and
running logs of device after end time; the time is in ISO 8601 format*/
"isSupportTest":true,
/*required, boolean, whether the device supports server test (related URI: /ISAPI/System/diagnosedData/server/test?
format=json)*/
"isSupportUpload":true,
/*required, boolean, whether the device supports uploading diagnosis information (such as running logs, 4G network,
MCU, and SOC information)*/
"consoleCommand":{
/*required, string, console command, the length is between 1 to 512 bytes*/
"@min":1,
"@max":512
},
"compressionKey":{
/*optional, string, the decompression password of uploaded diagnosis information in compression file; the length is
between 8 to 16 bytes; digits and letters are supported*/
"@min":8,
"@max":16
576
Intelligent Security API (General) Developer Guide
}
}
}
JSON_DiagnosedDataServerList
JSON message about diagnostic server configuration parameters.
{
"DiagnosedDataServerList":[{
/*required, diagnostic server parameters*/
"id":1,
/*required, string, index*/
"protocol":"FTP",
/*required, string, transmission protocol: "FTP,SFTP"*/
"enabled":true,
/*required, boolean, whether to enable*/
"addressingFormatType":"ipaddress",
/*optional, string, address type: "ipaddress" (IP address), "hostname" (host name)*/
"hostName":"www.baidu.com",
/*dependent, string, host name, the maximum length is 64 bytes; it is valid when the value of addressingFormatType
is "hostname"*/
"ipVersion":"ipv4",
/*dependent, string, IP version: "ipv4", "ipv6"; it is valid when the value of addressingFormatType is "ipaddress"*/
"ipV4Address":"10.17.132.254",
/*dependent, string, IPv4 address; it is valid when the value of ipVersion is "ipv4", and addressingFormatType is
"ipaddress"*/
"ipv6Address":"fe80::884a:67cb:9b67:b3a0%15",
/*dependent, string, IPv6 address; it is valid when the value of ipVersion is "ipv6", and addressingFormatType is
"ipaddress"*/
"portNo":20,
/*optional, int, port No., value range: [1,65535]*/
"userName":"admin",
/*required, string, user name, the maximum length is 32 bytes; this node should be encrypted*/
"password":"admin",
/*string, write-only, password, the maximum length is 16 bytes; this node should be encrypted*/
"DiagnosedDataUpload":{
"consoleCommand":"qwertyuiopasdfghj",
/*required, string, write-only, console command, the length is between 1 to 512 bytes; this node should be
encrypted*/
"compressionKey":"qwertyuiopasdfghj",
/*required, string, the decompression password of uploaded diagnosis information in compression file; the length is
between 8 to 16 bytes; digits and letters are supported; this node should be encrypted*/
"startTime":"2017-06-10T13:30:00+08:00",
/*dependent, datetime, start time in ISO 8601 format, e.g., "2017-06-10T13:30:00+08:00"; device uploads the
diagnosis information and running logs of device from the start time*/
"endTime":"2017-06-10T13:30:00+08:00"
/*dependent, datetime, time in ISO 8601 format, e.g., "2017-06-10T13:30:00+08:00"; device no longer uploads the
diagnosis information and running logs of device after end time*/
}
577
Intelligent Security API (General) Developer Guide
}]
}
JSON_DiagnosisCond
DiagnosisCond message in JSON format
{
"DiagnosisCond":{
"command":"",
/*required, string type, diagnosis command*/
"selfdefineCmd":""
/*string type, custom diagnosis command, it is valid when command is set to "selfdefine"*/
}
}
JSON_DiagnosisCondCap
DiagnosisCondCap capability message in JSON format
{
"DiagnosisCondCap":{
/*diagnosis condition capability*/
"command":{
/*required, supported diagnosis command*/
"@opt":[
"system",
/*diagnose system*/
"alarm",
/*diagnose alarm*/
"peripheral",
/*diagnose peripheral*/
"wifi",
/*diagnose Wi-Fi network*/
"cloud",
/*diagnose cloud*/
"GPRS/3G/4G",
/*diagnose mobile network*/
"IPC",
/*diagnose network camera*/
"ARC",
/*diagnose alarm center*/
"selfdefine"
/*custom diagnosis command*/
]
},
"selfdefineCmd":{
/*length range of the custom diagnosis command, it is valid when "selfdefine" is included in command*/
"@min": ,
578
Intelligent Security API (General) Developer Guide
/*required, integer type, the minimum length of the custom diagnosis command*/
"@max":
/*required, integer type, the maximum length of the custom diagnosis command*/
}
}
}
JSON_DiagnosisResult
DiagnosisResult message in JSON format
{
"DiagnosisResult":{
"result":""
/*required, string type, diagnosis result*/
}
}
JSON_DoubleVerification
DoubleVerification message in JSON format
{
"DoubleVerification":{
"enable": ""
/*optional, whether enables double verification, boolean*/
}
}
JSON_DownloadPackageStatus
JSON message about upgrade package upload status
{
"DownloadPackageStatus":{
/*required, upgrade package download status*/
"status": "notDownload,downloading,downloadFailed,pause,finish,incorrectPackage,hdOperationFailed",
/*required, string, download status: "notDownload"-not download, "downloading"-downloading, "downloadFailed"-
downloading failed, "pause"-paused, "finish"-completed, "incorrectPackage"-incorrect upgrade package format,
"hdOperationFailed"-HD operation failed*/
"total": "",
/*optional, float, upgrade package total size, unit: MB, corrects to one decimal place*/
"remain": "",
/*optional, float, remaining space, unit: MB, corrects to one decimal place*/
"speed": ""
/*optional, float, download speed, unit: KB/s, corrects to two decimal places*/
"remainTime": "",
579
Intelligent Security API (General) Developer Guide
/*optional, int, estimated remaining time, unit: s*/
"progress": 0,
/*required, int, progress, ranges from 0 to 100*/
}
}
JSON_DynamicHostName
DynamicHostName message in JSON format
{
"DynamicHostName": {
/*required, configuration parameters of dynamic domain name*/
"enabled": ,
/*required, boolean type, whether to enable dynamic domain name*/
"hostName": ""
/*required, string type, domain name*/
}
}
JSON_DynamicHostNameCap
DynamicHostNameCap message in JSON format
{
"DynamicHostNameCap": {
/*required, configuration capability of dynamic domain name*/
"enabled": "true,false",
/*required, boolean type, whether to enable dynamic domain name*/
"hostName": {
/*required, string type, domain name*/
"@min": 0,
"@max": 64
}
}
}
JSON_EmailCertification
Enter a short description of your reference here (optional).
Enter the syntax information of your reference here (optional).
Enter the actual information in this section (optional).
Example
Enter an example to illustrate your reference here (optional).
580
Intelligent Security API (General) Developer Guide
JSON_EnableEncryption
EnableEncryption message in JSON format
{
"enable": true,
/*required, boolean type, whether to enable stream encryption, true-yes, false-no*/
}
JSON_EncryptFormat
EncryptFormat message in JSON format
{
"EncryptFormat":{
"password":"",
/*required, string, password, it will be encrypted according to the encryption vector*/
"encryptFormatType":""
/*optional, string, HDD formatting type: "FAT32", "EXT4"*/
}
}
JSON_EncryptionCap
Stream encryption capability in JSON format.
{
"enable": "true,false",
/*required, boolean type, whether to enable stream encryption, true-yes, false-no*/*/
"secretKey":{
/*required, string type, encryption key*/
"@min": 6,
"@max": 12,
"#text": "user"
}
}
JSON_EncryptVerfy
EncryptVerfy message in JSON format
{
"EncryptVerfy":{
"password":""
/*required, string, password, it will be encrypted according to the encryption vector*/
581
Intelligent Security API (General) Developer Guide
}
}
JSON_EPTZMode
EPTZMode message in JSON format
{
"EPTZMode":{
"mode":"",
/*required, modes supported by e-PTZ: "cruise"-patrol (PTZ supports preset,