1
Configure Your Webhook for Charging Events
In the Smartcar Dashboard, create or edit a webhook integration. Under Triggers, select the following events:
- Charge.IsCharging
- Charge.IsChargingCableConnected
- Charge.StateOfCharge (included as a trigger)
- Charge.ChargingCurrent (included as a trigger)
- Charge.ActiveLimit
- Charge.Amperage
- Charge.Voltage
- Charge.Wattage
- Charge.EnergyAdded
- Charge.TimeToComplete
- TractionBattery.Range
- TractionBattery.NominalCapacity
- Location.PreciseLocation
2
Validate Webhook Events
Smartcar will send a verification request to your endpoint, which you must respond to with a 200 OK status code to complete the setup (see Webhook Verification guide).
Once verified, you will start to receive vehicle data for the vehicles you have subscribed to this webhook. For this guide, we chose not to auto subscribe vehicles, so let’s head over to the Smartcar Dashboard to manually subscribe a vehicle to your webhook.
Select a vehicle from your list of connected vehicles and click on the three dots action menu to the right of the row and click subscribe. Select your newly created webhook from the options and click subscribe.

Subscribe a vehicle to a webhook in the Smartcar Dashboard
eventId
and an eventType
field. The eventType
will indicate the type of event that occurred, such as VEHICLE_STATE
or VEHICLE_ERROR
.
Your handler should gracefully handle both event types. For VEHICLE_STATE
events, you will receive the updated vehicle data. For VEHICLE_ERROR
events, you may want to log the error.
For VEHICLE_STATE
events, you will receive the data in a data
property of the payload. There will also be an array of signals under a triggers
property that caused the event to be sent. Lastly, you will also receive a meta
property with additional context about the event, such as the webhook ID, name, delivery ID, delivery timestamp, etc.
How to track charging sessions
When a vehicle starts charging, you will receive a webhook event with theeventType
of VEHICLE_STATE
and the Charge.IsCharging
signal set to true
. When the vehicle stops charging, you will receive another event with Charge.IsCharging
set to false
. You can use these events to track the start and end of each charging session.
Example event payload: