Svix

Telematica Webhook Event Types

This is the list of event types that we currently send. For guidance on how to listen to these events, take a look at Svix's guide to consuming webhooks.

charger.charging-command

Triggered upon the execution of a charging command to the charger, regardless of its success or failure.

Example charger.charging-command
JSON
{
  "action": "charger-start",
  "chargerId": "64253244f8057090fb3a822b",
  "code": "RESULT_CONFIRMED",
  "jobId": "charger-start.charge-64253244f8057090fb3a822b",
  "message": "Charger command executed and result confirmed",
  "success": true,
  "type": "charger.charging-command"
}

user.devices-connected

Fired when a user grants authorisation to new device(s) to your app. You might see some an additional key named `vehicles` in the event payload, but it's safe to ignore this key. This is sent for backward-compatibility purposes and will be removed soon.

Example user.devices-connected
JSON
{
  "devices": [
    {
      "clientUserId": "user-id-in-your-database",
      "country": "US",
      "deviceId": "642f07d280dead60533b57c2",
      "deviceType": "vehicle",
      "engineType": "ELECTRIC",
      "make": "Tesla",
      "model": "Model Y",
      "nickname": "My Model Y",
      "vin": "7SAWDDEQXPS685253",
      "year": 2020
    }
  ],
  "type": "user.devices-connected",
  "user": "user-id-in-your-database"
}

user.devices-disconnected

Fired when a device(s) are disconnected. This might be due to expiry of tokens, revocation of authorisation from user, change of credentials, device disconnection from vendor account etc.

Example user.devices-disconnected
JSON
{
  "devices": [
    "642f07d280dead60533b57c2"
  ],
  "type": "user.devices-disconnected",
  "user": "user-id-in-your-database"
}

vehicle.charging-command

Triggered upon the execution of a charging command to the vehicle, regardless of its success or failure.

Example vehicle.charging-command
JSON
{
  "action": "charge-start",
  "code": "RESULT_CONFIRMED",
  "jobId": "charge-start.charge-64253244f8057090fb3a822b",
  "message": "Charging command executed and result confirmed",
  "success": true,
  "type": "vehicle.charging-command",
  "vehicleId": "64253244f8057090fb3a822b"
}

vehicle.charging-status

Fired when a vehicle starts / stops charging.

Example vehicle.charging-status
JSON
{
  "currentState": "Charging",
  "jobId": "641aeef260d202219c22aa3a",
  "message": "Charging-status change detected",
  "type": "vehicle.charging-status",
  "vehicleId": "641aeef260d202219c22f03b",
  "vehicleState": {
    "batteryState": {
      "chargeThresholdMet": true,
      "isCharging": true,
      "isPlugged": true,
      "lastUpdated": "2023-06-29T11:29:11.815Z",
      "range": 216,
      "rangeUnit": "km",
      "soc": 77
    },
    "id": "63ed07f8d2100cc452f57e3d",
    "location": {
      "lastUpdated": "2023-06-29T11:29:11.815Z",
      "latitude": 12.345678,
      "longitude": 7.3321
    },
    "odo": {
      "lastUpdated": "2023-06-29T11:29:11.815Z",
      "unit": "km",
      "value": 12345
    },
    "state": "ACTIVE",
    "stateDescription": "The connection to vehicle is active and the data is up to date.",
    "staticAttributes": {
      "country": "ES",
      "make": "BMW",
      "model": "X2 xDrive25e",
      "nickname": "My BMW X2",
      "registration": "GJ01M20191",
      "vin": "MAT534006MPTS4325",
      "year": 2022
    }
  }
}

vehicle.plug-status

Fired when a vehicle is plugged / unplugged to charger.

Example vehicle.plug-status
JSON
{
  "currentState": "Plugged",
  "jobId": "641aeef260d202219c22aa3a",
  "message": "Plug-status change detected",
  "type": "vehicle.plug-status",
  "vehicleId": "641aeef260d202219c22f03b",
  "vehicleState": {
    "batteryState": {
      "chargeThresholdMet": true,
      "isCharging": true,
      "isPlugged": true,
      "lastUpdated": "2023-06-29T11:29:11.815Z",
      "range": 216,
      "rangeUnit": "km",
      "soc": 77
    },
    "id": "63ed07f8d2100cc452f57e3d",
    "location": {
      "lastUpdated": "2023-06-29T11:29:11.815Z",
      "latitude": 12.345678,
      "longitude": 7.3321
    },
    "odo": {
      "lastUpdated": "2023-06-29T11:29:11.815Z",
      "unit": "km",
      "value": 12345
    },
    "state": "ACTIVE",
    "stateDescription": "The connection to vehicle is active and the data is up to date.",
    "staticAttributes": {
      "country": "ES",
      "make": "BMW",
      "model": "X2 xDrive25e",
      "nickname": "My BMW X2",
      "registration": "GJ01M20191",
      "vin": "MAT534006MPTS4325",
      "year": 2022
    }
  }
}

vehicle.soc

Fired when a vehicle reaches target SOC while charging.

Example vehicle.soc
JSON
{
  "currentSoc": 40.2,
  "jobId": "641aeef260d202219c22aa3a",
  "message": "Target SOC reached",
  "targetSoc": 40,
  "type": "vehicle.soc",
  "vehicleId": "641aeef260d202219c22f03b",
  "vehicleState": {
    "batteryState": {
      "chargeThresholdMet": true,
      "isCharging": true,
      "isPlugged": true,
      "lastUpdated": "2023-06-29T11:29:11.815Z",
      "range": 216,
      "rangeUnit": "km",
      "soc": 77
    },
    "id": "63ed07f8d2100cc452f57e3d",
    "location": {
      "lastUpdated": "2023-06-29T11:29:11.815Z",
      "latitude": 12.345678,
      "longitude": 7.3321
    },
    "odo": {
      "lastUpdated": "2023-06-29T11:29:11.815Z",
      "unit": "km",
      "value": 12345
    },
    "state": "ACTIVE",
    "stateDescription": "The connection to vehicle is active and the data is up to date.",
    "staticAttributes": {
      "country": "ES",
      "make": "BMW",
      "model": "X2 xDrive25e",
      "nickname": "My BMW X2",
      "registration": "GJ01M20191",
      "vin": "MAT534006MPTS4325",
      "year": 2022
    }
  }
}