# Switzerland Government Data API (`lentic_clockss/switzerland-data-search`) Actor

Search 25 Swiss government data sources — cantonal company registries (Basel, Thurgau), GLEIF LEI, SNB exchange rates, building permits, clinical trials, WHO health indicators, Fedlex legislation, parliament affairs, and TED procurement.

- **URL**: https://apify.com/lentic\_clockss/switzerland-data-search.md
- **Developed by:** [kane liu](https://apify.com/lentic_clockss) (community)
- **Categories:** Lead generation, MCP servers
- **Stats:** 1 total users, 0 monthly users, 0.0% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

Pay per usage

This Actor is paid per platform usage. The Actor is free to use, and you only pay for the Apify platform usage, which gets cheaper the higher subscription plan you have.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-usage

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp.md).

If your project is in a different language, use the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).


# README

## Switzerland Government Data Search

Search **25 official Swiss government data sources** in a single API call — cantonal company registries (Basel-Stadt, Basel-Landschaft, Thurgau), GLEIF LEI entities, SNB exchange rates, building permits and registries, Swiss clinical trials, WHO health indicators, Fedlex federal legislation, parliament affairs, and TED procurement. All data from official Swiss government databases through the SIP Public Data Gateway.

### What is Switzerland Government Data Search?

Switzerland Government Data Search is an Apify Actor that queries official Swiss government databases across business, construction, health, legal, and procurement domains. Instead of navigating opendata.swiss, cantonal portals, Fedlex, and SNB separately, you search them all at once.

The Actor calls the **SIP Public Data Gateway** — a unified API that normalizes responses from 25 Swiss data products. No browser, no scraping — just HTTPS API calls.

### Why use Switzerland Government Data Search?

- **One search, 25 sources** — Query company registries, building data, clinical trials, legislation, and procurement simultaneously
- **Official Swiss data** — All sources are public databases from Swiss cantons, federal agencies, SNB, and opendata.swiss
- **Cantonal company registries** — Basel-Stadt, Basel-Landschaft, and Thurgau commercial registers plus GLEIF LEI
- **Swiss clinical trials** — SNCTP Swiss National Clinical Trials Portal with WHO health indicators
- **Fedlex legislation** — Swiss federal law and EUR-Lex bilateral agreements with the EU

#### Use cases

| Who | What |
|-----|------|
| **Due diligence teams** | Search cantonal company registries and GLEIF LEI for Swiss entity verification |
| **Financial professionals** | Access SNB exchange rates and Swiss-registered LEI entities |
| **Pharma companies** | Search Swiss clinical trials and WHO health indicators |
| **Property professionals** | Access Basel building permits, cantonal building registries, and geo.admin data |
| **Legal professionals** | Query Fedlex legislation, parliament affairs, and EU bilateral agreements |
| **Government suppliers** | Monitor TED procurement notices for Swiss public tenders |

### What data can Switzerland Government Data Search extract?

| Source | Data type | Example fields |
|--------|-----------|----------------|
| Basel-Stadt companies | Cantonal commercial register | company_name, uid, status, legal_form |
| Basel-Landschaft companies | BL commercial register | company_name, uid, domicile |
| Thurgau companies | TG commercial register | company_name, uid, purpose |
| GLEIF LEI | Swiss LEI-registered entities | legal_name, lei, entity_status |
| SNB exchange rates | Swiss National Bank FX rates | currency, rate, date |
| Basel building permits | BS building permit applications | address, type, status, date |
| Basel buildings | BS/BL building registries | address, building_id, type |
| geo.admin buildings | Federal building data | address, coordinates, type |
| Swiss clinical trials | SNCTP registered trials | title, sponsor, status, phase |
| WHO health indicators | Health statistics for Switzerland | indicator, value, year |
| Fedlex legislation | Swiss federal law | title, sr_number, status |
| Parliament affairs | Federal parliament business | title, type, council, status |
| EUR-Lex bilateral | CH-EU bilateral agreements | title, celex_number, date |
| TED procurement | EU procurement for Switzerland | title, buyer, value, deadline |

### How to search Swiss data

1. Open the Actor in Apify Console
2. Enter search terms (e.g. "Nestlé", "Zurich", "pharma", "Baugesuch")
3. Select data categories — business, construction, and health are on by default
4. Click **Start** — the Actor queries all enabled sources in parallel
5. Download results as JSON, CSV, or Excel

#### Example input

```json
{
  "searchTerms": ["Nestlé", "Novartis"],
  "includeBusiness": true,
  "includeConstruction": false,
  "includeHealth": false,
  "includeLegal": false,
  "includeProcurement": false,
  "maxResultsPerSource": 50
}
````

### Output

```json
{
  "company_name": "Nestlé S.A.",
  "uid": "CHE-116.281.710",
  "domicile": "Vevey",
  "legal_form": "AG",
  "_product_id": "ch_gleif_lei",
  "_source": "gleif_lei",
  "_search_term": "Nestlé",
  "_collected_at": "2026-04-08T14:00:00Z"
}
```

### How much does it cost?

Pay-per-event pricing at $2.00 per 1,000 records returned.

- **Company lookup** (1 term, business only): ~$0.01–0.03
- **Full scan** (3 terms, all 25 sources): ~$0.30–2.00

No browser overhead. Control costs with `maxResultsPerSource`.

### Data sources (25 Swiss products)

| Category | Sources | Count |
|----------|---------|-------|
| Business | Basel-Stadt/BL/Thurgau companies, GLEIF LEI, SNB rates, opendata business, business aggregate | 7 |
| Construction | BS building permits, BS/BL buildings, geo.admin buildings, opendata construction, construction aggregate | 6 |
| Health | Swiss clinical trials (SNCTP), WHO indicators, opendata health, health aggregate | 4 |
| Legal | Fedlex legislation, parliament affairs, EUR-Lex bilateral, opendata legal, legal aggregate | 5 |
| Procurement | TED CH procurement, opendata procurement, procurement aggregate | 3 |

### FAQ

**Which cantons are covered?**
Currently Basel-Stadt (BS), Basel-Landschaft (BL), and Thurgau (TG) have dedicated company registry products. The business aggregate and opendata catalog provide broader coverage.

**Does it support German, French, and Italian?**
Swiss government APIs accept queries in all national languages. Use the language relevant to the canton or data source you're targeting.

**What is the opendata catalog?**
opendata.swiss dataset catalog searches — these return dataset metadata (title, description, publisher) rather than individual records. Useful for discovering available Swiss open data.

### Use as MCP Tool (AI Agent Integration)

This Actor works as an MCP tool — AI agents (Claude, GPT, Cursor) can discover and run it automatically.

#### Quick setup (Claude Desktop / Cursor / VS Code)

Add to your MCP config:

```json
{
  "mcpServers": {
    "apify": {
      "url": "https://mcp.apify.com",
      "headers": {
        "Authorization": "Bearer YOUR_APIFY_TOKEN"
      }
    }
  }
}
```

Then ask your AI: *"Search for Nestlé in Swiss government databases"*

#### Direct API call

```python
from apify_client import ApifyClient
client = ApifyClient("YOUR_APIFY_TOKEN")
run = client.actor("lentic_clockss/switzerland-data-search").call(
    run_input={"searchTerms": ["Nestlé"], "maxResultsPerSource": 50}
)
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)
```

### Other Data API Actors

- [EU Business & Company Registry API](https://apify.com/lentic_clockss/eu-business-data-search)
- [France Government Data API](https://apify.com/lentic_clockss/france-data-search)
- [Denmark Government Data API](https://apify.com/lentic_clockss/denmark-data-search)
- [US Financial Data API](https://apify.com/lentic_clockss/us-finance-search)

# Actor input Schema

## `searchTerms` (type: `array`):

Keywords to search (e.g. 'Nestlé', 'Zurich', 'pharma', 'building'). Each term is searched across all enabled Swiss data sources in parallel.

## `includeBusiness` (type: `boolean`):

Search cantonal company registries (Basel-Stadt, Basel-Landschaft, Thurgau), GLEIF Swiss LEI entities, SNB exchange rates, and opendata business catalog (7 sources).

## `includeConstruction` (type: `boolean`):

Search Basel-Stadt building permits and buildings, Basel-Landschaft buildings, geo.admin.ch federal buildings, and opendata construction catalog (6 sources).

## `includeHealth` (type: `boolean`):

Search Swiss clinical trials (SNCTP), WHO health indicators for Switzerland, and opendata health catalog (4 sources).

## `includeLegal` (type: `boolean`):

Search Fedlex Swiss federal legislation, Parliament affairs, EUR-Lex Swiss bilateral agreements, and opendata legal catalog (5 sources).

## `includeProcurement` (type: `boolean`):

Search TED procurement notices for Switzerland and opendata procurement catalog (3 sources).

## `maxResultsPerSource` (type: `integer`):

Maximum records to return per data source (gateway caps at 200).

## Actor input object example

```json
{
  "searchTerms": [
    "Nestlé"
  ],
  "includeBusiness": true,
  "includeConstruction": true,
  "includeHealth": true,
  "includeLegal": false,
  "includeProcurement": false,
  "maxResultsPerSource": 50
}
```

# Actor output Schema

## `records` (type: `string`):

Dataset containing business, construction, health, legal, and procurement data from 25 Swiss government sources.

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "searchTerms": [
        "Nestlé"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("lentic_clockss/switzerland-data-search").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = { "searchTerms": ["Nestlé"] }

# Run the Actor and wait for it to finish
run = client.actor("lentic_clockss/switzerland-data-search").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "searchTerms": [
    "Nestlé"
  ]
}' |
apify call lentic_clockss/switzerland-data-search --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=lentic_clockss/switzerland-data-search",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Switzerland Government Data API",
        "description": "Search 25 Swiss government data sources — cantonal company registries (Basel, Thurgau), GLEIF LEI, SNB exchange rates, building permits, clinical trials, WHO health indicators, Fedlex legislation, parliament affairs, and TED procurement.",
        "version": "0.1",
        "x-build-id": "Dlmds4VVaOMiLjVCX"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/lentic_clockss~switzerland-data-search/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-lentic_clockss-switzerland-data-search",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/lentic_clockss~switzerland-data-search/runs": {
            "post": {
                "operationId": "runs-sync-lentic_clockss-switzerland-data-search",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/lentic_clockss~switzerland-data-search/run-sync": {
            "post": {
                "operationId": "run-sync-lentic_clockss-switzerland-data-search",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "required": [
                    "searchTerms"
                ],
                "properties": {
                    "searchTerms": {
                        "title": "Search terms",
                        "type": "array",
                        "description": "Keywords to search (e.g. 'Nestlé', 'Zurich', 'pharma', 'building'). Each term is searched across all enabled Swiss data sources in parallel.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "includeBusiness": {
                        "title": "Include business & company data",
                        "type": "boolean",
                        "description": "Search cantonal company registries (Basel-Stadt, Basel-Landschaft, Thurgau), GLEIF Swiss LEI entities, SNB exchange rates, and opendata business catalog (7 sources).",
                        "default": true
                    },
                    "includeConstruction": {
                        "title": "Include construction & building data",
                        "type": "boolean",
                        "description": "Search Basel-Stadt building permits and buildings, Basel-Landschaft buildings, geo.admin.ch federal buildings, and opendata construction catalog (6 sources).",
                        "default": true
                    },
                    "includeHealth": {
                        "title": "Include health & clinical data",
                        "type": "boolean",
                        "description": "Search Swiss clinical trials (SNCTP), WHO health indicators for Switzerland, and opendata health catalog (4 sources).",
                        "default": true
                    },
                    "includeLegal": {
                        "title": "Include legal & legislative data",
                        "type": "boolean",
                        "description": "Search Fedlex Swiss federal legislation, Parliament affairs, EUR-Lex Swiss bilateral agreements, and opendata legal catalog (5 sources).",
                        "default": false
                    },
                    "includeProcurement": {
                        "title": "Include public procurement",
                        "type": "boolean",
                        "description": "Search TED procurement notices for Switzerland and opendata procurement catalog (3 sources).",
                        "default": false
                    },
                    "maxResultsPerSource": {
                        "title": "Max results per source",
                        "minimum": 1,
                        "maximum": 200,
                        "type": "integer",
                        "description": "Maximum records to return per data source (gateway caps at 200).",
                        "default": 50
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
