Con l'API Region Lookup puoi trovare gli ID luogo per le regioni, che puoi utilizzare per applicare stili ai poligoni di confine negli stili basati sui dati per i confini. L'API Region Lookup supporta due tipi di richieste:
- La ricerca delle regioni consente di cercare una regione in base al nome del luogo, al codice FIPS (solo contee e stati degli Stati Uniti) o al codice paese ISO-3166-1.
- La ricerca per regione cerca la regione che contiene una località specifica, come specificato da un indirizzo, da
LatLng
o da un ID luogo.
Tipi di località delle regioni supportati
I seguenti tipi di località della regione sono supportati:
country
, administrative_area_level_1
, administrative_area_level_2
, postal_code
,
locality
.
Installa la libreria
Per utilizzare l'API Region Lookup:
- Abilita l'API Region Lookup nella console.
- Installa la libreria open source:
npm install @googlemaps/region-lookup
Importa le dipendenze dalla libreria
La libreria open source Region Lookup fornisce un insieme di funzioni e tipi TypeScript che devi importare nel codice.
Per le richieste di ricerca delle regioni, importa quanto segue:
import { lookupRegion, LookupRegionRequestData, LookupRegionResponseData, LookupRegionResponse, RegionIdentifier } from "@googlemaps/region-lookup";
Per le richieste di ricerca per regione, importa quanto segue:
import { searchRegion, RegionSearchValue, SearchRegionRequestData, SearchRegionResponse } from "@googlemaps/region-lookup";
Richieste di ricerca delle regioni
Una richiesta di ricerca della regione prende un nome di luogo o un codice identificatore e restituisce un ID luogo. Per cercare una regione, chiama lookupRegion()
specificando un
LookupRegionRequestData
con i seguenti parametri:
place
ounit_code
(obbligatorio) Il nome della regione (place
) ounit_code
del luogo.unit_code
può essere un codice FIPS (solo contee e stati degli Stati Uniti) o un codice paese ISO-3166-1.place_type
(obbligatorio) Il valore tipo di luogo per il tipo di luogo da cercare.region_code
Codice paese/regione ISO-3166 di due lettere della località da abbinare.region_code
è facoltativo se place_type èCOUNTRY
.language
Il codice lingua BCP-47, ad esempio "en-US" o "sr-Latn". Se non viene specificato alcun valore, il valore predefinito è en-US.
L'esempio seguente mostra una richiesta di ricerca per Newark, nel New Jersey.
// Headers const headers = { "X-Goog-Api-Key": "YOUR API KEY", }; const data: LookupRegionRequestData = { identifiers: [ { "place": "newark", "place_type": "locality", "region_code": "us", "language": "en", }, ], }; const response: LookupRegionResponse = await RegionLookup.lookupRegion({ headers, data });
È obbligatorio specificare il parametro place
o unit_code
. Se non viene specificato nessuno, viene restituito un errore.
Il parametro region_code
è obbligatorio, a meno che place_type
non sia COUNTRY
.
place
e unit_code
specificano una località da associare a un ID luogo. Ad esempio, se place
è "California" e place_type
è ADMINISTRATIVE_AREA_LEVEL_1
, l'API restituisce l'ID luogo per la California come matched_place_id
:
place_type
:ADMINISTRATIVE_AREA_LEVEL_1
matched_place_id
results: place ID for California. Tutti gli altri tipi supportati non restituiscono alcuna corrispondenza.
Se unit_code
è "6" (codice FIPS per la California), place_type
è ADMINISTRATIVE_AREA_LEVEL_1
e region_code
è "US", l'API restituisce l'ID luogo per la California:
place_type
:ADMINISTRATIVE_AREA_LEVEL_1
region_code
:US
matched_place_id
results: place ID per la California. Tutti gli altri tipi supportati non restituiscono alcuna corrispondenza.
Se unit_code
è "US", l'API restituisce i seguenti risultati quando vengono specificati i seguenti place_type
:
place_type
:COUNTRY
matched_place_id
results: ID posizione per gli Stati Uniti. Tutti gli altri tipi supportati non restituiscono alcuna corrispondenza.
Se non viene trovata alcuna corrispondenza, matched_place_id
non è impostato.
Gli ID luogo candidati vengono restituiti in caso di ambiguità. Ad esempio, se place
è "Contea di Santa Clara" e place_type
è LOCALITY
, l'ID luogo per la Contea di Santa Clara viene
restituito come candidato.
Risposta alla ricerca della regione
L'oggetto LookupRegionResponse
contiene un matched_place_id
se è stato trovato un risultato. Se non viene trovato alcun risultato, vengono restituiti ID luogo con un'affidabilità inferiore come ID candidati, insieme a un codice di errore contenente informazioni di debug.
{ "matches": [ { "matchedPlaceId": "ChIJPV4oX_65j4ARVW8IJ6IJUYs" } ] }
Richieste di ricerca per regione
Per trovare una regione che contiene una località specifica, chiama searchRegion
specificando un SearchRegionRequestData
con i seguenti parametri:
address
olatlng
oplace_id
(obbligatorio) Contiene una stringa di indirizzo non strutturata,latlng
o ID luogo contenuto dalla regione (ad es. PDI, edificio e così via). Se non viene specificato nessuno, viene restituito un errore.place_type
(obbligatorio) Il valore tipo di luogo per il tipo di regione da cercare.region_code
Codice paese/regione ISO-3166 di due lettere della località da abbinare.region_code
è obbligatorio quando viene specificatoaddress
.language
Il codice lingua BCP-47, ad esempio "en-US" o "sr-Latn". Se non viene specificato alcun valore, il valore predefinito è en-US.
L'esempio seguente mostra una richiesta di ricerca per Burbank, in California.
// Headers const headers = { "X-Goog-Api-Key": "YOUR API KEY", }; const data: SearchRegionRequestData = { search_values: [ { "address": "2627 N Hollywood Way, Burbank, CA" , "place_type": "locality" as const, "region_code": "us" }, ], }; const response = await regionLookupClient.searchRegion({ headers, data });
Risposta alla ricerca per regione
L'oggetto SearchRegionResponse
contiene un matched_place_id
se è stato trovato un risultato. In caso di mancata corrispondenza, la risposta contiene uno o più ID luogo candidati e un codice di errore.
{ "matches": [ { "matchedPlaceId": "ChIJPV4oX_65j4ARVW8IJ6IJUYs" } ] }
Riferimento
LookupRegionRequestData
identificatori
Campo | Tipo | Descrizione |
---|---|---|
place |
stringa | Il nome della regione da associare a un ID luogo. Utilizza il
campo place in combinazione con place_type
per cercare l'ID luogo della regione. Ad esempio, se place_type è
"località", un valore place valido può essere "Palo Alto, CA". Se
place_type è "POSTAL_CODE", un nome_luogo valido può essere "94109". Se place_type è "COUNTRY", un valore place valido può essere "United States" e così via. region_code è obbligatorio quando viene specificato place , a meno che place_type non sia "COUNTRY". |
unit_code |
stringa | I codici stato o contea (solo Stati Uniti) o il codice paese ISO-3166-1
da associare. Il campo unit_code viene utilizzato in combinazione con
place_type per cercare l'ID luogo della regione. Ad esempio: se
place_type è COUNTRY , un valore valido per unit_code può essere
"US" (codice ISO-3166-1 Alpha-2 per gli Stati Uniti) o "BR" (codice ISO-3166-1
Alpha-2 per il Brasile). Se place_type è
ADMINISTRATIVE_AREA_LEVEL_1 (stato) e region_code è "US", un
valore valido per unit_code può essere "6" (codice FIPS per la California) o "12"(codice FIPS per la Florida). Se place_type è ADMINISTRATIVE_AREA_LEVEL_2
(contea) e region_code è "US", un codice unit_code valido può essere "6001" (codice FIPS
per la contea di Alameda in California) o "12086" (codice FIPS per la contea di Miami-Dade
in Florida). region_code è obbligatorio quando viene specificato un
codice FIP. region_code viene ignorato per i codici paese ISO-3166-1. |
place_type |
PlaceType | Obbligatorio. Il tipo di regione da associare. |
region_code |
stringa | Codice paese/regione ISO-3166 di due lettere per la località che stai cercando di trovare una corrispondenza. region_code è facoltativo se place_type è "COUNTRY". |
language_code |
stringa | Il codice lingua BCP-47, ad esempio "it-IT" o "sr-Latn", corrispondente alla lingua in cui sono richiesti il nome e l'indirizzo del luogo. Se non viene richiesto nessuno, per impostazione predefinita viene utilizzato l'inglese. |
SearchRegionRequestData
identificatori
OBBLIGATORIO: uno tra address
, latlng
o place_id
.
Campo | Tipo | Descrizione |
---|---|---|
address |
stringa | Un indirizzo stradale non strutturato contenuto in una regione da abbinare. region_code è obbligatorio quando viene specificato address . |
latlng |
LatLng | La latitudine e la longitudine contenute in una regione da associare. |
place_id |
stringa | Un ID luogo contenuto all'interno di una regione da associare. |
place_type |
place type | Obbligatorio. Il tipo di regione da associare. |
language_code |
stringa | Il codice lingua BCP-47, come ad esempio "en-US" o "sr-Latn", corrispondente alla lingua in cui sono richiesti il nome e l'indirizzo del luogo. Se non ne viene richiesta nessuna, viene utilizzato per impostazione predefinita l'inglese. |
region_code |
stringa | Codice paese/regione ISO-3166 di due lettere per la località da associare.
region_code è obbligatorio quando viene specificato l'indirizzo. |
Tipi di luoghi
Valore | Descrizione |
---|---|
POSTAL_CODE |
Un codice postale, utilizzato per la spedizione della posta tradizionale all'interno del paese. |
ADMINISTRATIVE_AREA_LEVEL_1 |
Una persona giuridica civile di primo ordine al di sotto del livello del paese. Negli Stati Uniti, questi livelli amministrativi sono gli stati. |
ADMINISTRATIVE_AREA_LEVEL_2 |
Un'entità civile di secondo ordine al di sotto del livello del paese. Negli Stati Uniti, questi livelli amministrativi sono le contee. |
LOCALITY |
Un'entità politica costituita come città o paese. |
COUNTRY |
L'entità politica nazionale, in genere il tipo di ordine più elevato. |
LatLng
Un oggetto che rappresenta una coppia di latitudine/longitudine. Questo valore è espresso come una coppia di numeri doppi per rappresentare i gradi di latitudine e i gradi di longitudine. Se non diversamente specificato, questo oggetto deve essere conforme allo standard WGS84. I valori devono rientrare in intervalli normalizzati.
Campo | Tipo | Descrizione |
---|---|---|
latitude |
double | La latitudine in gradi. Deve essere compreso nell'intervallo [-90.0, +90.0] .
Ad esempio 47.47583476464538 . |
longitude |
double | La longitudine in gradi. Deve essere compreso nell'intervallo [-180.0, +180.0] .
Ad esempio -121.73858779269906 . |
Codici di errore
Valore | Descrizione |
---|---|
UnknownError |
Si è verificato un errore sconosciuto. |
NoMatchFound |
La richiesta non ha generato alcuna corrispondenza. Controlla candidate_place_ids
se disponibile. |
AddressNotUnderstood |
La geocodifica non è riuscita per l'indirizzo fornito. |
PlaceTypeMismatch |
Il tipo di luogo nella risposta non corrisponde a quello della richiesta.
Ad esempio, è stata richiesta locality , ma è stato restituito administrative_area_level_2 . |
MultipleCandidatesFound |
Sono stati trovati più candidati corrispondenti all'input. Controlla candidate_place_ids .
se disponibile. |
PlaceNameNotUnderstood |
Non è stato possibile risolvere il nome del luogo fornito in una regione. |
UnitCodeNotFound |
Il codice unità non è stato trovato. Verifica che il codice dell'unità sia valido e fornito nel formato corretto. |
PlaceTypeNotAllowed |
L'ID luogo corrispondente non è presente nella lista consentita di tipo di luogo e paese. |