search_procurements
Find Swiss public procurement projects by topic, canton, CPV code, or date window. Data from simap.ch, updated intraday across all cantons and the Confederation.
Instructions
Find open tenders matching a topic, canton, CPV code or date window — the default entry point when the question is "what is being tendered?".
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 |