# Criar e gerenciar assinaturas de webhook do Advocate

Webhooks são códigos que executam quando um evento acontece. O Advocate permite que você use webhooks para registrar uma URL para a qual enviaremos um POST sempre que um evento acontecer no seu programa, por exemplo, quando um código de cupom personalizado é criado para um novo participante, um objeto de evento é criado. Existem dois métodos para criar e gerenciar webhooks: [via a API do Advocate](https://integrations.impact.com/impact-brand/docs/api-webhooks) ou na plataforma Advocate. Este artigo de ajuda explicará como gerenciar webhooks através da plataforma Advocate.

#### Criar uma assinatura de webhook

1. Na barra de navegação superior, selecione ![](https://526234278-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FwMLlMoFBtKJa8ptd3zaw%2Fuploads%2Fgit-blob-1183576591b45997efe4dc81a25024640591d02a%2F245137dc972a7a7f6165b59538fcdbac8fd5bd8fee4ba9f20c1a2982c5b58b57.svg?alt=media) **\[Perfil do usuário] → Configurações**.&#x20;
2. Na coluna da esquerda abaixo *Configurações do Advocate*, selecione **Webhooks**.
3. Na *Assinaturas de Webhook* página, selecione **Criar Assinatura**.
4. Abaixo *POST para URL*, insira o endereço exclusivo que o aplicativo usa para enviar atualizações em tempo real sobre eventos específicos.
5. Opcionalmente, abaixo de *Nome do Webhook*, insira o nome da nova assinatura de webhook.
6. Selecione **Salvar**.

#### Solucionar problemas nos logs de webhook

Quando você registra uma URL para a qual o Advocate faz posts sempre que um evento acontece no seu programa, você pode revisar os logs e solucionar quaisquer eventos de webhook que falhem.

**Acesse seus logs de webhook**

1. Na barra de navegação superior, selecione ![](https://526234278-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FwMLlMoFBtKJa8ptd3zaw%2Fuploads%2Fgit-blob-1183576591b45997efe4dc81a25024640591d02a%2F245137dc972a7a7f6165b59538fcdbac8fd5bd8fee4ba9f20c1a2982c5b58b57.svg?alt=media) **\[Perfil do usuário] → Configurações**.&#x20;
2. Na coluna da esquerda abaixo *Configurações do Advocate*, selecione **Webhooks**.
3. Na *Assinaturas de Webhook* página, selecione **Ver Logs**.
4. Use os filtros abaixo *Registro de Eventos de Webhooks* para filtrar os webhooks.
   * Consulte a *Referência de filtros* abaixo para mais informações.

<details>

<summary>Referência de filtros</summary>

| Filtro  | Descrição                                                                                                                                                                   |
| ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Tipo    | Filtrar pelo webhook [tipo de evento](https://integrations.impact.com/impact-brand/docs/api-webhooks#section-webhook-events). Esse filtro tem como padrão *Todos os Tipos*. |
| Período | Filtre pelo período em que o webhook foi atualizado pela última vez. Esse filtro tem como padrão *Todo o período*.                                                          |

</details>

**Ver detalhes do webhook**

1. Selecione um webhook específico para abrir a *Detalhes do Webhook* visualização.
2. Essa visualização fornece informações que podem ser usadas para solucionar problemas de uma assinatura de webhook.
   * Consulte a *Referência do evento* abaixo para mais informações.

<details>

<summary>Referência do evento</summary>

| Filtro                 | Descrição                                                                                                                                                                                                                                                                                                                                      |
| ---------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Tipo                   | O webhook [tipo de evento](https://integrations.impact.com/impact-brand/docs/api-webhooks#section-webhook-events).                                                                                                                                                                                                                             |
| ID do Webhook          | O identificador único do webhook.                                                                                                                                                                                                                                                                                                              |
| Data de Criação        | A data em que o webhook foi criado.                                                                                                                                                                                                                                                                                                            |
| Dados do Evento        | O webhook [payload](https://integrations.impact.com/impact-brand/docs/api-webhooks#section-payloads).                                                                                                                                                                                                                                          |
| Assinatura(ões)        | Assinaturas de webhook para as quais o webhook foi enviado e seu status.                                                                                                                                                                                                                                                                       |
| Detalhes da Assinatura | Detalhes sobre a resposta recebida do endpoint da assinatura do webhook. Os detalhes podem incluir a tentativa de entrega do webhook, mostrando o carimbo de data/hora da tentativa, o código de status HTTP recebido do destino e se a tentativa expirou devido à solicitação demorar muito para receber uma resposta do servidor de destino. |

</details>

**Sistema de reenvio de webhook para entregas de eventos falhadas**

* Rest hooks são entregues imediatamente após a ocorrência de um evento. Se o endpoint não responder com sucesso a uma tentativa de entrega (ou seja, responder com um código de status diferente de 200), a entrega será considerada falhada.
* Entregas falhadas serão tentadas novamente a cada hora após a tentativa anterior falhada até que uma entrega bem-sucedida seja feita ou até que 72 tentativas tenham sido realizadas (aproximadamente 3 dias na taxa de 1 nova tentativa por hora).
* Endpoints de webhook que retornam erros de forma consistente serão automaticamente desabilitados após o seguinte número de erros:

  | Código de status | Erros recebidos |
  | ---------------- | --------------- |
  | Erros 4xx        | 1000            |
  | Erros 5xx        | 2000            |
  | Erros 3xx        | 2000            |
