Todas as integrações

Eventos do Deskwoot na sua própria URL no momento em que acontecem

Os webhooks enviam eventos do Deskwoot para uma URL que você escolhe, no momento em que acontecem: uma nova conversa, uma nova mensagem, uma atribuição, uma conversa resolvida, uma mudança de contato ou uma avaliação CSAT. Cada um chega como JSON em uma requisição POST assinada, e os seus sistemas reagem aos eventos em vez de consultar a API o tempo todo.


Visão geral

Os dados do seu suporte muitas vezes precisam chegar a outro sistema: um CRM que deve saber de cada contato novo, um banco de dados que conta as conversas resolvidas, uma automação sua que roda quando um cliente avalia um chat. Os webhooks fazem isso sem código que fica consultando o Deskwoot. O Deskwoot chama a sua URL assim que algo acontece.

Você escolhe os eventos de cada webhook: conversa criada, atualizada, atribuída e resolvida, mensagem criada, contato criado e atualizado, e CSAT enviado. No plano Enterprise com os tickets ativados, também ticket criado, atualizado, atribuído e resolvido. Um webhook sem nenhum evento marcado recebe todos os eventos, menos os de tickets, que vão só para os webhooks que os escolhem. Para várias URLs, crie um webhook para cada uma, com os eventos dela.

Cada evento é uma requisição POST com um corpo JSON que traz event (o nome do evento), data (os dados do evento, descritos na documentação da API), timestamp e accountId. O cabeçalho X-Deskwoot-Event traz o nome do evento, e X-Deskwoot-Signature traz sha256= seguido do HMAC SHA256 do corpo bruto, assinado com o segredo do webhook.

O Deskwoot envia cada evento na hora, sem fila. O seu endpoint tem 10 segundos para responder com um status 2xx. Se a requisição falhar, receber um erro ou demorar mais, o Deskwoot tenta mais uma vez depois de 5 segundos, e depois disso o evento é descartado. Raramente um evento chega duas vezes. O corpo não tem um ID de evento, mas uma repetição é uma cópia exata com o mesmo timestamp, então use o nome do evento, o ID do objeto em data e o timestamp juntos para pular o que você já processou. O Deskwoot só envia para endereços HTTPS públicos.

Um webhook só envia dados para fora do Deskwoot. Para responder aos clientes a partir do seu próprio servidor, use um bot Custom Webhook em Configurações → Bots (a partir do plano Startup). Para atribuir, etiquetar ou resolver conversas ou atualizar contatos a partir do seu código, use a API REST, que exige um plano Enterprise pago. Os webhooks exigem o plano Startup ou superior, e o teste de 7 dias os inclui. No plano Free, os webhooks criados antes continuam listados, mas não enviam nada até o seu plano incluir webhooks de novo.

O que você ganha com a integração com Webhooks

  • Eventos na hora

    Novas conversas, mensagens, atribuições, conversas resolvidas, mudanças de contato e avaliações CSAT chegam à sua URL na hora, sem consultas repetidas.

  • JSON assinado

    Cada requisição é um POST com corpo JSON, o nome do evento em X-Deskwoot-Event e uma assinatura HMAC SHA256 em X-Deskwoot-Signature.

  • Só os eventos de que você precisa

    Escolha os eventos de cada webhook e envie eventos diferentes para URLs diferentes, com um webhook para cada.

  • Pausar sem excluir

    Uma chave desliga e liga de novo um webhook, e Editar muda a URL ou os eventos dele.

Como começar

Conecte o Webhooks em 3 passos.

  1. No Deskwoot, abra Configurações → Webhooks e clique em Adicionar webhook. Só administradores veem esta página.
  2. Informe um endereço HTTPS público em URL do endpoint e marque os eventos que você quer em Inscrever-se em eventos.
  3. Clique em Criar webhook. A partir daí o Deskwoot envia uma requisição POST para a sua URL toda vez que um desses eventos acontece.

Ver o guia de configuração

FAQ da integração com Webhooks

As respostas curtas estão aqui. Para qualquer outra coisa, pergunte ao Fynn abaixo.

Como funcionam os webhooks de helpdesk no Deskwoot?

Você dá ao Deskwoot uma URL e escolhe os eventos. Toda vez que um deles acontece, o Deskwoot envia uma requisição POST com o evento em JSON para essa URL, assinada com o segredo do webhook. O seu sistema reage na hora, sem consultar a API em busca de mudanças.

De qual plano eu preciso para usar webhooks?

Startup ou superior, e o teste de 7 dias os inclui. No plano Free, os webhooks criados antes continuam listados e podem ser excluídos, mas não enviam nada até o seu plano incluir webhooks de novo.

Quais eventos posso assinar?

Conversa criada, atualizada, atribuída e resolvida, mensagem criada, contato criado e atualizado, e CSAT enviado. No plano Enterprise com os tickets ativados, também ticket criado, atualizado, atribuído e resolvido. Sem nenhum evento marcado, um webhook recebe todos os eventos, menos os de tickets.

Cada entrega é assinada?

Sim. O cabeçalho X-Deskwoot-Signature traz sha256= seguido do HMAC SHA256 do corpo bruto, assinado com o segredo do webhook, e X-Deskwoot-Event traz o nome do evento. O painel não mostra o segredo. Um webhook criado pela API REST devolve o segredo uma vez na resposta.

O que acontece se o meu endpoint ficar fora do ar?

O Deskwoot tenta mais uma vez depois de 5 segundos. Se falhar de novo, o evento é descartado, porque o Deskwoot não guarda nada além dessa única nova tentativa. No plano Enterprise pago você recupera o que perdeu pela API REST, por exemplo listando as conversas com a atividade mais recente.

Um webhook pode mudar algo no Deskwoot?

Não, um webhook só envia eventos para fora. Para responder aos clientes a partir do seu servidor, use um bot Custom Webhook em Configurações → Bots (a partir do Startup). Para atribuir, etiquetar ou resolver conversas ou atualizar contatos a partir do seu código, chame a API REST no plano Enterprise pago.

Teste grátis por 7 dias

Demo interativa do Deskwoot