Doppler API API Reference
Read only API for retrieving data from the Doppler database
API Endpoint
https://api.nettec.no/v1
Contact: support@nettec.no
Response Content-Types: application/json
Schemes: https
Version: 1.2
Authentication
apiKey
Per user API key for doppler
routerExtId
Per router public key
Paths
GET /router_by_ext_id/{ext_id}
Returns a router based on it's external public ID if it is available
ext_id of router to get
Response Example (200 OK)
{
"id": "integer (int64)",
"slno": "integer (int64)",
"display_name": "string",
"online": "integer (int32)",
"last_seen_unixtime": "integer (int64)",
"uptime": "integer (int64)",
"temperature": {
"celcius": "number (float)",
"fahrenheit": "number (float)"
},
"temperature_ext": {
"celcius": "number (float)",
"fahrenheit": "number (float)"
},
"cellular": {
"signal": "number (float)",
"technology": "string",
"technology_group": "string",
"network": "string",
"mcc": "integer (int64)",
"mnc": "integer (int64)",
"cell_id": "integer (int64)",
"iccid": "string"
},
"data_usage": {
"usage_today": "integer (int64)",
"usage_current_month": "integer (int64)",
"limit_month": "integer (int64)"
},
"wan": {
"ping": "integer (int64)",
"ip4": "string",
"uptime_ppp": "integer (int64)",
"ddns": "string",
"default_route": "string"
},
"group": {
"id": "integer (int32)",
"name": "string",
"path": "string",
"logo": "string"
},
"location": {
"latitude": "number",
"longitude": "number",
"from": "string",
"range": "number",
"heading": "number"
},
"lan_clients": [
{
"hwaddr": "string",
"last_seen": {
"router": {
"id": "integer (int64)",
"slno": "integer (int64)",
"display_name": "string",
"online": "integer (int32)",
"last_seen_unixtime": "integer (int64)",
"uptime": "integer (int64)",
"temperature": {
"celcius": "number (float)",
"fahrenheit": "number (float)"
},
"temperature_ext": {
"celcius": "number (float)",
"fahrenheit": "number (float)"
},
"cellular": {
"signal": "number (float)",
"technology": "string",
"technology_group": "string",
"network": "string",
"mcc": "integer (int64)",
"mnc": "integer (int64)",
"cell_id": "integer (int64)",
"iccid": "string"
},
"data_usage": {
"usage_today": "integer (int64)",
"usage_current_month": "integer (int64)",
"limit_month": "integer (int64)"
},
"wan": {
"ping": "integer (int64)",
"ip4": "string",
"uptime_ppp": "integer (int64)",
"ddns": "string",
"default_route": "string"
},
"group": {
"id": "integer (int32)"
}
}
}
}
]
}
Response Example (default )
{
"code": "integer (int32)",
"message": "string"
}
GET /router
Returns all routers from the system that the user has access to
filter by display_name
filter by slno
List of Routers
unexpected error
Response Example (200 OK)
[
{
"id": "integer (int64)",
"slno": "string",
"display_name": "string",
"online": "integer (int32)",
"last_seen_unixtime": "integer (int64)",
"group": {
"id": "integer (int32)",
"name": "string",
"path": "string",
"logo": "string"
},
"location": {
"latitude": "number",
"longitude": "number",
"from": "string",
"range": "number",
"heading": "number"
}
}
]
Response Example (default )
{
"code": "integer (int32)",
"message": "string"
}
GET /router/{id}
Returns a router based on it's ID, if the user has access to this router
ID of router to get
Response Example (200 OK)
{
"id": "integer (int64)",
"slno": "integer (int64)",
"display_name": "string",
"online": "integer (int32)",
"last_seen_unixtime": "integer (int64)",
"uptime": "integer (int64)",
"temperature": {
"celcius": "number (float)",
"fahrenheit": "number (float)"
},
"temperature_ext": {
"celcius": "number (float)",
"fahrenheit": "number (float)"
},
"cellular": {
"signal": "number (float)",
"technology": "string",
"technology_group": "string",
"network": "string",
"mcc": "integer (int64)",
"mnc": "integer (int64)",
"cell_id": "integer (int64)",
"iccid": "string"
},
"data_usage": {
"usage_today": "integer (int64)",
"usage_current_month": "integer (int64)",
"limit_month": "integer (int64)"
},
"wan": {
"ping": "integer (int64)",
"ip4": "string",
"uptime_ppp": "integer (int64)",
"ddns": "string",
"default_route": "string"
},
"group": {
"id": "integer (int32)",
"name": "string",
"path": "string",
"logo": "string"
},
"location": {
"latitude": "number",
"longitude": "number",
"from": "string",
"range": "number",
"heading": "number"
},
"lan_clients": [
{
"hwaddr": "string",
"last_seen": {
"router": {
"id": "integer (int64)",
"slno": "integer (int64)",
"display_name": "string",
"online": "integer (int32)",
"last_seen_unixtime": "integer (int64)",
"uptime": "integer (int64)",
"temperature": {
"celcius": "number (float)",
"fahrenheit": "number (float)"
},
"temperature_ext": {
"celcius": "number (float)",
"fahrenheit": "number (float)"
},
"cellular": {
"signal": "number (float)",
"technology": "string",
"technology_group": "string",
"network": "string",
"mcc": "integer (int64)",
"mnc": "integer (int64)",
"cell_id": "integer (int64)",
"iccid": "string"
},
"data_usage": {
"usage_today": "integer (int64)",
"usage_current_month": "integer (int64)",
"limit_month": "integer (int64)"
},
"wan": {
"ping": "integer (int64)",
"ip4": "string",
"uptime_ppp": "integer (int64)",
"ddns": "string",
"default_route": "string"
},
"group": {
"id": "integer (int32)"
}
}
}
}
]
}
Response Example (default )
{
"code": "integer (int32)",
"message": "string"
}
GET /router/{id}/lan_clients
Returns lan clients recently associated with the router
ID of router to get
Response Example (200 OK)
[
{
"hwaddr": "string",
"last_seen": {
"router": {
"id": "integer (int64)",
"slno": "integer (int64)",
"display_name": "string",
"online": "integer (int32)",
"last_seen_unixtime": "integer (int64)",
"uptime": "integer (int64)",
"temperature": {
"celcius": "number (float)",
"fahrenheit": "number (float)"
},
"temperature_ext": {
"celcius": "number (float)",
"fahrenheit": "number (float)"
},
"cellular": {
"signal": "number (float)",
"technology": "string",
"technology_group": "string",
"network": "string",
"mcc": "integer (int64)",
"mnc": "integer (int64)",
"cell_id": "integer (int64)",
"iccid": "string"
},
"data_usage": {
"usage_today": "integer (int64)",
"usage_current_month": "integer (int64)",
"limit_month": "integer (int64)"
},
"wan": {
"ping": "integer (int64)",
"ip4": "string",
"uptime_ppp": "integer (int64)",
"ddns": "string",
"default_route": "string"
},
"group": {
"id": "integer (int32)",
"name": "string",
"path": "string",
"logo": "string"
},
"location": {
"latitude": "number",
"longitude": "number",
"from": "string",
"range": "number",
"heading": "number"
},
"lan_clients": [
{
"hwaddr": "string",
"last_seen": {
"router": {
"id": "integer (int64)",
"slno": "integer (int64)",
"display_name": "string",
"online": "integer (int32)",
"last_seen_unixtime": "integer (int64)",
"uptime": "integer (int64)",
"temperature": {
"celcius": "number (float)",
"fahrenheit": "number (float)"
},
"temperature_ext": {
"celcius": "number (float)",
"fahrenheit": "number (float)"
},
"cellular": {
"signal": "number (float)",
"technology": "string",
"technology_group": "string",
"network": "string",
"mcc": "integer (int64)",
"mnc": "integer (int64)",
"cell_id": "integer (int64)",
"iccid": "string"
},
"data_usage": {
"usage_today": "integer (int64)",
"usage_current_month": "integer (int64)",
"limit_month": "integer (int64)"
},
"wan": {
"ping": "integer (int64)",
"ip4": "string"
}
}
}
}
]
}
}
}
]
Response Example (default )
{
"code": "integer (int32)",
"message": "string"
}
GET /lan_client/{hwaddr}
Returns a LAN Client based on it's hardware address (hwaddr)
hwaddr (mac address) of device to search for specified in ":" or "-" separated MAC-48 format
Response Example (200 OK)
{
"hwaddr": "string",
"last_seen": {
"router": {
"id": "integer (int64)",
"slno": "integer (int64)",
"display_name": "string",
"online": "integer (int32)",
"last_seen_unixtime": "integer (int64)",
"uptime": "integer (int64)",
"temperature": {
"celcius": "number (float)",
"fahrenheit": "number (float)"
},
"temperature_ext": {
"celcius": "number (float)",
"fahrenheit": "number (float)"
},
"cellular": {
"signal": "number (float)",
"technology": "string",
"technology_group": "string",
"network": "string",
"mcc": "integer (int64)",
"mnc": "integer (int64)",
"cell_id": "integer (int64)",
"iccid": "string"
},
"data_usage": {
"usage_today": "integer (int64)",
"usage_current_month": "integer (int64)",
"limit_month": "integer (int64)"
},
"wan": {
"ping": "integer (int64)",
"ip4": "string",
"uptime_ppp": "integer (int64)",
"ddns": "string",
"default_route": "string"
},
"group": {
"id": "integer (int32)",
"name": "string",
"path": "string",
"logo": "string"
},
"location": {
"latitude": "number",
"longitude": "number",
"from": "string",
"range": "number",
"heading": "number"
},
"lan_clients": [
{
"hwaddr": "string",
"last_seen": {
"router": {
"id": "integer (int64)",
"slno": "integer (int64)",
"display_name": "string",
"online": "integer (int32)",
"last_seen_unixtime": "integer (int64)",
"uptime": "integer (int64)",
"temperature": {
"celcius": "number (float)",
"fahrenheit": "number (float)"
},
"temperature_ext": {
"celcius": "number (float)",
"fahrenheit": "number (float)"
},
"cellular": {
"signal": "number (float)",
"technology": "string",
"technology_group": "string",
"network": "string",
"mcc": "integer (int64)",
"mnc": "integer (int64)",
"cell_id": "integer (int64)",
"iccid": "string"
},
"data_usage": {
"usage_today": "integer (int64)",
"usage_current_month": "integer (int64)",
"limit_month": "integer (int64)"
},
"wan": {
"ping": "integer (int64)",
"ip4": "string",
"uptime_ppp": "integer (int64)"
}
}
}
}
]
}
}
}
Response Example (default )
{
"code": "integer (int32)",
"message": "string"
}
Schema Definitions
RouterSummary:
Example
{
"id": "integer (int64)",
"slno": "string",
"display_name": "string",
"online": "integer (int32)",
"last_seen_unixtime": "integer (int64)",
"group": {
"id": "integer (int32)",
"name": "string",
"path": "string",
"logo": "string"
},
"location": {
"latitude": "number",
"longitude": "number",
"from": "string",
"range": "number",
"heading": "number"
}
}
Router:
- id: integer (int64)
-
ID identifying one router
- slno: integer (int64)
-
serial number, unique per device
- display_name: string
- online: integer (int32)
-
1 if online, 0 if offline
- last_seen_unixtime: integer (int64)
-
when we last heard from the router, can be -1 in case not heard
- uptime: integer (int64)
-
system uptime
- ipsec: object
-
ipsec status, 1 if up, 0 if down, null if not defined
- temperature: Temperature
- temperature_ext: Temperature
- cellular: RouterCellular
- data_usage: RouterDataUsage
- wan: RouterWAN
- group: Group
- location: Location
- lan_clients: LANClient
-
LANClient
Example
{
"id": "integer (int64)",
"slno": "integer (int64)",
"display_name": "string",
"online": "integer (int32)",
"last_seen_unixtime": "integer (int64)",
"uptime": "integer (int64)",
"temperature": {
"celcius": "number (float)",
"fahrenheit": "number (float)"
},
"temperature_ext": {
"celcius": "number (float)",
"fahrenheit": "number (float)"
},
"cellular": {
"signal": "number (float)",
"technology": "string",
"technology_group": "string",
"network": "string",
"mcc": "integer (int64)",
"mnc": "integer (int64)",
"cell_id": "integer (int64)",
"iccid": "string"
},
"data_usage": {
"usage_today": "integer (int64)",
"usage_current_month": "integer (int64)",
"limit_month": "integer (int64)"
},
"wan": {
"ping": "integer (int64)",
"ip4": "string",
"uptime_ppp": "integer (int64)",
"ddns": "string",
"default_route": "string"
},
"group": {
"id": "integer (int32)",
"name": "string",
"path": "string",
"logo": "string"
},
"location": {
"latitude": "number",
"longitude": "number",
"from": "string",
"range": "number",
"heading": "number"
},
"lan_clients": [
{
"hwaddr": "string",
"last_seen": {
"router": {
"id": "integer (int64)",
"slno": "integer (int64)",
"display_name": "string",
"online": "integer (int32)",
"last_seen_unixtime": "integer (int64)",
"uptime": "integer (int64)",
"temperature": {
"celcius": "number (float)",
"fahrenheit": "number (float)"
},
"temperature_ext": {
"celcius": "number (float)",
"fahrenheit": "number (float)"
},
"cellular": {
"signal": "number (float)",
"technology": "string",
"technology_group": "string",
"network": "string",
"mcc": "integer (int64)",
"mnc": "integer (int64)",
"cell_id": "integer (int64)",
"iccid": "string"
},
"data_usage": {
"usage_today": "integer (int64)",
"usage_current_month": "integer (int64)",
"limit_month": "integer (int64)"
},
"wan": {
"ping": "integer (int64)",
"ip4": "string",
"uptime_ppp": "integer (int64)",
"ddns": "string",
"default_route": "string"
},
"group": {
"id": "integer (int32)",
"name": "string"
}
}
}
}
]
}
Temperature:
- celcius: number (float)
-
Router temperature in celcius
- fahrenheit: number (float)
-
Router temperature in fahrenheit
Example
{
"celcius": "number (float)",
"fahrenheit": "number (float)"
}
RouterDataUsage:
- usage_today: integer (int64)
-
Data usage today in bytes
- usage_current_month: integer (int64)
-
Data usage current month in bytes
- limit_month: integer (int64)
-
Monthly data limit for this router in bytes
Example
{
"usage_today": "integer (int64)",
"usage_current_month": "integer (int64)",
"limit_month": "integer (int64)"
}
RouterWAN:
- ping: integer (int64)
-
Latency measurement (ms)
- ip4: string
-
IP4 address of WAN PPP interface
- uptime_ppp: integer (int64)
-
PPP uptime in seconds
- ddns: string
-
dynamic dns hostname
- default_route: string
-
default route reported by device
Example
{
"ping": "integer (int64)",
"ip4": "string",
"uptime_ppp": "integer (int64)",
"ddns": "string",
"default_route": "string"
}
RouterCellular:
- signal: number (float)
-
Signal strength in dBm
- technology: string
-
Technology type reported by the modem
- technology_group: string
-
Common technology definition (2G, 3G, 4G, etc.)
- network: string
-
Network identifier provided by the cell tower
- mcc: integer (int64)
- mnc: integer (int64)
- cell_id: integer (int64)
- iccid: string
Example
{
"signal": "number (float)",
"technology": "string",
"technology_group": "string",
"network": "string",
"mcc": "integer (int64)",
"mnc": "integer (int64)",
"cell_id": "integer (int64)",
"iccid": "string"
}
Group:
- id: integer (int32)
- name: string
- path: string
- logo: string
Example
{
"id": "integer (int32)",
"name": "string",
"path": "string",
"logo": "string"
}
Location:
- latitude: number
- longitude: number
- from: string fixed, cellid, gps
- range: number
- heading: number
-
Heading in degrees
Example
{
"latitude": "number",
"longitude": "number",
"from": "string",
"range": "number",
"heading": "number"
}
LANClient:
- hwaddr: string
- last_seen: LANClientLogEntry
Example
{
"hwaddr": "string",
"last_seen": {
"router": {
"id": "integer (int64)",
"slno": "integer (int64)",
"display_name": "string",
"online": "integer (int32)",
"last_seen_unixtime": "integer (int64)",
"uptime": "integer (int64)",
"temperature": {
"celcius": "number (float)",
"fahrenheit": "number (float)"
},
"temperature_ext": {
"celcius": "number (float)",
"fahrenheit": "number (float)"
},
"cellular": {
"signal": "number (float)",
"technology": "string",
"technology_group": "string",
"network": "string",
"mcc": "integer (int64)",
"mnc": "integer (int64)",
"cell_id": "integer (int64)",
"iccid": "string"
},
"data_usage": {
"usage_today": "integer (int64)",
"usage_current_month": "integer (int64)",
"limit_month": "integer (int64)"
},
"wan": {
"ping": "integer (int64)",
"ip4": "string",
"uptime_ppp": "integer (int64)",
"ddns": "string",
"default_route": "string"
},
"group": {
"id": "integer (int32)",
"name": "string",
"path": "string",
"logo": "string"
},
"location": {
"latitude": "number",
"longitude": "number",
"from": "string",
"range": "number",
"heading": "number"
},
"lan_clients": [
{
"hwaddr": "string",
"last_seen": {
"router": {
"id": "integer (int64)",
"slno": "integer (int64)",
"display_name": "string",
"online": "integer (int32)",
"last_seen_unixtime": "integer (int64)",
"uptime": "integer (int64)",
"temperature": {
"celcius": "number (float)",
"fahrenheit": "number (float)"
},
"temperature_ext": {
"celcius": "number (float)",
"fahrenheit": "number (float)"
},
"cellular": {
"signal": "number (float)",
"technology": "string",
"technology_group": "string",
"network": "string",
"mcc": "integer (int64)",
"mnc": "integer (int64)",
"cell_id": "integer (int64)",
"iccid": "string"
},
"data_usage": {
"usage_today": "integer (int64)",
"usage_current_month": "integer (int64)",
"limit_month": "integer (int64)"
},
"wan": {
"ping": "integer (int64)",
"ip4": "string",
"uptime_ppp": "integer (int64)",
"ddns": "string"
}
}
}
}
]
}
}
}
LANClientLogEntry:
- router: Router
- unixtime: integer (int64)
- hostname: string
- eth: integer (int32)
- ip: string
Example
{
"router": {
"id": "integer (int64)",
"slno": "integer (int64)",
"display_name": "string",
"online": "integer (int32)",
"last_seen_unixtime": "integer (int64)",
"uptime": "integer (int64)",
"temperature": {
"celcius": "number (float)",
"fahrenheit": "number (float)"
},
"temperature_ext": {
"celcius": "number (float)",
"fahrenheit": "number (float)"
},
"cellular": {
"signal": "number (float)",
"technology": "string",
"technology_group": "string",
"network": "string",
"mcc": "integer (int64)",
"mnc": "integer (int64)",
"cell_id": "integer (int64)",
"iccid": "string"
},
"data_usage": {
"usage_today": "integer (int64)",
"usage_current_month": "integer (int64)",
"limit_month": "integer (int64)"
},
"wan": {
"ping": "integer (int64)",
"ip4": "string",
"uptime_ppp": "integer (int64)",
"ddns": "string",
"default_route": "string"
},
"group": {
"id": "integer (int32)",
"name": "string",
"path": "string",
"logo": "string"
},
"location": {
"latitude": "number",
"longitude": "number",
"from": "string",
"range": "number",
"heading": "number"
},
"lan_clients": [
{
"hwaddr": "string",
"last_seen": {
"router": {
"id": "integer (int64)",
"slno": "integer (int64)",
"display_name": "string",
"online": "integer (int32)",
"last_seen_unixtime": "integer (int64)",
"uptime": "integer (int64)",
"temperature": {
"celcius": "number (float)",
"fahrenheit": "number (float)"
},
"temperature_ext": {
"celcius": "number (float)",
"fahrenheit": "number (float)"
},
"cellular": {
"signal": "number (float)",
"technology": "string",
"technology_group": "string",
"network": "string",
"mcc": "integer (int64)",
"mnc": "integer (int64)",
"cell_id": "integer (int64)",
"iccid": "string"
},
"data_usage": {
"usage_today": "integer (int64)",
"usage_current_month": "integer (int64)",
"limit_month": "integer (int64)"
},
"wan": {
"ping": "integer (int64)",
"ip4": "string",
"uptime_ppp": "integer (int64)",
"ddns": "string",
"default_route": "string"
},
"group": {}
}
}
}
]
}
}