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 (
Valor
eMê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 (
dataInicio
edataReajuste
). - Aplica a fórmula:
R = V * (I - Io) / Io
R
: Valor do reajuste.V
: Valor original do contrato.I
eIo
: Í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%2002
1. 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/valor
separados 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”, poisn1
nã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%2027
devido 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/7169
para filtrar por “Alimentação e Bebidas” (grupo do IPCA). - Mudar formato:
Adicione?formato=xml
para XML. - Excluir cabeçalho:
Adicione/h/n
antes 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/all
em 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