Anleitungen

Die Postleitzahl zu einer unvollständigen Adresse ermitteln

Ein Kunde, der das Feld für die Postleitzahl leer lässt, hat Ihnen nicht unbedingt schlechte Daten gegeben. Die Geokodierung kann diese Lücke meist aus dem Rest der Adresse füllen.

Die unvollständige Adresse senden

Senden Sie den Text, den Sie haben, mindestens Straße und Stadt, an /v1/forward. Das components-Objekt im Ergebnis enthält die Postleitzahl des besten Treffers, auch wenn die Eingabe keine enthielt.

GET /v1/forward?q=1600 Pennsylvania Avenue, Washington&limit=1
{
  "status": "ok",
  "query": "1600 Pennsylvania Avenue, Washington",
  "results": [
    {
      "formatted": "1600 Pennsylvania Avenue NW, Washington, DC 20500",
      "lat": 38.8977,
      "lon": -77.0365,
      "type": "address",
      "precision": "house",
      "confidence": 0.97,
      "place_id": "def456",
      "components": {"postcode": "20500", "city": "Washington", "region": "DC", "country": "US"}
    }
  ]
}

Ein dünneres Beispiel und warum es wichtig ist

Nicht jede Adresse ist so vollständig. Eine Anfrage mit nur einer Stadt und einer Region, etwa „Springfield, Illinois“, kann trotzdem ein Ergebnis liefern, aber die Postleitzahl in components deckt dann die ganze Stadt ab statt eines einzelnen Gebäudes, und das Feld precision zeigt etwas Gröberes als „house“. Dieser Unterschied ist wichtig, wenn Sie die zurückgegebene Postleitzahl auf ein Versandetikett drucken möchten, statt sie nur für eine regionale Schätzung zu verwenden, denn eine Postleitzahl auf Stadtebene bietet nicht dieselbe Gewissheit wie eine auf Hausebene.

Dem Ergebnis vertrauen

Prüfen Sie die Felder precision und confidence, bevor Sie die zurückgegebene Postleitzahl als verlässlich behandeln. Eine Präzision „house“ mit einem hohen Konfidenzwert bedeutet, dass der Treffer spezifisch genug war, um dem Postleitzahlwert direkt zu vertrauen. Eine gröbere Präzision, etwa ein Treffer auf Straßen- oder Stadtebene, bedeutet, dass die Postleitzahl ein größeres Gebiet abdeckt und möglicherweise nicht zu der genauen Adresse passt, die der Kunde gemeint hat.

Kosten dieser Abfrage

Das ist eine einzelne Abfrage, eine Anfrage gegen Ihr Tageskontingent für eine Adresse. Das für jede Checkout- oder Registrierungsformular-Übermittlung zu tun, die ohne Postleitzahl eintrifft, ist normale Nutzung und kommt selten auch nur in die Nähe der 2.500 kostenlosen Anfragen, die täglich mit einem Schlüssel oder von einer einzelnen IP-Adresse ohne Schlüssel enthalten sind.

Wenn es keinen guten Treffer gibt

Ein leeres results-Array oder ein Ergebnis mit niedrigem Konfidenzwert bedeutet, dass die Adresse zu vage war, um sie aufzulösen. Fragen Sie in diesem Fall den Kunden direkt nach der Postleitzahl, statt zu raten, denn eine falsche Postleitzahl auf einem Versandetikett verursacht mehr Ärger als eine fehlende.

Ein Randfall, den Sie einplanen sollten

Manche Länder verwenden überhaupt keine Postleitzahlen oder so uneinheitlich, dass ein components-Objekt das Feld für ein bestimmtes Ergebnis einfach weglässt. Behandeln Sie ein fehlendes postcode-Feld nicht für sich genommen als Fehler: Prüfen Sie zuerst das Land im components-Objekt und markieren Sie die Zeile nur dann zur Überprüfung, wenn es sich um ein Land handelt, in dem normalerweise eine Postleitzahl erwartet wird.

Sobald Sie eine mögliche Postleitzahl haben, ist ein direkter Aufruf von /v1/postcode mit diesem Code und dem Land aus dem components-Objekt ein schneller Weg, sie unabhängig gegenzuprüfen. Das ist besonders nützlich, wenn die Konfidenz der ursprünglichen Geokodierung grenzwertig war statt eindeutig hoch oder eindeutig niedrig.

Wenn Sie eine fehlende Postleitzahl auf diese Weise ergänzen, sparen Sie ein Formularfeld und eine Rückfrage beim Kunden. Die vollständigen Felddefinitionen finden Sie in der Dokumentation zur Postleitzahlabfrage und in der Dokumentation zur Geokodierung.