Entenda como funcionam os webhooks na Spaik API
Os dispositivos da Spaik API fazem requisições com o método POST dos eventos realizados por eles para a URL configurada previamente. Para cada requisição há um corpo em JSON específico que será descrito em seguida.
Seu endpoint precisa aceitar um POST.
Nossos webhooks
Utilizamos três endpoints configuráveis por dispositivo:
| Campo | Descrição |
|---|---|
messagesUrl | Recebe todos os eventos de mensagens recebidas |
messageStatusUrl | Recebe atualizações de status de entrega de mensagens enviadas |
connectionStatusUrl | Recebe mudanças no estado de conexão do dispositivo |
Os webhooks só são enviados quando o dispositivo possui webhookEnabled = true.
Política de reenvio
Em caso de falha (resposta não-2xx ou erro de rede), a api realiza até 3 tentativas com intervalo de 2 segundos entre elas.
Estrutura do payload
Todos os eventos seguem o mesmo envelope:
{
"type": "<tipo-do-evento>",
"data": { ... }
}O campo type identifica o evento. O objeto data varia conforme o tipo.
Eventos disponíveis
| Evento | URL | Descrição |
|---|---|---|
message | messagesUrl | Mensagem de texto recebida |
message.edit | messagesUrl | Mensagem editada pelo remetente |
message.revoke | messagesUrl | Mensagem apagada para todos |
message.reaction | messagesUrl | Reação adicionada a uma mensagem |
message.contact | messagesUrl | Cartão de contato compartilhado |
message.location | messagesUrl | Localização compartilhada |
message.file | messagesUrl | Imagem, vídeo, áudio ou documento recebido |
message.status | messageStatusUrl | Status de entrega de mensagem enviada alterado |
connection | connectionStatusUrl | Dispositivo conectado ou desconectado |