Skip to main content
PATCH
Update a home kit order’s delivery address, panel, or metadata. Only include the fields you want to change. The delivery address and the panel can only be changed while the order is pending, because the physical kit ships at dispatch. metadata is your own bookkeeping and stays writable for the whole life of the order. There are no add/remove panel endpoints: a home kit carries exactly one panel (it maps 1:1 onto a physical kit product), so the only meaningful panel operation is the swap you do here. Requires the home_kit_orders_manage scope.

Request

Path parameters

string
required
Unique identifier (UUID) of the home kit order to update.

Body parameters

All body parameters are optional — only include the fields you want to change.
object
The address to mail the kit to — one of two shapes: either { location_id } referencing a known test location, or the inline address fields (name, street, city, postal_code, country_code; company_name / house_number / address_line_2 / state / phone / email optional — the same vocabulary as the locations API). Provide exactly one — a location reference or an inline address, not both.
string
UUID of the panel to attach in place of the current one — with exactly one panel per kit, a swap is the only meaningful operation. Only while the order is pending, and only to a panel Aniva has configured with a fulfilment kit product (422 otherwise); a swap to the already-attached panel is a no-op.
object
Your own key/value pairs. Merged into the existing metadata rather than replacing it: keys you omit are preserved, a key sent with a null value is deleted, and an empty object {} clears everything. Limits match Create Home Kit Order, and validation is all-or-nothing — if any key is rejected, nothing is written. Never put personal or clinical data in metadata — it is not treated as patient data and is surfaced to fulfilment partners.

Response

On success, the API returns 200 OK with the updated home kit order and its embedded profile.
string
required
Unique home kit order identifier (UUID).
string
required
UUID of the profile this home kit order belongs to.
string
required
Current home kit order status. One of pending, dispatched, activated, or cancelled.
object
required
The address to mail the kit to — one of two shapes: either { location_id } referencing a known test location, or the inline address fields (name, street, city, postal_code, country_code; company_name / house_number / address_line_2 / state / phone / email optional — the same vocabulary as the locations API). Provide exactly one — a location reference or an inline address, not both.
string
Laboratory sample code the results report under — printed on the physical kit, and what the patient reads off the box as the activation code. null until fulfilment packs the kit. Read-only.
string
required
Collection timestamp reported via Activate — when the patient collected their sample. null until the kit is activated.
object
required
Partner-defined key/value pairs, echoed back verbatim. Always present — {} when unset.
string
required
ISO 8601 timestamp of when the home kit order was created.
string
ISO 8601 timestamp of the last update. May be null.
object
required
The patient profile associated with this home kit order.
HomeKitOrderPanel[]
required
The panel attached to this home kit order — always exactly one (a home kit maps 1:1 onto a physical kit product), replaced in place when you pass panel_id. Look up panel details (name, biomarkers) via List Panels.
HomeKitOrderIndividualBiomarker[]
required
À-la-carte biomarkers attached to this home kit order outside any panel. Cross-reference each biomarker_id against List Biomarkers for display data.

Error responses