Taxa Selic, CDI e IPCA com n8n: seu primeiro HTTP Request

Quanto está a Selic hoje? E o CDI, que aparece em todo investimento de renda fixa? E a inflação medida pelo IPCA? Neste tutorial você vai montar, no n8n, um workflow de apenas dois nós que responde essas três perguntas com um clique. No caminho, você aprende a usar o nó HTTP Request, o nó mais importante para quem está começando, porque é com ele que o n8n conversa com praticamente qualquer serviço da internet.

A fonte dos dados é a BrasilAPI, um projeto aberto que reúne informações públicas do Brasil numa API gratuita. Ela não pede cadastro, login nem chave, então você não precisa criar nenhuma credencial para seguir este passo a passo.

O que você vai construir

Ao final, este será o seu workflow no editor do n8n, com dois nós ligados em sequência:

Editor do n8n com o workflow Taxas Selic, CDI e IPCA: o nó When clicking Execute workflow ligado ao nó HTTP Request
O workflow final “Taxas Selic, CDI e IPCA” no editor do n8n (versão 2.40.7).
  • Manual Trigger (no canvas aparece como “When clicking ‘Execute workflow’”): dá a partida no workflow quando você clica no botão Execute workflow.
  • HTTP Request: faz uma requisição GET para a BrasilAPI e recebe a lista com a Selic, o CDI e o IPCA.

Versão usada: n8n 2.40.7. Os nomes dos botões e campos estão em inglês, exatamente como aparecem na interface. Em versões mais novas, alguns detalhes visuais podem mudar, mas a lógica continua a mesma.

Pré-requisitos


Montando o workflow, nó por nó

Na tela inicial do n8n, clique para criar um workflow novo e dê a ele o nome Taxas Selic, CDI e IPCA (clique no nome “My workflow”, no topo, para renomear). Depois, adicione os dois nós abaixo, nesta ordem. O primeiro nó é escolhido no botão Add first step, no meio do canvas; o segundo, no botão + que aparece à direita do primeiro.

Nó 1: Manual Trigger (o botão de partida)

Todo workflow precisa de um gatilho, o nó que decide quando a automação começa. Como a ideia aqui é aprender e testar, o gatilho mais simples é o Manual Trigger: ele só dispara quando você clica. No painel que se abre à direita (“What triggers this workflow?”), digite “manual” na busca e escolha Manual Trigger. O nó entra no canvas com o nome When clicking ‘Execute workflow’.

Tela do nó When clicking Execute workflow com a mensagem This node does not have any parameters e, à direita, o OUTPUT com 1 item vazio
O Manual Trigger não tem campos para preencher. À direita, a saída de um teste: um item vazio.
CampoValorPor que assim
Parâmetros(nenhum)O próprio n8n avisa: “This node does not have any parameters”. O nó serve só para dar a partida.
Nome do nóWhen clicking ‘Execute workflow’É o nome padrão. Você pode renomear, mas mantê-lo ajuda a comparar a sua tela com os prints.

Repare na saída do teste, à direita: o painel OUTPUT mostra 1 item com a mensagem “This is an item, but it’s empty”. Isso é esperado. O Manual Trigger não traz nenhum dado; ele apenas entrega um item vazio para o próximo nó, como quem diz “pode começar”. É esse item que faz o HTTP Request rodar uma vez.

O quadro amarelo no topo do nó lembra que existem outras formas de disparar um workflow, como um agendamento ou um webhook. Vamos falar disso no final.

Nó 2: HTTP Request (buscar as taxas na BrasilAPI)

Clique no + à direita do Manual Trigger, procure por “HTTP Request” e adicione o nó. Ele é o “canivete suíço” do n8n: serve para chamar qualquer endereço da web que responda com dados. Preencha os campos como no print e na tabela. A URL completa é esta:

https://brasilapi.com.br/api/taxas/v1
Tela do nó HTTP Request com Method GET, URL da BrasilAPI e Authentication None; à direita, a saída em JSON com três objetos: Selic, CDI e IPCA
HTTP Request configurado. À direita (OUTPUT, modo JSON), a resposta da API com 3 itens.
CampoValorPor que assim
MethodGETQueremos apenas ler uma informação. GET é o método usado para consultar dados, sem enviar nem alterar nada.
URLa URL do bloco acimaEndereço da BrasilAPI que devolve as taxas de juros e alguns índices oficiais do Brasil numa lista só.
AuthenticationNoneA API é pública: não pede login, token nem chave.
Send Query ParametersdesligadoEsse endereço não precisa de parâmetros extras depois de um “?”.
Send HeadersdesligadoA API não exige cabeçalhos especiais.
Send BodydesligadoUma consulta GET não envia corpo (conteúdo) na requisição.
Options(nenhuma)As opções padrão bastam para este caso.

Clique em Execute step, no topo do nó, para testar. Como o HTTP Request depende do Manual Trigger, o n8n executa os dois. Em seguida, olhe o painel OUTPUT no modo JSON, como no print. A resposta é uma lista (repare nos colchetes [ ]) com três blocos, e cada bloco tem dois campos:

  • nome: o nome da taxa ou do índice (Selic, CDI ou IPCA);
  • valor: o número correspondente, em porcentagem. Repare que ele vem sem aspas, ou seja, como número de verdade, e com ponto no lugar da vírgula, que é o padrão das APIs.

Aqui está a lição mais importante deste tutorial: quando uma API devolve uma lista, o n8n transforma cada elemento da lista em um item separado. Por isso o painel mostra 3 items. Se você colocasse outro nó depois deste, ele rodaria uma vez para cada taxa, sem que você precise programar nenhum laço de repetição.

Uma palavra rápida sobre o que significam esses números. A Selic é a taxa básica de juros da economia, definida pelo Comitê de Política Monetária (Copom) do Banco Central. O CDI é a taxa dos empréstimos de curtíssimo prazo entre bancos e serve de referência para CDBs e outros investimentos de renda fixa. O IPCA é o índice oficial de inflação do país, calculado pelo IBGE. Os valores do print são apenas o que a API respondia no dia do teste; os seus serão os do dia em que você rodar. Como a resposta não informa a data de referência de cada número, para decisões importantes confira sempre as fontes oficiais (Banco Central e IBGE).


O workflow completo e o teste

Feche o nó (tecla Esc ou o X no canto) e clique em Execute workflow, o botão laranja na parte de baixo do canvas. Quando tudo dá certo, os dois nós ganham um contorno verde com um ✓, e as ligações mostram quantos itens passaram por elas: 1 item saindo do Manual Trigger e 3 items saindo do HTTP Request.

Workflow executado com os dois nós em verde, 1 item entre o Manual Trigger e o HTTP Request e 3 items na saída do HTTP Request
O workflow completo depois do teste: os dois nós em verde, com 1 item e 3 items nas ligações.

Para ver o resultado sem abrir o nó, clique em Logs, na barra inferior do editor. O painel mostra a lista de nós executados à esquerda e, à direita, a saída do nó selecionado. Selecione o HTTP Request e você verá a tabela com as colunas nome e valor, uma linha para cada taxa:

Painel Logs do n8n com o nó HTTP Request selecionado e a saída em tabela com as linhas Selic, CDI e IPCA
Resultado do teste no painel Logs: a saída do HTTP Request em forma de tabela, com 3 itens.

Os botões Schema, Table e JSON, que aparecem no painel OUTPUT de cada nó, mostram os mesmos dados de três jeitos diferentes. A tabela é a mais fácil de ler; o JSON mostra o formato exato que a API enviou; e o Schema lista os campos disponíveis, o que ajuda muito quando você for arrastar campos para outros nós.

Este workflow não precisa ser publicado. O Manual Trigger só roda quando você clica, então ele serve para consultas na hora e para testes. Se quiser receber as taxas automaticamente todo dia, troque o gatilho por um Schedule Trigger e publique o workflow, como fizemos no tutorial de instalação.

Dica: consultar uma taxa só

A BrasilAPI também aceita o nome da taxa no fim do endereço. Se você trocar a URL por https://brasilapi.com.br/api/taxas/v1/selic, a resposta deixa de ser uma lista e passa a ser um único bloco, com nome igual a SELIC e o respectivo valor. Nesse caso, o HTTP Request devolve 1 item em vez de 3. O mesmo vale para cdi e ipca.

Erros comuns

“The resource you are requesting could not be found”. Esse erro aparece quando a URL tem um erro de digitação. No teste abaixo, escrevemos taxa em vez de taxas e a BrasilAPI respondeu com o código 404, que significa “página não encontrada”. A solução é copiar e colar a URL exatamente como está no Nó 2.

Nó HTTP Request com a URL digitada errada e a mensagem de erro The resource you are requesting could not be found, com o código 404
Erro real com a URL errada (/api/taxa/v1): a API responde 404 e o nó fica vermelho.
  • “The connection cannot be established, this usually occurs due to an incorrect host (domain) value”. O n8n não conseguiu nem chegar ao servidor. As causas mais comuns são um erro no domínio (por exemplo, brasilapi.com.brr) ou um computador sem acesso à internet. Confira a URL e a sua conexão.
  • “Eu esperava 1 resultado e vieram 3 itens.” Não é um erro: é o comportamento normal do n8n com listas, como explicamos no Nó 2. Se quiser só uma taxa, use a dica acima.
  • “Os valores não mudam de um dia para o outro.” Também é normal. A Selic, por exemplo, só é alterada nas reuniões do Copom, e o IPCA é divulgado uma vez por mês. O workflow está funcionando; os números é que não mudam todo dia.
  • Cliquei em Execute step no Manual Trigger e não apareceu nenhum dado. Correto: esse nó sempre devolve um item vazio. Os dados só aparecem na saída do HTTP Request.

JSON do workflow para importar

Se preferir, importe o workflow pronto. Baixe o arquivo abaixo ou copie o JSON. No n8n, crie um workflow novo e escolha uma das opções: abra o menu … (três pontinhos) no topo do editor, vá em Import e depois em From file para abrir o arquivo; ou simplesmente cole o JSON no canvas com Ctrl+V.

O download é um arquivo .zip com o taxas-selic-cdi-ipca.json dentro. Descompacte antes de importar (ou copie o JSON do bloco abaixo).

{
  "name": "Taxas Selic, CDI e IPCA",
  "nodes": [
    {
      "parameters": {},
      "id": "7b2e1d40-1111-4c1a-8e01-0b0000000001",
      "name": "When clicking ‘Execute workflow’",
      "type": "n8n-nodes-base.manualTrigger",
      "typeVersion": 1,
      "position": [
        0,
        0
      ]
    },
    {
      "parameters": {
        "url": "https://brasilapi.com.br/api/taxas/v1",
        "options": {}
      },
      "id": "7b2e1d40-2222-4c1a-8e01-0b0000000002",
      "name": "HTTP Request",
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.5,
      "position": [
        260,
        0
      ]
    }
  ],
  "connections": {
    "When clicking ‘Execute workflow’": {
      "main": [
        [
          {
            "node": "HTTP Request",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  },
  "pinData": {},
  "settings": {
    "executionOrder": "v1"
  },
  "meta": {
    "templateCredsSetupCompleted": false
  }
}

Este workflow não usa nenhuma credencial, então ele funciona logo depois de importado: é só clicar em Execute workflow.

Recapitulando

  • O Manual Trigger dá a partida no workflow quando você clica e entrega um item vazio.
  • O HTTP Request com o método GET busca dados em qualquer API pública; aqui, a BrasilAPI.
  • Quando a resposta é uma lista, o n8n cria um item para cada elemento (3 taxas, 3 itens).
  • Os painéis OUTPUT e Logs, com as visões Schema, Table e JSON, mostram exatamente o que cada nó recebeu.

Com esse mesmo par de nós você já consegue consultar feriados, bancos, CEPs e muitas outras informações públicas. No próximo tutorial, vamos juntar um formulário ao HTTP Request para criar uma consulta de CEP interativa.