Skip to content

Changelog

Signup for API Updates

This changelog lists all updates, additions, and changes to the Tenovi APIs. To receive email notifications whenever new updates are published, complete the form and we'll keep you in the loop.

Subscribe for Updates

Expanded Error Messages & Debugging Guide

HWI APIDocumentationImprovement

The Common Error Messages guide has been rebuilt into a comprehensive Error Messages & Debugging reference covering every error the HWI API can return, what each means, and how to resolve it.

What’s new

  • Quick reference status-code index — a table of every HTTP status the API returns (200500), each linking straight to the relevant section.
  • A debugging checklist — an ordered set of first checks (status code before body, trailing slashes, environment keys, CLIENT_DOMAIN match, rate limiting, capturing details for 500s) for when you don’t yet have an exact error message.
  • How errors are structured — the difference between general detail errors and field-keyed 400 validation errors.
  • Fuller status-code coverage — dedicated sections for 401, 403, 404, and 429, plus 400, 405, 415, and 500.
  • Endpoint-specific validation tables — the 400 messages each endpoint can return (Devices, Device Properties, Patients, Measurements, Webhooks, and Replacements), what triggers them, and how to fix them.

New Patient Records Documentation & Migration Guide

HWI APIPatientsDocumentationNew Feature

We’ve added a dedicated Patients section to the docs covering how to manage patient records as the stable identity layer of your integration.

New pages

  • Patients Overview — why the patient object matters, why external_id is the stable spine of an integration, and how to build patient-first from day one.
  • Patients Object — the full field reference for the hwi-patients endpoint, including create, retrieve, update, and delete calls, address verification behavior, and how patient records relate to HWI Devices and webhooks.
  • Migrating to the Patient Object — a step-by-step guide for accounts that already activate devices with an external_id but have never populated the rest of the patient record. It walks through backfilling existing records and adopting explicit patient create/update calls in your device activation flow.

Also documented

  • The hwi-patients list endpoint is always paginated — it returns a paginated response object whether or not ?page= is supplied. See the Pagination Guide for details.
  • If you already activate devices with an inline external_id, you are encouraged to adopt explicit hwi-patients create/update calls so addresses are verified before a device ships and patient data stays consistent across every linked device.

AI-Friendly Docs: llms.txt & Downloadable AI Prompts

DocumentationNew Feature

We’ve made the Tenovi docs easier to use with AI coding assistants.

llms.txt support

The full documentation site is now published in the llms.txt standard — a plain-text, LLM-friendly format you can point your AI layer at:

Links are available in the site footer, sidebar, and homepage.

Downloadable AI prompts for recipes

All Recipes now include a ready-to-use AI prompt you can hand to your assistant of choice. Rather than adapting a fixed code sample, the prompt interviews you and generates a working script in the language of your choice. Browse the Recipes overview for the recipes that include a downloadable prompt.

Quick Start: Authentication Walkthrough

DocumentationImprovement

The Quick Start Guide now includes a complete authentication section — the client-specific base URL, the Api-Key authorization header, and a copy-paste cURL example — so you can make your first request immediately after generating an API key.

Device Name Change: Tenovi BPM - L is now Tenovi BPM - Wide Range

DevicesSystem Update

The blood pressure monitor cuff previously named Tenovi BPM - L has been renamed to Tenovi BPM - Wide Range (22 - 45cm cuff). The device, sensor code, and functionality are unchanged — only the device name has been updated.

We automatically map the legacy Tenovi BPM - L name to the new Tenovi BPM - Wide Range name, so existing integrations will continue to work. Updating to the new name is not required, but it is encouraged.

For comprehensive information on all device types available for order on your specific account, use the hwi-device-types endpoint — it returns the current, valid device names for use when activating devices.

See the Tenovi BPM device docs for the full list of available cuff sizes.

Automatic Retry for Failed Measurement Webhooks

HWI APIWebhooksMeasurementsImprovement

Failed measurement webhook deliveries are now automatically retried with exponential backoff, rather than failing on the first attempt. A failure tracker records each unsuccessful delivery and re-attempts it, so transient outages on your receiving endpoint no longer drop measurement data.

This applies to measurement webhooks. Fulfillment, special-order, and patient webhooks are not yet on the automatic retry path.

Shipping Details in Special Orders CSV Export

Web AppBulk OrdersImprovement

The Special Orders CSV export in the Tenovi Web App now includes shipping-detail columns, populated for customer accounts:

  • shipping_carrier
  • shipping_cost
  • shipping_tracking_link
  • shipping_label_link
  • shipping_qr_code_link
  • address_status
  • shipping_phone_number
  • do_not_bill_for_shipping

This lets you reconcile shipments — carrier, cost, tracking/label links, and address-verification status — directly from the export without a separate lookup. Column values are populated when the corresponding shipping data is present on the order.

New Support Dashboard in the Web App

Web AppNew Feature

A new Support Dashboard is now available in the Tenovi Web App, giving you enhanced visibility and control over your support requests.

What’s New

  • Company-Wide Visibility — See all tickets submitted by anyone within your company in one centralized location.
  • Real-Time Status Updates — Easily track the progress of your requests and instantly see whether a ticket is Open or Closed.
  • Comprehensive Details at a Glance — View who requested the ticket, the relevant Gateway ID, Category, and Device Type directly from the dashboard.
  • Advanced Search & Filtering — Search by Ticket ID, subject, or specific properties. Filter or sort columns (like Created Date or Last Activity) to prioritize your view.
  • Export Capabilities — Export your ticket list directly from the dashboard with the click of a button.

What’s Staying the Same

Nothing is changing regarding how you submit tickets. You can continue to submit your support requests exactly as you always have.

How to Access

  1. Look at the navigation menu on the left side of your screen.
  2. Scroll down to the Help & Support section.
  3. Click on Support Dashboard.

Suppress Battery & Status Data from Webhooks

HWI APIWebhooksWeb AppImprovement

You can now request whether battery and other device status data is included in your outbound webhook payloads. To disable status data, contact your Customer Success Manager.

Special Order Timestamps & Bug Fixes

HWI APIBulk OrdersWebhooksNew FeatureBug Fix

New Feature

Bug Fixes

  • Fix for GET /clients/{client}/hwi/hwi-replacements/: the endpoint now returns the full set of replacement orders for your client instead of a truncated subset, and also can return the standard pagination envelope rather than a bare array.
  • Fix for GET hwi-devices/{id} so the status field correctly returns “Available for Pickup” when a device is being held at a carrier facility for pickup. Previously these devices were returned with status “Dropshipped” via the API even though the web app showed the correct status.

Pagination: Phase 2

HWI APIDeviceMeasurementsImprovement

Pagination is available on all measurement, device, and supply order endpoints. If you have not yet updated your integration to use pagination or timestamp filtering, requests to the following endpoints return truncated responses:

  • patients/{id}/measurements - 1,000-result cap on unpaginated requests, last 30 days
  • hwi-devices/{id}/measurements - 1,000-result cap on unpaginated requests, last 30 days
  • hwi-patient-measurements - 1,000-result cap on unpaginated requests, last 30 days
  • hwi-devices, hwi-hardware-uuid-logs, hwi-replacements - 1,000-result cap
  • hwi-patients - always paginated; returns a paginated response object whether or not ?page= is supplied

See the Pagination Guide for details and migration notes.

New Fulfillment Webhook Status: Available for Pickup

HWI APIWebhooksFulfillmentNew Feature

A new Available for Pickup status has been added to Fulfillment Webhooks. This status fires when a carrier marks a package as held at a facility (e.g. FedEx OnSite, local Post Office) rather than delivered to the patient’s address.

Delivered status change: Delivered will now only fire when a package is successfully dropped off at the patient’s address. Previously, carrier-held packages were categorized as Delivered.

Action required: If your integration triggers workflows on Delivered (e.g. patient enrollment, billing, or welcome messages), those actions will not fire for packages held for pickup. Update your logic to handle both Delivered and Available for Pickup as appropriate for your workflows.

See the Fulfillment Webhooks docs for full details.

Pagination: Phase 1

HWI APIDeviceMeasurementsImprovement

Pagination is available on all measurement, device, and supply order endpoints. Add ?page=1 to any affected endpoint to enable pagination. See the Pagination Guide for details and migration notes.

Patients Object

HWI APINew Feature

You can now create patient records in Tenovi via API. This enables you to attach patient information to devices, fulfillment requests, and measurements with more ease. See the Patients API reference for full details.

Bulk Orders API & Special Order Webhooks

HWI APIBulk OrdersWebhooksNew Feature

Two new additions for managing bulk and special orders:

  • Get Bulk Orders endpoint — retrieve shipping info, fulfillment status, and complete device manifests in a single request.
  • Special/Bulk Order Webhook — receive real-time updates on supply, bulk, replacement, return label, and demo unit orders.

See the Bulk Orders docs and Special Order Webhooks docs for details.

Device Replacement API Endpoint

HWI APIDevicesImprovement

A new endpoint simplifies the device replacement process, providing a dedicated API pathway for requesting replacement physical devices — including Gateways — without creating a new HWI Device object or triggering a duplicate order flag.

Workflow: Create a replacement order via the endpoint specifying device, Gateway, or both → Tenovi dropships to the provided address → the original HWI Device record is maintained → if a replacement Gateway was requested, hardware_uuid is automatically updated on all corresponding devices and a Fulfillment Webhook is sent. Track all replacement orders via the Special Orders dashboard in the Tenovi WebApp.

Note: warranty replacements must still be requested through the Tenovi Web App via a support ticket. See the Replacing Devices docs.

Legacy Delivery Types Deprecated

HWI APIFulfillmentSystem Update

The legacy “Priority” and “Shipping” order delivery types have been deprecated. All orders requiring proof-of-delivery must now use the require_signature flag in the Fulfillment Request object. Clients can still submit orders using the legacy names, but they will be shipped with default options (no proof-of-delivery) if the flag is not set.

New Fulfillment Webhook Events

HWI APIWebhooksFulfillmentImprovement

Fulfillment Webhooks now fire for three additional events to keep you better informed on dropshipment request status:

  • Client Action Required — the request needs attention (e.g. invalid address or duplicate submission).
  • On Hold — the request is temporarily on hold at Tenovi (e.g. device out of stock).
  • Ready to Ship — the request has passed internal validation and is queued for fulfillment.

See the Fulfillment Webhooks docs for full event details.

Device Compatibility Validation for Supply Orders

ASR APISupplyNew Feature

When requesting a new supply order via the request_supplies endpoint, you may now include an optional related_client_device_id field (for HWI clients, this is the HWI Device ID). When included, Tenovi will validate that the requested supply is compatible with the corresponding device before processing the order.

Glucometer Strip Tracking for Cellular Glucometers

ASR APIGlucometerImprovement

Clients on ASR plans can now track glucometer strip quantities and request replacement strips specifically for Tenovi Cellular Glucometers. Use the device IMEI (rather than Gateway ID) when retrieving or updating glucometer supply information or creating a new supply request. Gateway-connected glucometers can continue to use the corresponding Gateway ID.

Ship Gateway Only Flag

HWI APIDevicesFulfillmentNew Feature

A new ship_gateway_only flag has been added to the Fulfillment Request object on the hwi-devices endpoint. Use this flag when a patient already owns a Tenovi Gateway-compatible device but still needs a Gateway dropshipped. Only the Gateway cost is billed for these requests.

Webhook enabled_by_default Flag

HWI APIWebhooksImprovement

Measurement Webhooks now support an enabled_by_default flag. When set to false, the webhook is added to your account without automatically receiving measurement data from all devices. Use the measurement_webhook_id Device Property to selectively enable the webhook for specific devices — useful for testing a new webhook with a small subset of devices before rolling it out broadly. The flag defaults to true.

API Access Restricted to Trusted Hosts

HWI APISecurityImprovement

Browser-based calls to the Tenovi API are now restricted to trusted hosts only.

Prior hardware_uuid in Fulfillment Webhooks

HWI APIWebhooksFulfillmentImprovement

“Replaced” and “Unlinked” Fulfillment Webhooks now include the hardware_uuid for the prior device (e.g. the Gateway being replaced or unlinked) in the previously deprecated device_id field. The hardware_uuid field continues to carry the current hardware UUID (i.e. the replacement Gateway, or null if unlinked).

Per-Device Measurement Webhook Routing

HWI APIWebhooksDevicesNew Feature

HWI clients can now route measurement data from a specific device to a single, user-selected Measurement Webhook instead of broadcasting to all webhooks. Set the measurement_webhook_id Device Property to the desired webhook ID to enable this, or set it to an empty string to revert to the default behavior.

You can also query all devices associated with a specific webhook using the properties__key and properties__value query parameters on the hwi-devices endpoint.

Gateway List & Info Endpoint Updates

HWI APIGatewaysNew Feature

Two updates to Gateway endpoints for HWI clients:

  • New hwi-gateways endpoint — returns a paginated list of all Gateways associated with your account, including useful dates for sorting and filtering.
  • Updated hwi-gateway-info endpoint — now includes explicit fields indicating when a Gateway was assigned to your account, when it was dropshipped (if applicable), and which devices (if any) are whitelisted to it.

Optional patient.external_id & Email Support

HWI APIDevicesPatientsImprovement

When activating a new HWI Device with patient information, the patient.external_id field is now optional. You may also include a patient email address — it is not validated and is for reference purposes only, though Tenovi Tech Support may use it when resolving service requests.

ASR Supply Types Endpoint

ASR APISupplyNew Feature

A new asr-supply-types endpoint is available for ASR clients, returning a list of valid supply names that can be used when ordering supplies via API. See the ASR API reference for details.

Glucometer Supplies Endpoint & Supply Request Refactor

ASR APIGlucometerSupplyNew FeatureImprovement

New: A Glucometer Supplies endpoint is now available for ASR clients to query the estimated number of glucometer strips remaining for a patient (based on strips shipped minus measurements taken), or to update this estimate manually. See the ASR API reference for details.

Improvement: The “Request Supply” endpoint has been refactored to sit alongside all other ASR-specific endpoints. The original endpoint (CLIENT_DOMAIN/devices/supply-requests/) remains available temporarily for backwards compatibility, but clients should migrate to the new path (CLIENT_DOMAIN/asr/supply-requests/).

Array Webhooks, Signature Requests & API Improvements

HWI APIWebhooksMeasurementsDevicesNew FeatureImprovement

New features:

  • Array-based Webhook POST — Measurement Webhooks can now be configured to POST related measurements (e.g. blood pressure and pulse from a single BPM reading) as a single JSON array instead of individual requests.
  • Simplified Signature Confirmation — Request delivery signature confirmation via a boolean field in the Fulfillment Request object instead of a separate device name (additional charges may apply).

Improvements:

  • All timestamps in Webhook data are now standardized to YYYY-MM-DDTHH:MM:SS.ssssssZ format — please verify your Webhook integrations handle this correctly.
  • The hwi-devices endpoint no longer requires a matching sensor_code; only the device.name field is required.
  • A webhook_responses field has been added to the Measurements object, recording HTTP response codes for all webhooks that fired for a given measurement (comma-separated).
  • HWI Webhooks are now enabled for all measurements, including those from RPM software-based accounts.
  • The hwi-device-types endpoint now includes image, up_front_cost, and shipping_cost fields to support custom shop integrations.