Webhook
Configure um endereço para receber avisos de sessão e de pedido. Cada combinação de organização e evento guarda um callback. Enviar de novo a mesma organização e o mesmo evento substitui o endereço anterior.
POST /b2b/webhook
Campos obrigatórios:
orgId— organização dona das sessões e dos pedidos. Costuma ser um nome semântico em minúsculas, por exemplovoltbras.event— qual aviso disparar o POST.authorization— valor enviado no headerAuthorizationde cada aviso.callbackURL— URL que recebe o POST.
Sucesso: 201 com orgId, event, authorization e callbackURL.
Se a api-key não puder configurar webhook nessa organização, a resposta é 403 com { "reason": "AccountNotAuthorized", "payload": { "missingScope" } }.
O corpo de cada aviso é { "type", "payload" }. type repete o evento.
event | O que aconteceu | payload |
|---|---|---|
SessionStarted | A sessão foi criada, antes de carregar | id, emspId, stationId, connectorId |
SessionStartFailed | O pedido de início foi recusado | id, emspId, stationId, connectorId |
SessionStartedCharge | O veículo começou a receber energia | id, emspId, stationId, connectorId, startedChargingAt |
SessionConsumedEnergy | A sessão informou energia consumida | id, emspId, stationId, connectorId, energyConsumedWh |
SessionStoppedCharge | A carga parou | id, emspId, stationId, connectorId, energyConsumedWh |
SessionStartedFinishing | A carga parou e a sessão está encerrando | id, emspId, stationId, connectorId, energyConsumedWh, energyConsumedWhIncrease, startedChargingAt, stoppedChargingAt, stopReason |
SessionFinished | A sessão terminou | id, emspId, stationId, connectorId, energyConsumedWh |
OrderWentPending | O pedido está pronto para captura | emspId, orderId, sessionId, valueToBeCapturedCents |
SessionWentIdle | A sessão entrou em tempo ocioso | id, emspId, stationId, connectorId, wentIdleAt |
SessionIdleTimeComputed | O tempo ocioso foi medido de novo | id, emspId, stationId, connectorId, wentIdleAt, idleTimeSeconds, triggerTimestamp |
SessionTimedOut | A sessão expirou sem o conector ser plugado | id, emspId, stationId, connectorId, reason |
Datas vêm em ISO 8601. connectorId pode ser nulo em SessionStarted, SessionStartFailed e SessionTimedOut.