api:networkmanagement:device:list
Table of Contents
API : Network Devices List
Introduction
This request will return the list of all network devices for a specific customer.
Request
| URL | https://api.telecomx.dk/network/device | |
|---|---|---|
| Method | GET | |
| Access level | VIEWER MANAGER OWNER RESELLER if customer belongs to the reseller or a sub reseller. RESELLER_ADMIN ADMIN. The customer must have the NETWORK_MANAGEMENT feature. |
|
| Query | customer | [optional] Id of the customer to list devices for, defaults to user's own customer if not set. |
| offset | [optional] Index of first item to return. Defaults to 0. |
|
| limit | [optional] Number of items to return, max 500. Defaults to 100. |
|
| full | [optional] True to return full item, false for condensed version. |
|
| filter | [optional] Free-text filter matched against name, MAC address, serial number and notes. |
|
Query examples
https://api.telecomx.dk/network/device https://api.telecomx.dk/network/device?customer=1234567890ABCDEF12345678
Response
| JSON object | ||
|---|---|---|
| Property | Type | Description |
| offset | Number | Index of the network device returned. |
| limit | Number | Number of network devices to return. Note that the actual number of items returned may be lower. |
| total | Number | Number of network devices that can be returned when offset and limit is not considered. This is to be used for paging through the data. |
| networkDevices | Array | List of network devices, see definition below. |
| Network device - full=false | ||
|---|---|---|
| Property | Type | Description |
| _id | Id | Unique id of the device. |
| state | String | Which state the device is in: ACTIVE, PROVISIONING, DELETING. |
| name | String | Name of device |
| model | Id | Id of the network device model |
| modelType | String | Model type |
| modelBrand | String | Brand and model name |
| modelPicture | Id | Id of picture of the device model, on the image servers. |
| activeSim | String | Number of the active SIM card in the device. |
| macAddress | String | MAC address |
| serialNumber | String | Serial number |
| jobs | Number | Number of provisioning jobs currently in progress. |
| wifiEnabled | Boolean | True if the 2.4GHz wifi is enabled. |
| dhcpEnabled | Boolean | True if DHCP is enabled. |
| provisioned | Boolean | True if the device is provisioned. |
| provisionError | Object | Latest permanent provisioning-job failure. Only present after a job has permanently failed; cleared when a later CREATE or UPDATE job succeeds. |
| provisionError.message | String | Human-readable error message from the failed job. |
| provisionError.action | String | The job that failed: CREATE, UPDATE, DELETE, REBOOT_DEVICE. |
| provisionError.errorCode | Number | Error code from the device vendor's cloud, when available. May be null or absent. |
| provisionError.at | Date | When the job permanently failed. |
| lastComm | Date | Timestamp of the last time this device was communicated with, either directly or through a third-party service |
| online | Boolean | True if the device is online. |
| Network device - full=true | ||
|---|---|---|
| Property | Type | Description |
| _id | Id | Unique id of the device. |
| state | String | Which state the device is in: ACTIVE, PROVISIONING, DELETING. |
| name | String | Name of device |
| model | Id | Id of the network device model |
| modelType | String | Model type |
| modelBrand | String | Brand and model name |
| modelDescription | String | Description of model |
| modelPicture | Id | Id of picture of the device model, on the image servers. |
| customer | Id | Customer the device belongs to |
| macAddress | String | MAC address |
| serialNumber | String | Serial number |
| mvnoAccount | Id | MVNO account that it is linked to. Used when the router is uplinked through a SIM-card. |
| activeSim | String | Number of the active SIM card in the device. |
| jobs | Number | Number of provisioning jobs currently in progress. |
| notes | String | Free text note field. |
| createdAt | Date | When the device was created. |
| deviceId | String | Id of the device in the vendor's cloud platform. Null until the device has been linked. |
| networkId | String | Id of the network in the vendor's cloud platform. Null until the device has been linked. |
| wifi | Object | WiFi settings - set to null if not used. |
| wifi.enabled | Boolean | True if wifi is enabled on 2.4GHz. |
| wifi.ssid | String | SSID of the 2.4GHz network. |
| wifi.password | String | Password of the 2.4GHz network. |
| wifi.enabled5G | Boolean | True if wifi is enabled on 5GHz. |
| wifi.ssid5G | String | SSID of the 5GHz network. |
| wifi.password5G | String | Password of the 5GHz network. |
| wifi.enabled6G | Boolean | True if wifi is enabled on 6GHz. |
| wifi.ssid6G | String | SSID of the 6GHz network. |
| wifi.password6G | String | Password of the 6GHz network. |
| wifi.bandsteering | Boolean | True to enable bandsteering (all bands have same SSID and clients will move freely between bands. |
| dhcp | Object | DHCP settings - set to null if not used. |
| dhcp.enable | Boolean | True to enable DHCP. |
| dhcp.ipPoolStart | String | First IP address to assign to DHCP clients. |
| dhcp.ipPoolEnd | String | Last IP address to assign to DHCP clients. |
| dhcp.leaseTime | Number | Number of minutes DHCP leases last. |
| dhcp.primaryDnsServer | String | IP address of DNS server clients shall use. |
| dhcp.reservedClients[] | Array | List of DHCP clients with reservations. |
| dhcp.reservedClients[].mac | String | MAC address of the client. |
| dhcp.reservedClients[].ip | String | IP address to assign to the client. |
| dhcp.reservedClients[].enable | Boolean | True if reservation is active. |
| dhcp.reservedClients[].id | Number | Optional id of the reservation, as assigned by the device. |
| status | Object | Status info (read only) |
| status.provisioned | Boolean | True if the device is provisioned. |
| status.lastComm | Date | Timestamp of the last time this device was communicated with, either directly or through a third-party service |
| status.online | Boolean | True if the device is online. |
| status.lanIp | String | LAN IP address. |
| status.subnetMask | String | Subnet mask. |
| status.gateway | String | Default gateway IP address. |
| status.wanIp | String | WAN IP address. |
| status.publicIp | String | Public IP address (may differ from WAN). |
| status.upTime | Number | Number of seconds the device has been running. |
| status.dns | String | IP address of primary DNS server. |
| status.dns2 | String | IP address of secondary DNS server. |
| status.ipv6 | String | IPv6 address, if available. |
| status.ipv6Dns | String | IPv6 primary DNS server. |
| status.ipv6Dns2 | String | Ipv6 secondary DNS server. |
| status.simStatus | String | SIM status (mobile router): 1 = ready, 2 = pin_verified, 3 = pin_lock, 4 = puk_lock, 5 = blocked, 6 = no_sim, 7 = unknown |
| status.networkType | String | Type of network connection (mobile router only): 1 = none, 2 = gsm, 4 = wcdma, 8 = lte, 16 = lte_plus, 32 = nr |
| status.signalStrength | Number | 4G signal strength (mobile router only) - 0-100 |
| status.ssSignalStrength | Number | 5G signal strength (mobile router only) - 0-100 |
| status.uplinkRate | Number | Uplink speed in Kbps. |
| status.downlinkRate | Number | Downlink speed in Kbps. |
| status.connectionTime | Number | Number of seconds device has been connected to the mobile network (mobile router only). |
| status.provisionError | Object | Latest permanent provisioning-job failure. Only present after a job has permanently failed; cleared when a later CREATE or UPDATE job succeeds. |
| status.provisionError.message | String | Human-readable error message from the failed job. |
| status.provisionError.action | String | The job that failed: CREATE, UPDATE, DELETE, REBOOT_DEVICE. |
| status.provisionError.errorCode | Number | Error code from the device vendor's cloud, when available. May be null or absent. |
| status.provisionError.at | Date | When the job permanently failed. |
Note that properties holding no value may be omitted from the object.
Example - condensed (full=false)
{ "offset": 0, "limit": 100, "total": 2, "networkDevices": [ { "_id": "12345678901234567890ABCD", "state": "ACTIVE", "name": "My Primary Router", "model": "12345678901234567890AAAA", "modelType": "ROUTER", "modelBrand": "TP-LINK NX220v", "modelPicture": "12345678901234567890BBBB", "macAddress": "123456789012", "serialNumber": "484T563TYEHFCU38HCNB4", "jobs": 0, "wifiEnabled": true, "dhcpEnabled": true, "provisioned": true, "lastComm": "2025-01-01T00:00:00.000Z", "online": true }, { "_id": "12345678901234567890ABCE", "state": "PROVISIONING", "name": "Johns router", "model": "12345678901234567890AAAA", "modelType": "ROUTER", "modelBrand": "TP-LINK NX220v", "modelPicture": "12345678901234567890BBBB", "macAddress": "123456789013", "serialNumber": "484T563TYEHFCU38HCNB5", "jobs": 1, "wifiEnabled": false, "dhcpEnabled": false, "provisioned": false, "provisionError": { "message": "Failed to update DHCP for device - errorCode: -65507", "action": "UPDATE", "errorCode": -65507, "at": "2025-01-01T00:00:00.000Z" }, "online": false } ] }
With full=true each item instead has the same shape as the Get response, plus modelDescription, deviceId and networkId.
Errors
| Error code | Message | Description |
|---|---|---|
| 403 | access_denied | Insufficient access level |
| 404 | customer | Customer not found |
| 422 | <param> | A query parameter is invalid. |
| 500 | internal_error | <Unspecified> |
api/networkmanagement/device/list.txt · Last modified: by Mikkel Meerwaldt Jørgensen