Conteúdo

Construtor de Fluxo Avançado: Webhook

Construtor de Fluxo Avançado: Webhook

Quando usar o Webhook no Construtor de Fluxo?

Os recursos avançados do Construtor de Fluxos são complementos adicionais do Plano Padrão e são cobrados separadamente

Por padrão, este ícone é mostrado com a marcação 'PRO' conforme abaixo.

Este ícone até pode ser usado para construir um fluxo utilizando o Plano Padrão, que ainda será salvo com sucesso. No entanto, quando quisermos selecionar fluxos avançados para usar como ação de palavra-chave ou ação padrão, haverá uma notificação solicitando a atualização para que esses recursos avançados possam ser utilizados na criação de fluxos.

Após atualizar o WATI para o Plano PRO, poderemos usar esses fluxos avançados em Palavra-chave ou em Ação padrão.

Significado e Utilização

Webhooks: Através dos webhooks, você poderá recuperar (GET) ou enviar (POST) dados de um lugar para outro, considerando que você tenha o seu próprio banco de dados.

Para usar isto: Basta arrastar-e-soltar o ícone do webhook ou então, ao ampliar o fluxo, selecione o recurso de webhook.

Recursos

  1. URL e Método

Aqui você poderá escolher:

  • Método GET
  • Método POST

E o seu endpoint de URL da API externa.

Você também poderá tornar a sua URL Dinâmica, inserindo valores ​​do botão de variáveis ​como mostrado na imagem acima.

Para adicionar variáveis, você deverá sempre fazê-lo no caminho da URL.

Exemplo: URL ⟶ https://webhook-wa-testing.clare.ai/16d6942a-64cb-43f3-8e8a-2bddace647f3?name={{name}}

  1. Personalizar Cabeçalhos

Os cabeçalhos em solicitações de webhook HTTP geralmente são usados ​​para especificar a finalidade desse webhook ou o tipo de conteúdo que ele contém.

É completamente opcional a utilização de cabeçalhos e estará desativado como padrão.

Conforme mostrado na imagem acima, você poderá definir os cabeçalhos como pares de 'Value' e 'Key'. Posteriormente, quando a solicitação for definida, ela será enviada à Headers.

Exemplo: key = Content-Type , value = application/x-www-form-urlencoded

e então será enviado como

Content-Type : application/x-www-form-urlencoded

  1. Personalização do corpo da solicitação

Aqui você poderá enviar informações no corpo da solicitação do webhook. Isso também é totalmente opcional e estará desativado como padrão.

Esta informação deverá estar no formato JSON, caso contrário ocorrerá um erro.

Um exemplo de como o corpo da solicitação deverá ficar:

{

"name" : "@name",

"address" : "@address"

}

  1. Defina a sua variável de teste

Configure manualmente as suas variáveis ​​de teste assim:

  1. Teste a Solicitação

Você poderá testar a solicitação da API clicando no botão 'Testar a Solicitação'.

  1. Salvar as Respostas como Variáveis

Você também poderá salvar as respostas de uma solicitação como variáveis, ​​sempre que acionar o método webhook.

Então você poderá optar por torná-lo um atributo personalizado ou salvá-lo como uma variável.

Se a resposta da sua API for um JSON contendo um 'key-value', você poderá armazenar cada um dos valores passando o nome da chave (key).

Por exemplo, se você desejar armazenar 'Hello from Webhook' desta resposta

Você precisará armazená-lo como abaixo:

Depois de fazer isso, você poderá digitar a sua variável ou atributo personalizado e salvar a resposta inteira.

Armazenando Respostas dentro do Objeto

Se você desejar armazenar o valor de resposta que está dentro de um objeto, você precisará usar o objectkey.keyname

Exemplo:


{
"Result": {
"MobileClientInfoStatus": "OpenQuote",
"PolicyId": "00000000-0000-0000-0000-000000000000",
"QuoteId": "xxxxx",
"CustomerId": "xxxxxx",
"QuoteNumber": "xxxxxx",
"PolicyNumber": null,
"LmsStatus": false,
"BucketKey": null,
"Quote": null
},
"MessageValidation": null,
"QuoteReferrals": null
}

Se a sua resposta for como mostrado acima e você quiser armazenar o QuoteId, bastará usar Result.QuoteId

  1. Armazenando Respostas dentro do Objeto

Se a sua resposta estiver dentro de uma matriz (array) de qualquer objeto como abaixo,


[
{
"tracking_data": {
"track_status":1,
"shipment_track" : [
{
"id":1278937320,
"current_status":"Delivered"
}
]
}
}
]

Você poderá usar isso para armazená-lo: $.[0].tracking_data.shipment_track[0].current_status

  1. Roteamento de Resposta

Você poderá usar o roteamento de resposta em seu fluxo para que, sempre que um status de solicitação corresponder ao status esperado, ele siga o fluxo correspondente.

Exemplo:

200 - Pedido OK

400 - Solicitação inválida

Aqui você poderá dividir o seu fluxo de acordo com os códigos de status de resposta.

Ele será exibido assim no fluxo:

Agora, você poderá configurar as mensagens seguindo cada status. Suponha que para status = 200, enviaremos uma mensagem dizendo HTTP Request Successful.

E isso é tudo sobre o recurso de Webhook no Construtor de Fluxo.

Obrigado.

Como nos saímos?

Quais recursos estão disponíveis no Construtor de Fluxo Avançado

Construtor de Fluxo Avançado: Atualização de Atributo

Contato