device.network.get (LAN and connection info)
device.network.get: LAN and connection info
What it does
Returns connection and LAN-related fields for a bound or shared device (public IP, MAC, model, inner IP, and optional encrypted login password). Not listed in device.capability.list. This is a device-query named method, not device.property.* (unlike the network.lan.ipInfo property domain).
Request URL
POST https://openapi-[DataCenter].easy4ip.com/openapi/v2/device.network.get
Minimum permission
Device must be bound or shared; otherwise permission denied. Administrator: bound or shared devices. Sub-user: own bound devices. Sub-account: authorized devices.
Request parameters
| Name | Type | Required | Default | Valid values | Description |
|---|---|---|---|---|---|
token | String | yes | accessToken | ||
deviceId | String | yes | Device serial number | ||
productId | String | no | Optional. If provided and does not match the device model → DV2009 |
Request example
{
"id": "d5c287b4-5b2f-4f03-baf5-8032c5c354af",
"system": {
"ver": "1.0",
"appId": "lcdxxxxxxxxx",
"sign": "xjhCQBoJ9hRDsCjyDcHjtDNzRZ3ZJezcawsfWeiaoxU=",
"time": 1706511734,
"nonce": "f5a1ae2d-c09c-4d39-a744-83a5c2c653c2"
},
"params": {
"token": "<yourAccessToken>",
"deviceId": "TESTIPC000012345"
}
}
Response data fields
| Name | Type | Description |
|---|---|---|
deviceId | String | Device serial number |
productId | String | Returned when known |
deviceIp | String | Platform-recorded device IP |
mac | String | MAC address |
deviceModel | String | Device model |
deviceInnerIp | String | LAN IP; empty string when unavailable |
devicePassword | String | Optional. V2 ciphertext for device login password (field name devicePassword; same algorithm as the V2 password field on Batch detail by device ID, exposed as devicePasswordV2 in that response, not the passwordV2 rules for Verify password). Omitted when not derivable |
Response example
{
"id": "d5c287b4-5b2f-4f03-baf5-8032c5c354af",
"result": {
"code": "0",
"msg": "Operation is successful",
"data": {
"deviceId": "TESTIPC000012345",
"productId": "56WGTET2",
"deviceIp": "1.85.53.219",
"mac": "FC:B6:9D:39:40:06",
"deviceModel": "iMX1",
"deviceInnerIp": "192.168.110.6",
"devicePassword": "JpsXj/6AvpdsN7td08gB37GNTzDAPlFSRp645ZoxcCl32iqz"
}
}
}
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 query (DV20xx)
| Code | Meaning | Next step |
|---|---|---|
DV2009 | productId does not match the device model | Omit productId or use the correct model |
| :--- | :--- | :--- |
DV2010 | This device cannot complete the operation via this method now | Omit productId and retry |
| :--- | :--- | :--- |
DV2011 | No capability permission | See Permission codes |
| :--- | :--- | :--- |
DV2012 | Device not found | Check serial number |
| :--- | :--- | :--- |
DV2013 | Device not bound | Bind the device first |
