queryOpenDeviceChannelInfo (queryOpenDeviceChannelInfo - Device Channel Info on Open Platform - Imou Open Platform)
queryOpenDeviceChannelInfo: queryOpenDeviceChannelInfo - Device Channel Info on Open Platform - Imou Open Platform
Legacy HTTP retained: For existing integrations. New integrations should use the Device APIs overview.
Function details
queryBaseDeviceChannelInfoandqueryOpenDeviceChannelInfoshare the same query handler in current implementation; names reflect integration convention.
Obtain the basic information of the channel for adding devices to the open platform according to the set of device serial numbers.
Note: Querying the device bound to the easy4ip App needs to be obtained through the queryBaseDeviceChannelInfo interface.
Request address
https://openapi-[DataCenter].easy4ip.com/openapi/queryOpenDeviceChannelInfo
Request format
HTTP POST. JSON body layout: Request conventions. Sign with Signature.
Minimum permissions
Administrators use their access token. Sub-accounts need resource permission on dev:{deviceId} (see Permission codes).
Incoming parameter description
| Parameter name | Parameter type | Required or not | Default value | Legal value | Parameter description |
|---|---|---|---|---|---|
| token | String | Yes | Administrator or sub-account accessToken | ||
| deviceIds | String | Yes | Multiple devices are separated by English commas, for example: "xxxxx,xxxxx,xxxxx", supports up to 10 devices | List of device serial numbers |
Sample input
{
"system":{
"ver":"1.0",
"appId":"lcdxxxxxxxxx",
"sign": "xjhCQBoJ9hRDsCjyDcHjtDNzRZ3ZJezcawsfWeiaoxU=",
"time":1603371196,
"nonce":"6c342163-9cca-4194-ad37-6189989b0a2f"
},
"id":"abb1128c-40d8-4340-ad69-18cd7fa46d22",
"params":{
"deviceIds":"TESTQWERXXXX",
"token":"At_00000ad9e6e87f0142eb92e207aec46a"
}
}
Return data field description
| Field | Type | Description |
|---|---|---|
| devices.deviceId | String | Device serial number |
| devices.status | String | Device status, online: online, offline: offline, sleep: hibernation, upgrading |
| devices.channels.channelId | String | Channel number |
| devices.channels.channelName | String | Channel name |
| devices.channels.status | String | Channel status, online: online, offline: offline, close: not configured, sleep: hibernation, upgrading in progress |
Sample output
{
"result":{
"msg":"The operation was successful.",
"code":"0",
"data":{
"devices":[
{
"channels":[
{
"channelName":"TP1S-1842",
"channelId":"0",
"status":"online"
}
],
"deviceId":"TESTQWERXXXX",
"status":"online"
}
]
}
},
"id":"abb1128c-40d8-4340-ad69-18cd7fa46d22"
}
Error codes
This method may return the codes below. See Return codes and Capability errors for the full catalog.
Gateway and auth (SN / TK / OP)
| Code | Meaning | Next step |
|---|---|---|
SN1001 | Signature error | Check sign per Development specification |
TK1002 | Token invalid or expired | Refresh accessToken |
OP1002 | Missing required parameter | Add required fields |
OP1003 | Invalid parameter | Match this page’s parameter table |
OP1009 | Permission denied | Check token and device bind/share grants |
OP1013 | Total call limit exceeded | Reduce call rate |
OP1014 | Daily per-interface limit exceeded | See Interface call limits |
DV1007 | Device offline | Wait until the device is online |
See Return codes · OP/SN/TK for the full catalog.
Sub-accounts (SUB)
| Code | Meaning | Next step |
|---|---|---|
SUB1001–SUB1002 | Sub-account lacks API permission | Update policy via addPolicy |
SUB1005 | Sub-account token expired | Refresh subAccountToken |
SUB1006 | No device grant for sub-account | Check Resource and device serial |
SUB1008 | Sub-account not bound to app | Create and bind the sub-account first |
See Return codes · SUB.
Device access and channels (DV10xx)
| Code | Meaning | Next step |
|---|---|---|
DV1007 | Device offline or timeout | Wait for the device to come online |
DV1009 | Device busy | Retry later |
DV1012 | Insufficient share/grant permission | Check sub-account Permission / Resource |
DV1019 | Capability not supported | Confirm model and capability list |
DV1020 | Channel offline | Check channel status |
DV1026 | Function not supported | Use another API or upgrade firmware |
DV1028 | Not bound or channel missing | Verify deviceId / channelId |
See Return codes · DV.
