The IPI API for trademark search
Access 875K Swiss Federal Institute of Intellectual Property records via API. Normalized data, sub-second response, and daily sync — all through Signa's unified trademark API.
Search IPI in one POST request.
One REST endpoint. Filter by offices: ['IPI'] to scope to ~875K IPI records, or drop the filter to search every office.
Sub-300ms p95 on IPI queries
Exact, phonetic, fuzzy, and prefix strategies in one request.
Canonical status & raw code preserved
status.primary for filtering, status.raw_code if you need it.
Verifiable freshness
Every record includes updated_at.
Loading...
875K records
IPI register indexed and queryable through one endpoint.
Daily sync
Database synced regularly with IPI's source publication.
100% field accuracy
Validated against IPI source data across a 10,240-field spot-check audit.
Normalized schema
17 raw IPI status codes mapped to a canonical status object — same shape across every office.
What is IPI?
The Swiss Federal Institute of Intellectual Property (IPI — Eidgenössisches Institut für Geistiges Eigentum in German, Institut Fédéral de la Propriété Intellectuelle in French) is the federal authority responsible for examining and registering trademarks in Switzerland under the Federal Act on the Protection of Trademarks and Indications of Source (MSchG). Uniquely among trademark offices of its scale, IPI is institutionally independent: it operates as an autonomous public-law entity headquartered in Bern, fully self-financed through fees, and reports directly to the Federal Council rather than sitting under a ministry like most national IP offices.
Switzerland is not a member of the European Union and not covered by the EUTM. An EU trademark gives you no protection in Switzerland — Swiss coverage requires either a direct national filing with IPI or a Madrid Protocol designation of CH. This single fact catches a surprising number of teams off guard when they move from EU-only protection to genuine European coverage. Switzerland has been a Madrid Protocol contracting party since 1997 and routinely sits among the top destinations for international designations.
The Swiss register is trilingual — German, French, and Italian are all official languages, and goods-and-services text routinely appears in any combination of them on a single record (Madrid designations of CH frequently concatenate multilingual descriptions into one field). Switzerland also runs one of the world's most developed appellation-of-origin and geographic-indication frameworks: "Swiss Made" on watches, the "Schweiz / Suisse / Svizzera" name itself, Gruyère and Emmental, and a dedicated Geographical Mark category under Art. 27a MSchG all have explicit legal protection. IPI publishes its register through the Swissreg Datadelivery API — a free authenticated XML API — and Signa ingests it, normalizes the trilingual content, and surfaces both direct CH filings and Madrid designations of CH in the same shape as every other office.
Unique features
- Institutionally independent — IPI is an autonomous federal entity reporting to the Federal Council, not a department under a ministry (unique among major national trademark offices)
- Switzerland is NOT in the EU and NOT covered by EUTM — protection in CH requires a direct national filing or a Madrid designation of CH, regardless of any EUTM you already hold
- Trilingual register — German, French, and Italian are all official; goods-and-services descriptions may appear in any combination on a single record
- Madrid Protocol since 1997 — Switzerland is one of the longest-standing contracting parties, and Madrid designations of CH make up ~35% of new filings
- Geographical Marks under Art. 27a MSchG — a distinct Swiss-specific category for collective geographic indications, registered separately from ordinary collective and certification marks
- "Swiss Made" / "Swiss" geographic-indication protection — the Swissness legislation imposes strict origin and content rules for using the country name in trademarks, with international enforcement reach
- Acquired distinctiveness (Verkehrsdurchsetzung) — descriptive marks can become registrable through proof of acquired distinctiveness, recorded as Primary RegisterCategory + In-Part / In-Total scope on the register
- Swissreg Datadelivery API — free authenticated XML API with OIDC auth, 2 GiB/24h quota, and native LastUpdate time filtering for incremental sync
Swissreg Datadelivery API vs Signa.
IPI publishes a real free API — the Swissreg Datadelivery API — with OpenID Connect auth and a 2 GiB / 24h quota. It's also Swiss ST.96 V7.1 XML with chtmk-extension elements, short-lived tokens (12-minute access / 6-minute refresh), and a trilingual register where the same Madrid record concatenates German, French, and Italian into one goods-and-services field. Here's what changes when you use Signa instead.
| Dimension | Swissreg Datadelivery API | Signa |
|---|---|---|
| Setup | Sign and mail the Terms of Use PDF to IPI in Bern, wait for a provisioned account, set up OIDC against idp.ipi.ch, then build an XML pipeline against a Swiss ST.96 V7.1 superset with chtmk extensions | Sign up, copy API key, curl the endpoint |
| Auth | Resource Owner Password OIDC grant with 720s access tokens and 360s refresh tokens — must refresh proactively, not lazily on 401 | Static Bearer token. Signa handles the IPI OIDC dance and token rotation on its side |
| Data shape | Swiss ST.96 XML with chtmk:CHMarkCategory hiding Geographical marks behind tmk:MarkCategory="Collective", multilingual GS text in a single element, and 6 / 7 / 8-digit WIPO IRNs for Madrid records | Normalized JSON with canonical status object, geographical marks correctly typed, multilingual text preserved, and identical schema to USPTO / EUIPO / WIPO |
| Cohorts | You discriminate CH (direct national) vs WO (Madrid designation of CH) yourself from com:RegistrationOfficeCode — and you remember that for WO records the registration number itself IS the WIPO IRN with no separate BasicRegistration element | filing_route is "direct_national" or "madrid_designation" on every record, with the IRN already extracted |
| Quota | 2 GiB / 24h rolling, 12 concurrent. Full corpus traversal is ~2.5-3.5 GB wire — exceeds the quota in a single day, requires sharded date-window backfill | Signa runs the backfill and daily delta on its side; you query a normal REST endpoint with no upstream quota leaking through |
| Coverage | Switzerland only — and remember EUTM does NOT cover CH, so for genuine European coverage you also need EUIPO via a separate API | IPI + EUIPO + WIPO + 18 other offices through the same endpoint |
If your product only ever touches Swiss marks and you're happy maintaining an OIDC client, an ST.96 parser with Swiss extensions, and a sharded backfill, building directly on Swissreg is reasonable. Signa exists for the case where Switzerland is one of many jurisdictions you need to support, and you'd rather treat all of them as one normalized API.
IPI API — Frequently asked questions
Everything developers ask before integrating IPI data
Need something else? See our documentation
IPI API basics
Coverage, scope, and Swiss specifics
Need something else? See our documentation
Ready to search 875K IPI trademarks via API?
Start with 1,000 free IPI requests/month. 875K records indexed, normalized data across 20+ offices through the same endpoint.
Get API keyView documentation