User Tools

Site Tools


api:networkmanagement:device:list

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

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki