Push API message examples
This document describes examples of eMabler Push API messages that can be received thru different means of transport. Transport layers to push these messages can be agreed with the customer. General ways have been to push messages into a customer hosted queue (Azure ServiceBus, RabbitMQ, AWS SNS etc.). Messages can be delivered also with REST by calling Customer hosted endpoint each time message arrives to eMabler. Also other custom solutions can be arranged.
ChargerState message
This message is used to deliver the current status of a charging station and it’s socket
Status values are: Available
, Error
, Offline
, Info
, Charging
, SuspendedCAR
, SuspendedCHARGER
, Preparing
, Finishing
, Booting
, Unavailable
{
"chargerId": "ChargerId1234",
"socketId": 1,
"timeStamp": "2022-03-07T07:35:25.523161Z",
"status": "Available",
"errorCode": "No Error",
"message": "String with charger specific info"
}
ChargerBoot message
This message is used to deliver more detailed info about charger when it boots. This is basically replacing the simple Booting State message
{
"chargerId": "ChargerId1234",
"timeStamp": "2022-03-18T14:25:40.23181Z",
"serialNumber": "129019209",
"chargerModel": "Model eMx",
"manufacturer": "eMabler",
"firmwareVersion": "1.12",
"iccid": "328983298392",
"imsi": "810038108401",
"meterSerialNumber": "30190310",
"meterType": "MeterType1"
}
FullChargingTransaction message
This message is used to deliver information of a full charging transaction. This message is delivered after the charging has ended.
{
"chargerId": "ChargerId1234",
"socketId": 1,
"timeStampStart": "2022-03-07T07:35:25.475521Z",
"timeStampEnd": "2022-03-07T09:35:25.475575+02:00",
"transactionId": 123445,
"authorizedIdTag": "JFDKSJF",
"meterReadStart": 0,
"meterReadEnd": 12300,
"consumptionWh": 12300
}
ChargingTransaction message
This message is send when charging transaction starts and stops.
Action can be: transaction_start
or transaction_stop
{
"chargerId": "ChargerId1234",
"socketId": 1,
"timeStamp": "2022-03-07T07:53:47.392618Z",
"action": "transaction_start",
"transactionId": 123445,
"authorizedIdTag": "JFDKSJF",
"meterRead": 0
}
Measurements message
This message is send when charger is reporting meter values during the charging transaction. TypeofMeasurement, Phase and Unit are following OCPP1.6 model.
{
"chargerId": "ChargerId1234",
"socketId": 1,
"timeStamp": "2022-03-07T07:35:25.535215Z",
"measurements": [
{
"value": "10",
"typeOfMeasurement": "Current.Import",
"phase": "L1-N",
"unit": "A"
},
{
"value": "11",
"typeOfMeasurement": "Current.Import",
"phase": "L2-N",
"unit": "A"
},
{
"value": "10",
"typeOfMeasurement": "Current.Import",
"phase": "L3-N",
"unit": "A"
}
]
}
APIChargerChange message
If charger is created updated or deleted, thru our REST API call there can be a notification thru the push integration with this message.Action values can be: NEW_CHARGER
, DELETE_CHARGER
, CHARGER_GROUP_CHANGED
, CHARGER_UPDATED
{
"chargerId": "ChargerId1234",
"action": "NEW_CHARGER",
"timeStamp": "2022-03-07T07:35:25.54818Z",
"apiChargerChange": {
"newChargerName": "",
"newLocationInfo": null,
"newSockets": null,
"newGroupId": 123,
"newEvseId": "",
"newCapabilities": null
}
}
APIPayerChange message
If a payer is created, updated or deleted, thru our REST API call there can be a notification
thru the push integration with this message.
Action values can be: NEW_PAYER
, DELETE_PAYER
, PAYER_UPDATED
{
"PayerId": 23,
"action": "NEW_PAYER",
"timeStamp": "2022-11-23T07:35:25.54818Z",
"apiPayerChange": {
"newName": "Payer1",
"newEmail": "aaa.bbb@ccc.com",
"newInvoiceReference": "326367",
"newStreetAddress": null,
"newPostalCode": "00100",
"newCity": "Helsinki",
"newCountry": "Finland"
}
}