Ziel
Als Entwickler arbeiten Sie häufig mit Datasets, die Kundenadressen enthalten, die möglicherweise nicht von guter Qualität sind. Sie müssen dafür sorgen, dass Adressen für Anwendungsfälle wie die Bestätigung der Kunden-ID oder die Lieferung korrekt sind.
Die Address Validation API ist ein Produkt der Google Maps Platform, mit dem Sie eine Adresse validieren können. Es wird jedoch immer nur eine Adresse gleichzeitig verarbeitet. In diesem Dokument wird erläutert, wie Sie die High Volume Address Validation in verschiedenen Szenarien verwenden können, von API-Tests bis hin zur einmaligen und wiederkehrenden Adressvalidierung.
Anwendungsfälle
Sehen wir uns nun die Anwendungsfälle an, in denen die Adressvalidierung mit hohem Volumen nützlich ist.
Test
Häufig möchten Sie die Address Validation API testen, indem Sie Tausende von Adressen ausführen. Möglicherweise haben Sie die Adressen in einer CSV-Datei (Datei mit durch Kommas getrennten Werten) und möchten die Qualität der Adressen überprüfen.
Einmalige Bestätigung von Adressen
Beim Onboarding für die Address Validation API möchten Sie Ihre vorhandene Adressdatenbank mit der Nutzerdatenbank abgleichen.
Wiederkehrende Bestätigung von Adressen
In folgenden Szenarien ist es erforderlich, Adressen regelmäßig zu validieren:
- Möglicherweise haben Sie Jobs geplant, um Adressen für Details zu validieren, die beispielsweise während des Tages erfasst wurden, z. B. bei Kundenregistrierungen, Bestelldetails oder Lieferplänen.
- Sie erhalten möglicherweise Datenexporte mit Adressen aus verschiedenen Abteilungen, z. B. aus dem Vertrieb und dem Marketing. Die neue Abteilung, die die Adressen erhält, möchte sie oft vor der Verwendung validieren.
- Sie können Adressen bei Umfragen oder verschiedenen Werbeaktionen erfassen und später im Onlinesystem aktualisieren. Sie möchten die Adressen beim Eingeben in das System validieren.
Technische Details
In diesem Dokument wird Folgendes vorausgesetzt:
- Sie rufen die Address Validation API mit Adressen aus einer Kundendatenbank (d. h. einer Datenbank mit Kundendetails) auf.
- Sie können Gültigkeitskennzeichnungen für einzelne Adressen in Ihrer Datenbank zwischenspeichern.
- Gültigkeitskennzeichnungen werden über die Address Validation API abgerufen, wenn sich ein einzelner Kunde anmeldet.
Cache für die Produktion
Wenn Sie die Address Validation API verwenden, möchten Sie oft einen Teil der Antwort aus dem API-Aufruf im Cache speichern. Unsere Nutzungsbedingungen schränken zwar ein, welche Daten zwischengespeichert werden dürfen, aber alle Daten, die aus der Address Validation API zwischengespeichert werden können, müssen für ein Nutzerkonto zwischengespeichert werden. Das bedeutet, dass die Adresse oder die Adressmetadaten in der Datenbank anhand der E-Mail-Adresse oder einer anderen primären ID eines Nutzers zwischengespeichert werden müssen.
Beim Anwendungsfall „Adressvalidierung mit hohem Volumen“ muss das Zwischenspeichern von Daten den dienstspezifischen Nutzungsbedingungen der Address Validation API in Abschnitt 11.3 entsprechen. Anhand dieser Informationen können Sie feststellen, ob die Adresse eines Nutzers ungültig ist. In diesem Fall fordern Sie den Nutzer bei der nächsten Interaktion mit Ihrer Anwendung auf, eine korrigierte Adresse anzugeben.
- Daten aus dem AddressComponent-Objekt
confirmationLevel
inferred
spellCorrected
replaced
unexpected
Wenn Sie Informationen zur tatsächlichen Adresse im Cache speichern möchten, dürfen Sie dies nur mit Einwilligung des Nutzers tun. So wird sichergestellt, dass der Nutzer genau weiß, warum ein bestimmter Dienst seine Adresse speichert, und mit den Bedingungen für die Weitergabe seiner Adresse einverstanden ist.
Ein Beispiel für die Einwilligung des Nutzers ist die direkte Interaktion mit einem E-Commerce-Adressformular auf einer Checkout-Seite. Es wird davon ausgegangen, dass Sie die Adresse zum Versenden eines Pakets zwischenspeichern und verarbeiten.
Mit der Einwilligung des Nutzers können Sie formattedAddress
und andere Schlüsselkomponenten aus der Antwort im Cache speichern. In einem Headless-Szenario kann ein Nutzer jedoch keine Einwilligung erteilen, da die Adressvalidierung im Backend erfolgt. Daher können Sie in diesem Headless-Szenario nur sehr wenige Informationen im Cache speichern.
Antwort verstehen
Wenn die Antwort der Address Validation API die folgenden Markierungen enthält, können Sie davon ausgehen, dass die eingegebene Adresse für die Zustellung geeignet ist:
- Die
addressComplete
-Markierung im Objekt Verdict isttrue
. - Die
validationGranularity
im Verdict-Objekt istPREMISE
oderSUB_PREMISE
. - Keine der AddressComponent-Elemente ist als Folgendes gekennzeichnet:
Inferred
(Hinweis: inferred=true
kann in folgenden Fällen auftreten:addressComplete=true
)spellCorrected
replaced
unexpected
und
confirmationLevel
: Die Bestätigungsstufe für die AddressComponent ist aufCONFIRMED
oderUNCONFIRMED_BUT_PLAUSIBLE
festgelegt.
Wenn die API-Antwort die oben genannten Markierungen nicht enthält, war die Eingabeadresse wahrscheinlich von schlechter Qualität. Sie können Flags in Ihrer Datenbank speichern, um dies zu berücksichtigen. Zwischengespeicherte Flags weisen darauf hin, dass die Adresse insgesamt von schlechter Qualität ist. Detailliertere Flags wie „Rechtschreibfehler korrigiert“ geben den spezifischen Typ des Problems mit der Adressqualität an. Bei der nächsten Kundeninteraktion mit einer Adresse, die als von schlechter Qualität gekennzeichnet ist, können Sie die Address Validation API mit der vorhandenen Adresse aufrufen. Die Address Validation API gibt die korrigierte Adresse zurück, die Sie in einer Benutzeroberflächenaufforderung anzeigen können. Sobald der Kunde die formatierte Adresse akzeptiert hat, können Sie Folgendes aus der Antwort im Cache speichern:
formattedAddress
postalAddress
addressComponent componentNames
oderUspsData standardizedAddress
Headless-Adressvalidierung implementieren
Basierend auf der obigen Diskussion:
- Aus geschäftlichen Gründen ist es oft erforderlich, einen Teil der Antwort der Address Validation API im Cache zu speichern.
- Die Nutzungsbedingungen der Google Maps Platform schränken jedoch ein, welche Daten im Cache gespeichert werden dürfen.
Im folgenden Abschnitt wird ein zweistufiger Prozess beschrieben, mit dem Sie die Nutzungsbedingungen einhalten und die Adressvalidierung mit hohem Volumen implementieren können.
Schritt 1:
Im ersten Schritt sehen wir uns an, wie ein Skript zur Adressvalidierung mit hohem Volumen aus einer bestehenden Datenpipeline implementiert wird. So können Sie bestimmte Felder aus der Antwort der Address Validation API in einer Art und Weise speichern, die den Nutzungsbedingungen entspricht.
Diagramm A:Das folgende Diagramm zeigt, wie eine Datenpipeline mit einer Logik zur Adressvalidierung mit hohem Volumen optimiert werden kann.
Gemäß den Nutzungsbedingungen dürfen Sie die folgenden Daten aus addressComponent
im Cache speichern:
confirmationLevel
inferred
spellCorrected
replaced
unexpected
Daher werden in diesem Implementierungsschritt die oben genannten Felder anhand der UserID im Cache gespeichert.
Weitere Informationen finden Sie unter Tatsächliche Datenstruktur.
Schritt 2:
In Schritt 1 haben wir Feedback erhalten, dass einige Adressen im Eingabedatensatz möglicherweise nicht von hoher Qualität sind. Im nächsten Schritt werden wir dem Nutzer diese gekennzeichneten Adressen präsentieren und seine Einwilligung zur Korrektur der gespeicherten Adresse einholen.
Diagramm B: In diesem Diagramm sehen Sie, wie eine End-to-End-Integration des Ablaufs für die Nutzereinwilligung aussehen könnte:
- Wenn sich der Nutzer anmeldet, prüfen Sie zuerst, ob Sie Validierungsflags in Ihrem System zwischengespeichert haben.
- Wenn es Flags gibt, sollten Sie dem Nutzer eine Benutzeroberfläche präsentieren, über die er seine Adresse korrigieren und aktualisieren kann.
- Sie können die Address Validation API noch einmal mit der aktualisierten oder im Cache gespeicherten Adresse aufrufen und dem Nutzer die korrigierte Adresse zur Bestätigung präsentieren.
- Wenn die Adresse von guter Qualität ist, gibt die Address Validation API ein
formattedAddress
zurück. - Sie können dem Nutzer diese Adresse präsentieren, wenn Korrekturen vorgenommen wurden, oder sie stillschweigend akzeptieren, wenn keine Korrekturen erforderlich sind.
- Sobald der Nutzer die Anfrage akzeptiert hat, können Sie
formattedAddress
in der Datenbank zwischenspeichern.
Fazit
Die Adressvalidierung mit hohem Volumen ist ein häufiger Anwendungsfall, der in vielen Anwendungen vorkommt. In diesem Dokument werden einige Szenarien und ein Designmuster für die Implementierung einer solchen Lösung gemäß den Nutzungsbedingungen der Google Maps Platform beschrieben.
Außerdem haben wir eine Referenzimplementierung der Adressvalidierung mit hohem Volumen als Open-Source-Bibliothek auf GitHub geschrieben. Dort finden Sie alle Informationen, die Sie für den schnellen Einstieg in die Entwicklung mit High Volume Address Validation benötigen. Im Artikel zu Designmustern erfahren Sie, wie Sie die Bibliothek in verschiedenen Szenarien verwenden.
Nächste Schritte
Laden Sie das Whitepaper zum Optimieren von Bezahlvorgang, Lieferung und Betrieb mit gültigen Adressen herunter und sehen Sie sich das Webinar zum Optimieren von Bezahlvorgang, Lieferung und Betrieb mit Address Validation an.
Empfohlene Artikel:
- Anwendungen für die Adressvalidierung mit hohem Volumen
- Python-Bibliothek auf GitHub
- Demo von Address Validation ansehen
Beitragende
Dieser Artikel wird von Google verwaltet. Die folgenden Mitwirkenden haben den Artikel ursprünglich geschrieben.
Hauptautoren:
Henrik Valve | Solutions Engineer
Thomas Anglaret | Solutions
Engineer
Sarthak Ganguly | Solutions
Engineer