Documentação Detalhada do Workflow “Assistente de Reajuste”

1. Visão Geral
O workflow “Assistente de Reajuste” é uma automação desenvolvida no n8n para calcular reajustes de preços em contratos administrativos com base no Índice Nacional de Preços ao Consumidor Amplo (IPCA), conforme regulamentado pelo Decreto nº 1054/1994. O sistema é composto por dois fluxos principais:
- Atualização mensal da tabela IPCA: Busca os últimos 27 meses de dados do IPCA diretamente da API do IBGE (SIDRA) e armazena em uma planilha do Google Sheets.
- Cálculo do reajuste: Processa solicitações de reajuste enviadas via formulário, calcula o valor ajustado usando os índices IPCA e gera um documento com a sugestão de despacho administrativo.
2. Componentes do Workflow
2.1. Fluxo de Atualização da Tabela IPCA
Objetivo: Atualizar mensalmente os índices do IPCA para uso nos cálculos de reajuste.
Nós Envolvidos:
- Schedule Trigger (Acionado dia 15 de cada mês)
- Dispara o fluxo automaticamente no dia 15 de cada mês.
2. HTTP Request (Pesquisa o JSON da tabela)
- Acessa a API do IBGE para obter os últimos 27 meses do IPCA (variação acumulada em 12 meses, código
2266). - Endpoint:
https://apisidra.ibge.gov.br/values/t/1737/n1/all/v/2266/p/last%2027/d/v2266%2002
3. Filter
- Remove registros inválidos ou vazios.
- Set (Mapeamento de dados)
- Extrai os campos relevantes do JSON (
ValoreMês).
4. Code (Padroniza símbolos)
- Substitui pontos por vírgulas nos valores para formato brasileiro (ex:
10.38→10,38).
5. Google Sheets (Atualiza a tabela IPCA)
- Armazena os dados na planilha pré-configurada:
- Planilha: Tabela IPCA no Google Sheets.
2.2. Fluxo de Cálculo do Reajuste
Objetivo: Calcular o reajuste com base nos índices IPCA e gerar um documento formal para o servidor público.
Nós Envolvidos:
- Webhook
- Recebe os dados do formulário de solicitação de reajuste (ex: empresa, CNPJ, valor, períodos).
- Set (Mapeamento de dados do formulário)
- Estrutura os dados para processamento:
json {"empresa": "Nome da empresa","cnpj": "00.000.000/0000-00","valor": "10.000,00","dataInicio": "março 2024","dataReajuste": "março 2025"}
2. OpenAI (Cálculo do reajuste)
- Prompt:
- Identifica os índices IPCA correspondentes aos períodos (
dataInicioedataReajuste). - Aplica a fórmula:
R = V * (I - Io) / Io R: Valor do reajuste.V: Valor original do contrato.IeIo: Índices IPCA dos meses final e inicial.- Gera uma sugestão de despacho administrativo em texto puro.
- Identifica os índices IPCA correspondentes aos períodos (
3. Google Docs (Cria e atualiza documento)
- Cria um novo documento no Google Docs com o título:
Reajuste da empresa [NOME_DA_EMPRESA] - Insere o texto do despacho gerado pela OpenAI.
4. OpenAI2 (Formatação HTML)
- Converte o despacho em HTML para envio por e-mail.
5. Gmail (Envia e-mail para o usuário)
- Envia o documento gerado para o e-mail do solicitante.
3. Parâmetros da API do IBGE
O endpoint utilizado para buscar os dados do IPCA possui os seguintes parâmetros:
t/1737: Tabela do IPCA.n1/all: Nível territorial “Brasil”.v/2266: Variável “Variação acumulada em 12 meses”.p/last 27: Últimos 27 meses.d/v2266 02: Formata o valor com 2 casas decimais.
Exemplo de saída da API:
{
“V”: “10.38”,
“D3N”: “janeiro 2022”,
“MN”: “%”
}
4. Regras de Negócio
- Base legal: Decreto nº 1054/1994.
- Fórmula do reajuste:
Valor Reajustado = Valor Original × (Índice Final − Índice Inicial) / Índice Inicial- Arredondamento: Duas casas decimais.
- Periodicidade: Atualização mensal no dia 15.
5. Links Úteis
- Documentação da API do IBGE: apisidra.ibge.gov.br
- Planilha de referência: Tabela IPCA
- Tutorial completo: Como calcular reajuste com IPCA
6. Observações
- Limitações:
- O fluxo não valida CNPJs ou datas inválidas.
- Depende da disponibilidade da API do IBGE.
- Personalização:
- Para usar outros índices (ex: INPC), ajuste o parâmetro
v/no endpoint.
Informações da API SIDRA
Vamos decompor o endpoint passo a passo para entender o que ele faz:
Endpoint Analisado:
https://apisidra.ibge.gov.br/values/t/1737/n1/all/v/2266/p/last%2027/d/v2266%20021. Estrutura Base da API Sidra
A URL segue o padrão da API do IBGE:
https://apisidra.ibge.gov.br/values/: Caminho base da API.- Os parâmetros são passados como
/chave/valorseparados por barras.
2. Parâmetros do Endpoint
t/1737
- Tabela 1737: Referência ao IPCA (Índice Nacional de Preços ao Consumidor Amplo).
- Documentação oficial: Tabela 1737 no SIDRA.
n1/all
- Nível Territorial:
n1: Nível hierárquico “Brasil” (código 1).all: Seleciona todas as unidades territoriais desse nível (no caso, apenas “Brasil”, poisn1não tem subdivisões).- Observação: Se fosse
n2/all, retornaria Grandes Regiões (Norte, Nordeste, etc.).
v/2266
- Variável 2266: Corresponde à “Variação acumulada em 12 meses” do IPCA.
- Códigos alternativos:
63: Índice (base dez/1993).2265: Variação mensal.2266: Variação acumulada em 12 meses (a usada aqui).
p/last 27
- Período: Últimos 27 meses (codificado como
last%2027devido ao espaço convertido em%20). - Formato dos períodos:
- O IPCA usa códigos de 6 dígitos (
AAAAMM). Ex:202301= janeiro/2023.
d/v2266 02
- Casas Decimais:
d/: Parâmetro para controle de arredondamento.v2266 02: Aplica 2 casas decimais apenas à variável2266(variação acumulada).- Sintaxe alternativa:
/d/2: 2 casas decimais para todas as variáveis./d/s: Usa o padrão do IBGE (varia por variável).
3. Saída Esperada (Exemplo em JSON)
[
{
"D1C": "1",
"D1N": "Brasil",
"D2C": "2266",
"D2N": "Variação acumulada em 12 meses",
"D3C": "202201",
"D3N": "janeiro 2022",
"MN": "%",
"V": "10.38" // Valor com 2 casas decimais (devido a /d/v2266 02)
},
{
"D1C": "1",
"D1N": "Brasil",
"D2C": "2266",
"D2N": "Variação acumulada em 12 meses",
"D3C": "202202",
"D3N": "fevereiro 2022",
"MN": "%",
"V": "10.54"
}
// ... (mais 25 registros)
]4. Quando Usar Esse Endpoint?
- Objetivo: Monitorar a inflação acumulada nos últimos 27 meses em nível nacional.
- Aplicações:
- Análises econômicas.
- Comparativos de inflação anualizada.
- Dashboard de indicadores macroeconômicos.
5. Personalizações Possíveis
- Adicionar classificações:
Ex:/c315/7169para filtrar por “Alimentação e Bebidas” (grupo do IPCA). - Mudar formato:
Adicione?formato=xmlpara XML. - Excluir cabeçalho:
Adicione/h/nantes dos parâmetros.
Dúvidas Comuns
- Por que 27 meses?
Pode ser para cobrir 2 anos completos + 3 meses de análise recente. - Erro comum:
Usarn1/allem tabelas sem dados desagregados por território (como o IPCA nacional). Nesse caso,n1/1(apenas “Brasil”) seria equivalente.
Se precisar de ajustes (ex: períodos específicos como 202101-202312), é só adaptar o parâmetro p/.
Responsável: Equipe GPTGov
Versão do n8n: 1.80.1
Última atualização: 15/04/2025

