Register a user's heat pump
Create a new heat pump for a specific user under a specific organization, with a JSON payload.
Authorizations
Path Parameters
Body
Response
OK
The device's console health tone, and the only verdict a client should render: action_required when a partner-resolvable action is pending, else the worst of connection and monitoring, with not_steered for a healthy device nobody optimizes. Do not re-derive it from connection_status/monitoring_status/steering_status — those three are cue-blind and would report a device asking for reauthentication as healthy. The status filter on GET /org/{org_id}/devices and the tone counts on …/devices/summary grade the three statuses only, so a device with a pending action reads action_required here while being counted and filtered under its status tone.
good, warning, critical, not_steered The device's service-health verdict: unhealthy when any component reads no, else healthy when any reads yes, else unknown. As of the last hourly sweep for heat pumps and electric vehicles; unknown until a new device is first swept; null when soft-deleted.
unhealthy, unknown, healthy Why actual_steering_state reads the way it does, from a closed set. unknown covers both a pump with no observation and one whose internal reason is outside the published set; no manufacturer error text is ever carried here.
no_schedule, missing_price_data, coverage_not_price_backed, no_commands, too_few_commands, retries_in_progress, no_critical_calls, commands_failed, commands_successful, physical_compliance_degraded, physical_compliance_low, physical_compliance_healthy, steering_permission_not_granted, subscription_required, non_steerable, no_blocker, steering_disabled, evaluation_pending, unknown When the current pair of desired and observed steering states started — whichever of the two changed last. Null until at least one of them has been recorded. It is a start time, not a last-checked time: an evaluation that finds nothing changed leaves it where it was.
Whether the platform is doing what it should for this pump, component by component, and where the problem starts when it is not. Every cell is a reading of state the evaluators already recorded, so a cell nothing has observed reads not_measured rather than a guess.
Deprecated — use GET /org/{org_id}/notifications/status for per-device-type counts, or GET /org/{org_id}/notifications/actions?device_id=… for the specifics. True when at least one action is pending against this device and the partner must take that action before the device can resume normal operation.
