Changelog
Versioned, additive changes to the public API. Breaking changes
require a new /v{N} prefix and a deprecation window on the old
surface; see the versioning policy in the API
reference.
Unreleased
- 2026-10-06 — Subscriber rows from
GET /v1/subscribersandGET /v1/searchgainplan_nameandsubscription_status: the plan and status of the subscription the person is on (an active line they hold, or a subscription they pay for, most current first). Both are null when they have no subscription. A restricted API key needssubscriptions:readforsubscription_status, plusplans:readforplan_name, or the keys are left off.GET /v1/subscribers/:iddoes not return them. - 2026-09-28 — The
referralobject gainsreferee_plan_idandreferee_plan_name: the plan the referee is on now, read from their own line ofreferee_subscription_id. Both are null when the referee holds no line there.GET /v1/referralsreturns them on every row with no extra request, and thereferral.*webhooks carry them too. - 2026-08-14 —
plan_idonGET /v1/subscribersnow matches only subscribers currently on the plan (was: matched any historical subscription or line, so a retired plan could return tens of thousands of cancelled subscribers). Newever_on_plan_idparam provides that historical behavior explicitly. - Docs site launched at
docs.sandbox.helium-os.example. - Interactive try-it on every endpoint; multi-language code samples on every operation.
- State diagrams for SIM + Port resource guides.