Criar configuração de webhook
Cria uma configuração para receber os eventos das vendas: a URL de destino, os eventos desejados e, se quiser, um token que será enviado no header `authorization` de cada evento. Se a URL já estiver cadastrada, a API devolve o cadastro existente; se ele estiver inativo, é reativado. Todos os eventos são enviados por `POST`, com os headers `Content-Type: application/json` e `authorization: <authorizationToken>`. Veja a página **Webhooks** para a lista de eventos e o formato do payload.
Autorização
apiToken Token do parceiro. Gere no painel do parceiro: Configurações > Integrações > API Token (perfil Admin ou Superadmin). Envie só este header: se Authorization também for enviado, ele tem prioridade e a requisição é recusada com 401.
Local: header
Corpo da Requisição
application/json
Definições TypeScript
Use o tipo request body no TypeScript.
Corpo da Resposta
application/json
application/json
curl -X POST "https://example.com/webhooks" \ -H "Content-Type: application/json" \ -d '{ "webhookUrl": "https://suaempresa.com.br/suaurlretorno", "enabledEvents": [ { "name": "purchaseConfirmed" }, { "name": "purchaseCancelled" }, { "name": "invoiceCreated" } ], "configurationName": "Webhook - Integração", "authorizationToken": "seu_token_secreto" }'{ "data": { "id": 123, "configurationName": "Webhook - Integração", "authorizationToken": "seu_token_secreto", "webhookUrl": "https://suaempresa.com.br/suaurlretorno", "active": true, "enabledEvents": [ { "name": "purchaseConfirmed", "label": "Compra confirmada" }, { "name": "invoiceCreated", "label": "Aguardando pagamento" }, { "name": "purchaseCancelled", "label": "Compra cancelada" } ] }}Listar configurações de webhook
Lista todas as configurações de webhook cadastradas para o parceiro.
Alterar configuração de webhook
Atualiza os eventos, a URL, a situação (ativo/inativo), o nome ou o token de autorização. Atenção: se `active` não for enviado, a configuração é **inativada**. Envie sempre `active: true` para mantê-la ativa; para inativar, envie `active: false`. Os demais campos podem ser enviados só quando forem mudar.