Solicitação Externa - API
Com solicitações externas, você pode chamar APIs de terceiros ou do seu próprio servidor para solicitar dados, enviar dados etc.

Em uma etapa de Ação, encontre "Solicitação Externa" em "Ações Avançadas" e clique em "Adicionar sua solicitação" para começar a editá-la:

- escolha um tipo de solicitação como GET, POST, etc.
- cole a URL/endpoint da sua solicitação
- ajuste a seção "Parâmetros de URL", "Cabeçalhos", "Corpo" ou "Autorização", se necessário — por exemplo, para configurar uma chave de API
- clique em "Teste" e a área 5 será exibida na seção "Resposta" com um código de resposta
- clique em "Cabeçalhos de Resposta" para expandir o cabeçalho e ver mais detalhes; os dados recebidos aparecem em azul
- escolha de qual parte dos dados você precisa clicando no círculo correspondente, do lado esquerdo
- após clicar na área 6, o caminho JSON para os dados selecionados é mostrado automaticamente aqui. $ significa todo o JSON.
- escolha em qual campo personalizado armazenar os dados. Você pode criar um campo novo aqui: digite um nome de campo e clique nele no menu suspenso. Clique no botão "Adicionar" para incluí-lo na lista de mapeamento
- por fim, o mapeamento é exibido na área 9. Adicione quantos mapeamentos forem necessários e clique em "Salvar".
Se a API que você vai chamar já tem um comando cURL pronto — na documentação do serviço, no Postman ou copiado do navegador —, dá para preencher a solicitação inteira de uma vez, em vez de digitar método, URL, cabeçalhos e corpo campo a campo.
curl. Ele pode ocupar várias linhas, com as quebras e as barras invertidas do jeito que você copiou.Bearer e o Basic Auth para você.
Na captura de tela acima, podemos ver que existe um parâmetro de URL no endpoint chamado “user_name”. Lembre-se de copiar o endpoint e fornecer um valor de teste.
Alternativamente, você pode usar as seções URL Params para o mesmo resultado.

Assim como em URL Params, coloque primeiro o nome da chave, depois insira a variável e forneça um valor de teste.

Alternativamente, coloque o token na seção Autorização. É menos sujeito a erros (às vezes as pessoas simplesmente esquecem o “Bearer ” na frente do token).
Além disso, para Basic Auth, basta colocar o valor do seu nome de usuário e senha e o sistema fará a codificação base64 para você.
Para incluir um arquivo nos parâmetros, use multipart/form-data:

x-www-for-urlencoded funciona exatamente como a seção Parâmetros de URL ou Cabeçalhos.
Em vez de listar todas as cargas em x-www-form-urlencoded, você também pode colar a carga de exemplo em JSON bruto:

No lado esquerdo, em Conteúdo do Corpo, cole ou escreva seu JSON primeiro; ao inserir uma variável, o conteúdo do corpo do teste aparece imediatamente do lado direito. Ele serve para especificar um valor JSON de teste.
Clique em Copiar do conteúdo do corpo para copiar toda a estrutura JSON. Todas as variáveis serão substituídas por {{ variable_name}}. Remova o espaço reservado e coloque seus valores de teste.
Quando estiver pronto, clique no botão Testar próximo ao endpoint da URL ou na seção Resposta.

Além das dicas sobre como mapear dados acima, você também pode salvar os valores do cabeçalho de resposta para uso posterior. Basta expandir o cabeçalho e clicar em um valor: o caminho JSON correspondente aparece ali automaticamente.
Nem toda API responde no formato que você precisa. Quando o caminho JSON não dá conta — a lista precisa ser filtrada, os valores somados, a data reformatada, o texto quebrado em pedaços —, o pré-processamento resolve: um trecho de JavaScript que roda no servidor depois de a resposta chegar e antes de o mapeamento gravar as variáveis. O mapeamento passa a enxergar o que o seu código devolveu, não o que a API mandou.
Ative o pré-processamento na seção Resposta e escreva o código na caixa que aparece. Três regras fazem toda a diferença:
- A resposta chega na variável
payload, já pronta para uso — não precisa deJSON.parse. - Escreva só o corpo do código: nada de
functionem volta, e não declarepayloadde novo. - O
returné o que vale. O que você devolver passa a ser a raiz do mapeamento: devolveu{ total: 3 }, o caminho é$.total.
// a API devolve { data: [ {nome, status, valor}, ... ] }
const ativos = payload.data.filter(function (i) { return i.status === 'ativo'; });
return {
quantidade: ativos.length,
total: ativos.reduce(function (s, i) { return s + i.valor; }, 0),
primeiro: ativos.length ? ativos[0].nome : ''
};Com esse retorno, o mapeamento grava $.quantidade, $.total e $.primeiro nos campos personalizados — três variáveis prontas, no lugar de uma lista crua que o fluxo teria de tratar depois.
São o mesmo motor em dois lugares, e a diferença está no que entra e no que sai:
payload
