PNCP Licitações Alerts: New Brazilian Tenders by UF
Pricing
from $1.50 / 1,000 tender notice returneds
PNCP Licitações Alerts: New Brazilian Tenders by UF
Get new Brazilian public procurement notices and licitações from PNCP (Portal Nacional de Contratações Públicas) by state (UF), modality or keyword, with a monitoring mode that only returns and bills for notices new since your last run.
Pricing
from $1.50 / 1,000 tender notice returneds
Rating
0.0
(0)
Developer
Adriana Voss
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
6 days ago
Last modified
Categories
Features
Share
Get new Brazilian public procurement notices and licitações by state (UF), modality or keyword, as soon as they're published on PNCP. Suppliers, contractors, bid consultants and market analysts use this actor to track tenders across Brazil's federal, state and municipal public bodies. Turn on monitoring mode and run it on a schedule to get only the notices that are new since your last run, charged per returned notice and free on a quiet day.
How to use
- In the Apify Console. Open the actor page and click Start — the
statesfield is already pre-filled with a working example. Results land in the run's dataset as soon as each item is found. - Via the API. Call it directly with a POST request — no Console needed once you have an API token:
curl "https://api.apify.com/v2/acts/accountable_eel~br-pncp-new-tender-alerts/run-sync-get-dataset-items?token=<YOUR_TOKEN>" \-X POST \-H "Content-Type: application/json" \-d '{"states":["SP"]}'
- On a schedule. Save this actor as an Apify Task with the input you want, then add a Schedule (hourly, daily, weekly) so it runs on its own — no server of your own required.
Input
{"states": ["SP"]}
One 2-letter Brazilian state code per line (e.g. SP, RJ, MG, RS, PR). Leave empty to search across all Brazilian states. Accepted formats: SP, RJ, MG.
One combined search runs per call. You can filter by Brazilian state code (UF), keyword in the tender object (objetoCompra) or contracting body, procurement modality code, and publication recency. The search run itself is free; you are billed only for notices actually returned.
Output
One row per notice, for example:
| query | found | status | searchSummary | truncated | monitorStatus | notices | numeroControlePNCP | title | description | buyerName | buyerCnpj | buyerUnit | state | municipality | modalidade | modalidadeId | disputeMode | documentType | tenderStatus | estimatedValueBrl | publishedAt | proposalOpeningAt | proposalClosingAt | legalFramework | originSystemUrl | noticeUrl | isNew | firstSeenAt | scrapedAt |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| br-pncp-search | true | OK | UF: SP | modalidades: 6 | last 7d | max 20 | true | 00955107000193-1-000303/2026 | Eventual aquisição de sacos plásticos para coleta de resíduos infectantes | FUNDACAO MUNICIPAL DE SAUDE DE RIO CLARO | 00955107000193 | Fundação Municipal de Saúde de Rio Claro - SP | SP | Rio Claro | Pregão - Eletrônico | 6 | Aberto | Edital | Divulgada no PNCP | 133935.6 | 2026-10-26T07:28:04 | 2026-10-27T08:00:00 | 2026-11-09T08:00:00 | Lei 14.133/2021, Art. 28, I | https://comprasbr.com.br/pregao-eletronico-detalhe/?idlicitacao=49253 | https://pncp.gov.br/app/editais/00955107000193/2026/303 | 2026-11-01T11:07:33.415Z |
A miss comes back as a row with "found": false and is never charged. Missing values like unannounced values or empty descriptions are null, never 0 or empty strings.
Pricing
- Tender notice returned: $3 per 1,000 notices
Plus a $0.0015 start fee per run. Each event above is billed independently, only when it actually returns data — misses (found:false) are never charged.
Limits
- Official open data: Sourced from the official Portal Nacional de Contratações Públicas (PNCP - pncp.gov.br) under Lei 14.133/2021.
- Privacy & GDPR/LGPD: Returns public-body and company information only; individual citizen names and private contact details are excluded.
- Recency: The publication API covers recent notices; for historical tenders over 90 days old, specify a wider date window.
Example runs
Paste any of these into the Input tab and press Start. All three return rows with no external API key, no token, and no account of your own beyond an Apify login.
1. São Paulo tenders, Pregão Eletrônico, last 7 days. The default shape.
{"states": ["SP"],"modalidades": [6],"sinceDays": 7,"maxItems": 20}
2. IT, software and technology procurement alert across SP, RJ, and MG. Monitoring mode on:
{"states": ["SP", "RJ", "MG"],"keywords": ["software", "tecnologia"],"modalidades": [6],"sinceDays": 7,"onlyNewSinceLastRun": true}
3. Healthcare and medicine tenders nationwide with a 3-day window.
{"keywords": ["saúde", "medicamentos"],"modalidades": [6],"sinceDays": 3,"maxItems": 30}
Use it from Clay, n8n, Make, or an AI agent
This actor runs synchronously over plain HTTP — call it directly from a script, a workflow tool, or an AI agent, no Apify Console needed once you have an API token.
curl "https://api.apify.com/v2/acts/accountable_eel~br-pncp-new-tender-alerts/run-sync-get-dataset-items?token=<YOUR_TOKEN>" \-X POST \-H "Content-Type: application/json" \-d '{"states":["SP"]}'
n8n. Add an HTTP Request node: Method POST, URL https://api.apify.com/v2/acts/accountable_eel~br-pncp-new-tender-alerts/run-sync-get-dataset-items?token=<YOUR_TOKEN>, Body Content Type JSON, JSON Body {"states":["SP"]} (swap in an expression from an earlier node for a real value).
Clay. Add an "HTTP API" column: Method POST, URL https://api.apify.com/v2/acts/accountable_eel~br-pncp-new-tender-alerts/run-sync-get-dataset-items?token=<YOUR_TOKEN>, Body {"states":["{{search}}"]}, mapping the row's search into the states array.
MCP. In Claude, Cursor, or any MCP client with the Apify MCP server, ask for "PNCP API: New Brazil Tender Alerts" — the agent will find and run this actor.