allow_list_changed — Lista de motoristas autorizados mudou

Disparado quando a lista de motoristas autorizados a operar o veículo muda — seja
porque um motorista foi adicionado ou removido da configuração, seja porque o status
global mudou (por exemplo, o dispositivo confirmou a propagação).

statusSignificado
inactiveNenhum identificador autorizado configurado no dispositivo
pendingMudança em propagação — o app pediu uma adição/remoção que o dispositivo ainda não confirmou
activePelo menos um identificador autorizado confirmado no dispositivo

O status é derivado dos identificadores autorizados (chaveiro iButton, cartão
RFID), não dos motoristas. Um identificador autorizado sem motorista associado já leva
o status a active — nesse caso você recebe active com drivers_added vazio.

Sobre drivers_added e drivers_removed

  • Atenção ao snake_case. São os únicos campos do payload fora do padrão
    camelCase. Leia exatamente drivers_added e drivers_removed.
  • São a diferença incremental desde o último evento enviado ao seu endpoint — não a
    lista completa de autorizados.
  • Identificadores físicos sem motorista associado no momento do evento não aparecem
    em nenhuma das duas listas.
  • Ambos podem vir vazios quando o evento foi disparado puramente por uma transição de
    status (por exemplo, pendingactive).

Disponibilidade. Apenas para frotas com hardware compatível.

Campos posicionais vêm como null. Como em ignition_lock_status_changed, os
campos de telemetria estão presentes no JSON com valor null. Em especial,
driverId é sempre null aqui: os motoristas vêm em drivers_added e
drivers_removed, nunca em driverId.


Assine o tipo allow_list_changed para receber este evento.
A Cobli envia este evento como POST application/json para a URL cadastrada na
assinatura, assinado em X-Cobli-Signature. Responda 2xx em até 5 segundos e
deduplique por eventId.

Payload

Envelope do evento allow_list_changed.

Envelope comum a todos os eventos de webhook da Cobli. O corpo da requisição POST é sempre este objeto — o que varia entre os tipos é o conteúdo de eventData.

uuid
required

Identificador determinístico do evento, derivado de fleetId + signatureId + deviceId + eventType + eventTime. Nos eventos de rota e parada o identificador do recurso (routeId ou activityId) também entra na derivação, para que dois recursos encerrados no mesmo milissegundo não colidam.

O mesmo evento sempre produz o mesmo eventId — em retentativas, em retransmissões e na recuperação via GET /public/v2/events. Use como chave de idempotência.

date-time
required

Momento em que o evento ocorreu no dispositivo, em ISO 8601 UTC.

string
enum
required

Tipo do evento.

Allowed:
eventData
object
required

Base dos eventos que descrevem o estado de uma configuração do veículo, e não uma telemetria.

Os campos posicionais vêm como null, não ausentes. Diferente de todos os outros tipos, aqui latitude, longitude, heading, odometer, driverId, cobliId, ignition, batteryVoltage, connectionType, rpm, fuelLevel, numberOfSatellites e hdop estão presentes no JSON com valor null. Trate-os como sempre nulos para estes tipos. speedInKmh não aparece.

Responses
200

Evento aceito. Responda 2xx em até 5 segundos — enfileire e processe de forma assíncrona se o seu processamento for demorado. Nenhuma retentativa é feita.

400

Evento rejeitado de forma permanente — use para assinatura HMAC inválida ou payload malformado. A Cobli trata 4xx como falha definitiva e não retenta, com duas exceções: 429 (ver abaixo) e 401 em assinaturas com Bearer auth habilitado, em que a Cobli renova o token e retenta. Não devolva 4xx para um eventType que você não espera: ignore-o e responda 2xx.

500

Falha temporária no seu lado. A Cobli faz até 5 tentativas no total, com backoff exponencial entre elas — 2 s → 4 s → 8 s → 15 s —, jitter de ±20 % e teto de 15 s por intervalo. O mesmo vale para timeout: sem resposta em 5 segundos.

LoadingLoading…