Poland Public Tenders (BZP + TED) avatar

Poland Public Tenders (BZP + TED)

Pricing

Pay per event

Go to Apify Store
Poland Public Tenders (BZP + TED)

Poland Public Tenders (BZP + TED)

All Polish public tenders in one feed: BZP and TED notices with CPV, buyer, voivodeship, deadline, winners and award values. Daily alerts with onlyNew.

Pricing

Pay per event

Rating

0.0

(0)

Developer

Artur Flamandzki

Artur Flamandzki

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

21 hours ago

Last modified

Security

Limited permissions

Share

Poland Public Tenders (BZP + TED in one feed)

Get every Polish public tender in one clean feed: national notices from the Biuletyn Zamówień Publicznych (BZP, e-Zamówienia) and above-threshold notices of Polish buyers from TED, the EU's official journal. Calls for tenders, results with winners and award values, intended direct awards, corrections and contract changes, all mapped to one record format.

Every notice becomes one record: notice number, type, title, works/supplies/services, buyer (name, national id, city, voivodeship), CPV codes, publication date, submission deadline, winning contractors, award value and the link to the official notice.

What you can use it for

  • Tender alerts: run it daily with Only notices not returned before and get only new tenders for your CPV codes, keywords or region.
  • Sales and business development: find buyers that purchase what you sell, before the deadline.
  • Competitor intelligence: who wins which contracts, for how much, with which buyers (result notices).
  • Market research: public demand by CPV code, voivodeship and buyer type.
  • AI agents and CRMs: structured, deduplicated notices via the Apify API or MCP.

How it works

  1. For each day in the window (newest first) and each source, the actor reads the official public APIs: the e-Zamówienia board for BZP and the TED search API for notices of Polish buyers.
  2. Both are mapped to one record; contacts and raw notice HTML are never returned.
  3. Your filters are applied: keywords in the title, CPV prefixes, voivodeships, buyers (name or NIP).
  4. With Only notices not returned before, a notice is returned once per combination of filters (memory kept 60 days): a ready-made tender alert.

Input

FieldWhat it does
SourcesBZP (below EU thresholds), TED (above EU thresholds); both by default
Notice typesCalls for tenders and results by default; also prior information / intended awards, corrections, contract changes (completion and modifications)
Published in the last N days1 = yesterday and today (best for a daily schedule); up to 31. A day is a Polish calendar day (Europe/Warsaw) for both sources
KeywordsWords in the title, e.g. remont, oprogramowanie (Polish letters optional)
CPV codesPrefixes, e.g. 45 (construction works), 72 (IT services), 3312 (medical equipment)
Voivodeshipse.g. mazowieckie, śląskie: keeps a notice when the buyer's seat or the place of performance (TED) is in one of them
BuyersPart of the buyer's name or its national id (NIP or REGON)
Include contractorsWinners on result notices (default on)
Only notices not returned beforeIdeal for daily schedules
Max noticesStop after this many

Output example

{
"notice_id": "2026/BZP 00520352/01",
"source": "bzp",
"notice_type": "result",
"source_notice_type": "TenderResultNotice",
"title": "Dostawa paliwa gazowego na rok 2027",
"order_type": "supplies",
"procedure_type": null,
"buyer_name": "Przykładowy Ośrodek Doradztwa Rolniczego",
"buyer_id": "1234567890",
"buyer_city": "Częstochowa",
"buyer_voivodeship": "śląskie",
"performance_voivodeship": null,
"cpv_main": "09123000",
"cpv_codes": ["09123000", "65210000"],
"published_at": "2026-11-03T23:16:35Z",
"deadline_at": null,
"below_eu_threshold": true,
"procedure_results": ["zawarcieUmowy"],
"contractors": [{"name": "Example Energy Sp. z o.o.", "city": "Warszawa", "national_id": "1111111111"}],
"award_value": null,
"award_currency": null,
"tender_id": "ocds-148610-00000000-0000-0000-0000-000000000000",
"notice_url": "https://ezamowienia.gov.pl/mo-client-board/bzp/notice-details/id/..."
}

Result notices carry award_value and award_currency: for TED the total value of the notice, for BZP the sum of the contract values of every part that ended in a contract (null when the parts are in different currencies). TED records carry procedure_type (open, restricted, ...) and a publication date without time; BZP records carry the publication time and procedure_results.

Pricing

Pay per event, no subscription. The prices are on the Pricing tab; you are charged for two events:

EventWhen
Source-day (source-day)once per source and day read successfully (BZP and TED for 2 days = 4); a source that is down is not charged
Notice (notice)once per notice saved to the dataset
  • A working day of both sources brings roughly 2,000-2,500 calls for tenders and results (measured on 3 November 2026); filters (keywords, CPV, voivodeship, buyer) cut the notice fees, the source-day fee stays.
  • A source-day is charged only when your remaining budget also covers at least one notice.
  • The form starts with Max notices = 100 for a cheap first run; raise it for a full feed.
  • Set a maximum cost per run in Apify and the actor stops cleanly when it is reached.

Data and privacy

Notices are public-sector information published by law (Polish Public Procurement Law, EU Directive 2014/24/EU) on ezamowienia.gov.pl and ted.europa.eu. Buyers are public bodies. Contractors are mostly companies, but sole traders appear under their own name as published in the official notice: the actor returns only their name, city and national id (NIP or REGON), never contact data, and Include contractors off removes them. Use such records in line with the GDPR.

Known limits

  • Baza Konkurencyjności (EU-funded private tenders) is not included yet.
  • BZP records have no estimated value; BZP contest results (prizes) have no award value.
  • buyer_voivodeship is the buyer's seat for both sources; performance_voivodeship (place of performance) is given for TED notices only (BZP lists do not carry it) and is null when TED gives no Polish region.
  • TED lists winners per lot but their ids and cities per organisation: city and national id are given only when a notice has a single winner.
  • With onlyNew off, notices are not remembered: turning onlyNew on later starts from an empty memory.
  • Notices are as published; corrections arrive as separate update notices.