Pular para o conteúdo principal

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 exemplo voltbras.
  • event — qual aviso disparar o POST.
  • authorization — valor enviado no header Authorization de 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.

eventO que aconteceupayload
SessionStartedA sessão foi criada, antes de carregarid, emspId, stationId, connectorId
SessionStartFailedO pedido de início foi recusadoid, emspId, stationId, connectorId
SessionStartedChargeO veículo começou a receber energiaid, emspId, stationId, connectorId, startedChargingAt
SessionConsumedEnergyA sessão informou energia consumidaid, emspId, stationId, connectorId, energyConsumedWh
SessionStoppedChargeA carga parouid, emspId, stationId, connectorId, energyConsumedWh
SessionStartedFinishingA carga parou e a sessão está encerrandoid, emspId, stationId, connectorId, energyConsumedWh, energyConsumedWhIncrease, startedChargingAt, stoppedChargingAt, stopReason
SessionFinishedA sessão terminouid, emspId, stationId, connectorId, energyConsumedWh
OrderWentPendingO pedido está pronto para capturaemspId, orderId, sessionId, valueToBeCapturedCents
SessionWentIdleA sessão entrou em tempo ociosoid, emspId, stationId, connectorId, wentIdleAt
SessionIdleTimeComputedO tempo ocioso foi medido de novoid, emspId, stationId, connectorId, wentIdleAt, idleTimeSeconds, triggerTimestamp
SessionTimedOutA sessão expirou sem o conector ser plugadoid, emspId, stationId, connectorId, reason

Datas vêm em ISO 8601. connectorId pode ser nulo em SessionStarted, SessionStartFailed e SessionTimedOut.