Authentication
All webhook management endpoints require your API key:Available events
| Event | Description |
|---|---|
charge_point.connected | A charge point establishes a WebSocket connection |
charge_point.disconnected | A charge point loses its connection |
charge_point.status_changed | Connector status changes (Available, Charging, Faulted, etc.) |
session.started | A charging session begins |
session.ended | A charging session completes |
session.cost_updated | Session cost is recalculated mid-session |
commissioning.started | Charger commissioning process begins |
commissioning.completed | Charger is fully commissioned and operational |
commissioning.failed | Commissioning failed — check the error details |
alert.triggered | A monitoring alert fires |
alert.resolved | A previously triggered alert clears |
firmware.update_started | Firmware update begins on a charge point |
firmware.update_completed | Firmware update finishes successfully |
handover.completed | A charger handover to a new operator completes |
Create a webhook endpoint
POST /api/v1/webhooks/endpoints
HTTPS URL where events will be delivered. Must use
https://.List of event types to subscribe to. Use
["*"] to subscribe to all events.Signing secret for HMAC-SHA256 payload verification. Store this securely — it is not retrievable after creation.
List webhook endpoints
GET /api/v1/webhooks/endpoints
Returns all webhook endpoints registered for your account.
Get a webhook endpoint
GET /api/v1/webhooks/endpoints/{endpoint_id}
The ID of the webhook endpoint to retrieve.
Update a webhook endpoint
PATCH /api/v1/webhooks/endpoints/{endpoint_id}
The ID of the webhook endpoint to update.
New delivery URL for this endpoint.
Replacement list of subscribed event types.
Set to
false to pause delivery without deleting the endpoint.Delete a webhook endpoint
DELETE /api/v1/webhooks/endpoints/{endpoint_id}
The ID of the webhook endpoint to delete.
204 No Content on success.
Delivery history
GET /api/v1/webhooks/endpoints/{endpoint_id}/deliveries
Retrieve the delivery history for a webhook endpoint. Use this to debug failed deliveries or inspect retry behavior.
The ID of the webhook endpoint.
Filter by delivery status:
succeeded, failed, or pending.Number of records to return (max 100).
Unique delivery record ID.
The event type that triggered this delivery.
Delivery status:
succeeded, failed, or pending.HTTP status code returned by your endpoint.
Number of delivery attempts made. Dynamo retries failed deliveries with exponential backoff up to 5 times over 24 hours.
Webhook payload structure
Every event is delivered as an HTTP POST with a JSON body:The event type (e.g.,
session.started).ISO 8601 timestamp of when the event occurred.
Event-specific payload. Structure varies by event type.
Signature verification
When you provide asecret at endpoint creation, every delivery includes an X-Webhook-Signature header. The value is an HMAC-SHA256 digest of the raw request body, prefixed with sha256=.
Always verify this signature before processing a webhook payload. This confirms the request came from Dynamo CSMS and the body was not tampered with in transit.