Skip to main content
O sistema de webhooks baseado em endpoints permite registrar vários destinos por organização, cada um com seu próprio segredo, seu próprio status e sua própria assinatura de um subconjunto de tipos de evento. Este é o modelo recomendado para todas as novas integrações. Compare com o webhook legado de URL única, que é mantido para compatibilidade com versões anteriores, mas oferece suporte a apenas uma URL por organização.

Endpoints

Objeto endpoint

O secret completo do endpoint é retornado uma vez na criação e nunca mais. Armazene-o com segurança — se você o perder, exclua o endpoint e crie-o novamente.

Tipos de evento válidos

events é validado em relação a este conjunto exato — valores fora da lista retornam 400. Consulte o catálogo de eventos para ver o formato do payload de cada tipo.
  • telephony.incoming, telephony.complete, telephony.tool
  • web.incoming, web.complete, web.tool
  • call.graded
  • issue.reported
  • test-call.completed
  • alert.triggered

Status dos endpoints

  • active — as entregas fluem normalmente.
  • disabled — pausado manualmente via PATCH. Nenhuma solicitação é enviada. Nunca alteramos o status de um endpoint disabled; voltar para active é sempre sua decisão.
  • failing — definido automaticamente quando uma entrega para o endpoint esgota toda a sua programação de tentativas (8 tentativas em 24 horas) sem receber um 2xx. Um endpoint com falha não recebe mais tráfego. Quando o endpoint for corrigido, use PATCH para alterar seu status de volta para active; as entregas cuja programação de tentativas ainda não terminou serão retomadas de onde pararam.

Listar endpoints

Retorna um array de objetos Endpoint.

Criar um endpoint

Campos da solicitação

Retorna 201 Created com o objeto Endpoint mais um campo secret adicional no nível superior contendo a chave de assinatura bruta — uma string hexadecimal de 48 caracteres:
secret é retornado somente na criação. Respostas GET subsequentes incluem apenas secret_hint. Copie o valor completo para seu gerenciador de segredos antes de descartar a resposta.

Atualizar um endpoint

Retorna 200 OK com o objeto Endpoint atualizado.

Enviar uma entrega de teste

Envie um evento sintético webhook.test para um endpoint usando o pipeline normal de entrega, incluindo serialização JSON canônica, X-ThunderPhone-Signature, registro da entrega e controle de tentativas. O teste tem como destino o endpoint selecionado independentemente do filtro events dele.
O endpoint recebe um envelope como este:
A API retorna 200 OK após a primeira tentativa, mesmo que o destino retorne um erro. Inspecione success, status, response_code e error para verificar o resultado da entrega:
webhook.test é sintético e não pode ser adicionado à assinatura events de um endpoint. Se a primeira tentativa falhar, a entrega seguirá a mesma programação de tentativas das entregas de eventos normais.

Excluir um endpoint

Retorna 204 No Content. A entrega ao URL é interrompida imediatamente; as novas tentativas em andamento são abandonadas.

Relacionado

Catálogo de eventos

A lista completa de valores de events que você pode assinar.

Visão geral dos webhooks

Verificação de assinatura e semântica de entrega.