- Richiesta HTTP
- Corpo della richiesta
- Corpo della risposta
- Indirizzo postale
- ConvalidaRisultato
- Esito
- Granularità
- Indirizzo
- Indirizzo componente
- Nome componente
- Livello di conferma
- Codice geografico
- LatLng
- PlusCode
- Viewport
- Indirizzi Metadati
- UspsData
- Indirizzo email
Convalida un indirizzo.
Richiesta HTTP
POST https://addressvalidation.googleapis.com/v1:validateAddress
L'URL utilizza la sintassi di transcodifica gRPC.
Corpo della richiesta
Il corpo della richiesta contiene dati con la seguente struttura:
Rappresentazione JSON |
---|
{
"address": {
object ( |
Campi | |
---|---|
address |
Obbligatorio. L'indirizzo in fase di convalida. Gli indirizzi non formattati devono essere inviati tramite La lunghezza totale dei campi in questo input non deve superare 280 caratteri. Le aree geografiche supportate sono disponibili qui. Il valore L'API Address Validation ignora i valori in |
previousResponseId |
Questo campo deve essere vuoto per la prima richiesta di convalida dell'indirizzo. Se sono necessarie più richieste per convalidare completamente un singolo indirizzo (ad esempio, se le modifiche apportate dall'utente dopo la convalida iniziale devono essere riconvalidate), ogni richiesta di follow-up deve completare questo campo con |
enableUspsCass |
Abilita la modalità compatibile con USPS CASS. Questo riguarda solo il campo Consigliamo di utilizzare una proprietà |
Corpo della risposta
In caso di esito positivo, il corpo della risposta contiene dati con la seguente struttura:
La risposta a una richiesta di convalida dell'indirizzo.
Rappresentazione JSON |
---|
{
"result": {
object ( |
Campi | |
---|---|
result |
Il risultato della convalida dell'indirizzo. |
responseId |
L'UUID che identifica questa risposta. Se l'indirizzo deve essere riconvalidato, questo UUID deve accompagnare la nuova richiesta. |
PostalAddress
Rappresenta un indirizzo postale, ad esempio per indirizzi di consegna o pagamenti. Poiché l'indirizzo postale è un indirizzo, un servizio postale può consegnare gli articoli a un punto vendita, a una casella postale o simili. Non è destinato a modellare località geografiche (strade, città, montagne).
Durante l'utilizzo tipico si crea un indirizzo tramite l'input utente o dall'importazione dei dati esistenti, a seconda del tipo di processo.
Consigli sull'inserimento / della modifica dell'indirizzo: - usa un widget per indirizzi pronto per l'internazionalizzazione come https://github.com/google/libaddressinput. Agli utenti non dovrebbero essere mostrati elementi dell'interfaccia utente per l'input o la modifica di campi al di fuori dei paesi in cui viene utilizzato quel campo.
Per ulteriori indicazioni su come utilizzare questo schema, consulta la pagina https://support.google.com/business/answer/6397478
Rappresentazione JSON |
---|
{ "revision": integer, "regionCode": string, "languageCode": string, "postalCode": string, "sortingCode": string, "administrativeArea": string, "locality": string, "sublocality": string, "addressLines": [ string ], "recipients": [ string ], "organization": string } |
Campi | |
---|---|
revision |
La revisione dello schema di |
regionCode |
Campo facoltativo. Il codice regione CLDR del paese/della regione dell'indirizzo. Per informazioni dettagliate, visita le pagine https://cldr.unicode.org/ e https://www.unicode.org/cldr/Charts/30/supplemental/Territory_information.html. Esempio: "CH" per la Svizzera. Se il codice regione non viene fornito, verrà dedotto dall'indirizzo. Per prestazioni ottimali, ti consigliamo di includere il codice regione se lo conosci. Una regione incoerente o ripetuta può comportare un rendimento scarso, ad esempio se |
languageCode |
Il codice della lingua nell'indirizzo di input è riservato agli utilizzi futuri e viene ignorato oggi. L'API restituisce l'indirizzo nella lingua appropriata in cui si trova. |
postalCode |
Campo facoltativo. Codice postale dell'indirizzo. Non tutti i paesi utilizzano o richiedono la presenza di codici postali, ma laddove vengono utilizzati, possono attivare una convalida aggiuntiva con altre parti dell'indirizzo (ad es. convalida stato/zip negli Stati Uniti). |
sortingCode |
Campo facoltativo. Codice di ordinamento aggiuntivo, specifico per il paese. Non è utilizzato nella maggior parte delle aree geografiche. Dove viene utilizzato, il valore è una stringa come "CEDEX", seguita facoltativamente da un numero (ad es. "CEDEX 7") o solo un numero, che rappresenta il "codice del settore" (Giamaica), "indicatore dell'area di consegna" (Malawi) o "indicatore dell'ufficio postale" (ad es. Costa d'Avorio). |
administrativeArea |
Campo facoltativo. Suddivisione amministrativa di grado più alto usata per l'indirizzo postale di un paese o di un'area geografica. Ad esempio uno stato, una provincia, un oblast o una prefettura. Nello specifico, per la Spagna si tratta della provincia e non della comunità autonoma (ad es. "Barcellona" e non "Catalonia"). Molti paesi non utilizzano un'area amministrativa negli indirizzi postali. Ad es. in Svizzera dovrebbe essere lasciato vuoto. |
locality |
Campo facoltativo. Solitamente si riferisce alla porzione di città dell'indirizzo. Esempi: "city" per gli Stati Uniti, "comune" in Italia, "post city" nel Regno Unito. Nelle regioni del mondo in cui le località non sono ben definite o non si adattano bene a questa struttura, lascia vuota la località e utilizza l'indirizzo addressLines. |
sublocality |
Campo facoltativo. Quartiere dell'indirizzo. Ad esempio, possono essere quartieri, distretti, distretti. |
addressLines[] |
Obbligatorio. Righe di indirizzi non strutturati che descrivono i livelli inferiori di un indirizzo. |
recipients[] |
Evita di impostare questo campo. Al momento, non è utilizzata dall'API Address Validation. Sebbene al momento l'API non rifiuti le richieste con questo set di campi, le informazioni vengono eliminate e non vengono restituite nella risposta. |
organization |
Evita di impostare questo campo. Al momento, non è utilizzata dall'API Address Validation. Sebbene al momento l'API non rifiuti le richieste con questo set di campi, le informazioni vengono eliminate e non vengono restituite nella risposta. |
ValidationResult
Il risultato della convalida di un indirizzo.
Rappresentazione JSON |
---|
{ "verdict": { object ( |
Campi | |
---|---|
verdict |
Contrassegni degli esiti complessivi |
address |
Informazioni sull'indirizzo stesso anziché sul codice geografico. |
geocode |
Informazioni sulla località e sul luogo in cui è stato geocodificato l'indirizzo. |
metadata |
Altre informazioni pertinenti per la consegna. Non è garantita la compilazione completa di |
uspsData |
Flag di consegna extra forniti da USPS. Disponibile solo nelle regioni |
Esito
Panoramica di alto livello del risultato della convalida dell'indirizzo e della geocodifica.
Rappresentazione JSON |
---|
{ "inputGranularity": enum ( |
Campi | |
---|---|
inputGranularity |
La granularità dell'indirizzo di input. Questo è il risultato dell'analisi dell'indirizzo di input e non fornisce indicatori di convalida. Per gli indicatori di convalida, consulta la sezione Ad esempio, se l'indirizzo di input include un numero di appartamento specifico, |
validationGranularity |
Il livello di granularità in cui l'API può convalidare completamente l'indirizzo. Ad esempio, un Il risultato della convalida del componente per indirizzo è disponibile in |
geocodeGranularity |
Informazioni sulla granularità dell'elemento Occasionalmente potrebbe essere diverso dalla |
addressComplete |
L'indirizzo è considerato completo se non sono presenti token irrisolti, componenti di indirizzi imprevisti o mancanti. Per ulteriori dettagli, consulta i campi |
hasUnconfirmedComponents |
Almeno un componente dell'indirizzo non può essere classificato o convalidato; consulta |
hasInferredComponents |
Almeno un componente dell'indirizzo è stato dedotto (aggiunto) ma non era nell'input. Per i dettagli, consulta |
hasReplacedComponents |
Almeno un componente dell'indirizzo è stato sostituito. Per i dettagli, consulta la pagina |
Granularità
I vari livelli di granularità che possono avere un indirizzo o un codice geografico. Se utilizzati per indicare la granularità di un indirizzo, questi valori indicano la granularità con cui l'indirizzo identifica una destinazione postale. Ad esempio, un indirizzo come "Via Roma 22, 90165" identifica un PREMISE
, mentre qualcosa come "Roma, 04044" identifica un LOCALITY
. Tuttavia, se non riusciamo a trovare un codice geografico per "Via Garibaldi 123" a Redwood City, il codice geografico restituito potrebbe avere una granularità pari a LOCALITY
anche se l'indirizzo è più granulare.
Enum | |
---|---|
GRANULARITY_UNSPECIFIED |
Valore predefinito. Questo valore non è utilizzato. |
SUB_PREMISE |
Risultato di un livello inferiore a un edificio, ad esempio un appartamento. |
PREMISE |
Risultato a livello di edificio. |
PREMISE_PROXIMITY |
Un codice geografico che approssima la posizione dell'indirizzo a livello di edificio. |
BLOCK |
L'indirizzo o la geocodifica indica un blocco. Utilizzato solo nelle regioni con indirizzi a livello di blocco, come il Giappone. |
ROUTE |
Il codice geografico o l'indirizzo sono granulari per includere il percorso, ad esempio una strada, una strada o un'autostrada. |
OTHER |
Tutte le altre granularità, suddivise in bucket in quanto non disponibili per la pubblicazione. |
Indirizzo
Dettagli dell'indirizzo post-elaborazione. La post-elaborazione include la correzione di parti errate dell'indirizzo, la sostituzione di parti errate e l'inferenza di parti mancanti.
Rappresentazione JSON |
---|
{ "formattedAddress": string, "postalAddress": { object ( |
Campi | |
---|---|
formattedAddress |
L'indirizzo post-elaborato, formattato come indirizzo a riga singola che segue le regole di formattazione degli indirizzi della regione in cui si trova l'indirizzo. |
postalAddress |
L'indirizzo post-elaborato rappresentato come indirizzo postale. |
addressComponents[] |
Elenco non ordinato. I singoli componenti dell'indirizzo dell'indirizzo formattato e corretto, insieme alle informazioni di convalida. Fornisce informazioni sullo stato di convalida dei singoli componenti. I componenti dell'indirizzo non vengono ordinati in un determinato modo. Non fare ipotesi sull'ordine dei componenti dell'indirizzo nell'elenco. |
missingComponentTypes[] |
I tipi di componenti che avrebbero dovuto essere presenti in un indirizzo postale formattato correttamente, ma che non sono stati trovati nell'input E non possono essere dedotti. I componenti di questo tipo non sono presenti in |
unconfirmedComponentTypes[] |
I tipi di componenti presenti in |
unresolvedTokens[] |
Eventuali token nell'input che non è stato possibile risolvere. Potrebbe trattarsi di un input non riconosciuto come parte valida di un indirizzo (ad esempio, in un input come "123235253253 Main St, San Francisco, CA, 94105"), i token non risolti potrebbero avere l'aspetto |
ComponenteIndirizzo
Rappresenta un componente dell'indirizzo, ad esempio una via, una città o una provincia.
Rappresentazione JSON |
---|
{ "componentName": { object ( |
Campi | |
---|---|
componentName |
Il nome di questo componente. |
componentType |
Il tipo di componente dell'indirizzo. Consulta la Tabella 2: tipi aggiuntivi restituiti dal servizio Places per un elenco dei possibili tipi. |
confirmationLevel |
Indica il grado di certezza che il componente è corretto. |
inferred |
Indica che il componente non faceva parte dell'input, ma l'abbiamo dedotto per la posizione dell'indirizzo e riteniamo che debba essere fornito per un indirizzo completo. |
spellCorrected |
Indica che l'ortografia del nome del componente è stata corretta in modo minore, ad esempio cambiando due caratteri visualizzati nell'ordine sbagliato. Questo indica un cambiamento estetico. |
replaced |
Indica che il nome del componente è stato sostituito con uno completamente diverso, ad esempio un codice postale errato è stato sostituito con uno corretto per l'indirizzo. Non si tratta di una modifica estetica; il componente di input è stato cambiato. |
unexpected |
Indica un componente dell'indirizzo che non è previsto essere presente in un indirizzo postale per la regione specificata. L'abbiamo conservato solo perché faceva parte dell'input. |
Nome componente
Un wrapper per il nome del componente.
Rappresentazione JSON |
---|
{ "text": string, "languageCode": string } |
Campi | |
---|---|
text |
Il testo del nome. Ad esempio, "5th Avenue" per un nome di strada o "1253" per un numero di strada. |
languageCode |
Il codice lingua BCP-47. Non sarà presente se il nome del componente non è associato a una lingua, ad esempio una via. |
Livello di conferma
I diversi valori possibili per i livelli di conferma.
Enum | |
---|---|
CONFIRMATION_LEVEL_UNSPECIFIED |
Valore predefinito. Questo valore non è utilizzato. |
CONFIRMED |
Siamo riusciti a verificare l'esistenza di questo componente e a dare un senso al contesto del resto dell'indirizzo. |
UNCONFIRMED_BUT_PLAUSIBLE |
Impossibile confermare questo componente, ma è plausibile che esista. Ad esempio, un numero civico all'interno di un intervallo noto di numeri validi per una strada in cui non sono noti numeri di casa specifici. |
UNCONFIRMED_AND_SUSPICIOUS |
Questo componente non è stato confermato e potrebbe essere sbagliato. Ad esempio, un quartiere che non rientra nel resto dell'indirizzo. |
Codice geografico
Contiene informazioni sul luogo in cui è stato geocodificato l'input.
Rappresentazione JSON |
---|
{ "location": { object ( |
Campi | |
---|---|
location |
La posizione geocodificata dell'input. È preferibile utilizzare gli ID luogo rispetto agli indirizzi, alle coordinate di latitudine/longitudine o ai plus code. L'utilizzo delle coordinate durante il calcolo del percorso o l'indicazione delle indicazioni stradali comporterà sempre l'allineamento del punto alla strada più vicina a quelle coordinate. Potrebbe non essere una strada che conduce in modo rapido o sicuro alla destinazione e potrebbe non essere vicino a un punto di accesso alla proprietà. Inoltre, se una località è geocodificata in modo inverso, non è garantito che l'indirizzo restituito corrisponda all'originale. |
plusCode |
Il Plus Code corrispondente a |
bounds |
I confini del luogo geocodificato. |
featureSizeMeters |
Le dimensioni del luogo geocodificato, in metri. Questa è un'altra misura della grossolana della posizione geocodificata, ma in termini di dimensioni fisiche anziché di significato semantico. |
placeId |
Il PlaceID del luogo in cui viene inserito il codice geografico. Per ulteriori informazioni sugli ID luogo, fai clic qui. |
placeTypes[] |
Il tipo o i tipi di luogo in cui è stato geocodificato l'input. Ad esempio, |
LatLng
Un oggetto che rappresenta una coppia latitudine/longitudine. Questo valore è dato da una coppia di doppi per rappresentare i gradi di latitudine e longitudine. Se non diversamente specificato, questo oggetto deve essere conforme allo standard WGS84. I valori devono essere compresi negli intervalli normalizzati.
Rappresentazione JSON |
---|
{ "latitude": number, "longitude": number } |
Campi | |
---|---|
latitude |
La latitudine in gradi. Il valore deve essere compreso tra -90,0, +90,0]. |
longitude |
La longitudine in gradi. Il valore deve essere compreso tra -180,0 e +180,0. |
PlusCode
Il Plus Code (http://plus.codes) è un riferimento di località con due formati: un codice globale che definisce un rettangolo di 14 x 14 m (1/8000 di grado) o più piccolo e un codice composto che sostituisce il prefisso con un percorso di riferimento.
Rappresentazione JSON |
---|
{ "globalCode": string, "compoundCode": string } |
Campi | |
---|---|
globalCode |
Il codice globale (completo) del luogo, ad esempio "9FWM33GV+HQ ", che rappresenta un'area di 1/8000 di 1/8000 di grado (~14 di 14 di 14 metri). |
compoundCode |
Il codice composto del luogo, ad esempio "33GV+HQ, Ramberg, Norvegia ", contenente il suffisso del codice globale e sostituendo il prefisso con un nome formattato di un'entità di riferimento. |
Area visibile
Un'area visibile di latitudine e longitudine rappresentata da due diagonali di fronte a low
e high
punti. Un'area visibile è considerata una regione chiusa, ovvero include il suo confine. I limiti di latitudine devono essere compresi tra -90 e 90 gradi inclusi e i limiti di longitudine devono essere compresi tra -180 e 180 gradi inclusi. Vari casi includono:
Se
low
=high
, l'area visibile è composta dal singolo punto.Se
low.longitude
>high.longitude
, l'intervallo di longitudine è invertito (l'area visibile attraversa la linea di longitudine a 180°).Se
low.longitude
= -180 gradi ehigh.longitude
= 180 gradi, l'area visibile include tutte le longitudini.Se
low.longitude
= 180 gradi ehigh.longitude
= -180 gradi, l'intervallo di longitudine è vuoto.Se
low.latitude
>high.latitude
, l'intervallo di latitudine è vuoto.
È necessario compilare sia low
sia high
e la casella rappresentata non può essere vuota (come specificato dalle definizioni riportate sopra). Se viene visualizzata un'area visibile vuota, verrà restituito un errore.
Ad esempio, questa area visibile comprende interamente New York:
{ "low": { "longitudine": 40.477398, "longitudine": -74.259087 }, "alto": { "longitudine": 40.91618, "longitudine": -73.70018 } }
Rappresentazione JSON |
---|
{ "low": { object ( |
Campi | |
---|---|
low |
Obbligatorio. Il punto basso dell'area visibile. |
high |
Obbligatorio. Il punto più alto dell'area visibile. |
MetadatiIndirizzo
I metadati dell'indirizzo. Non è garantita la compilazione completa di metadata
per ogni indirizzo inviato all'API Address Validation.
Rappresentazione JSON |
---|
{ "business": boolean, "poBox": boolean, "residential": boolean } |
Campi | |
---|---|
business |
Indica che questo è l'indirizzo di un'attività. Se non impostato, indica che il valore è sconosciuto. |
poBox |
Indica che l'indirizzo di una casella postale. Se non impostato, indica che il valore è sconosciuto. |
residential |
Indica che si tratta dell'indirizzo di una residenza. Se non impostato, indica che il valore è sconosciuto. |
Dati Usps
I dati USPS per l'indirizzo. Non è garantita la compilazione completa di uspsData
per ogni indirizzo statunitense o PR inviato all'API Address Validation. Ti consigliamo di integrare i campi dell'indirizzo di backup nella risposta se utilizzi uspsData come parte principale della risposta.
Rappresentazione JSON |
---|
{
"standardizedAddress": {
object ( |
Campi | |
---|---|
standardizedAddress |
Indirizzo standardizzato USPS. |
deliveryPointCode |
Codice del punto di consegna di 2 cifre |
deliveryPointCheckDigit |
La cifra di controllo del punto di consegna. Questo numero viene aggiunto alla fine del codice a barre_delivery_point per la posta scansionata meccanicamente. Sommando tutte le cifre di delivery_point_barcode, deliveryPointCheckDigit, codice postale e codice ZIP+4, dovrebbe risultare un numero divisibile per 10. |
dpvConfirmation |
I valori possibili per la conferma DPV. Restituisce un singolo carattere.
|
dpvFootnote |
Le note a piè di pagina della convalida del punto di consegna. Più note a piè di pagina potrebbero essere unite nella stessa stringa.
|
dpvCmra |
Indica se l'indirizzo è una CMRA (Commercial Mail Ricezione Agency)--un'azienda privata che riceve la posta per i clienti. Restituisce un singolo carattere.
|
dpvVacant |
Questo posto è vuoto? Restituisce un singolo carattere.
|
dpvNoStat |
Non è un indirizzo statistico o è un indirizzo attivo? Nessun indirizzo statistica è un indirizzo che non occupa regolarmente o indirizzi che non sono serviti dall'USPS. Restituisce un singolo carattere.
|
carrierRoute |
Il codice di percorso dell'operatore. Un codice di quattro caratteri composto da un prefisso di una lettera e da un indicatore di percorso a tre cifre. Prefissi:
|
carrierRouteIndicator |
Indicatore di ordinamento delle tariffe per le route di corriere. |
ewsNoMatch |
L'indirizzo di consegna può essere abbinato, ma il file EWS indica che a breve sarà disponibile una corrispondenza esatta. |
postOfficeCity |
Città dell'ufficio postale principale. |
postOfficeState |
Stato dell'ufficio postale principale. |
abbreviatedCity |
Città abbreviata. |
fipsCountyCode |
Codice paese FIPS. |
county |
Nome contea. |
elotNumber |
Numero della linea di viaggio avanzata (eLOT). |
elotFlag |
eLOT Bandiera Ascendente o Decrescente (A/D). |
lacsLinkReturnCode |
Codice di reso LACSLink. |
lacsLinkIndicator |
Indicatore LACSLink. |
poBoxOnlyPostalCode |
Codice postale della casella postale: |
suitelinkFootnote |
Note a piè di pagina corrispondenti a una strada o a un grattacielo. Se viene trovata una corrispondenza del nome dell'attività, viene restituito il numero secondario.
|
pmbDesignator |
Indicatore PMB (casella di posta privata). |
pmbNumber |
numero PMB (casella di posta privata); |
addressRecordType |
Tipo del record dell'indirizzo che corrisponde all'indirizzo di input.
|
defaultAddress |
Indicatore che indica che è stato trovato un indirizzo predefinito, ma esistono indirizzi più specifici. |
errorMessage |
Messaggio di errore per il recupero dei dati USPS. Questo campo viene completato quando l'elaborazione USPS viene sospesa a causa del rilevamento di indirizzi creati artificialmente. I campi di dati USPS potrebbero non essere completati quando è presente questo errore. |
cassProcessed |
Indicatore che la richiesta è stata elaborata in modalità CASS. |
Indirizzo Usps
Rappresentazione USPS di un indirizzo statunitense.
Rappresentazione JSON |
---|
{ "firstAddressLine": string, "firm": string, "secondAddressLine": string, "urbanization": string, "cityStateZipAddressLine": string, "city": string, "state": string, "zipCode": string, "zipCodeExtension": string } |
Campi | |
---|---|
firstAddressLine |
Prima riga indirizzo. |
firm |
Nome azienda. |
secondAddressLine |
Seconda riga indirizzo. |
urbanization |
Nome dell'urbanizzazione di Portorico. |
cityStateZipAddressLine |
Città + stato + codice postale. |
city |
Nome della città. |
state |
Codice di stato a 2 lettere. |
zipCode |
Codice postale (ad es. 10009). |
zipCodeExtension |
Estensione del codice postale di 4 cifre, ad esempio 5023. |