O que são webhooks? Como configurar webhooks para fluxos de trabalho?

Criada por Isabelle Fernandes, Modificado em Qui, 9 Mar, 2023 na (o) 4:53 PM por Isabelle Fernandes

Freshsales: Indisponível apenas no plano Free.
Freshsales Suite: Indisponível apenas no plano Free.
 

Webhooks são gatilhos baseados em eventos que enviam solicitações HTTP para um aplicativo ou site de terceiros quando as condições definidas são atendidas. 


Em palavras simples, webhooks são automação que podem fazer alterações em uma página da web ou produto quando as condições são atendidas.


No Freshsales, você pode usar webhooks para enviar dados para um site de terceiros ou até mesmo criar novos registros dentro do CRM com base nas condições do gatilho. 


Por exemplo, você pode configurar um webhook acionado com base nas condições para enviar uma fatura automaticamente quando um acordo é assinado. 

  

Podemos implementar esse fluxo de trabalho usando uma ferramenta geradora de faturas de terceiros.

Vamos tentar usar a ferramenta gratuita geradora de faturas oferecida pela Invoiced. 
O Invoice Generator fornece um modelo de fatura que permite aos usuários criar e enviar faturas profissionais. Ele também oferece suporte a chamadas de API. Isso nos permite usá-lo como parte de nosso caso de uso de Webhooks. 


Fluxo de trabalho:


Observação: 
  • A configuração de webhooks requer uma compreensão básica das APIs REST. Se você não estiver familiarizado com codificação, é recomendável solicitar a ajuda de desenvolvedores para configurar webhooks.

  • O Invoice Generator by Invoiced foi escolhido neste caso de uso, pois permite que usuários registrados gerem faturas por meio de suas APIs gratuitamente. Consulte a  documentação da API do Invoiced  para entender melhor a ferramenta.


Agora vamos entender como configurar um webhook com base em nosso exemplo — criar um novo negócio com base nas condições de contato. Webhooks são acionados como parte de Actions in Workflow. Para saber como configurar gatilhos e condições de fluxo de trabalho, consulte este artigo .

O que constitui um webhook?
A configuração de um webhook consiste na configuração do seguinte:

  1. tipo de solicitação

  2. URL de retorno

  3. Tipo de codificação

  4. Contente


  1. tipo de solicitação

As APIs Freshsales suportam Representational State Transfer (REST). Isso significa que você pode configurar APIs que executam operações 'RESTful' — lendo, modificando, adicionando ou excluindo dados do CRM. Você pode escolher um dos seguintes tipos de solicitação ao configurar seu webhook:

TIPO DE SOLICITAÇÃO

PROPÓSITO

PUBLICAR

Criar um objeto

PEGAR

Buscar um ou mais objetos

PUT/PATCH

Atualizar um objeto

EXCLUIR

Remover um objeto




 

Observação:  cada aplicativo de terceiros usa o tipo de solicitação de uma maneira diferente, mas a maioria dos aplicativos segue métodos padrão.



No caso do nosso exemplo, estamos escolhendo POST porque estamos postando uma solicitação de API para Freshsales para criar um negócio.

  1. URL de retorno de chamada: o URL do aplicativo ou serviço da Web atingido pela solicitação de API é chamado de URL de retorno de chamada. No caso do nosso exemplo, estamos tentando criar um acordo. Portanto, podemos usar o URL da página de negócios para criar um negócio.

    URL de retorno do gerador de fatura para gerar uma fatura:
    https://invoice-generator.com

    Autenticação (opcional): se o URL de retorno exigir autenticação, você pode adicionar o nome de usuário e a senha ou a chave API.

    No caso do nosso exemplo, o Faturado não requer uma Autenticação via API ou Nome de Usuário-Senha para ser executado

     

    Clique em  Adicionar cabeçalhos personalizados  para incluir informações com o conteúdo, como detalhes de segurança, detalhes da versão da API e assim por diante. Um cabeçalho personalizado deve ser inserido como um par cabeçalho-valor no seguinte formato:  X-Sample-CustomHeader1: VALUE .


    Observação: 
    
    1. O acionador não será executado quando um cabeçalho for fornecido com espaços entre eles, como X-Sample Custom Header1: VALUE. Porém, se o espaço for inserido no final do cabeçalho (X-Sample-CustomHeader1 : VALUE), ele será ignorado.
    2. Um cabeçalho com mais de um valor deve ser separado por delimitadores (não use vírgula ou dois pontos).
    3. Para adicionar um segundo cabeçalho, insira o cabeçalho personalizado e o par de valores na próxima linha.

     

  2. Tipo de Codificação: Escolha entre JSON, XML ou X-FORM-ENCODED 

  3. Conteúdo: você pode enviar dois tipos de conteúdo como parte dos webhooks — Campos ou Endpoints. Escolha o conteúdo Simples ou Avançado (Detalhes do negócio) que precisa ser enviado como parte da solicitação do webhook.

    1. Simples: selecione campos do tipo de registro de sua escolha para enviá-lo como parte do webhook.

    2. Avançado: você pode enviar um endpoint para o URL de retorno de chamada. Endpoints referem-se a um pedaço de código/informação que é entregue na URL de retorno de chamada. Crie endpoints com espaço reservado usando a API relevante. Consulte a documentação do desenvolvedor do Freshsales para encontrar a API para diferentes ações.

      No caso do nosso exemplo, você pode optar por criar uma nova fatura para o negócio usando Valor do negócio e Proprietário da venda.



TIPO DE SOLICITAÇÃO

CAMPOS

OBTER ou EXCLUIR

  • A URL de retorno (obrigatório)

  • Parâmetro de autenticação (opcional)

  • Cabeçalhos personalizados (opcional)

POSTAR, PUT ou PATCH

  • A URL de retorno (obrigatório)

  • Parâmetro de autenticação (opcional)

  • Cabeçalhos personalizados (opcional)

  • Codificação (obrigatório)

  • Tipo de conteúdo (obrigatório)

  • Conteúdo (obrigatório)


Quando o webhook for acionado, uma fatura será enviada para a conta de vendas para a qual o novo negócio foi criado no Freshsales.

Testando o webhook
Depois de configurar o webhook, teste o webhook clicando em botão. Se sua configuração estiver correta, você receberá uma mensagem de sucesso . Se configurado incorretamente, é provável que você receba códigos de erro. Consulte esta documentação para entender os códigos de erro e corrigi-los adequadamente.


Erro de códigoTipo de código de erroO que significa

301

Movido Permanentemente

O recurso solicitado foi movido permanentemente para um URL diferente.

302

Movido Temporariamente

O recurso solicitado foi movido temporariamente para um URL diferente.

400

Pedido ruim

A solicitação que você enviou é inválida (a sintaxe pode ter parâmetros inválidos ou o tamanho pode ser muito grande).

401

Não autorizado

Você não tem permissão para acessar o recurso. A autenticação falhou/não foi fornecida.

403

Proibido

Sua solicitação está correta, mas você não está autorizado a realizar a operação solicitada.

404

Não encontrado

O recurso solicitado não está disponível no momento.

405

Método não permitido

Seu método de solicitação não é compatível com o recurso solicitado.

409

Conflito

Sua solicitação não pode ser processada porque há um conflito com outra solicitação no servidor.

422

Entidade não processável

Sua solicitação está enquadrada corretamente, mas o servidor não pode processar as instruções contidas.

429

Muitos pedidos

Você enviou muitos pedidos recentemente.

500

Erro do Servidor Interno

O servidor encontrou um erro interno ou configuração incorreta.

502

Gateway inválido

O servidor é um gateway/proxy e recebeu uma resposta inválida do servidor upstream.

Observação: os códigos de erro adicionados acima são os mais comumente relatados. Isto não é uma lista exaustiva. Os erros específicos de aplicativos de terceiros exigirão a inspeção da respectiva documentação do desenvolvedor para identificar os motivos da falha do webhook.



Observação:
1. Você receberá um e-mail mencionando a URL de retorno que falhou.
2. Seu aplicativo tentará enviar novamente a solicitação por uma hora a partir de então.
3. Em caso de falha contínua, o aplicativo da web tentará enviar a solicitação novamente nos próximos 2 dias antes de encerrar permanentemente a solicitação do Webhook.

Este artigo foi útil?

Que bom!

Obrigado pelo seu feedback

Desculpe! Não conseguimos ajudar você

Obrigado pelo seu feedback

Deixe-nos saber como podemos melhorar este artigo!

Selecione pelo menos um dos motivos
A verificação do CAPTCHA é obrigatória.

Feedback enviado

Agradecemos seu esforço e tentaremos corrigir o artigo