---
title: Requisição HTTP
description: Chame qualquer API externa diretamente do seu fluxo, sem sair do canvas.
---

# Requisição HTTP  ·  `http`

<NoCard kind="http" categoria="Dados" />

<Secao icon="info">Para que serve</Secao>

Imagina que você precisa consultar o rastreamento de um pedido num site de transportadora. Você abre o site, digita o código e recebe o resultado. O nó Requisição HTTP faz exatamente isso — só que de forma automática, dentro do fluxo, conectando com qualquer outro sistema que tenha uma **API** na internet (a "porta de entrada" que um sistema disponibiliza para outros sistemas conversarem com ele, sem precisar de tela nem de uma pessoa clicando).

Esse é o nó mais técnico do Flow Builder — ele fala a língua de sistemas, não a língua de atendimento. Se você não tem familiaridade com integrações, o ideal é configurá-lo junto com quem cuida da parte técnica do seu escritório ou fornecedor. Ainda assim, o passo a passo abaixo cobre o que você precisa saber para usá-lo no dia a dia.

<Secao icon="clock">Quando usar</Secao>

- Buscar dados de um sistema externo (ERP, CRM, plataforma de e-commerce)
- Enviar informações para um webhook de outro serviço (um endereço que esse serviço deixa pronto para receber avisos automáticos)
- Consultar preços, status de pedidos ou dados cadastrais em tempo real
- Acionar uma automação em outra ferramenta (Zapier, Make, n8n, etc.)
- Criar, atualizar ou deletar registros em sistemas externos

---

<Secao icon="list-checks">Passo a passo</Secao>

<Passos>
  <Passo>Arraste o nó **Requisição HTTP** para o canvas e conecte-o ao bloco anterior.<br/><Captura legenda="Paleta de nós aberta no canvas do Flow Builder, com as categorias disponíveis para localizar e arrastar o nó desejado" src="/img/flowbuilder-paleta-aberta.png" /></Passo>
  <Passo>Escolha o **Método**: GET, POST, PUT, PATCH, DELETE ou HEAD.</Passo>
  <Passo>Informe a **URL** do endpoint — o endereço exato do serviço que você quer acessar dentro daquela API. Pode usar variáveis do fluxo: <code v-pre>https://api.meu-sistema.com/clientes/<span v-pre>{{contact.id}}</span></code></Passo>
  <Passo>Se precisar de autenticação, adicione os **Headers** necessários. Headers são informações extras enviadas junto com a requisição — a mais comum é o **token** de acesso, uma espécie de senha que identifica quem está fazendo a chamada (ex.: <code v-pre>Authorization: Bearer <span v-pre>{{token}}</span></code>).</Passo>
  <Passo>Para POST/PUT/PATCH, preencha o **Body** — o conteúdo que você está enviando — com o JSON que quer enviar. **JSON** é só um jeito padronizado de organizar dados em pares de "campo: valor", parecido com uma ficha preenchida.</Passo>
  <Passo>Salve e conecte a saída ao próximo nó. Os dados retornados ficam disponíveis como <code v-pre>{{http.body}}</code> (ou o nome que você der ao nó).</Passo>
</Passos>

---

<Secao icon="sliders-horizontal">Campos</Secao>

| Campo | O que faz |
|-------|-----------|
| **Método** | Tipo de requisição: GET (buscar), POST (criar), PUT (substituir), PATCH (atualizar parcialmente), DELETE (remover), HEAD (verificar) |
| **URL** | Endereço do endpoint — suporta expressões <code v-pre>{{ }}</code>. Digite <code>/</code> ou clique no botão <code>{x}</code> para inserir variáveis disponíveis |
| **Headers** | Cabeçalhos HTTP (autenticação, tipo de conteúdo, etc.) |
| **Params (Query String)** | Parâmetros que vão na URL após `?` — ex.: `?page=1&limit=10` |
| **Tipo de Body** | Agrupa o tipo de conteúdo em três categorias: **FORM** (Multipart Form, Form URL Encoded), **RAW** (JSON, XML, Texto, SPARQL), **OTHER** (File / Binary, No Body). O tipo determina como o corpo é enviado |
| **Body** | Corpo da requisição (JSON, formulário, texto ou arquivo) — disponível nos métodos POST, PUT, PATCH. Nos modos JSON, XML, Texto e SPARQL, o editor exibe numeração de linha, dobra de blocos e destaque de sintaxe. No modo JSON, se o conteúdo for válido, aparece um botão "Formatar" que reindenta o JSON. Use <code>/</code> ou botão <code>{x}</code> para inserir variáveis |
| **Timeout** | Tempo máximo de espera pela resposta (em segundos) |

---

<Secao icon="circle-check">Exemplo</Secao>

Cenário: buscar o nome do plano que o cliente tem num sistema externo.

**Configuração:**
- Método: `GET`
- URL: <code v-pre>https://api.meu-crm.com/clientes/<span v-pre>{{contact.external_id}}</span>/plano</code>
- Header: <code v-pre>Authorization: Bearer <span v-pre>{{config.api_token}}</span></code>

**Uso da resposta:**
No nó seguinte, acesse <code v-pre>{{http.body.plano.nome}}</code> para usar o nome do plano na mensagem.

---

<Secao icon="file">Envio de arquivos</Secao>

Você pode enviar arquivos de duas formas:

**1. Usar variável**

Referencie um arquivo de um nó anterior usando o seletor de variável (sem as chaves `{{ }}`). Exemplo: para usar o primeiro arquivo recebido do contato:

- `userinput.files.0` — primeiro arquivo
- `userinput.files.1` — segundo arquivo, etc.

**2. Enviar arquivo direto**

Faça upload de um arquivo no painel que fica salvo junto com o nó e é enviado sempre.

- **Limite:** 20 MB
- **Tipos aceitos:** imagens (JPEG, PNG, GIF, WebP), PDF, documentos Office (Word, Excel, PowerPoint), texto (TXT, CSV), áudio (MP3, OGG, WAV, WebM), vídeo (MP4, MOV) e ZIP
- **Tipos bloqueados:** SVG e HTML (por segurança)

**Multipart Form**

Ao usar o tipo de body "Multipart Form" (categoria FORM), clique no botão "Adicionar arquivo" para incluir um campo de arquivo na tabela de formulário, além dos campos de texto.

**Exemplo: Enviar documento recebido do contato para API externa**

- **Método:** `POST`
- **URL:** `https://api.processos.com/upload`
- **Tipo de Body:** `Multipart Form`
- **Campo de arquivo:** referencie `userinput.files.0` para enviar o primeiro arquivo

---

<Dica>

Nos métodos GET e DELETE, você não precisa preencher o Body. Use Query Params para filtrar resultados.

</Dica>

<Cuidado>

Se a API exigir um tipo de autenticação mais complexo (como OAuth2 ou certificado digital), configurar esse nó sozinho pode não ser trivial — vale pedir apoio de quem cuida da parte técnica. Nesses casos, considere usar um servidor MCP já pronto (veja [Ferramenta MCP](/guia/flow-builder/acoes/ferramenta-mcp)), que resolve a autenticação por você.

</Cuidado>

---

## Saiba mais

- [Ferramenta MCP](/guia/flow-builder/acoes/ferramenta-mcp) — chame serviços externos já conectados, sem configurar autenticação manualmente
