Prozorro Search Tenders
prozorro_search_tendersFull-text search over ALL Ukraine ProZorro tenders back to 2015 (keyless). Searches ProZorro's own analyzed index, so Ukrainian queries stem correctly ("школа" also matches "школи", "шкільний") — pass Ukrainian keywords for best recall. Filter by buyer EDRPOU, by SUPPLIER/bidder EDRPOU (tenderer — this is the one for supplier due diligence: every tender a company has bid on or won), CPV code, status, value range, and date. date_from/date_to ALONE (no query/tenderer/buyer/cpv) is also valid and is the only live way to BROWSE historical ProZorro tenders by date — e.g. "what did ProZorro buy in March 2015" — verified live: a bare 10-day 2015 window returns a correctly-dated, narrow result set, not the unfiltered corpus. Returns tenderID, title, value, buyer name + EDRPOU + region, status, and an id field (internal 32-hex id) that is NULL unless resolve_ids is passed — the search index itself never carries it (verified live); prozorro_get_tender with just the tenderID now attempts the same resolution automatically, so you usually don't need resolve_ids here. For an OLD tenderID found this way whose full award/contract detail prozorro_get_tender can't resolve (outside the recently-modified window), use prozorro_historical_release instead.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| cpv | No | Exact CPV classification code, e.g. "09111100-1". | |
| page | No | Page number, 1-500. Fixed 20 results per page. | |
| buyer | No | Buyer/procuring-entity EDRPOU code (8 digits). | |
| order | No | "desc" (default) or "asc". | |
| query | No | Free-text query, Ukrainian recommended (e.g. "вугілля", "школа"). Optional if you pass a filter such as tenderer, buyer, or a date range. | |
| status | No | Tender status: complete, active.tendering, cancelled, unsuccessful, … | |
| date_to | No | End date YYYY-MM-DD. Same rules as date_from. | |
| sort_by | No | "dateCreated" (default) or "value.amount". | |
| tenderer | No | Supplier/bidder EDRPOU code (8 digits, e.g. "00131305") — returns every tender this company bid on or won. The primary supplier due-diligence filter. | |
| date_from | No | Start date YYYY-MM-DD. Valid ALONE (no other filter) to browse a historical window — e.g. date_from:"2015-03-01", date_to:"2015-03-10". Combined with a keyword/tenderer/buyer query, note it filters on tender PERIOD (or dateSigned for a tenderer query) and so drops any matching record with no tender period. | |
| resolve_ids | No | Best-effort: try to fill in each result's `id` (the internal 32-hex id prozorro_get_tender needs for full detail) by scanning the most-recently-modified few thousand ProZorro records. Only finds tenders that were THEMSELVES modified recently — an old, untouched tender will still come back with id:null. Default false. |