Conceitos rápidos
A API pública eventos para URLs cadastradas e assina cada entrega com HMAC SHA-256.
Headers enviados ao destino:
content-type: application/jsonx-webhook-signaturex-webhook-eventx-webhook-id
Formato da entrega
O corpo enviado para o destino do webhook segue este formato:
{
"eventId": "uuid-ou-id-unico",
"eventType": "transaction.updatéd",
"occurredAt": "2026-03-26T12:00:00.000Z",
"payload": {
"transactionId": "uuid",
"status": "Success"
}
}
Event groups usados na API
Os grupos observados no código são:
transactionvaultbalance
Criar um webhook vinculado ao API user autenticado.
Endpoint: POST /webhooks
Autenticação
Exige bearer token com permissão webhook:write.
Body
{
"eventGroup": "transaction",
"targetUrl": "https://example.com/webhooks"
}
Retorno
Retorna o webhook criado.
Campos principais:
idapiUserIdeventGrouptargetUrlsecretstatuscreatedAtupdatedAt
Listar os webhooks do API user atual.
Endpoint: GET /webhooks
Autenticação
Exige bearer token com permissão webhook:read.
Retorno
Array de webhooks do usuário atual.
Listar o histórico de entregas de um webhook específico do usuário atual.
Endpoint: GET /webhooks/:webhookId/deliveries
Autenticação
Exige bearer token com permissão webhook:read.
Parâmetros de rota
webhookIdUUID do webhook.
Query params
statusFiltra por status da entrega.eventTypeFiltra por tipo de evento.
Retorno
Array de entregas.
Campos principais por item:
idwebhookIdeventIdeventTypepayloadJsonattemptCountstatusresponseStatusresponseBodylastAttemptAtcreatedAt
Consultar uma entrega específica.
Endpoint: GET /webhooks/deliveries/:deliveryId
Autenticação
Exige bearer token com permissão webhook:read.
Retorno
Retorna a entrega completa, incluindo payloadJson e dados de resposta.
Reenviar manualmente uma entrega de webhook.
Endpoint: POST /webhooks/deliveries/:deliveryId/replay
Autenticação
Exige bearer token com permissão webhook:write.
Retorno
Retorna a entrega atualizada após a nova tentativa.
Observações
- A API faz até 3 tentativas por replay.
- O campo
statusde entrega pode ficar comopending,retrying,deliveredoufailed.
Criar um webhook global, sem vínculo com um API user.
Endpoint: POST /admin/webhooks
Autenticação
Exige token de admin.
Body
Mesmo formato do endpoint de criação comum.
Listar todos os webhooks cadastrados.
Endpoint: GET /admin/webhooks
Autenticação
Exige token de admin.
Excluir um webhook e suas entregas registradas.
Endpoint: DELETE /admin/webhooks/:id
Autenticação
Exige token de admin.
Parâmetros de rota
idUUID do webhook.