Skip to content

Device Status

GET /api/v1/devices/status

Returns a list of all devices across your authorized networks.

Query parameters

ParameterTypeRequiredDescription
site_idinteger or integer[]NoFilter by one or more site IDs (e.g. ?site_id=1&site_id=2)
location_idinteger or integer[]NoFilter by one or more location IDs

Response 200

json
{
  "status": true,
  "message": "Success",
  "data": {
    "count": 2,
    "rows": [
      {
        "id": 101,
        "name": "Store Entrance Camera",
        "network": { "id": 1, "name": "Retail Network A" },
        "site": { "id": 5, "name": "CBD Store" },
        "location": { "id": 12, "name": "Entrance" },
        "status": "online",
        "last_active_timestamp": "2026-03-30T04:10:00.000Z",
        "source": "heartbeat"
      }
    ]
  }
}

Status values

  • online - device sent a heartbeat
  • offline - no heartbeat received

GET /api/v1/devices/status/:id

Returns status for a single device by its ID.

Path parameters

ParameterTypeRequiredDescription
idintegerYesDevice ID

Response 200

json
{
  "status": true,
  "message": "Success",
  "data": {
    "id": 101,
    "name": "Store Entrance Camera",
    "network": { "id": 1, "name": "Retail Network A" },
    "site": { "id": 5, "name": "CBD Store" },
    "location": { "id": 12, "name": "Entrance" },
    "status": "offline",
    "last_active_timestamp": "2026-03-30T03:45:00.000Z",
    "source": "heartbeat"
  }
}

Errors

400 INVALID_PARAM, 403 FORBIDDEN_NETWORKS, 404 NOT_FOUND