Doppler API API Reference

Read only API for retrieving data from the Doppler database

API Endpoint
https://doppler.nettec.no/api
Contact: support@nettec.no
Response Content-Types: application/json
Schemes: https
Version: 0.40

Authentication

apiKey

name
Authorization
in
header
description

Per user API key for doppler

routerExtId

name
routerExtId
in
query
description

Per router public key

Paths

GET /router_by_ext_id/{ext_id}

Returns a router based on it's ext ID

ext_id

ext_id of router to get

type
string
in
path
200 OK

Router response

default

unexpected error

Response Example (200 OK)
{
  "id": "integer (int64)",
  "slno": "integer (int64)",
  "display_name": "string",
  "online": "integer (int32)",
  "last_seen_unixtime": "integer (int64)",
  "uptime": "integer (int64)",
  "cellular": {
    "signal": "integer (int64)",
    "technology": "string",
    "technology_group": "string",
    "network": "string",
    "mcc": "integer (int64)",
    "mnc": "integer (int64)",
    "cell_id": "integer (int64)",
    "iccid": "number"
  },
  "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"
  },
  "group": {
    "id": "integer (int32)",
    "name": "string",
    "path": "string",
    "logo": "string"
  },
  "location": {
    "latitude": "number",
    "longitude": "number",
    "from": "string",
    "range": "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)",
          "cellular": {
            "signal": "integer (int64)",
            "technology": "string",
            "technology_group": "string",
            "network": "string",
            "mcc": "integer (int64)",
            "mnc": "integer (int64)",
            "cell_id": "integer (int64)",
            "iccid": "number"
          },
          "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"
          },
          "group": {
            "id": "integer (int32)",
            "name": "string",
            "path": "string",
            "logo": "string"
          },
          "location": {
            "latitude": "number",
            "longitude": "number",
            "from": "string",
            "range": "number"
          },
          "lan_clients": [
            {
              "hwaddr": "string",
              "last_seen": {
                "router": {
                  "id": "integer (int64)",
                  "slno": "integer (int64)",
                  "display_name": "string",
                  "online": "integer (int32)"
                }
              }
            }
          ]
        }
      }
    }
  ]
}
Response Example (default )
{
  "code": "integer (int32)",
  "message": "string"
}

GET /router

Returns all routers from the system that the user has access to

200 OK

List of Routers Ok

default

unexpected error

Response Example (200 OK)
[
  {
    "id": "integer (int64)",
    "slno": "integer (int64)",
    "display_name": "string",
    "online": "integer (int32)",
    "last_seen_unixtime": "integer (int64)",
    "uptime": "integer (int64)",
    "cellular": {
      "signal": "integer (int64)",
      "technology": "string",
      "technology_group": "string",
      "network": "string",
      "mcc": "integer (int64)",
      "mnc": "integer (int64)",
      "cell_id": "integer (int64)",
      "iccid": "number"
    },
    "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"
    },
    "group": {
      "id": "integer (int32)",
      "name": "string",
      "path": "string",
      "logo": "string"
    },
    "location": {
      "latitude": "number",
      "longitude": "number",
      "from": "string",
      "range": "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)",
            "cellular": {
              "signal": "integer (int64)",
              "technology": "string",
              "technology_group": "string",
              "network": "string",
              "mcc": "integer (int64)",
              "mnc": "integer (int64)",
              "cell_id": "integer (int64)",
              "iccid": "number"
            },
            "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"
            },
            "group": {
              "id": "integer (int32)",
              "name": "string",
              "path": "string",
              "logo": "string"
            },
            "location": {
              "latitude": "number",
              "longitude": "number",
              "from": "string",
              "range": "number"
            },
            "lan_clients": [
              {
                "hwaddr": "string",
                "last_seen": {
                  "router": {
                    "id": "integer (int64)",
                    "slno": "integer (int64)",
                    "display_name": "string"
                  }
                }
              }
            ]
          }
        }
      }
    ]
  }
]
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

ID of router to get

type
integer (int64)
in
path
200 OK

Router response

default

unexpected error

Response Example (200 OK)
{
  "id": "integer (int64)",
  "slno": "integer (int64)",
  "display_name": "string",
  "online": "integer (int32)",
  "last_seen_unixtime": "integer (int64)",
  "uptime": "integer (int64)",
  "cellular": {
    "signal": "integer (int64)",
    "technology": "string",
    "technology_group": "string",
    "network": "string",
    "mcc": "integer (int64)",
    "mnc": "integer (int64)",
    "cell_id": "integer (int64)",
    "iccid": "number"
  },
  "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"
  },
  "group": {
    "id": "integer (int32)",
    "name": "string",
    "path": "string",
    "logo": "string"
  },
  "location": {
    "latitude": "number",
    "longitude": "number",
    "from": "string",
    "range": "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)",
          "cellular": {
            "signal": "integer (int64)",
            "technology": "string",
            "technology_group": "string",
            "network": "string",
            "mcc": "integer (int64)",
            "mnc": "integer (int64)",
            "cell_id": "integer (int64)",
            "iccid": "number"
          },
          "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"
          },
          "group": {
            "id": "integer (int32)",
            "name": "string",
            "path": "string",
            "logo": "string"
          },
          "location": {
            "latitude": "number",
            "longitude": "number",
            "from": "string",
            "range": "number"
          },
          "lan_clients": [
            {
              "hwaddr": "string",
              "last_seen": {
                "router": {
                  "id": "integer (int64)",
                  "slno": "integer (int64)",
                  "display_name": "string",
                  "online": "integer (int32)"
                }
              }
            }
          ]
        }
      }
    }
  ]
}
Response Example (default )
{
  "code": "integer (int32)",
  "message": "string"
}

GET /router/{id}/lan_clients

Returns lan clients recently associated with the router

id

ID of router to get

type
integer (int64)
in
path
200 OK

Router response

default

unexpected error

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)",
        "cellular": {
          "signal": "integer (int64)",
          "technology": "string",
          "technology_group": "string",
          "network": "string",
          "mcc": "integer (int64)",
          "mnc": "integer (int64)",
          "cell_id": "integer (int64)",
          "iccid": "number"
        },
        "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"
        },
        "group": {
          "id": "integer (int32)",
          "name": "string",
          "path": "string",
          "logo": "string"
        },
        "location": {
          "latitude": "number",
          "longitude": "number",
          "from": "string",
          "range": "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)",
                "cellular": {
                  "signal": "integer (int64)",
                  "technology": "string",
                  "technology_group": "string",
                  "network": "string",
                  "mcc": "integer (int64)",
                  "mnc": "integer (int64)",
                  "cell_id": "integer (int64)",
                  "iccid": "number"
                },
                "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"
                },
                "group": {
                  "id": "integer (int32)",
                  "name": "string",
                  "path": "string",
                  "logo": "string"
                },
                "location": {
                  "latitude": "number",
                  "longitude": "number",
                  "from": "string",
                  "range": "number"
                },
                "lan_clients": [
                  {
                    "hwaddr": "string",
                    "last_seen": {}
                  }
                ]
              }
            }
          }
        ]
      }
    }
  }
]
Response Example (default )
{
  "code": "integer (int32)",
  "message": "string"
}

GET /lan_client/{hwaddr}

Returns a LAN Client based on it's hardware address (hwaddr)

hwaddr

hwaddr (mac address) of device to search for specified in ":" or "-" separated MAC-48 format

type
string
in
path
200 OK

LANClient response

default

Unexpected error, or not found

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)",
      "cellular": {
        "signal": "integer (int64)",
        "technology": "string",
        "technology_group": "string",
        "network": "string",
        "mcc": "integer (int64)",
        "mnc": "integer (int64)",
        "cell_id": "integer (int64)",
        "iccid": "number"
      },
      "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"
      },
      "group": {
        "id": "integer (int32)",
        "name": "string",
        "path": "string",
        "logo": "string"
      },
      "location": {
        "latitude": "number",
        "longitude": "number",
        "from": "string",
        "range": "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)",
              "cellular": {
                "signal": "integer (int64)",
                "technology": "string",
                "technology_group": "string",
                "network": "string",
                "mcc": "integer (int64)",
                "mnc": "integer (int64)",
                "cell_id": "integer (int64)",
                "iccid": "number"
              },
              "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"
              },
              "group": {
                "id": "integer (int32)",
                "name": "string",
                "path": "string",
                "logo": "string"
              },
              "location": {
                "latitude": "number",
                "longitude": "number",
                "from": "string",
                "range": "number"
              },
              "lan_clients": [
                {
                  "hwaddr": "string",
                  "last_seen": {}
                }
              ]
            }
          }
        }
      ]
    }
  }
}
Response Example (default )
{
  "code": "integer (int32)",
  "message": "string"
}

Schema Definitions

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

cellular: RouterCellular
data_usage: RouterDataUsage
wan: RouterWAN
group: Group
location: Location
lan_clients: LANClient
Example
{
  "id": "integer (int64)",
  "slno": "integer (int64)",
  "display_name": "string",
  "online": "integer (int32)",
  "last_seen_unixtime": "integer (int64)",
  "uptime": "integer (int64)",
  "cellular": {
    "signal": "integer (int64)",
    "technology": "string",
    "technology_group": "string",
    "network": "string",
    "mcc": "integer (int64)",
    "mnc": "integer (int64)",
    "cell_id": "integer (int64)",
    "iccid": "number"
  },
  "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"
  },
  "group": {
    "id": "integer (int32)",
    "name": "string",
    "path": "string",
    "logo": "string"
  },
  "location": {
    "latitude": "number",
    "longitude": "number",
    "from": "string",
    "range": "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)",
          "cellular": {
            "signal": "integer (int64)",
            "technology": "string",
            "technology_group": "string",
            "network": "string",
            "mcc": "integer (int64)",
            "mnc": "integer (int64)",
            "cell_id": "integer (int64)",
            "iccid": "number"
          },
          "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"
          },
          "group": {
            "id": "integer (int32)",
            "name": "string",
            "path": "string",
            "logo": "string"
          },
          "location": {
            "latitude": "number",
            "longitude": "number",
            "from": "string",
            "range": "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)"
                }
              }
            }
          ]
        }
      }
    }
  ]
}

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

Example
{
  "ping": "integer (int64)",
  "ip4": "string",
  "uptime_ppp": "integer (int64)",
  "ddns": "string"
}

RouterCellular:

signal: integer (int64)

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: number
Example
{
  "signal": "integer (int64)",
  "technology": "string",
  "technology_group": "string",
  "network": "string",
  "mcc": "integer (int64)",
  "mnc": "integer (int64)",
  "cell_id": "integer (int64)",
  "iccid": "number"
}

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
Example
{
  "latitude": "number",
  "longitude": "number",
  "from": "string",
  "range": "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)",
      "cellular": {
        "signal": "integer (int64)",
        "technology": "string",
        "technology_group": "string",
        "network": "string",
        "mcc": "integer (int64)",
        "mnc": "integer (int64)",
        "cell_id": "integer (int64)",
        "iccid": "number"
      },
      "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"
      },
      "group": {
        "id": "integer (int32)",
        "name": "string",
        "path": "string",
        "logo": "string"
      },
      "location": {
        "latitude": "number",
        "longitude": "number",
        "from": "string",
        "range": "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)",
              "cellular": {
                "signal": "integer (int64)",
                "technology": "string",
                "technology_group": "string",
                "network": "string",
                "mcc": "integer (int64)",
                "mnc": "integer (int64)",
                "cell_id": "integer (int64)",
                "iccid": "number"
              },
              "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"
              },
              "group": {
                "id": "integer (int32)",
                "name": "string",
                "path": "string",
                "logo": "string"
              },
              "location": {
                "latitude": "number",
                "longitude": "number",
                "from": "string",
                "range": "number"
              },
              "lan_clients": [
                {
                  "hwaddr": "string",
                  "last_seen": {
                    "router": {}
                  }
                }
              ]
            }
          }
        }
      ]
    }
  }
}

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)",
    "cellular": {
      "signal": "integer (int64)",
      "technology": "string",
      "technology_group": "string",
      "network": "string",
      "mcc": "integer (int64)",
      "mnc": "integer (int64)",
      "cell_id": "integer (int64)",
      "iccid": "number"
    },
    "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"
    },
    "group": {
      "id": "integer (int32)",
      "name": "string",
      "path": "string",
      "logo": "string"
    },
    "location": {
      "latitude": "number",
      "longitude": "number",
      "from": "string",
      "range": "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)",
            "cellular": {
              "signal": "integer (int64)",
              "technology": "string",
              "technology_group": "string",
              "network": "string",
              "mcc": "integer (int64)",
              "mnc": "integer (int64)",
              "cell_id": "integer (int64)",
              "iccid": "number"
            },
            "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"
            },
            "group": {
              "id": "integer (int32)",
              "name": "string",
              "path": "string",
              "logo": "string"
            },
            "location": {
              "latitude": "number",
              "longitude": "number",
              "from": "string",
              "range": "number"
            },
            "lan_clients": [
              {
                "hwaddr": "string",
                "last_seen": {
                  "router": {
                    "id": "integer (int64)",
                    "slno": "integer (int64)",
                    "display_name": "string"
                  }
                }
              }
            ]
          }
        }
      }
    ]
  }
}

Error:

code: integer (int32)
message: string
Example
{
  "code": "integer (int32)",
  "message": "string"
}