Página inicial

SINAPI App

Ambiente de apoio para consultas, listas e orçamentos com referências SINAPI, preparado para evoluir com IA, BIM e integrações de API.

Acesso liberado Requer assinatura
Tabela SINAPI
Consulte referências e simule custos, encargos e BDI.
Meus Orçamentos
Organize os orçamentos criados e acompanhe seu estado de revisão.
Insumos e Composições
Cadastre insumos, organize custos unitários e monte composições próprias em uma única página.
Orçamento com BIM
Prepare quantitativos BIM para relacioná-los às referências SINAPI.
Assinaturas
Consulte módulos, limites e períodos de contratação.
Ver mais recursos Exibir documentos, downloads, manual e gerenciamento
Editor Doc
Edite documentos tecnicos vinculados aos orcamentos, com previa e exportacao.
Downloads
Acesse planilhas, relatórios, manuais e links oficiais.
Manual
Consulte orientações e boas práticas do aplicativo.
Chave API
Emita chaves com validade e limites para integrações contratadas.
Monitorar Uso
Acompanhe o consumo da IA e as chamadas da API.

Notícias e novidades

Mensagens importantes sobre recursos, atualizações e próximos passos do aplicativo.

Navegação

Menus reorganizados

As áreas do aplicativo estão agrupadas em SINAPI, Orçamento, Banco de Dados, Manual e Gerenciamento.

Assistência

IA em toda a plataforma

O módulo de IA foi pensado para apoiar diferentes páginas, com consumo monitorado por requisições e tokens.

Integração

Acesso por chave API

O gerenciamento permite emitir chaves com validade e limites de uso para integrações autorizadas.

Perguntas Frequentes

Respostas rápidas para orientar o uso do SINAPI App e dos materiais oficiais.

O que é o SINAPI?

O SINAPI é uma referência de custos e composições para obras e serviços de engenharia, mantida pela CAIXA em parceria com o IBGE.

Para que serve a Tabela SINAPI?

Ela pesquisa referências e simula custos com mão de obra, encargos sociais, encargos complementares e BDI editáveis.

Como funciona a Assistência com IA?

A IA pode apoiar diferentes páginas. O plano inclui até 100 requisições semanais ou 2 milhões de tokens de saída.

Para que serve o Banco de Dados Próprio?

Ele reúne insumos e composições particulares em uma única página, permitindo cadastrar custos, montar composições próprias e reutilizar esses itens nas análises e nos orçamentos.

Como funciona a Consulta por API?

Cada chave possui validade e as requisições ficam monitoradas na página Monitorar Uso. No ambiente atual, a API está configurada sem limite de quantidade de requisições.

Onde estão os manuais oficiais?

Os materiais e links oficiais da CAIXA estão concentrados na página Downloads.

Orcamento

Editor Doc

Editor de documentos tecnicos vinculados aos orcamentos salvos.

Selecao

Markdown PDF

Area de trabalho

Manual

Manual do usuário

Guia completo das áreas e funcionalidades da plataforma SINAPI App, do orçamento à integração BIM e à API.

Visão geral

O SINAPI App reúne, em um único portal, a consulta da tabela SINAPI, a elaboração de orçamentos, o levantamento de quantitativos por modelos BIM (IFC), o cadastro de composições próprias, a geração de documentos técnicos e o acesso programático por API. As áreas se comunicam: o mesmo banco SINAPI alimenta a precificação em todos os módulos, e o levantamento do BIM pode ser enviado diretamente para um orçamento.

  • Tabela SINAPI: pesquisa de composições e insumos, custos por UF, encargos e BDI.
  • Orçamento: Meus Orçamentos, Editor de Documentos e Orçamento com BIM.
  • Banco de Dados: insumos e composições próprias, rastreáveis.
  • Gerenciamento: dados do usuário, Chave API, monitoramento de uso e assinaturas.
  • Assistência por IA: sugestões automáticas de vínculos e itens, conforme o plano contratado.

Fluxo de trabalho recomendado

  1. Escolha o mês de referência na Tabela SINAPI e localize as composições/insumos do seu serviço.
  2. Crie um orçamento em Meus Orçamentos e defina os parâmetros: UF, regime de encargos e BDI.
  3. Adicione itens manualmente pela Tabela SINAPI ou levante quantitativos pelo Orçamento com BIM.
  4. No BIM, vincule composições/insumos aos objetos do modelo e envie os itens ao orçamento.
  5. Ajuste BDI (geral ou por classe), cronograma físico-financeiro e status do orçamento.
  6. Gere os documentos técnicos no Editor Doc, vinculados ao orçamento.
  7. Cadastre composições próprias quando o serviço não existir no SINAPI.
  8. Se for integrar planilhas ou sistemas, emita uma Chave API e acompanhe o uso em Monitorar Uso.

Áreas do sistema

Detalhamento de cada módulo do menu lateral e de suas principais funções.

1 Tabela SINAPI

Consulta oficial das referências SINAPI, com simulação de custos, encargos e BDI.

  • Selecione o mês de referência (a base é o banco unificado sinapi.sqlite).
  • Pesquise por código, descrição ou termos do serviço; a busca textual ranqueia os resultados.
  • Filtre por composições ou insumos e veja o custo unitário para a UF escolhida.
  • Escolha o regime de encargos sociais: com desoneração, sem desoneração ou encargos fixos.
  • Abra o analítico de uma composição para ver insumos, coeficientes e a memória de cálculo.
  • Consulte o histórico de preços e exporte relatórios em PDF ou Excel.

2 Central de Downloads

Arquivos internos do aplicativo e materiais oficiais da CAIXA.

  • Modelos de orçamento, planilhas de composições/insumos, memória de cálculo e checklists.
  • Atalhos para os manuais oficiais da CAIXA: metodologia, parâmetros e fichas técnicas de insumos.
  • Links para a página de downloads e a documentação técnica do SINAPI.

3 Meus Orçamentos

Crie, organize e versione seus orçamentos.

  • Cadastre o orçamento com tipo, objetivo, responsável, ART/RRT e cliente.
  • Defina o contexto: mês de referência, UF, regime de encargos e encargos personalizados.
  • Organize os serviços em grupos e subgrupos e adicione itens SINAPI ou composições próprias.
  • Configure o BDI geral ou por classe (mão de obra, material, equipamento, serviço, outros).
  • Monte o cronograma físico-financeiro por período e acompanhe o status do orçamento.
  • Compartilhe pelo código PIN de 8 caracteres e exporte a planilha do orçamento.
Cada orçamento recebe um PIN exclusivo, usado para compartilhar e para vincular o levantamento do BIM.

4 Editor Doc

Edite e exporte documentos técnicos vinculados a um orçamento.

  • Selecione o orçamento e o tipo de documento desejado.
  • Tipos disponíveis: Memorial Descritivo, Memorial de Cálculo, Caderno de Encargos, Lista de Materiais, Termo de Referência, Estudo Técnico Preliminar e Metadados BIM.
  • Edite o conteúdo aproveitando os dados do orçamento e exporte o documento final.
  • Os documentos ficam ligados ao orçamento para manter a rastreabilidade do trabalho.

5 Orçamento com BIM

Levante quantitativos a partir de modelos IFC/XKT e envie-os para um orçamento.

  • Cabeçalho enxuto com botões que abrem janelas: Modelo, SINAPI, Projeto, Orçamento e IA.
  • Em SINAPI, escolha o mês de referência, a UF e o regime de encargos usados na precificação.
  • Em Modelo, abra um arquivo .ifc ou .xkt; o IFC é convertido e exibido no visualizador 3D.
  • Clique nos objetos para capturar tipo, pavimento e dimensões; estime área, volume e comprimento pela geometria quando o IFC não traz os quantitativos.
  • Vincule composições/insumos a um objeto, a uma classe ou a objetos similares, com critério de quantitativo automático pela unidade.
  • Em Orçamento, vincule a um orçamento existente (pela lista ou pelo PIN) e herde mês/UF/regime dele.
  • Use Enviar itens ao orçamento: os itens entram agrupados por pavimento, com memorial de cálculo que identifica os objetos e os parâmetros adotados.
  • Salve o projeto em JSON para reabrir o levantamento depois.
O custo unitário enviado é calculado com a mesma lógica da Tabela SINAPI, garantindo que os totais batam com o orçamento.

6 Assistência por IA (no BIM)

Sugestões automáticas de vínculos entre objetos BIM e itens do orçamento.

  • Abra o botão IA e envie um tipo IFC por vez, para não sobrecarregar a consulta.
  • A IA recebe os objetos do tipo e os itens de referência do orçamento (código, descrição e unidade).
  • Ela retorna o código SINAPI, o objeto e a quantidade sugerida de cada vínculo.
  • Você decide: Substituir tudo, Incluir novos vínculos ou Ignorar a sugestão.
Requer uma chave OpenRouter configurada (OPENROUTER_API_KEY). A disponibilidade segue o plano contratado.

7 Insumos e Composições próprias

Cadastre insumos e monte composições quando o serviço não existir no SINAPI.

  • Cadastre insumos próprios com unidade e preço de referência.
  • Monte composições próprias combinando insumos e composições com seus coeficientes.
  • Registre equivalências e mantenha a rastreabilidade da origem de cada item.
  • Use as composições próprias nos orçamentos junto com os itens SINAPI.

8 Chave API

Conecte planilhas, BI e sistemas ao banco SINAPI por tokens.

  • Emita até 2 tokens por e-mail, com validade de 1 a 365 dias.
  • O token completo aparece somente na criação; o banco guarda apenas o hash SHA-256.
  • Use um token por sistema consumidor (Excel, Power BI, integração externa).
  • Revogue credenciais antigas, expostas ou sem uso; consulte os exemplos no Manual de conexão.
  • As requisições ficam monitoradas; acompanhe o consumo em Monitorar Uso.
Em rede externa, publique a API somente por HTTPS e nunca salve a chave em planilhas compartilhadas.

9 Gerenciamento

Conta, monitoramento e assinaturas.

  • Dados do Usuário: revise e mantenha atualizados os dados da sua conta.
  • Monitorar Uso: acompanhe o consumo de API e dos recursos de IA.
  • Assinaturas: consulte o plano e os recursos disponíveis conforme a contratação.

Dicas e solução de problemas

  • Mudou de mês de referência e os preços não atualizaram? Confirme a UF e o regime de encargos selecionados.
  • Não consegue enviar o levantamento do BIM ao orçamento? Crie o orçamento primeiro e vincule pelo PIN.
  • Objeto BIM sem pavimento? O modelo IFC pode não trazer a relação IfcBuildingStorey; ele entra no grupo Sem Pavimento.
  • Tela com layout antigo após uma atualização? Limpe o cache do navegador com Ctrl+F5 (ou Ctrl+Shift+R).
  • Recurso aparece com cadeado? Está disponível mediante contratação do plano correspondente.

Materiais oficiais da CAIXA

Metodologia, parâmetros, downloads e fichas técnicas de insumos do SINAPI.

Gerenciamento

Cadastro e registro de acesso

Visualize seus dados de acesso e atualize seu cadastro para uso do SINAPI App.

Dados de login

Informacoes vinculadas ao acesso atual no ambiente de teste.

Email de acesso [email protected]
Apelido Usuario SINAPI
Plano atual Sem assinatura ativa

Resumo cadastral

Atualizar cadastro

Revise os campos abaixo e confirme a atualizacao para salvar os dados nesta sessao.

Gerenciamento

Chave API

Crie tokens e conecte sistemas, planilhas e rotinas de programacao ao banco SINAPI.


2 tokens limite por e-mail
Validade de 1 a 365 dias
Ilimitado requisicoes monitoradas
SHA-256 token nao armazenado

Governanca dos tokens

Use esta aba para emitir, acompanhar e revogar credenciais. A conexao tecnica e os exemplos ficam no Manual de conexao.

O token completo aparece somente na criacao. O banco armazena apenas seu hash SHA-256.

Ciclo recomendado

  1. Crie um token por sistema consumidor, por exemplo Excel, Power BI ou integracao externa.
  2. Defina a validade conforme o uso esperado. As requisicoes ficam ilimitadas e monitoradas por enquanto.
  3. Copie o token no momento da criacao e armazene em local seguro.
  4. Revogue credenciais antigas, expostas ou sem uso.

Boas praticas

  • Use um token diferente para cada sistema.
  • Revogue imediatamente tokens expostos ou sem uso.
  • Nunca salve a chave em planilhas compartilhadas.
  • Em rede externa, publique a API somente por HTTPS.

Criar token

Preencha os dados do sistema consumidor e gere uma credencial individual.

Protegido
Requisicoes Ilimitadas por enquanto, com consumo monitorado

Antes de gerar

  • Use um nome reconhecivel, como Excel-Orcamentos ou PowerBI-Dashboard.
  • Escolha uma validade curta para testes e maior apenas para sistemas consolidados.
  • Acompanhe o consumo na pagina Monitorar Uso.

Tokens emitidos

Identifique, acompanhe o ultimo uso e revogue credenciais.

Credenciais
A lista mostra apenas o prefixo da chave. O valor completo nao pode ser recuperado.

Conexao rapida

URL base http://127.0.0.1:7705
Cabecalho Authorization: Bearer snp_SEU_TOKEN
Swagger http://127.0.0.1:7705/__docs__/
Em ambiente local use 127.0.0.1. Em servidor, substitua pela URL publica ou interna onde a API Plumber estiver publicada.

Como autenticar

  1. Crie um token na aba Gerenciar tokens.
  2. Guarde o valor iniciado por snp_. Ele nao sera exibido novamente.
  3. Envie o token em todas as rotas /v1 pelo cabecalho Authorization.
  4. Use o Swagger para testar uma rota com Try it out.

Formato da requisicao

  • Metodo HTTP: use GET para consultas e POST para envio de lote.
  • Rota: e o caminho depois da URL base, por exemplo /v1/search.
  • Parametros: podem ir na URL como ?uf=SP&reference=2026-04 ou no corpo JSON em rotas POST.
  • Resposta: as rotas retornam JSON; downloads CSV retornam arquivo texto separado por virgula.

Exemplo com curl

                              curl -H "Authorization: Bearer snp_SEU_TOKEN" \
  "http://127.0.0.1:7705/v1/references"
                            

Estrutura basica de uma URL

                              http://127.0.0.1:7705/v1/search?q=concreto&uf=SP&limit=20

URL base: http://127.0.0.1:7705
Rota: /v1/search
Parametros: q=concreto, uf=SP, limit=20
Cabecalho obrigatorio: Authorization: Bearer snp_SEU_TOKEN
                            

Links do servico


Excel com Power Query

Passo a passo

  1. Confirme que a API esta aberta acessando http://127.0.0.1:7705/health no navegador.
  2. Crie uma area de parametros com Token, Codigo, UF, Referencia e Regime.
  3. Selecione apenas a celula do valor e defina seu nome na Caixa de Nome, ao lado da barra de formulas.
  4. Abra Dados > Obter Dados > De Outras Fontes > Consulta Nula.
  5. No Power Query, abra Pagina Inicial > Editor Avancado e cole o codigo abaixo.
  6. Se forem solicitadas credenciais, escolha Anonimo. O token ja segue no cabecalho.
  7. Clique em Fechar e Carregar para criar a tabela.
  8. Use Dados > Atualizar Tudo para consultar novamente a API.

Crie cinco células nomeadas no Excel: Token, Codigo, UF, Referencia e Regime. Depois abra Dados > Obter Dados > De Outras Fontes > Consulta Nula e cole o código no Editor Avançado.

Power Query usando parâmetros de células

                              let
  Token = Excel.CurrentWorkbook(){[Name="Token"]}[Content]{0}[Column1],
  Codigo = Text.From(Excel.CurrentWorkbook(){[Name="Codigo"]}[Content]{0}[Column1]),
  UF = Excel.CurrentWorkbook(){[Name="UF"]}[Content]{0}[Column1],
  Referencia = Excel.CurrentWorkbook(){[Name="Referencia"]}[Content]{0}[Column1],
  Regime = Excel.CurrentWorkbook(){[Name="Regime"]}[Content]{0}[Column1],
  Url = "http://127.0.0.1:7705/v1/inputs/" & Codigo & "/latest",
  Fonte = Json.Document(Web.Contents(Url,
    [
      Query=[uf=UF, reference=Referencia],
      Headers=[Authorization="Bearer " & Token]
    ]
  )),
  Resultado = #table({"Codigo", "UF", "Referencia", "Sem encargos", "Com desoneracao", "Sem desoneracao"}, {{
    Fonte[codigo]{0}, Fonte[uf]{0}, Fonte[referencia]{0},
    Fonte[preco_sem_encargos]{0}, Fonte[preco_com_desoneracao]{0}, Fonte[preco_sem_desoneracao]{0}
  }})
in
  Resultado
                            

Exemplo das células

Célula Nome definido Exemplo
B2 Token snp_SEU_TOKEN
B3 Codigo 6111
B4 UF SP
B5 Referencia 2026-04
B6 Regime com_desoneracao
Ao configurar a fonte Web, escolha Anonimo no nivel http://127.0.0.1:7705 e deixe desmarcada a opcao para ignorar niveis de privacidade somente se sua politica permitir.

Consultar encargos

Este exemplo retorna os percentuais horista e mensalista para a UF, referencia e regime informados nas celulas nomeadas.

Power Query: encargos por UF

                              let
  Token = Excel.CurrentWorkbook(){[Name="Token"]}[Content]{0}[Column1],
  UF = Excel.CurrentWorkbook(){[Name="UF"]}[Content]{0}[Column1],
  Referencia = Excel.CurrentWorkbook(){[Name="Referencia"]}[Content]{0}[Column1],
  Regime = Excel.CurrentWorkbook(){[Name="Regime"]}[Content]{0}[Column1],
  BaseUrl = "http://127.0.0.1:7705",
  Fonte = Json.Document(Web.Contents(BaseUrl,
    [
      RelativePath="v1/charges",
      Query=[reference=Referencia, uf=UF, regime=Regime],
      Headers=[Authorization="Bearer " & Token]
    ]
  )),
  Resultado = #table({"Referencia", "UF", "Regime", "Horista (%)", "Mensalista (%)", "Localidade"}, {{
    Fonte[reference]{0}, Fonte[uf]{0}, Fonte[regime]{0},
    Fonte[data][h]{0}, Fonte[data][mes]{0}, Fonte[data][localidade]{0}
  }})
in
  Resultado
                            

Atualizar uma lista de insumos

Preparar a tabela no Excel

  1. Crie as colunas Codigo, UF, Referencia e Regime.
  2. Preencha uma linha para cada insumo que deseja consultar.
  3. Selecione a lista inteira e pressione Ctrl+T para transforma-la em tabela.
  4. Na guia Design da Tabela, altere o nome para ListaSINAPI.
  5. Mantenha o token em uma celula separada com o nome definido Token.
  6. Crie uma Consulta Nula, abra o Editor Avancado e cole o codigo abaixo.
Codigo UF Referencia Regime
6111 SP 2026-04 com_desoneracao
124 MG 2026-04 sem_desoneracao
7334 RJ 2026-03 sem

Power Query: atualizar toda a tabela ListaSINAPI

                              let
  Token = Excel.CurrentWorkbook(){[Name="Token"]}[Content]{0}[Column1],
  Lista = Excel.CurrentWorkbook(){[Name="ListaSINAPI"]}[Content],
  BaseUrl = "http://127.0.0.1:7705",

  ConsultarInsumo = (Codigo as any, UF as text, Referencia as text, Regime as text) as record =>
    let
      Fonte = Json.Document(Web.Contents(BaseUrl,
        [
          RelativePath="v1/inputs/" & Text.From(Codigo) & "/latest",
          Query=[uf=UF, reference=Referencia],
          Headers=[Authorization="Bearer " & Token]
        ]
      )),
      Preco = if Regime = "sem" then Fonte[preco_sem_encargos]{0}
        else if Regime = "sem_desoneracao" then Fonte[preco_sem_desoneracao]{0}
        else Fonte[preco_com_desoneracao]{0},
      Resultado = [
        Descricao=Fonte[descricao]{0},
        Unidade=Fonte[unidade]{0},
        Classificacao=Fonte[classificacao]{0},
        Preco=Preco,
        SemEncargos=Fonte[preco_sem_encargos]{0},
        ComDesoneracao=Fonte[preco_com_desoneracao]{0},
        SemDesoneracao=Fonte[preco_sem_desoneracao]{0}
      ]
    in
      Resultado,

  ComConsulta = Table.AddColumn(Lista, "DadosSINAPI", each
    try ConsultarInsumo(Text.From([Codigo]), Text.Upper([UF]), Text.From([Referencia]), Text.From([Regime]))
    otherwise [Descricao="ERRO NA CONSULTA", Unidade=null, Classificacao=null, Preco=null, SemEncargos=null, ComDesoneracao=null, SemDesoneracao=null]
  ),
  Expandido = Table.ExpandRecordColumn(ComConsulta, "DadosSINAPI",
    {"Descricao", "Unidade", "Classificacao", "Preco", "SemEncargos", "ComDesoneracao", "SemDesoneracao"}
  ),
  Tipos = Table.TransformColumnTypes(Expandido, {
    {"Codigo", type text}, {"UF", type text}, {"Referencia", type text},
    {"Preco", Currency.Type}, {"SemEncargos", Currency.Type},
    {"ComDesoneracao", Currency.Type}, {"SemDesoneracao", Currency.Type}
  })
in
  Tipos
                            

Resultado esperado

A consulta preserva as quatro colunas originais e acrescenta Descricao, Unidade, Classificacao, Preco e os tres valores de regime. Depois basta alterar a lista e clicar em Dados > Atualizar Tudo.

Cada linha gera uma requisicao. Como os tokens estao ilimitados por enquanto, acompanhe o volume na pagina Monitorar Uso. Para listas extensas, use a rota POST /v1/batch/prices, que aceita ate 500 itens por requisicao.

Atualizacao automatica

Configuracao

  1. Abra Dados > Consultas e Conexoes.
  2. Clique com o botao direito na consulta e selecione Propriedades.
  3. Marque Atualizar dados ao abrir o arquivo.
  4. Opcionalmente, marque Atualizar a cada N minutos.
  5. Mantenha a API em execucao durante a atualizacao.
  1. Transforme Codigo e UF em parametros ou leia-os de celulas nomeadas.
  2. Carregue o resultado em uma tabela do Excel.
  3. Em Propriedades da Consulta, marque Atualizar ao abrir o arquivo.
  4. Defina Atualizar a cada N minutos quando a API estiver continuamente disponivel.

Excel: função direta na célula

Para escrever uma fórmula como =SINAPI_PRECO(A2;B2;C2;D2), use esta função VBA. Salve o arquivo como .xlsm e cole o código em Alt+F11 > Inserir > Módulo.

VBA para usar como fórmula

                              Function SINAPI_PRECO(Codigo As String, UF As String, Regime As String, Token As String) As Variant
  Dim Http As Object, Url As String, Texto As String
  Dim Chave As String, Inicio As Long, Fim As Long

  Url = "http://127.0.0.1:7705/v1/inputs/" & Codigo & "/latest?uf=" & UF
  Set Http = CreateObject("MSXML2.XMLHTTP")
  Http.Open "GET", Url, False
  Http.setRequestHeader "Authorization", "Bearer " & Token
  Http.Send

  If Http.Status <> 200 Then
    SINAPI_PRECO = CVErr(xlErrValue)
    Exit Function
  End If

  Texto = Http.responseText
  Select Case Regime
    Case "sem": Chave = """preco_sem_encargos"":["
    Case "sem_desoneracao": Chave = """preco_sem_desoneracao"":["
    Case Else: Chave = """preco_com_desoneracao"":["
  End Select

  Inicio = InStr(Texto, Chave) + Len(Chave)
  Fim = InStr(Inicio, Texto, "]")
  SINAPI_PRECO = CDbl(Replace(Mid(Texto, Inicio, Fim - Inicio), ".", Application.DecimalSeparator))
End Function
                            

Fórmula na célula do Excel

                              =SINAPI_PRECO(A2;B2;C2;$F$1)

A2 = código | B2 = UF | C2 = regime | F1 = token
                            

Como instalar a funcao no Excel

  1. Salve o arquivo como Pasta de Trabalho Habilitada para Macro (.xlsm).
  2. Pressione Alt+F11 e escolha Inserir > Modulo.
  3. Cole o codigo VBA e feche o editor.
  4. Habilite macros ao abrir o arquivo.
  5. Organize A = codigo, B = UF, C = regime e F1 = token.
  6. Digite a formula na coluna de preco e arraste para as demais linhas.
  7. Use Ctrl+Alt+F9 para forcar um novo calculo.

Power BI

O Power BI usa Power Query M para importar precos e criar relatorios por codigo, UF e referencia.

Passo a passo no Power BI Desktop

  1. Abra o Power BI Desktop e clique em Transformar dados.
  2. No Editor do Power Query, escolha Nova Fonte > Consulta Nula.
  3. Abra o Editor Avancado, apague o conteudo e cole o codigo abaixo.
  4. Altere Token, Codigo, UF e Referencia no inicio do codigo.
  5. Quando solicitado, configure a fonte Web como Anonima.
  6. Clique em Fechar e Aplicar.
  7. Defina as colunas de preco como Numero decimal ou Moeda.
  8. Crie tabelas, cartoes e graficos com os campos importados.

Power BI: consultar preco de insumo

                              let
  Token = "snp_SEU_TOKEN",
  Codigo = "6111",
  UF = "SP",
  Referencia = "2026-04",
  BaseUrl = "http://127.0.0.1:7705",
  Caminho = "v1/inputs/" & Codigo & "/latest",
  Fonte = Json.Document(Web.Contents(BaseUrl,
    [
      RelativePath=Caminho,
      Query=[uf=UF, reference=Referencia],
      Headers=[Authorization="Bearer " & Token]
    ]
  )),
  Tabela = #table({"Codigo", "UF", "Referencia", "Sem encargos", "Com desoneracao", "Sem desoneracao"}, {{
    Fonte[codigo]{0}, Fonte[uf]{0}, Fonte[referencia]{0},
    Fonte[preco_sem_encargos]{0}, Fonte[preco_com_desoneracao]{0}, Fonte[preco_sem_desoneracao]{0}
  }})
in
  Tabela
                            

Parametros reutilizaveis

  1. Abra Gerenciar Parametros > Novo Parametro no Power Query.
  2. Crie pToken, pCodigo, pUF e pReferencia.
  3. Substitua os valores fixos do codigo pelos nomes dos parametros.
  4. Use Editar Parametros para trocar a consulta sem alterar o codigo M.

Atualizacao no Power BI Service

  1. Publique o relatorio em um workspace.
  2. Se a API estiver em 127.0.0.1 ou na rede interna, instale o On-premises Data Gateway.
  3. Associe a fonte Web ao gateway.
  4. Mantenha a autenticacao como Anonima, pois o token segue no cabecalho.
  5. Configure Atualizacao agendada.
  6. Para dispensar o gateway, publique a API em uma URL HTTPS acessivel pela internet.
O Power BI Service nao acessa 127.0.0.1 diretamente. Use gateway ou uma URL HTTPS publica.

Google Sheets

Passo a passo

  1. Abra Extensoes > Apps Script.
  2. Apague o conteudo inicial do arquivo Code.gs e cole o script.
  3. Substitua SERVIDOR pelo endereco HTTPS publico da API.
  4. Salve e execute a funcao uma vez no editor para conceder permissoes.
  5. Organize A = codigo, B = UF, C = regime, D = referencia e F1 = token.
  6. Digite a formula na coluna de preco e arraste para outras linhas.
  7. Edite a celula ou force o recalculo quando precisar atualizar.

Abra Extensões > Apps Script, cole o código, salve e volte à planilha.

Apps Script: função personalizada

                              /**
 * Retorna o preço SINAPI.
 * @customfunction
 */
function SINAPI_PRECO(codigo, uf, regime, token, referencia) {
  const base = "http://SERVIDOR:7705";
  let url = `${base}/v1/inputs/${codigo}/latest?uf=${encodeURIComponent(uf)}`;
  if (referencia) url += `&reference=${encodeURIComponent(referencia)}`;
  const response = UrlFetchApp.fetch(url, {
    headers: {Authorization: `Bearer ${token}`},
    muteHttpExceptions: true
  });
  if (response.getResponseCode() !== 200) return `ERRO ${response.getResponseCode()}`;
  const data = JSON.parse(response.getContentText());
  if (regime === "sem") return data.preco_sem_encargos[0];
  if (regime === "sem_desoneracao") return data.preco_sem_desoneracao[0];
  return data.preco_com_desoneracao[0];
}
                            

Fórmula na célula do Google Sheets

                              =SINAPI_PRECO(A2;B2;C2;$F$1;D2)

A2 = código | B2 = UF | C2 = regime | D2 = referência | F1 = token
                            

O Google Sheets não acessa 127.0.0.1. Use o endereço público HTTPS do servidor da API. No Excel local, 127.0.0.1 funciona apenas se a API estiver no mesmo computador.


Python

                              import requests

token = "snp_SEU_TOKEN"
url = "http://127.0.0.1:7705/v1/search"
params = {"q": "concreto", "uf": "SP", "limit": 20}
headers = {"Authorization": f"Bearer {token}"}

response = requests.get(url, params=params, headers=headers, timeout=30)
response.raise_for_status()
print(response.json()["data"])
                            

JavaScript

                              const token = "snp_SEU_TOKEN";
const url = "http://127.0.0.1:7705/v1/references";

const response = await fetch(url, {
  headers: { Authorization: `Bearer ${token}` }
});
if (!response.ok) throw new Error(`HTTP ${response.status}`);
const result = await response.json();
console.log(result.data);
                            

R com httr2

                              library(httr2)

request("http://127.0.0.1:7705/v1/references") |>
  req_headers(Authorization = "Bearer snp_SEU_TOKEN") |>
  req_perform() |>
  resp_body_json()
                            

O que sao rotas

Rotas sao os enderecos que um sistema externo usa para pedir informacoes ao SINAPI. Cada rota tem uma finalidade: listar referencias, pesquisar itens, calcular precos, baixar bases mensais ou consultar em lote.

Todas as rotas iniciadas por /v1 exigem o cabecalho Authorization com um token ativo. As rotas /health, /manual e /__docs__/ servem para verificacao e documentacao.

Parametros comuns

Parametro Uso Exemplo
reference Mes de referencia da base SINAPI. Vazio usa a mais recente quando a rota permitir. 2026-04
uf Unidade federativa usada na consulta de precos e encargos. SP
regime Regime de encargos sociais para composicoes e mao de obra. com_desoneracao
q Texto ou codigo usado em buscas. concreto
limit Quantidade maxima de resultados retornados. 100
page / page_size Paginacao para bases mensais grandes. page=1&page_size=1000

Grupos de rotas

Grupo Quando usar
Catalogo Para descobrir referencias, UFs, classes, encargos e pesquisar codigos.
Preco pontual Para consultar um insumo ou composicao especifica.
Historico Para comparar evolucao mensal de um codigo.
Base mensal Para baixar ou paginar listas completas de um mes.
Lote Para atualizar varias linhas de uma planilha ou sistema em uma unica requisicao.

Consultas da API

Metodo Rota Finalidade
GET /v1/references Referencias mensais disponiveis
GET /v1/ufs UFs de uma referencia
GET /v1/classes Classes de insumos e composicoes
GET /v1/charges Encargos por UF e regime
GET /v1/search Busca por codigo ou descricao
GET /v1/inputs/{codigo}/latest Preco mais recente do insumo
GET /v1/inputs/{codigo}/history Historico do insumo
GET /v1/compositions/{codigo}/price Preco calculado da composicao
GET /v1/compositions/{codigo}/detail Arvore e detalhes da composicao
GET /v1/compositions/{codigo}/history Historico da composicao
GET /v1/month/{ref}/inputs Insumos paginados do mes
GET /v1/month/{ref}/compositions Composicoes do mes
GET /v1/month/{ref}/analytical Analitico completo paginado
GET /v1/month/{ref}/charges Encargos do mes
GET /v1/month/{ref}/inputs.csv Download dos insumos em CSV
GET /v1/month/{ref}/compositions.csv Download das composicoes em CSV
GET /v1/month/{ref}/analytical.csv Download do analitico em CSV
POST /v1/batch/prices Consulta em lote de ate 500 precos
Gerenciamento

Monitorar Uso

Acompanhe o consumo da Assistencia com IA e das consultas realizadas pelas chaves de API.

Resumo de consumo

Os indicadores de IA consideram os ultimos sete dias.

Assistencia com IA

Limite semanal

Consulta por API

Ilimitada e monitorada

As requisicoes estao sem limite por enquanto. Esta pagina continua registrando chamadas, erros e ultimo uso por chave.

Chaves de API e monitoramento

Usos recentes da IA

Chamadas recentes da API

Assinaturas

Módulos, vigências e limites

Escolha os recursos necessários. Os módulos contratados podem ter vigência semestral ou anual e limites específicos de utilização.

Módulos disponíveis

Visão resumida dos acessos e limites oferecidos.

Ambiente de teste
Módulo Código Limite principal Vigência
Consulta SINAPI Livre
SL01 Uso direto na plataforma Livre
Banco de Dados Próprio
BD01 Insumos e composições conforme o plano Semestral ou anual
Assistência com IA
AI01 100 requisições/semana ou 2 milhões de tokens de saída Semestral ou anual
Orçamento com BIM
BM01 Conforme usuários e arquivos do plano Semestral ou anual
Consulta por API
AP01 RPM, limite diário e total por chave Semestral ou anual

Catálogo de módulos

Os limites de Banco Próprio e API são definidos na proposta e aplicados ao contrato ou à chave.

Contratação assistida
LIVRE

Consulta SINAPI Livre

Acesso às consultas e referências disponibilizadas na plataforma.

  • Tabela SINAPI
  • Filtros por UF
  • Sem cobrança
Semestral
Grátis

6 meses de acesso

Anual
Grátis

12 meses de acesso

PRÓPRIO

Banco de Dados Próprio

Insira novos insumos e monte composições próprias para participar das análises de orçamento.

  • Novos insumos
  • Composições próprias
  • Limites de registros conforme o plano
Semestral
Sob consulta

6 meses de acesso

Anual
Sob consulta

12 meses de acesso

IA

Assistência com IA

Assistência incorporável às diferentes páginas e tarefas da plataforma.

  • 100 requisições por semana
  • Até 2 milhões de tokens de saída
  • Uso em toda a plataforma
Semestral
R$ 597,00

6 meses de acesso

Anual
R$ 1.050,72

12 meses de acesso

BIM

Orçamento com BIM

Organize quantitativos BIM e confira composições orçamentárias.

  • Quantitativos BIM
  • Mapeamento de composições
  • Conferência de unidades
Semestral
R$ 897,00

6 meses de acesso

Anual
R$ 1.578,72

12 meses de acesso

API

Consulta por API

Consulte dados em sistemas externos por meio de chaves autorizadas.

  • Limite por minuto
  • Limite diário
  • Limite total e validade por chave
Semestral
Sob consulta

6 meses de acesso

Anual
Sob consulta

12 meses de acesso

Selecionar módulos

Monte a contratação. IA e BIM juntos recebem o valor do combo.

Pagamento

Escolha a vigência e a forma de pagamento para gerar o resumo.