Skip to main content
POST
curl

Authorizations

x-api-key
string
header
required

Path Parameters

deviceId
string
required

The unique identifier for the EV Charger device

Example:

"device_abc123"

Body

application/json

A single EV-charger action plus optional onConflict strategy and sandbox controls.

Action variants describe what the API accepts. Per-device support varies; the commands map on GET /ev-charger/{deviceId} shows which actions a specific device handles.

action
EV Charger Action · object
required

A canonical EV-charger command. charge begins charging (rate-capped by power/current, stopped by energy); idle pauses, holding the session; the auto.* modes hand control to the charger own optimisation and run until replaced. auto.charge_surplus_only charges from on-site surplus alone and stops when it runs out; auto.charge_surplus_first tops up from the grid so charging never stops.

Examples:
onConflict
enum<string>

cancel_and_replace cancels the active action before running this one; queue_after defers this one until the active action completes. Omit to receive 409 on conflict.

Available options:
cancel_and_replace,
queue_after
sandbox
Ev Charger Sandbox Config · object

Sandbox controls for testing error paths. Ignored in live environments.

Response

Action acknowledged and queued for processing

success
boolean
required

Always true for success responses.

data
Ev Charger Push Response · object
required

Result of a push. Mirrors the dispatch (command + parameters + deviceType) and carries links.self to track the action. For immediate actions, state reflects the dispatch outcome. For deferred actions, state is scheduled, start carries the fire time, and end the window close when a window was requested.

meta
Response Meta · object
required

Metadata attached to every response: the request identifier, the serving environment, the build timestamp, and the server-side latency.