search_procurements
Search Swiss public procurement projects on simap.ch by topic, canton, CPV code, or date to find open tenders. Returns project IDs for detailed records.
Instructions
<use_case>Find open tenders matching a topic, canton, CPV code or date window — the default entry point when the question is "what is being tendered?".</use_case>
Search Swiss public procurement projects on simap.ch.
Covers all cantons and the Confederation, updated intraday. This is the
entry point; use get_procurement_details with the returned ids for the
full record.
Note that simap indexes PROJECTS, not publications: one hit is one project,
represented by its NEWEST publication. A project tendered in March and
awarded in July appears once, as the July award. Use
get_publication_history to see the earlier publications of a project.
At least one filter is required — simap answers a filterless query with nothing rather than everything.
Args:
query: Free-text search over titles and descriptions.
canton: Bare canton id, e.g. ZH (NOT CH-ZH). See CANTON_IDS.
canton_match: How canton is interpreted.
procuring_body (default) — procured by that canton's public
bodies, including communal and subordinate offices.
place_of_delivery — the work is delivered there. Beware: ~60% of
publications carry no structured order address and are invisible to
this filter.
both — the union of the two. Costs two upstream calls and does
not support cursor.
cpv_codes: One or more CPV classification codes. Resolve names to codes
with search_cpv_codes first.
process_type: One of open, selective, invitation, direct, no_process.
pub_type: Publication type. For awarded contracts use one of
award_tender, award_study_contract, award_competition, direct_award —
a plain "award" is rejected by the API.
published_from / published_until: ISO dates YYYY-MM-DD. These filter on
the NEWEST publication date of a project.
cursor: Pagination cursor from a previous response's next_cursor.
language: de, fr, it or en.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| args | Yes |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| note | No | ||
| count | Yes | ||
| source | Yes | ||
| results | Yes | ||
| has_more | Yes | True if the pagination cursor can be advanced. | |
| match_type | No | exact when results were returned, none when empty. | none |
| provenance | Yes | ||
| next_cursor | No | Pass as `cursor` to search_procurements for the next page. | |
| retrieved_at | Yes |