Dashboard

Webhooks

GET /api/webhooks

Retorna todos os webhooks registrados pelo usuário autenticado.

Autenticação

Scope necessário: webhooks:read

Inclua o header Authorization: Bearer <api-key> ou use cookie de sessão.

Requisição

GET /api/webhooks

Headers

HeaderObrigatórioDescrição
AuthorizationsimBearer pk_... (API key) ou cookie de sessão

Exemplo

curl "https://api.placaflow.com.br/api/webhooks" \
  -H "Authorization: Bearer pk_a1b2c3d4e5f6g7h8i9j0..."

Resposta 200

{
  "webhooks": [
    {
      "id": "w1b2c3d4-5678-9abc-def0-123456789abc",
      "userId": "c3a1e902-4f5b-4b8a-9c6d-1a2b3c4d5e6f",
      "createdAt": "2026-03-10T10:00:00.000Z",
      "updatedAt": "2026-03-20T14:00:00.000Z",
      "name": "Sistema ERP",
      "url": "https://api.example.com/webhook/placaflow",
      "secret": "whsec_a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6",
      "enabled": true,
      "events": ["recognition.created", "alert.triggered"],
      "headers": { "X-Source": "placaflow" },
      "lastDeliveryAt": "2026-03-22T14:30:00.000Z",
      "lastDeliveryStatus": 200,
      "failureCount": 0
    },
    {
      "id": "w2c3d4e5-6789-abcd-ef01-23456789abcd",
      "userId": "c3a1e902-4f5b-4b8a-9c6d-1a2b3c4d5e6f",
      "createdAt": "2026-03-05T08:00:00.000Z",
      "updatedAt": "2026-03-05T08:00:00.000Z",
      "name": "Monitor de câmeras",
      "url": "https://status.example.com/hooks/cameras",
      "secret": "whsec_q1r2s3t4u5v6w7x8y9z0a1b2c3d4e5f6",
      "enabled": true,
      "events": ["camera.online", "camera.offline"],
      "headers": {},
      "lastDeliveryAt": "2026-03-22T12:00:00.000Z",
      "lastDeliveryStatus": 200,
      "failureCount": 0
    }
  ]
}

Campos de cada webhook

CampoTipoDescrição
idstringUUID único do webhook
userIdstringUUID do proprietário
createdAtstringData de criação ISO 8601
updatedAtstringData da última atualização ISO 8601
namestringNome do webhook
urlstringURL do endpoint de destino
secretstringSecret para verificação HMAC-SHA256
enabledbooleanWebhook ativo ou desativado
eventsstring[]Lista de eventos assinados
headersobjectHeaders HTTP customizados enviados com cada requisição
lastDeliveryAtstring?Data/hora da última entrega ISO 8601
lastDeliveryStatusnumber?Código HTTP da última entrega
failureCountnumberNúmero de falhas consecutivas de entrega

Erros

CódigoDescrição
401Não autenticado ou API key inválida
403API key não possui scope webhooks:read
Esta página foi útil?