Toda compra pública do Brasil numa API

Licitações, contratos e atas de todo órgão público do país, de prefeitura a ministério. É o mesmo dado do pncp.gov.br, só que aqui a sua chamada passa.

São 100.000 requisições por mês de graça. Sem cartão.

O que mudaSituação
Endereço antigohttps://pncp.gov.br
bloqueado
Endereço novohttps://api.pncp.dev
liberado
Sua chave, no headerx-api-key: pncp_••••
autenticado
Plano grátis, por mês100.000 req

Só isso muda. As rotas /api/…, os parâmetros e o JSON da resposta continuam sendo os do PNCP.

O que tem aqui dentro

Todo órgão público do Brasil é obrigado a publicar o que compra. Prefeitura, escola, hospital, ministério: tudo vai para o PNCP, o portal oficial de compras do governo. É esse dado que você puxa daqui.

De onde vem e o que dá para construir →

Licitações abertas

O que os órgãos querem comprar agora, com prazo, valor estimado e objeto. Dá para ver onde ainda dá tempo de entrar.

Contratos assinados

Quem ganhou, por quanto e por quanto tempo o contrato vale. O fim da história de cada licitação.

Atas de registro de preço

Preço que já foi disputado e registrado. Outro órgão pode aproveitar em vez de abrir licitação do zero.

Órgãos e fornecedores

O histórico pelo CNPJ: o que aquele órgão comprou, o que aquela empresa vem ganhando.

Rode uma chamada agora

Esta chamada vai ao PNCP de verdade, agora, sem chave e sem conta. É a mesma URL que o seu código vai chamar.

Ver todos os exemplos →

A pergunta

Licitações publicadas na última semana

O que foi publicado, por qual órgão, e com qual valor estimado?

ainda não rodou

GET /api/consulta/v1/contratacoes/publicacao?dataInicial=20260907&dataFinal=20260913&codigoModalidadeContratacao=6&pagina=1&tamanhoPagina=10

A resposta do PNCP aparece aqui: o JSON de verdade, quanto tempo levou e se veio do cache.

Por que não chamar o PNCP direto?

Status em tempo real →

Pode chamar. É público e é de graça. Só que a API do PNCP barra chamada automática: um robô batendo de hora em hora toma bloqueio, e aí o seu código não sabe se o dado acabou ou se foi você que foi barrado. Aqui quem apanha é a gente. A medição abaixo é a mesma dos dois lados, de minuto em minuto.

O que a gente faz em cada chamada

São quatro coisas, sempre na mesma ordem. Nada escondido.

  1. 01

    Você chama a rota de sempre

    A mesma rota, os mesmos parâmetros, o mesmo JSON. Muda só o endereço e o header com a sua chave.

  2. 02

    A gente busca no PNCP por você

    Se o PNCP recusar, a gente tenta de novo na hora. Você não vê a falha, vê a resposta.

  3. 03

    Resposta repetida sai na hora

    Se alguém pediu a mesma coisa há poucos minutos, a resposta já está aqui. Mais rápida, e sem incomodar o PNCP.

  4. 04

    Cada chamada desconta uma da cota

    Quando a cota do mês acaba, seus créditos entram no lugar sozinhos. Nada para.

Preço simples, sem surpresa

Preços e pacotes em detalhe →
Grátis
Requisições / mês
100.000
Por minuto
60
Por milhão
Mensal
grátis
Starter
Requisições / mês
1.000.000
Por minuto
240
Por milhão
R$ 29,00
Mensal
R$ 29,00
Pro
Requisições / mês
5.000.000
Por minuto
600
Por milhão
R$ 25,80
Mensal
R$ 129,00
Scale
Requisições / mês
25.000.000
Por minuto
1200
Por milhão
R$ 21,96
Mensal
R$ 549,00

Estourou a cota? Seus créditos entram no lugar. Eles não vencem, e nada para no meio do mês.

Comece agora, leva um minuto

Entre com o seu e-mail, crie a chave, cole no seu código. Sem senha e sem cartão, com 100.000 requisições por mês para começar.

Precisa de mais? O Starter1.000.000 requisições por mês por R$ 29,00.

a integração inteira
# antes
curl "https://pncp.gov.br/api/consulta/v1/contratos?..."

# depois
curl "https://api.pncp.dev/api/consulta/v1/contratos?..." \
  -H "x-api-key: $PNCP_API_KEY"