> ## Documentation Index
> Fetch the complete documentation index at: https://docs.ycloud.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Exemplo 1: Resposta automática por IA

Este exemplo demonstra como implementar um fluxo de trabalho básico de resposta automática usando o n8n, um modelo de linguagem grande (LLM) e um nó da YCloud:<br />Quando a plataforma YCloud recebe uma mensagem de entrada, ela aciona um fluxo de trabalho do n8n via Webhook. O fluxo de trabalho chama o modelo de linguagem grande para gerar uma resposta e, em seguida, envia a mensagem de volta ao usuário pelo nó da YCloud.

> O YCloud AI Agent construiu um fluxo de trabalho completo de IA para você, oferecendo uma base de conhecimento de IA ponta a ponta e fácil de entender, corpora e processos automatizados. Clique aqui para obter mais detalhes.

### Processo Geral

<img src="https://mintcdn.com/lchnan/7IqVC2giQEcOq6-5/product-assets/31a5e257bb-image-835.webp?fit=max&auto=format&n=7IqVC2giQEcOq6-5&q=85&s=45da1a8b4fd560222e1adc5d9e57bd47" alt="Captura de tela do produto YCloud" width="1739" height="787" data-path="product-assets/31a5e257bb-image-835.webp" />

### Evento de Webhook

1. Criar um endpoint de Webhook
   1. Use o nó Webhook do n8n para criar um novo listener
   2. Selecione POST como o método HTTP
   3. Nas Opções, defina o Response Code como 200 e certifique-se de que ‘Immediately’ esteja selecionado

<img src="https://mintcdn.com/lchnan/PCdfO4VGvgYoGyQM/product-assets/fc7f38f8c3-ishot-2026-04-30-10-25-09.webp?fit=max&auto=format&n=PCdfO4VGvgYoGyQM&q=85&s=68fa46fe890c8b71626e7b2e4afb6860" alt="Captura de tela do produto YCloud" width="1920" height="993" data-path="product-assets/fc7f38f8c3-ishot-2026-04-30-10-25-09.webp" />

Adicione os detalhes do seu endpoint à plataforma YCloud e selecione os eventos de Webhook que você deseja monitorar

<Frame caption="Use Search event to find the webhook events your n8n workflow needs before confirming.">
  <img src="https://mintcdn.com/lchnan/gXEJIQXV2JH2VUQJ/product-assets/english-help-2026-09-22/developer-webhook-events-annotated.svg?fit=max&auto=format&n=gXEJIQXV2JH2VUQJ&q=85&s=81cb1ab6ab3e979bb8ad6fdd9c4d4122" alt="Seletor de eventos de Webhook da YCloud com o evento Search destacado." width="3024" height="1656" data-path="product-assets/english-help-2026-09-22/developer-webhook-events-annotated.svg" />
</Frame>

### Analisar o valor de retorno e verificar a assinatura

#### Analisar o valor de retorno

Analisando os cabeçalhos na resposta do Webhook usando o nó ‘code’ integrado do n8n

<img src="https://mintcdn.com/lchnan/7IqVC2giQEcOq6-5/product-assets/2c273275ba-ishot-2026-04-30-10-50-04.webp?fit=max&auto=format&n=7IqVC2giQEcOq6-5&q=85&s=2ce32f2b7a9148f5c19f291ff87fb4ad" alt="Captura de tela do produto YCloud" width="1920" height="993" data-path="product-assets/2c273275ba-ishot-2026-04-30-10-50-04.webp" />

Selecione JavaScript para a análise

```javascript theme={"theme":{"light":"github-light","dark":"github-dark"}}
function parseSignatureHeader(signatureHeader) {
  const result = {};
  for (const part of (signatureHeader || '').split(',')) {
    const [key, value] = part.split('=');
    if (key && value) {
      result[key.trim()] = value.trim();
    }
  }
  return result;
}

const input = $input.first().json;
const headers = input.headers || {};
const body = input.body;

const signatureHeader = headers['ycloud-signature'] ;
const parsed = parseSignatureHeader(signatureHeader);

const timestamp = parsed.t;
const receivedSignature = parsed.s;

const payload =
  body === undefined || body === null
    ? ''
    : typeof body === 'string'
      ? body
      : JSON.stringify(body);

const signedPayload = `${timestamp}.${payload}`;

return [
  {
    json: {
      ...input,
      timestamp,
      receivedSignature,
      payload,
      signedPayload,
      signatureHeader,

    }
  }
];
```

Os valores de retorno deste nó são:

* O valor original,
* O carimbo de data/hora (timestamp),
* A assinatura recebida, o payload, o payload assinado e as informações de assinatura no cabeçalho da requisição

#### Dados criptografados

Na etapa anterior, os dados foram totalmente particionados. Neste nó, usaremos SignedPayload e Secret. Usaremos o nó Crypto para criptografar os dados.

<img src="https://mintcdn.com/lchnan/7IqVC2giQEcOq6-5/product-assets/304e08d482-ishot-2026-04-30-10-52-06.webp?fit=max&auto=format&n=7IqVC2giQEcOq6-5&q=85&s=ef80f4acfb29d1a6ac4db24fbcb9d958" alt="Captura de tela do produto YCloud" width="1920" height="993" data-path="product-assets/304e08d482-ishot-2026-04-30-10-52-06.webp" />

Obtenha o Secret na plataforma YCloud.

<img src="https://mintcdn.com/lchnan/PCdfO4VGvgYoGyQM/product-assets/f3c6c5acc3-ishot-2026-04-30-11-24-02.webp?fit=max&auto=format&n=PCdfO4VGvgYoGyQM&q=85&s=1217648ce39e95778e3a1079aec84c13" alt="Captura de tela do produto YCloud" width="2940" height="604" data-path="product-assets/f3c6c5acc3-ishot-2026-04-30-11-24-02.webp" />

#### Comparar assinaturas

Use uma instrução if para verificar as informações de assinatura; se coincidirem, a verificação é considerada bem-sucedida.

<img src="https://mintcdn.com/lchnan/AlSk34JesCiO_ZYy/product-assets/e3c383a5bb-ishot-2026-04-30-10-54-22.webp?fit=max&auto=format&n=AlSk34JesCiO_ZYy&q=85&s=2ee80efbbc283a3fe1390d3e82ff4c95" alt="Captura de tela do produto YCloud" width="1920" height="993" data-path="product-assets/e3c383a5bb-ishot-2026-04-30-10-54-22.webp" />

#### Responder a mensagens usando IA

Depois de se inscrever nos eventos `whatsapp.inbound_message.received` e `whatsapp.message.updated`, você receberá uma notificação push quando uma mensagem for recebida ou uma atualização de status posterior após o envio de uma mensagem.

1. Use o nó `switch` para configurar múltiplos tipos de notificação por Webhook.

<img src="https://mintcdn.com/lchnan/RN4tXfXENVvDu0Te/product-assets/b3c1737815-ishot-2026-04-30-16-25-41.webp?fit=max&auto=format&n=RN4tXfXENVvDu0Te&q=85&s=9e974b4c366f72c61bfae9bfbd37ce00" alt="Captura de tela do produto YCloud" width="1920" height="993" data-path="product-assets/b3c1737815-ishot-2026-04-30-16-25-41.webp" />

2. Quando um evento `inbound_message_received` for recebido, uma resposta poderá ser gerada chamando a API de IA

<img src="https://mintcdn.com/lchnan/WD-ixrYVrqB7b7aQ/product-assets/50e1d1e086-ishot-2026-04-30-16-28-07.webp?fit=max&auto=format&n=WD-ixrYVrqB7b7aQ&q=85&s=ded17a4e52f2fbc1a0ca65475b14424d" alt="Captura de tela do produto YCloud" width="1920" height="993" data-path="product-assets/50e1d1e086-ishot-2026-04-30-16-28-07.webp" />

3. Use o nó merge para reter a coleção de dados push do Webhook da seção anterior

<img src="https://mintcdn.com/lchnan/9zlgZMZStxEKrVPM/product-assets/09afdc4376-ishot-2026-04-30-16-28-24.webp?fit=max&auto=format&n=9zlgZMZStxEKrVPM&q=85&s=aff24c2139549e797167523c027732d1" alt="Captura de tela do produto YCloud" width="571" height="517" data-path="product-assets/09afdc4376-ishot-2026-04-30-16-28-24.webp" />

4. Enviando mensagens usando nós da YCloud

<img src="https://mintcdn.com/lchnan/WD-ixrYVrqB7b7aQ/product-assets/4c8c3181d3-ishot-2026-04-30-16-34-48.webp?fit=max&auto=format&n=WD-ixrYVrqB7b7aQ&q=85&s=0a5b33d46797eead0c71665dadf4b640" alt="Captura de tela do produto YCloud" width="1047" height="862" data-path="product-assets/4c8c3181d3-ishot-2026-04-30-16-34-48.webp" />

Preencha os detalhes relevantes, insira o texto gerado pela IA no campo Body e envie.

<Warning>
  Observe que o remetente e o destinatário estão **invertidos** aqui; esta é uma mensagem de resposta.
</Warning>

Com isso, o fluxo de trabalho completo do n8n — Webhook → Modelo de Linguagem Grande → Resposta Automática — agora está configurado.

### Salvar em uma tabela de dados (opcional)

<img src="https://mintcdn.com/lchnan/PCdfO4VGvgYoGyQM/product-assets/facf991e02-ishot-2026-04-30-17-17-34.webp?fit=max&auto=format&n=PCdfO4VGvgYoGyQM&q=85&s=c31f86a044a3198ac01f4df4bb1c61fb" alt="Captura de tela do produto YCloud" width="710" height="916" data-path="product-assets/facf991e02-ishot-2026-04-30-17-17-34.webp" />

### Monitorar atualizações subsequentes na mensagem enviada (opcional)

Assim que a etapa 5 for concluída, os dados serão enviados via evento `whatsapp.message.update`.

Ao receber esse envio push, você pode usar o nó `datatable - update rows` para atualizar a tabela de dados, rastreando assim todo o processo de entrega da mensagem.

<img src="https://mintcdn.com/lchnan/RN4tXfXENVvDu0Te/product-assets/d71c29cf5b-image-20260430172030545.webp?fit=max&auto=format&n=RN4tXfXENVvDu0Te&q=85&s=6e9c7f56be24cde01e3a56489add9c9c" alt="Captura de tela do produto YCloud" width="652" height="574" data-path="product-assets/d71c29cf5b-image-20260430172030545.webp" />

<img src="https://mintcdn.com/lchnan/6CxA7mK2t7klNAOL/product-assets/a35824b7cb-image-20260430172039734.webp?fit=max&auto=format&n=6CxA7mK2t7klNAOL&q=85&s=831e5308b4b34776bb5416220faa1878" alt="Captura de tela do produto YCloud" width="644" height="652" data-path="product-assets/a35824b7cb-image-20260430172039734.webp" />


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.