Skip to main content
trip.status_changed é emitido depois que uma Trip muda de status. Handlers usam este evento para executar efeitos assíncronos fora do fluxo síncrono.

Detalhes do Evento

PropriedadeValor
Tipotrip.status_changed
OrigemAtualização de Trip
PublicaçãoApós commit da Trip
QuandoTrip.status muda.

Handlers

HandlerResponsabilidadeDados usadosExecução
notify-trip-status-changedAvisa superfícies interessadas.dataAssíncrona.

Payload

CampoTipoDescrição
dataTripEntidade Trip atualizada

Regras dos handlers

  • Handlers não rodam na transação que publicou a Trip.
  • Falha em handler não desfaz a Trip.
  • Cada handler deve ser idempotente.
  • Novos handlers podem ser adicionados sem mudar o fluxo síncrono.

Exemplo

{
  "type": "trip.status_changed",
  "data": {
    "tripId": "0197a80f-2d8f-7710-b243-b67fb477a1c0",
    "companyId": "0197a801-6a42-79aa-9e56-d3c85148c0fa",
    "routeId": "0197a80c-4204-7b77-9005-48cc23677587",
    "vehicleId": "0197a809-3eb8-7eb8-9c4f-8a6c2e7e5b1a",
    "driverId": "0197a807-1ec7-75e8-8ff8-df64dd070046",
    "departureAt": "2026-07-04T08:00:00.000Z",
    "estimatedArrivalAt": "2026-07-04T12:30:00.000Z",
    "status": "IN_PROGRESS",
    "createdBy": "0197a805-0910-7eb2-bae7-90a13df2a9b2",
    "createdAt": "2026-07-03T15:30:00.000Z",
    "updatedBy": "0197a805-0910-7eb2-bae7-90a13df2a9b2",
    "updatedAt": "2026-07-03T15:30:00.000Z",
    "deletedBy": null,
    "deletedAt": null
  }
}