Correspondence of an address with the official Swiss building-address directory

Reports whether the queried address components correspond exactly to an entry in the official Swiss directory of building addresses (swisstopo) snapshot BUMIT holds. result is OFFICIAL_ADDRESS, PLANNED_ADDRESS, OUTDATED_ADDRESS, NOT_FOUND, MULTIPLE_MATCHES or UNKNOWN. No company UID is required or used.

ADDRESS_VERIFY establishes correspondence with the official Swiss building-address directory only. It does not establish that a company is registered, domiciled or operating at the address, that mail is deliverable there, that any company is active, or that a transaction is safe. No company register address is compared in this phase.

ADR_EGAID (building address), BDG_EGID (building), ADR_EDID (entrance), STR_ESID (street) and COM_FOSNR (municipality) are five separate federal identifiers. BUMIT retains each independently and verbatim, never derives one from another and never manufactures one.

ADR_STATUS (planned / real / outdated) and ADR_OFFICIAL (a boolean) are two separate source fields. BUMIT reports both verbatim and never collapses one into the other: a real status alone does not make an address official, and an official flag never erases the published status.

The normalized address result comes from an explicitly versioned mapping of the source ADR_STATUS value together with the separate ADR_OFFICIAL boolean. ADR_STATUS and ADR_OFFICIAL are never collapsed: a real status alone does not make an address official, and an official flag never erases the published status. A status the mapping does not list — including an unknown or future value — yields UNKNOWN and is never silently mapped.

Matching is deterministic exact equality on normalized address components: street label, house number, postcode and locality. Normalization is formatting only — Unicode NFC, whitespace, comparison-case, canonical four-digit postcode and conservative house-number formatting. A multilingual street label is preserved whole and additionally exposes exact per-language segment keys. No fuzzy matching, edit distance, similarity score, embedding, LLM, address guessing or nearest-geographic selection exists in this path, and several matches are reported as MULTIPLE_MATCHES rather than resolved.

Absence of evidence is never evidence of absence. NOT_FOUND is emitted only after a deterministic lookup against a usable, sufficiently current dataset, and means only that no entry matched in the data BUMIT checked. A missing, malformed, stale, contradictory or unavailable dataset is UNKNOWN.

Provenance separates BUMIT's retrieved_at from source-published dates: the source modification date and any dataset publication date are source fields and are never treated as retrieval times.

Live retrieval is not implemented: there is no download, STAC, REST or SPARQL request path, no scheduler and no polling, and no request-per-verification path exists. This deployment serves synthetic fixture datasets, marked evidence_class: SYNTHETIC_FIXTURE.

get/api/v1/address/verify

Request

  • Base URL: https://bumit.ai
  • URL: https://bumit.ai/api/v1/address/verify
  • Auth: none required

Query parameters

streetstring required

Street label. A multilingual label may be given whole or as one language segment.

house_numberstring required

House number including any suffix, for example 12A.

postcodestring required

Four-digit Swiss postcode. Any other form is unusable and yields UNKNOWN.

localitystring required

Locality as published with the postcode.

Response

Address verification result with the source status and the separate official flag verbatim, the federal identifiers ADR_EGAID, BDG_EGID, ADR_EDID, STR_ESID and COM_FOSNR independently, the normalized query, coverage, matching ruleset, claims, freshness, provenance and attribution.

Changes

No recorded changes to this operation across all 1 revision of this API.