Bulgarian Public Procurement Monitor avatar

Bulgarian Public Procurement Monitor

Pricing

Pay per usage

Go to Apify Store
Bulgarian Public Procurement Monitor

Bulgarian Public Procurement Monitor

Search and filter official Bulgarian public procurement tenders by keywords, CPV codes, buyer, value, category, status, and deadlines via API.

Pricing

Pay per usage

Rating

0.0

(0)

Developer

Renegade

Renegade

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 days ago

Last modified

Share

Find relevant Bulgarian public tenders without manually downloading and parsing daily government data files.

This Actor reads the official CAIS EOP / ЦАИС ЕОП Open Contracting Data Standard (OCDS) releases and returns clean, filterable tender records for monitoring, lead generation, research, and workflow automation.

What you can do

  • Search tender titles, descriptions, buyers, and lots using Bulgarian or English keywords
  • Filter by CPV code prefix, buyer, procurement category, value, status, and deadline
  • Receive normalized tender and lot data with direct register links
  • Process one day or a date range of up to 32 days
  • Schedule daily monitoring and connect results to APIs, webhooks, Sheets, Slack, email, n8n, or a CRM
  • Optionally include the original OCDS release in each result

Quick start

To retrieve up to 100 active notices from the latest available default date, run with:

{
"onlyActive": true,
"maxItems": 100
}

To find computer-equipment opportunities:

{
"startDate": "2026-06-30",
"endDate": "2026-06-30",
"keywords": ["компютър", "лаптоп"],
"keywordMode": "any",
"cpvPrefixes": ["302"],
"onlyActive": true,
"maxItems": 100
}

If dates are omitted, the Actor reads yesterday's UTC publication bundle. The official file can appear later in the day, so scheduled monitoring should run after the source is published.

Input

FieldTypePurpose
startDatestringFirst source publication date in YYYY-MM-DD format
endDatestringLast source publication date; maximum range is 32 days
keywordsstring[]Text matched against title, description, buyer name, and lot titles
keywordModeany or allWhether any or all keywords must match
cpvPrefixesstring[]CPV prefixes such as 302 or full codes such as 30213100
buyerKeywordsstring[]Text matched against the contracting authority name
categoriesstring[]Any of goods, services, or works
minValuenumberMinimum published tender value in the record's original currency
maxValuenumberMaximum published tender value in the record's original currency
deadlineFromstringEarliest accepted deadline date in YYYY-MM-DD format
deadlineTostringLatest accepted deadline date in YYYY-MM-DD format
onlyActivebooleanExclude tenders not marked active; defaults to true
maxItemsintegerMaximum dataset records; defaults to 100
includeRawbooleanAttach the complete source OCDS release; defaults to false

Filters are combined with AND. Within keywords, keywordMode controls whether any or all values must occur. CPV and buyer lists match when any supplied value matches.

Output

Each default-dataset item is a normalized tender record:

{
"ocid": "ocds-e82gsb-583926",
"releaseId": "ocds-e82gsb-583926-852220/2026-06-30-tender",
"publishedAt": "2026-06-30T02:21:35+00:00",
"tenderId": "583926",
"title": "Tender title",
"status": "active",
"procurementMethod": "open",
"category": "goods",
"buyerName": "Contracting authority",
"valueAmount": 107666.99,
"valueCurrency": "EUR",
"deadline": "2026-07-30T20:59:59+00:00",
"cpvCodes": ["33112200", "33123200"],
"lotCount": 6,
"lots": [],
"registerUrl": "https://app.eop.bg/today/583926",
"sourceBundleUrl": "https://storage.eop.bg/open-data-2026-06-30/..."
}

The RUN_SUMMARY record in the default key-value store reports requested dates, loaded source bundles, emitted records, and source failures.

API example

curl "https://api.apify.com/v2/acts/susurrant_cowl~bulgarian-public-procurement-monitor/runs?token=YOUR_APIFY_TOKEN" \
-X POST \
-H "Content-Type: application/json" \
-d '{"keywords":["строителство"],"onlyActive":true,"maxItems":100}'

Use your own Apify token and keep it private. The same Actor can be called from Apify clients, integrations, schedules, and MCP-compatible workflows.

Official data source

The Actor accesses public open-data files without logging in, bypassing access controls, or collecting private account data. It is an independent tool and is not affiliated with or endorsed by the Bulgarian Public Procurement Agency or CAIS EOP.

Privacy and data handling

  • No cookies, credentials, private profiles, or personal account data are collected.
  • Input and output are stored using the retention and access settings of the Apify account running the Actor.
  • includeRaw may increase dataset size because it preserves the complete public OCDS release.

Limitations

  • Daily source files may be published after the corresponding calendar day ends.
  • A missing day is reported in RUN_SUMMARY; if every requested source fails, the run fails instead of silently returning an empty dataset.
  • Source fields differ by notice type, so unavailable normalized fields are null.
  • Value filters compare the published numeric amount without currency conversion.
  • The earliest lot deadline is used as the tender-level deadline.
  • Results depend on the completeness and accuracy of the official source.

Support

For a reproducible issue, open the Actor's Issues tab and include the run URL, sanitized input, requested source dates, and the unexpected behavior. Never include Apify tokens or other credentials.