Documentation
Toggle Dark/Light/Auto mode Toggle Dark/Light/Auto mode Toggle Dark/Light/Auto mode Back to homepage

Gateway Performance Management

Overview

Gateway Performance Management API provides access to time-series telemetry and performance metrics for gateways in the network.
It enables monitoring of operational health indicators such as connectivity, system load, and hardware-related metrics over a defined time range.

Gateway Performance endpoints show the telemetry that was received from the Gateway.


Key Capabilities

  • Time-series performance and telemetry data retrieval
  • Filtering by metric type and field
  • Time range selection (start and end timestamps)
  • Pagination and sorting support (ASC/DESC)
  • Aggregation by customer, provider, or gateway group
  • Structured performance metric output

Typical Use Cases

  • Monitoring gateway health and operational status
  • Detecting performance degradation over time
  • Visualizing telemetry data in BI or monitoring dashboards
  • Troubleshooting hardware or connectivity issues

How to get telemetry for single Gateway

GET performance by Gateway ID

/api/gateway/{gatewayId}/performance/{measurement}/{field}?startMs=1699285213000&stopMs=1699286213000&order=DESC&limit=2

  • {gatewayId} = gateway ID
  • measurement = Performance Measure (e.g. battery)
  • field = specific performance measure (e.g. chargerInputVoltage)
  • {startMs} = the timestamp to start sampling (in milliseconds)
  • {stopMs} = the timestamp at which you want to end the sample (in milliseconds)
  • {order} = order (ASC or DESC)
  • {limit} = limit of entries

Response Body:

In the response, up to limit entries are returned. Pagination is achieved by making subsequent requests with the updated startMs/stopMs parameters (by specifying the last timestamp that was received in response).

Response body:

[
{
  "timeMs" : 1699279304325,
  "value" : 23.23
},
{
  "timeMs" : 1699279316777,
  "value" : 23.23
},
...
]

How to get telemetry for different Gateways

GET Gateway’s performance by Cutomer:

/api/gatewayPerformance/customer/{customerId}/{measurement}/{field}?startMs=1699285213000&stopMs=1699286213000&showTags=customerId,gatewayMac&order=DESC&limit=100


GET Gateway’s performance by Provider:

/api/gatewayPerformance/provider/{providerId}/{measurement}/{field}?startMs=1699285213000&stopMs=1699286213000&showTags=customerId,gatewayMac&order=DESC&limit=100


GET Gateway’s performance by Gateway Group:

GET /api/gatewayPerformance/gatewayGroup/{gatewayGroupId}/{measurement}/{field}?startMs=1699285213000&stopMs=1699286213000&showTags=customerId,gatewayMac&order=DESC&limit=100


  • {customerId} = customer ID
  • {providerId} = provider ID
  • {gatewayGroupId} = Gateway Group ID
  • measurement = Performance Measure (e.g. battery)
  • field = specific performance measure (e.g. chargerInputVoltage)
  • {startMs} = the timestamp to start sampling (in milliseconds)
  • {stopMs} = the timestamp at which you want to end the sample (in milliseconds)
  • {order} = order (ASC or DESC)
  • {limit} = limit of entries
  • {showTags} = comma-separated set of tags to show. Available tags: period, gatewayMac, gatewayId, customerId, providerId, gatewayGroupId

Response body:

[
{
  "timeMs" : 1699279304325,
  "value" : 23.23,
  "tags" : {
    "gatewayMac" : "AAAABBBBDDDD",
    "gatewayId" : "11565620e9209e2343498347"
  }
},
{
  "timeMs" : 1699279316777,
  "value" : 23.23,
  "tags" : {
    "gatewayMac" : "AAAABBBBDDDD",
    "gatewayId" : "11565620e9209e2343498347"
  }
},
...
]