> ## Knowledge Base Index
> Fetch the complete knowledge base index at: https://help.icommkt.com/sitemap.xml
> Use this file to discover available pages before exploring further.
> Pure-Markdown content can be obtained by appending a '.md' suffix to the content URLs listed in the sitemap (without the trailing slash).

# Guia de webhook

O serviço WebHooks permite-lhe manter o estado dos contactos das suas listas sincronizado com o seu CRM, evitando a necessidade de invocar constantemente a API em busca de notícias sobre a remoção e/ou devolução de contactos.

### O que é um WebHook?

Um WebHook é um retorno de chamada simples definido pelo usuário na forma de um HTTP POST no formato JSON, que é invocado quando algo novo ocorre em relação à sua lista de contatos. Por exemplo, quando alguém cancela a assinatura, você pode querer que a atualização esteja disponível em seu sistema imediatamente ou em algumas horas. Isso é possível definindo uma URL para a qual as informações devem ser enviadas quando o evento solicitado ocorrer.

Usando o exemplo de cancelamento de inscrição, detalhamos a seguir as informações que podem ser obtidas no corpo da solicitação.

```json
 {"Actions":[
 {"Action":"Unsubscribe"
,"Reason":"Unsubscribe Request"
,"Date":"20140116 17:41:47"
,"Email":email@domain.com
,"Status":"U"}
]
}
```

O formato do corpo enviado é mantido uniforme para todos os tipos de eventos existentes, bastando modificar o conteúdo.

### Eventos em lote?

Para minimizar a quantidade de HTTP POSTs que são feitos para sua URL definida, ela pode ser configurada para que enviemos diariamente o resumo das atualizações do evento solicitado (remoções ou rejeições). Dessa forma, o corpo da solicitação detalhará uma lista de contatos com suas alterações.

```json
{"Actions":[
{"Action":"Unsubscribe"
,"Reason":"Unsubscribe Request"
,"Date":"20140116 17:41:47"
,"Email":email@domain.com
,"Status":"U"},
{"Action":"Bounce"
,"Reason":"Inexistant"
,"Date":"20140116 17:41:47"
,"Email":email2@domain.com
,"Status":"R"}
]
}
```

# WebHooks disponíveis

Atualmente existem dois tipos de eventos que podem ser configurados através do serviço WebHooks:
• **Descrição**
• **Rejeições**

Os campos do formato do corpo da solicitação estão detalhados a seguir.

###### Actions: Lista de eventos a processar

* Ação: Tipo de evento (cancelar inscrição/rejeitar)
* Motivo: Motivo do cancelamento ou devolução.
* Data: Data do evento.
* E-mail: Contato atualizado.
* Status: Status atual do contato no sistema (U: Cancelado, R: Bounced)

Abaixo estão exemplos do corpo da solicitação para cada uma das ações.

### Descrição

```json
{"Actions":[
{"Action":"Unsubscribe"
,"Reason":"Unsubscribe Request"
,"Date":"20140116 17:41:47"
,"Email":email@domain.com
,"Status":"U"}
]
}```

### Bounces

```json
{"Actions":[
{"Action":"Bounce"
,"Reason":"Inexistant"
,"Date":"20140116 17:41:47"
,"Email":email2@domain.com
,"Status":"R"}
]
}```