Pagination
Pagination is available on all measurement, device, patient, and supply order endpoints. Use of pagination enables you to fetch large datasets in a performant manner.
The following API endpoints use pagination by default:
hwi/patients/{id}/measurements/hwi/hwi-devices/{id}/measurements/hwi/hwi-devices/hwi/hwi-patients/hwi/hardware-uuid-logs/hwi/hwi-replacements/asr/supply-requests/
How to Use Pagination
Section titled “How to Use Pagination”Add ?page=1 to any affected endpoint to enable pagination.
GET /clients/{CLIENT_DOMAIN}/hwi/patients/{id}/measurements/?page=1&page_size=100Parameters
Section titled “Parameters”| Parameter | Required | Default | Max | Description |
|---|---|---|---|---|
page | Yes (to enable pagination) | None | None | Page number. Must be passed to activate pagination. |
page_size | No | 100 | 1000 | Number of results per page. |
Response Formats
Section titled “Response Formats”Adding ?page= to your request changes the shape of the response. Non-paginated and paginated requests return different formats.
Non-Paginated (default)
Section titled “Non-Paginated (default)”Without ?page=, results are returned as a flat JSON array. As of May 5, 2026, this array is truncated at 1,000 results (or 30 days for measurement endpoints).
[ { "id": 1, "metric_type": "blood_pressure", ... }, { "id": 2, "metric_type": "blood_pressure", ... }, ...]Paginated
Section titled “Paginated”When ?page= is included, the response is wrapped in a pagination object.
{ "count": 255, "next": "https://api2.tenovi.com/clients/{CLIENT_DOMAIN}/hwi/patients/{id}/measurements/?page=3&page_size=100", "previous": "https://api2.tenovi.com/clients/{CLIENT_DOMAIN}/hwi/patients/{id}/measurements/?page=1&page_size=100", "results": [...]}Iterating Through Pages
Section titled “Iterating Through Pages”Paginated responses include a next field. When next is not null, use it directly as your next request URL. Continue until next returns null.
For measurement endpoints, if no time range or pagination is specified, the response defaults to only include measurements from the last 30 days. Requests without pagination that span more than 30 days are truncated at 1,000 results.
For hwi-devices, hardware-uuid-logs, and hwi-replacements non-paginated responses are truncated at 1,000 results.
The hwi-patients endpoint is always paginated. It returns a paginated response object whether or not ?page= is included, so there is no flat-array mode and no truncation to work around — you simply page through the full result set.
Non-Paginated Requests
Section titled “Non-Paginated Requests”For non-paginated requests (no ?page= parameter), the response remains a flat JSON array. However, the following limits apply:
Measurement Endpoints
- If no time range is specified, results default to the last 30 days.
- If the time range exceeds 30 days, the flat array is truncated at 1,000 results.
Device, Log, and Supply Endpoints
- The flat array is truncated at 1,000 results.
Patient Endpoint
hwi-patientsis always paginated. It returns a paginated response object regardless of whether?page=is supplied, so there is no flat array and no 1,000-result truncation — page throughnextto retrieve every record.
To retrieve complete datasets beyond these limits, adopt pagination (see How to Use Pagination).
Impacted API Endpoints & Default Behaviour
Section titled “Impacted API Endpoints & Default Behaviour”| Endpoint | Default Behavior (effective May 5, 2026) |
|---|---|
GET /clients/{CLIENT_DOMAIN}/hwi/patients/{id}/measurements/ | Last 30 days if no time range specified, and truncated at 1,000 results |
GET /clients/{CLIENT_DOMAIN}/hwi/hwi-devices/{id}/measurements/ | Last 30 days if no time range specified, and truncated at 1,000 results |
GET /clients/{CLIENT_DOMAIN}/hwi/hwi-devices/ | Truncated at 1,000 results |
GET /clients/{CLIENT_DOMAIN}/hwi/hwi-patients/ | Always paginated (no flat-array response) |
GET /clients/{CLIENT_DOMAIN}/hwi/hardware-uuid-logs/ | Truncated at 1,000 results |
GET /clients/{CLIENT_DOMAIN}/hwi/hwi-replacements/ | Truncated at 1,000 results |
GET /clients/{CLIENT_DOMAIN}/asr/supply-requests/ | Truncated at 1,000 results |