Sie zeigen eine alte Version dieser Seite an. Zeigen Sie die aktuelle Version an.

Unterschiede anzeigen Seitenhistorie anzeigen

« Vorherige Version anzeigen Version 7 Aktuelle »

Inhalt

Allgemeine Informationen

Das PostService-Plugin von JAXForms liefert in Adressfeldern Vorschläge für PLZ, Ort und Strasse. Es führt dazu keine eigene Adressliste, sondern fragt bei jeder Eingabe live den Adress-Webservice der Schweizerischen Post ab und übernimmt die gelieferten Werte unverändert ins Formular.

Diese Seite beschreibt den verwendeten Webservice, die Struktur von Request und Answer sowie Beispiele für die drei Suchen PLZ, Ort und Strasse.

ThemaAngabe
AnbieterPost CH AG, Produkt «Adress Web Services» (Adressassistent)
SchnittstelleREST/JSON über HTTPS
Methode für VorschlägePOST /autocomplete2 (QueryAutoComplete2)
URL Produktionhttps://webservices.post.ch:17023/IN_SYNSYN_EXT/REST/v1
URL Integrationhttps://webservices-int.post.ch:17023/IN_SYNSYN_EXT_INT/REST/v1
URL Testhttps://webservices-int.post.ch:17029/IN_SYNSYN_EXT_TEST/REST/v1
DatengrundlageReferenzdaten der Post («Swiss Post reference data»). Enthalten sind nur postalisch bediente Strassen und Gebäude der Schweiz und des Fürstentums Liechtenstein.

Quelle der Angaben

Technische Spezifikation «Address web services REST» im Entwicklerportal der Post (Kapitel 4.4, 4.6, 7, 8, 9 und 11). Stand: 12.11.2026 sind die Seiten unter developer.post.ch nicht erreichbar; gelesen wurden die archivierten Fassungen vom 21.05.2026 und 10.06.2026.
https://web.archive.org/web/20260521015423/https://developer.post.ch/en/address-web-services-rest


Schnittstelle

Request

Pseudo-Schema Request
request*: {
  HouseKey*: Zahl
  HouseNumber*: Text
  HouseNumberAddition*: Text
  Onrp*: Zahl
  Streetname*: Text
  StrId*: Zahl
  TownName*: Text
  ZipAddition*: Text
  Zipcode*: Text
}
zipOrderMode*: Zahl
FeldTypVom Plugin befülltBeschreibung
ZipcodeText✔PLZ oder Anfang einer PLZ. Suchbegriff der PLZ-Suche, Einschränkung bei der Strassensuche.
TownNameText✔Ortsname oder Wortanfang davon. Suchbegriff der Ortssuche.
StreetnameText✔Strassenname oder Wortanfang davon. Suchbegriff der Strassensuche.
HouseNumberText❌Hausnummer. Bleibt leer.
HouseNumberAdditionText❌Hausnummer-Zusatz. Bleibt leer.
ZipAdditionText❌PLZ-Zusatzziffer. Bleibt leer.
OnrpZahl❌Ordnungsnummer Post (Schlüssel von PLZ/Ort). Immer 0.
StrIdZahl❌Schlüssel der Strasse. Immer 0.
HouseKeyZahl❌Schlüssel des Gebäudes. Immer 0.
zipOrderModeZahl✔Sortierung der Treffer. Das Plugin sendet immer 0.

Anmerkung: Das Plugin sendet immer alle Felder. Nicht verwendete Textfelder sind leer, nicht verwendete Schlüssel haben den Wert 0.

Answer

Pseudo-Schema Answer
QueryAutoComplete2Result*: {
  AutoCompleteResult*: [ {
    HouseKey*: Zahl
    HouseNumber*: Text
    HouseNumberAddition*: Text
    Onrp*: Zahl
    StrId*: Zahl
    Streetname*: Text
    TownName*: Text
    ZipAddition*: Text
    Zipcode*: Text
  } ]
  Status*: Zahl
}
FeldTypMax. LängeBeschreibung
ZipcodeText4Vierstellige PLZ.
ZipAdditionText2PLZ-Zusatzziffer (fünfte und sechste Stelle). Unterscheidet gleichlautende vierstellige PLZ.
TownNameText27Ortsbezeichnung (lange Form). JAXForms schreibt sie unverändert ins Ort-Feld.
OnrpZahl–Ordnungsnummer Post. Eindeutiger, unveränderlicher Schlüssel von PLZ/Ort.
StreetnameText60Strassenname in der Schreibweise der Post. Leer bei Treffern auf Ortsebene.
StrIdZahl–Schlüssel der Strasse. 0 bei Treffern auf Ortsebene.
HouseKeyZahl19Schlüssel des Gebäudes. 0 bei Treffern auf Orts- oder Strassenebene.
HouseNumberText40Hausnummer. Leer bei Treffern auf Orts- oder Strassenebene.
HouseNumberAdditionText6Hausnummer-Zusatz. Leer bei Treffern auf Orts- oder Strassenebene.
StatusZahl–0 = Abfrage erfolgreich.

Anmerkung zu den Längen: Die Spezifikation der Post enthält für die Autocomplete-Answer keine eigene Längentabelle. Die Werte stammen aus der «Data output structure» (Kapitel 1.3.3 und 3.3.3, Spalte «Maximum field length») desselben Service, die dort für Adresspflege und Adressprüfung gilt. Die Felder heissen dort ZIPcode, ZIPAddition, TownName, Streetname, Housekey, HouseNo und HouseNoAddition. Für Onrp, StrId und Status nennt die Spezifikation keine Länge.



Verhaltensregeln

Suchebene

Die Suchebene (Ort, Strasse oder Gebäude) wird nicht über einen Parameter gewählt. Sie ergibt sich daraus, welche Felder im Request gefüllt sind.

Suche im PluginSuchtypGefüllte FelderTreffer
PLZPLZZipcode = EingabeOrte mit passender PLZ
OrtORTTownName = EingabeOrte mit passendem Namen
StrasseSTRASSEStreetname = Eingabe, Zipcode = Wert des PLZ-Felds im FormularStrassen im Gebiet der PLZ



Beispiel-Daten

Alle Requests gehen per POST an {BASIS_URL}/autocomplete2.

PLZ

Request: PLZ-Suche mit «1374»

Request PLZ 1374
{
  "request" : {
    "HouseKey" : 0,
    "HouseNumber" : "",
    "HouseNumberAddition" : "",
    "Onrp" : 0,
    "Streetname" : "",
    "StrId" : 0,
    "TownName" : "",
    "ZipAddition" : "",
    "Zipcode" : "1374"
  },
  "zipOrderMode" : 0
}

Answer: ein Ort, Ortsbezeichnung mit 23 Zeichen

Answer PLZ 1374
{
  "QueryAutoComplete2Result" : {
    "AutoCompleteResult" : [ {
      "HouseKey" : 0,
      "HouseNumber" : "",
      "HouseNumberAddition" : "",
      "Onrp" : 588,
      "StrId" : 0,
      "Streetname" : "",
      "TownName" : "Corcelles-sur-Chavornay",
      "ZipAddition" : "00",
      "Zipcode" : "1374"
    } ],
    "Status" : 0
  }
}

Request: PLZ-Suche mit «2206»

Request PLZ 2206
{
  "request" : {
    "HouseKey" : 0,
    "HouseNumber" : "",
    "HouseNumberAddition" : "",
    "Onrp" : 0,
    "Streetname" : "",
    "StrId" : 0,
    "TownName" : "",
    "ZipAddition" : "",
    "Zipcode" : "2206"
  },
  "zipOrderMode" : 0
}

Answer: ein Ort, Ortsbezeichnung mit 25 Zeichen

Answer PLZ 2206
{
  "QueryAutoComplete2Result" : {
    "AutoCompleteResult" : [ {
      "HouseKey" : 0,
      "HouseNumber" : "",
      "HouseNumberAddition" : "",
      "Onrp" : 1359,
      "StrId" : 0,
      "Streetname" : "",
      "TownName" : "Les Geneveys-sur-Coffrane",
      "ZipAddition" : "00",
      "Zipcode" : "2206"
    } ],
    "Status" : 0
  }
}

Ort

Request: Ortssuche mit «Aarau»

Request Ort
{
  "request" : {
    "HouseKey" : 0,
    "HouseNumber" : "",
    "HouseNumberAddition" : "",
    "Onrp" : 0,
    "Streetname" : "",
    "StrId" : 0,
    "TownName" : "Aarau",
    "ZipAddition" : "",
    "Zipcode" : ""
  },
  "zipOrderMode" : 0
}

Answer

Answer Ort
{
  "QueryAutoComplete2Result" : {
    "AutoCompleteResult" : [ {
      "HouseKey" : 0,
      "HouseNumber" : "",
      "HouseNumberAddition" : "",
      "Onrp" : 2913,
      "StrId" : 0,
      "Streetname" : "",
      "TownName" : "Aarau",
      "ZipAddition" : "00",
      "Zipcode" : "5000"
    }, {
      "HouseKey" : 0,
      "HouseNumber" : "",
      "HouseNumberAddition" : "",
      "Onrp" : 2928,
      "StrId" : 0,
      "Streetname" : "",
      "TownName" : "Aarau 1",
      "ZipAddition" : "00",
      "Zipcode" : "5001"
    }, {
      "HouseKey" : 0,
      "HouseNumber" : "",
      "HouseNumberAddition" : "",
      "Onrp" : 2932,
      "StrId" : 0,
      "Streetname" : "",
      "TownName" : "Aarau",
      "ZipAddition" : "00",
      "Zipcode" : "5004"
    }, {
      "HouseKey" : 0,
      "HouseNumber" : "",
      "HouseNumberAddition" : "",
      "Onrp" : 2949,
      "StrId" : 0,
      "Streetname" : "",
      "TownName" : "Aarau Rohr",
      "ZipAddition" : "00",
      "Zipcode" : "5032"
    } ],
    "Status" : 0
  }
}

Strasse

Request: Strassensuche mit «Frankl», eingeschränkt auf die PLZ 8050

Request Strasse
{
  "request" : {
    "HouseKey" : 0,
    "HouseNumber" : "",
    "HouseNumberAddition" : "",
    "Onrp" : 0,
    "Streetname" : "Frankl",
    "StrId" : 0,
    "TownName" : "",
    "ZipAddition" : "",
    "Zipcode" : "8050"
  },
  "zipOrderMode" : 0
}

Answer: eine Strasse, mit Schlüssel der Strasse und des Orts

Answer Strasse
{
  "QueryAutoComplete2Result" : {
    "AutoCompleteResult" : [ {
      "HouseKey" : 0,
      "HouseNumber" : "",
      "HouseNumberAddition" : "",
      "Onrp" : 4468,
      "StrId" : 66043,
      "Streetname" : "Franklinstrasse",
      "TownName" : "Zürich",
      "ZipAddition" : "00",
      "Zipcode" : "8050"
    } ],
    "Status" : 0
  }
}
  • Keine Stichwörter