W tym dokumencie opisujemy kilka rzeczywistych sytuacji, w których interfejs Address Validation API zwraca sygnały odpowiedzi, które wymagają naprawy przez system. Poniższe przykłady mają charakter poglądowy i nie wyczerpują wszystkich możliwości. Więcej informacji znajdziesz w sekcji Omówienie procesu w artykule Tworzenie logiki weryfikacji.
Typowe przykłady: naprawa
W tej sekcji opisujemy typowe przykłady, w których interfejs Address Validation API dostarcza sygnały odpowiedzi wskazujące na niższą jakość informacji o adresie.
Brak miasta i kodu pocztowego
Ten przykład pokazuje wpis zawierający tylko adres pocztowy, bez miasta i kodu pocztowego.
| Wpisany adres | Region |
|---|---|
| 21 45 40th street | USA |
Werdykt dotyczący brakującego miasta i kodu pocztowego
W przykładzie poniżej wyróżniono ważne sygnały z odpowiedzi.
{
"inputGranularity": "PREMISE",
"validationGranularity": "OTHER",
"geocodeGranularity": "OTHER",
"hasUnconfirmedComponents": true
}
Te sygnały wskazują, że adres jest niedostępny, więc możesz wysłać zapytanie do addressComponents, aby dowiedzieć się więcej:
{
"componentName": {
"text": "21",
"languageCode": "en"
},
"componentType": "street_number",
"confirmationLevel": "UNCONFIRMED_BUT_PLAUSIBLE"
},
{
"componentName": {
"text": "45 40th street",
"languageCode": "en"
},
"componentType": "route",
"confirmationLevel": "UNCONFIRMED_BUT_PLAUSIBLE"
},
{
"componentName": {
"text": "United States",
"languageCode": "en"
},
"componentType": "country",
"confirmationLevel": "CONFIRMED"
}
Address Validation API zwraca tylko kraj (Stany Zjednoczone) jako CONFIRMED.
Zwraca wszystkie inne komponenty adresu jako UNCONFIRMED_BUT_PLAUSIBLE, z pominięciem niektórych ważnych danych, takich jak miejscowość i kod pocztowy.
Brak numeru domu
W tym przykładzie brakuje numeru domu.
| Wpisany adres | Region |
|---|---|
| Buckingham Palace Road, SW1W 9TQ London | Wielka Brytania |
Werdykt dotyczący brakującego numeru ulicy
{
"inputGranularity": "PREMISE_PROXIMITY",
"validationGranularity": "ROUTE",
"geocodeGranularity": "ROUTE"
}
Wartość validationGranularity to ROUTE, co oznacza, że dopasowanie dotyczy ulicy, ale nie ma wystarczających informacji, aby dotrzeć do lokalu. Dodatkowo w werdykcie brakuje właściwości addressComplete, dlatego jest on false. Dalsze zapytanie dotyczące obiektu address ujawnia brakujący typ komponentu:
"missingComponentTypes": [
"street_number"
]
Przykłady przypadków skrajnych: poprawka
W niektórych sytuacjach to, czy poprawisz, potwierdzisz lub zaakceptujesz adres, zależy od konkretnego scenariusza biznesowego. Przykłady poniżej ilustrują sytuacje, które mogą nie pasować dokładnie do kategorii naprawy.
Niepotwierdzony numer domu
W tym scenariuszu interfejs Address Validation API nie może potwierdzić podanego numeru ulicy, ale wskazuje, że adres jest kompletny.
| Wpisany adres | Region |
|---|---|
| 84 Buckingham Palace Road, SW1W 9TQ, Londyn | Wielka Brytania |
Werdykt dotyczący niepotwierdzonego numeru domu
W przykładzie poniżej wyróżniono ważne sygnały.
{
"inputGranularity": "PREMISE",
"validationGranularity": "PREMISE_PROXIMITY",
"geocodeGranularity": "PREMISE_PROXIMITY",
"addressComplete" : true,
"hasUnconfirmedComponents": true
}
Warto sprawdzić połączenie szczegółowości weryfikacji tylko z przybliżeniem na poziomie lokalu i niepotwierdzonymi komponentami. Zapytanie dotyczące właściwości addressComponents pokazuje te niepotwierdzone componentType:
{
"componentName": {
"text": "84",
"languageCode": "en"
},
"componentType": "street_number",
"confirmationLevel": "UNCONFIRMED_BUT_PLAUSIBLE"
}
W tym przypadku confirmation_level street_number jest ustawiony na UNCONFIRMED_BUT_PLAUSIBLE. Unconfirmed (Niepotwierdzony) oznacza, że usługa nie może dopasować numeru ulicy 84 w swoim zbiorze danych, a plausible (prawdopodobny) oznacza, że dane komponentu mogą być nadal prawidłowe.
Brak numeru lokalu
W tym scenariuszu opisano adres, w którym brakuje tylko numeru lokalu, np. numeru mieszkania lub działu. W przeciwnym razie interfejs Address Validation API może w pełni zweryfikować adres. Podobnie jak w przypadku braku jakiegokolwiek komponentu adresu, addressComplete ma wartość false, więc nie jest widoczny podczas ręcznego sprawdzania werdyktu.
Załóżmy na przykład, że klient wpisuje prawidłowy adres urzędu miasta w San Francisco, ale nie podaje numeru pokoju.
| Wpisany adres | Region |
|---|---|
| 1 Doctor Carlton B Goodlett Place, San Francisco, CA 94102, USA | USA |
Werdykt dotyczący brakującego numeru lokalu
W tym przykładzie ocena nie zawiera właściwości addressComplete, więc jest to false. Oznacza to, że co najmniej 1 element adresu jest nieoczekiwany, nierozpoznany lub go brakuje.
{
"inputGranularity": "PREMISE",
"validationGranularity": "PREMISE",
"geocodeGranularity": "PREMISE",
"hasInferredComponents": true
}
Zapytanie address zwraca te informacje:
"missingComponentTypes": [
"subpremise"
]
Po dalszym sprawdzeniu dane USPS zawierają kod dpvConfirmation o wartości D, który również wskazuje na brak numeru lokalu.