Skip to main content
The OCPP 1.6 API lets you send standard OCPP 1.6 commands to any charge point connected to Dynamo CSMS. Commands are executed in real time over the existing OCPP WebSocket connection. All endpoints require an organization API key with the write:charge_points scope unless noted otherwise. Base URL: https://api.dynamo-csms.com

Send generic command

POST /api/v1/ocpp16/send_command Sends any arbitrary OCPP 1.6 command to a charge point. Use the specific command endpoints below when available — this endpoint is intended for commands not covered by dedicated routes.
string
required
The target charge point’s unique identifier.
string
required
OCPP 1.6 action name (e.g. "GetConfiguration", "ChangeConfiguration", "GetLocalListVersion").
object
required
Command-specific payload as defined in the OCPP 1.6 specification.
Response 200 OK
string
OCPP response status from the charge point. Typically Accepted, Rejected, or NotImplemented.
object
Raw OCPP response payload from the charge point.
integer
Round-trip latency in milliseconds between the API and the charge point.

Remote start transaction

POST /api/v1/ocpp16/remote_start_transaction Instructs the charge point to start a charging session on the specified connector, as if an RFID card with the given id_tag was presented at the hardware.
string
required
Target charge point identifier.
string
required
The RFID identifier or user token to authorize the session (max 20 characters).
integer
Connector number to start on. If omitted, the charge point selects an available connector.
object
Optional OCPP ChargingProfile to apply to the session. Controls power limits and schedules.
Response 200 OK
A status of Accepted means the charge point acknowledged the command. The session will start once the charge point sends a StartTransaction message — subscribe to webhooks or poll active_transactions to confirm.

Remote stop transaction

POST /api/v1/ocpp16/remote_stop_transaction Remotely stops an active charging session.
string
required
Target charge point identifier.
integer
required
The OCPP transaction ID of the session to stop. Retrieve this from the active transactions endpoint.
Response 200 OK

Change availability

POST /api/v1/ocpp16/change_availability Changes the availability of a connector or the entire charge point.
string
required
Target charge point identifier.
integer
required
Connector to change. Use 0 to apply the change to all connectors on the charge point.
string
required
New availability state. Must be one of:
  • "Operative" — connector accepts new sessions
  • "Inoperative" — connector rejects new sessions (e.g. for maintenance)
Response 200 OK
If the connector is currently in a session, the charge point may return "Scheduled" — the change will take effect when the session ends.

Set charging profile

POST /api/v1/ocpp16/set_charging_profile Applies an OCPP charging profile to a connector to limit or schedule charging power.
string
required
Target charge point identifier.
integer
required
Target connector. Use 0 to set a charge-point-wide profile.
object
required
OCPP 1.6 ChargingProfile object.
Response 200 OK

Clear charging profile

POST /api/v1/ocpp16/clear_charging_profile Removes a previously set charging profile from the charge point.
string
required
Target charge point identifier.
integer
The chargingProfileId to remove. If omitted, all profiles matching the optional filter fields are cleared.
integer
Limit clearing to a specific connector.
string
Limit clearing to profiles with this purpose.
integer
Limit clearing to profiles at this stack level.
Response 200 OK

Reset charge point

POST /api/v1/ocpp16/reset Sends a reset command to the charge point.
string
required
Target charge point identifier.
string
required
Reset type:
  • "Soft" — the charge point finishes active sessions before restarting
  • "Hard" — immediate restart, active sessions are terminated
Response 200 OK

Trigger message

POST /api/v1/ocpp16/trigger_message Requests the charge point to send a specific OCPP message immediately, rather than waiting for its scheduled interval.
string
required
Target charge point identifier.
string
required
The OCPP message type to trigger. Valid values: BootNotification, DiagnosticsStatusNotification, FirmwareStatusNotification, Heartbeat, MeterValues, StatusNotification.
integer
Required for MeterValues and StatusNotification — specifies which connector to trigger the message for.
Response 200 OK

Reserve connector

POST /api/v1/ocpp16/reserve_now Places a reservation on a specific connector for a given user tag, preventing other users from starting sessions until the reservation expires or is cancelled.
string
required
Target charge point identifier.
integer
required
Connector to reserve. Must be > 0.
string
required
ISO 8601 datetime when the reservation expires (e.g. "2024-03-10T17:00:00Z").
string
required
RFID tag or user identifier that the reservation is for.
integer
required
A unique integer identifier for this reservation (chosen by you, used to cancel it later).
string
Optional parent RFID tag for group reservations.
Response 200 OK
Possible statuses from the charge point: Accepted, Faulted, Occupied, Rejected, Unavailable.

Cancel reservation

POST /api/v1/ocpp16/cancel_reservation Cancels an existing reservation on a charge point.
string
required
Target charge point identifier.
integer
required
The reservation_id of the reservation to cancel.
Response 200 OK

Get active transactions

GET /api/v1/ocpp16/active_transactions/{charge_point_id} Returns all currently active charging transactions on the specified charge point.
string
required
The charge point to query.
Response 200 OK
integer
Meter reading at session start in Wh.
integer
Latest meter reading in Wh.
integer
Energy delivered in this session so far, in Wh.

Get all charge point statuses

GET /api/v1/ocpp16/charge_points/status Returns the current OCPP status of all charge points in your organization. Requires read:charge_points scope.
string
Filter by OCPP status: Available, Preparing, Charging, SuspendedEVSE, SuspendedEV, Finishing, Reserved, Unavailable, Faulted.
integer
Page number (default: 1).
integer
Results per page (default: 50, max: 200).
Response 200 OK

Error responses