Pular para o conteúdo principal

iWatch (Trackers)

Conjunto de endpoints para consulta de dispositivos rastreados (/iwatch/devices/*).

Autenticação

Os endpoints do iWatch usam API Key (header ifw-public-hub-key), diferente do esquema Bearer usado pelos endpoints de fornecedor (/api/...).

Cada API Key está associada a um conjunto de views permitidas no schema ifw_public_hub. A view utilizada é sempre derivada do cliente autenticado — nunca vem do request — garantindo isolamento total entre clientes.

HeaderValor
ifw-public-hub-key<api-key-do-cliente>

Respostas relevantes:

  • 200 OK — sucesso.
  • 400 Bad Request — parâmetros inválidos (page, pageSize, filter mal formatado).
  • 403 Forbidden — API Key ausente, inválida ou cliente sem nenhuma view permitida.
  • 500 Internal Server Error — erro inesperado ao consultar a base.

Endpoints disponíveis

EndpointDescrição
GET /iwatch/devices/trackersLista paginada com filtro por dt_carga (data da carga). Pode retornar várias linhas para o mesmo dispositivo.
GET /iwatch/devices/trackers/snapshotFoto da frota: um único registro por dispositivo na última data_de_ping (D-1) ou em uma data específica.

Quando usar cada um

  • Use /trackers para análises do dia/carga específica — útil quando o cliente quer ver toda a movimentação carregada em um determinado dia.
  • Use /trackers/snapshot quando o cliente precisa apenas do estado atual de cada dispositivo (último ping). É o caso de dashboards, ETLs incrementais e qualquer integração que sincronize "estado", e não "eventos".

Filtro de data

O parâmetro de query filter segue o formato:

filter=date:eq:YYYY-MM-DD

A coluna alvo do filtro depende do endpoint:

EndpointColuna filtrada
/iwatch/devices/trackersdt_carga
/iwatch/devices/trackers/snapshotdata_de_ping

Quando filter é omitido:

  • /trackers — não aplica filtro de data (retorna tudo o que está na view, ordenado).
  • /trackers/snapshot — calcula MAX(data_de_ping) da view (na operação normal isso é D-1).