Otomatik Tamamlama (Yeni) hizmeti, bir HTTP isteğine yanıt olarak yer tahminleri ve sorgu tahminleri döndüren bir web hizmetidir. İstekte, arama alanını kontrol eden bir metin arama dizesi ve coğrafi sınırlar belirtin.
Otomatik Tamamlama (Yeni) hizmeti, yer adlarını, adresleri ve plus kodlarını çözerek girişin tam kelimelerini ve alt dizelerini eşleştirebilir. Bu nedenle uygulamalar, anında yer ve sorgu tahminleri sağlamak için kullanıcı yazarken sorgular gönderebilir.
Autocomplete (Yeni) API'den gelen yanıt iki tür tahmin içerebilir:
- Yer tahminleri: Belirtilen giriş metin dizesine ve arama alanına göre işletmeler, adresler ve önemli yerler gibi yerler. Yer tahminleri varsayılan olarak döndürülür.
- Sorgu tahminleri: Giriş metin dizesi ve arama alanıyla eşleşen sorgu dizeleri. Sorgu tahminleri varsayılan olarak döndürülmez. Yanıta sorgu tahminleri eklemek için
includeQueryPredictions
istek parametresini kullanın.
Örneğin, giriş olarak kısmi bir kullanıcı girişi içeren bir dize (ör. "Sicilya piz") kullanarak API'yi çağırırsınız. Arama alanı, San Francisco, CA ile sınırlıdır. Ardından yanıtta, arama dizesi ve arama alanıyla eşleşen yer tahminlerinin listesi (ör. "Sicilian Pizza Kitchen" adlı restoran) ve yerle ilgili ayrıntılar yer alır.
Döndürülen yer tahminleri, kullanıcıya istenen yeri seçmesine yardımcı olmak amacıyla sunulacak şekilde tasarlanmıştır. Döndürülen yer tahminlerinden herhangi biri hakkında daha fazla bilgi edinmek için Yer Ayrıntıları (Yeni) isteği gönderebilirsiniz.
Yanıt, arama dizesi ve arama alanıyla eşleşen sorgu tahminlerinin (ör. "Sicilian Pizza & Pasta") bir listesini de içerebilir. Yanıttaki her sorgu tahmini, önerilen bir metin arama dizesi içeren text
alanını içerir. Daha ayrıntılı bir arama yapmak için bu dizeyi Metin Arama (Yeni)'de giriş olarak kullanın.
API Gezgini, API ve API seçenekleri hakkında bilgi sahibi olmak için canlı istekler yapmanıza olanak tanır:
Deneyin.Otomatik Tamamlama (Yeni) istekleri
Otomatik Tamamlama (Yeni) isteği, aşağıdaki biçimdeki bir URL'ye gönderilen bir HTTP POST isteğidir:
https://places.googleapis.com/v1/places:autocomplete
Tüm parametreleri JSON istek gövdesinde veya POST isteğinin bir parçası olarak üstbilgilerde iletin. Örneğin:
curl -X POST -d '{ "input": "pizza", "locationBias": { "circle": { "center": { "latitude": 37.7937, "longitude": -122.3965 }, "radius": 500.0 } } }' \ -H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \ https://places.googleapis.com/v1/places:autocomplete
Yanıt hakkında
Otomatik Tamamlama (Yeni), yanıt olarak bir JSON nesnesi döndürür. Yanıtta:
suggestions
dizisi, tahmin edilen tüm yerleri ve sorguları algılanan alaka düzeylerine göre sırayla içerir. Her yerplacePrediction
alanıyla ve her sorguqueryPrediction
alanıyla temsil edilir.placePrediction
alanında yer kimliği ve metin açıklaması da dahil olmak üzere tek bir yer tahmini hakkında ayrıntılı bilgiler yer alır.queryPrediction
alanı, tek bir sorgu tahminiyle ilgili ayrıntılı bilgileri içerir.
JSON nesnesinin tamamı şu şekildedir:
{ "suggestions": [ { "placePrediction": { "place": "places/ChIJ5YQQf1GHhYARPKG7WLIaOko", "placeId": "ChIJ5YQQf1GHhYARPKG7WLIaOko", "text": { "text": "Amoeba Music, Haight Street, San Francisco, CA, USA", "matches": [ { "endOffset": 6 }] }, ... }, { "queryPrediction": { "text": { "text": "Amoeba Music", "matches": [ { "endOffset": 6 }] }, ... } ...] }
Gerekli parametreler
-
giriş
Arama yapılacak metin dizesi. Tam kelimeleri ve alt dizeleri, yer adlarını, adresleri ve artı kodlarını belirtin. Otomatik Tamamlama (Yeni) hizmeti, bu dizeye göre olası eşleşmeleri döndürür ve sonuçları algılanan alaka düzeylerine göre sıralar.
İsteğe bağlı parametreler
-
FieldMask
Yanıt alanı maskesi oluşturarak yanıtta döndürülecek alanların listesini belirtin. HTTP üst bilgisi
X-Goog-FieldMask
'ü kullanarak yanıt alanı maskesini yönteme iletin.Döndürülecek öneri alanlarının virgülle ayrılmış listesini belirtin. Örneğin, önerinin
suggestions.placePrediction.place
vesuggestions.placePrediction.text
değerlerini almak için.X-Goog-FieldMask: places.displayName,places.formattedAddress
Tüm alanları almak için
*
değerini kullanın.X-Goog-FieldMask: *
-
includedPrimaryTypes
Bir yerin Tablo A veya Tablo B'de listelenen türlerden yalnızca tek bir birincil türü olabilir. Örneğin, birincil tür
"mexican_restaurant"
veya"steak_house"
olabilir.API varsayılan olarak, yerle ilişkili birincil tür değerinden bağımsız olarak tüm yerleri
input
parametresine göre döndürür.includedPrimaryTypes
parametresini ileterek sonuçları belirli bir birincil tür veya birincil türlerle sınırlandırın.Tablo A veya Tablo B'den en fazla beş tür değeri belirtmek için bu parametreyi kullanın. Bir yer, yanıta dahil edilmek için belirtilen birincil tür değerlerinden biriyle eşleşmelidir.
Bu parametre, bunun yerine
(regions)
veya(cities)
özelliklerinden birini de içerebilir.(regions)
türü koleksiyonu, mahalle ve posta kodu gibi alanlara veya bölümlere göre filtreler uygular.(cities)
türü koleksiyon filtreleri, Google'ın şehir olarak tanımladığı yerleri filtreler.Aşağıdaki durumlarda istek
INVALID_REQUEST
hatasıyla reddedilir:- Beşten fazla tür belirtilmiş.
(cities)
veya(regions)
'a ek olarak herhangi bir tür belirtilir.- Tanınmayan türler belirtilir.
-
includePureServiceAreaBusinesses
true
olarak ayarlanırsa yanıt, müşterileri doğrudan ziyaret eden veya onlara teslimat yapan ancak fiziksel bir işletme konumu olmayan işletmeleri içerir.false
olarak ayarlanırsa API yalnızca fiziksel bir işletme yeri olan işletmeleri döndürür. -
includeQueryPredictions
true
ise yanıt, hem yer hem de sorgu tahminlerini içerir. Varsayılan değerfalse
'tür. Bu, yanıtın yalnızca yer tahminlerini içerdiği anlamına gelir. -
includedRegionCodes
Yalnızca, en fazla 15 ccTLD ("üst düzey alan") iki karakterlik değerden oluşan bir dizi olarak belirtilen, belirtilen bölgeler listesinden sonuçları dahil edin. Atlanırsa yanıta herhangi bir kısıtlama uygulanmaz. Örneğin, bölgeleri Almanya ve Fransa ile sınırlamak için:
"includedRegionCodes": ["de", "fr"]
Hem
locationRestriction
hem deincludedRegionCodes
'ü belirtirseniz sonuçlar, iki ayarın kesişim alanında bulunur. -
inputOffset
input
içindeki imleç konumunu belirten sıfır tabanlı Unicode karakter ofseti. İmlecin konumu, döndürülen tahminleri etkileyebilir. Boşsa varsayılan olarakinput
uzunluğuna ayarlanır. -
languageCode
Sonuçların döndürüleceği tercih edilen dil.
input
'te kullanılan dillanguageCode
tarafından belirtilen değerden farklıysa veya döndürülen yerin yerel dildenlanguageCode
'e çevirisi yoksa sonuçlar karma dillerde olabilir.- Tercih edilen dili belirtmek için IETF BCP-47 dil kodlarını kullanmanız gerekir.
-
languageCode
sağlanmazsa API,Accept-Language
başlığında belirtilen değeri kullanır. Hiçbiri belirtilmezse varsayılan olaraken
kullanılır. Geçersiz bir dil kodu belirtirseniz API,INVALID_ARGUMENT
hatası döndürür. - Tercih edilen dil, API'nin döndürmeyi seçtiği sonuç grubu ve bu sonuçların döndürülme sırası üzerinde küçük bir etkiye sahiptir. Bu durum, API'nin yazım hatalarını düzeltme özelliğini de etkiler.
-
API, aynı zamanda kullanıcı girişini yansıtırken hem kullanıcı hem de yerel nüfus için okunabilen bir açık adres sağlamaya çalışır. Yer tahminleri, her istekteki kullanıcı girişine bağlı olarak farklı şekilde biçimlendirilir.
-
Öncelikle
input
parametresindeki eşleşen terimler seçilir. Mevcut olduğundalanguageCode
parametresi tarafından belirtilen dil tercihine uygun adlar kullanılır. Aksi takdirde, kullanıcı girişiyle en iyi eşleşen adlar kullanılır. -
Cadde adresleri, mümkün olduğunda yerel dilde ve kullanıcı tarafından okunabilen bir komut dosyasında biçimlendirilir. Bu işlem, yalnızca
input
parametresindeki terimlerle eşleşen terimler seçildikten sonra yapılır. -
Diğer tüm adresler,
input
parametresindeki terimlerle eşleşecek şekilde eşleşen terimler seçildikten sonra tercih edilen dilde döndürülür. Tercih edilen dilde bulunmayan bir ad varsa API en yakın eşlemeyi kullanır.
-
Öncelikle
locationBias veya locationRestriction
Arama alanını tanımlamak için
locationBias
veyalocationRestriction
ikilisinden birini belirtebilirsiniz; ikisini birden belirtmeyin.locationRestriction
'ü, sonuçların içinde olması gereken bölgeyi,locationBias
'ü ise sonuçların yakınında olması gereken ancak alanın dışında olabileceği bölgeyi belirtmek olarak düşünebilirsiniz.locationBias
Arama yapılacak bir alanı belirtir. Bu konum, bir önyargı görevi görür. Bu, belirtilen alanın dışındaki sonuçlar da dahil olmak üzere belirtilen konumun çevresindeki sonuçların döndürülebileceği anlamına gelir.
locationRestriction
Arama yapılacak bir alanı belirtir. Belirtilen alanın dışındaki sonuçlar döndürülmez.
locationBias
veyalocationRestriction
bölgesini dikdörtgen görüntü alanı veya daire olarak belirtin.Daireler, merkez noktası ve yarıçapı (metre cinsinden) ile tanımlanır. Yarıçap 0,0 ile 50000,0 arasında (bu değerler dahil) olmalıdır. Varsayılan değer 0,0'dır.
locationRestriction
için yarıçapı 0,0'dan büyük bir değere ayarlamanız gerekir. Aksi takdirde istek hiçbir sonuç döndürmez.Örneğin:
"locationBias": { "circle": { "center": { "latitude": 37.7937, "longitude": -122.3965 }, "radius": 500.0 } }
Dikdörtgen,
low
yönünde çapraz olarak iki ve yüksek noktayla temsil edilen enlem-boylam görüntü alanıdır. Görüntü alanı kapalı bir bölge olarak kabul edilir. Yani kendi sınırını içerir. Enlem sınırları -90 ile 90 derece arasında, boylam sınırları ise -180 ile 180 derece arasında olmalıdır:low
=high
ise görüntü alanı tek bir noktadan oluşur.low.longitude
>high.longitude
ise boylam aralığı tersine çevrilir (görüntü alanı 180 derece boylam çizgisini geçer).low.longitude
= -180 derece vehigh.longitude
= 180 derece olursa görüntü alanı tüm boylamları içerir.low.longitude
= 180 derece vehigh.longitude
= -180 derece ise boylam aralığı boş olur.
Hem
low
hem dehigh
doldurulmalı ve temsil edilen kutu boş olmamalıdır. Boş bir görüntü alanı hatayla sonuçlanır.Örneğin, bu görüntü alanı New York'u tamamen kapsıyor:
"locationBias": { "rectangle": { "low": { "latitude": 40.477398, "longitude": -74.259087 }, "high": { "latitude": 40.91618, "longitude": -73.70018 } } }
-
kaynak
Hedefe olan düz çizgi mesafesinin hesaplanacağı başlangıç noktası (
distanceMeters
olarak döndürülür). Bu değer atlanırsa düz çizgi mesafesi döndürülmez. Enlem ve boylam koordinatları olarak belirtilmelidir:"origin": { "latitude": 40.477398, "longitude": -74.259087 }
-
regionCode
Yanıtı biçimlendirmek için kullanılan bölge kodu. ccTLD ("üst düzey alan") iki karakterli bir değer olarak belirtilir. Bazı önemli istisnalar dışında, çoğu ccTLD kodu ISO 3166-1 kodlarıyla aynıdır. Örneğin, Birleşik Krallık'ın ccTLD'si "uk" (.co.uk), ISO 3166-1 kodu "gb" (teknik olarak "Büyük Britanya ve Kuzey İrlanda'daki Birleşik Krallık'a" ait tüzel kişiye aittir)
Geçersiz bir bölge kodu belirtirseniz API
INVALID_ARGUMENT
hatası verir. Parametre, geçerli yasaya göre sonuçları etkileyebilir. -
sessionToken
Oturum jetonları, Otomatik Tamamlama (Yeni) çağrılarını "oturumlar" olarak izleyen, kullanıcı tarafından oluşturulmuş dizelerdir. Otomatik Tamamlama (Yeni), kullanıcı otomatik tamamlama aramasının sorgu ve seçim aşamalarını faturalandırma amacıyla ayrı bir oturumda gruplandırmak için oturum jetonlarını kullanır. Daha fazla bilgi için Oturum jetonları bölümüne bakın.
Otomatik tamamlama (yeni) örnekleri
Konum kısıtlaması kullanarak aramayı bir alanla kısıtlama
locationRestriction
, aranacak alanı belirtir. Belirtilen alanın dışındaki sonuçlar döndürülmez. Aşağıdaki örnekte, isteği San Francisco'nun merkezinde yarıçapı 5.000 metre olan bir çemberle sınırlamak için locationRestriction
kullanıyorsunuz:
curl -X POST -d '{ "input": "Art museum", "locationRestriction": { "circle": { "center": { "latitude": 37.7749, "longitude": -122.4194 }, "radius": 5000.0 } } }' \ -H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \ https://places.googleapis.com/v1/places:autocomplete
Belirtilen alanların içindeki tüm sonuçlar suggestions
dizisinde bulunur:
{ "suggestions": [ { "placePrediction": { "place": "places/ChIJkQQVTZqAhYARHxPt2iJkm1Q", "placeId": "ChIJkQQVTZqAhYARHxPt2iJkm1Q", "text": { "text": "Asian Art Museum, Larkin Street, San Francisco, CA, USA", "matches": [ { "startOffset": 6, "endOffset": 16 } ] }, "structuredFormat": { "mainText": { "text": "Asian Art Museum", "matches": [ { "startOffset": 6, "endOffset": 16 } ] }, "secondaryText": { "text": "Larkin Street, San Francisco, CA, USA" } }, "types": [ "establishment", "museum", "point_of_interest" ] } }, { "placePrediction": { "place": "places/ChIJI7NivpmAhYARSuRPlbbn_2w", "placeId": "ChIJI7NivpmAhYARSuRPlbbn_2w", "text": { "text": "de Young Museum, Hagiwara Tea Garden Drive, San Francisco, CA, USA", "matches": [ { "endOffset": 15 } ] }, "structuredFormat": { "mainText": { "text": "de Young Museum", "matches": [ { "endOffset": 15 } ] }, "secondaryText": { "text": "Hagiwara Tea Garden Drive, San Francisco, CA, USA" } }, "types": [ "establishment", "point_of_interest", "tourist_attraction", "museum" ] } }, /.../ ] }
Aramaları dikdörtgen bir görüntü alanıyla sınırlamak için locationRestriction
simgesini de kullanabilirsiniz. Aşağıdaki örnekte istek, San Francisco şehir merkeziyle sınırlandırılmıştır:
curl -X POST -d '{ "input": "Art museum", "locationRestriction": { "rectangle": { "low": { "latitude": 37.7751, "longitude": -122.4219 }, "high": { "latitude": 37.7955, "longitude": -122.3937 } } } }' \ -H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \ https://places.googleapis.com/v1/places:autocomplete
Sonuçlar, suggestions
dizisinde bulunur:
{ "suggestions": [ { "placePrediction": { "place": "places/ChIJkQQVTZqAhYARHxPt2iJkm1Q", "placeId": "ChIJkQQVTZqAhYARHxPt2iJkm1Q", "text": { "text": "Asian Art Museum, Larkin Street, San Francisco, CA, USA", "matches": [ { "startOffset": 6, "endOffset": 16 } ] }, "structuredFormat": { "mainText": { "text": "Asian Art Museum", "matches": [ { "startOffset": 6, "endOffset": 16 } ] }, "secondaryText": { "text": "Larkin Street, San Francisco, CA, USA" } }, "types": [ "point_of_interest", "museum", "establishment" ] } }, { "placePrediction": { "place": "places/ChIJyQNK-4SAhYARO2DZaJleWRc", "placeId": "ChIJyQNK-4SAhYARO2DZaJleWRc", "text": { "text": "International Art Museum of America, Market Street, San Francisco, CA, USA", "matches": [ { "startOffset": 14, "endOffset": 24 } ] }, "structuredFormat": { "mainText": { "text": "International Art Museum of America", "matches": [ { "startOffset": 14, "endOffset": 24 } ] }, "secondaryText": { "text": "Market Street, San Francisco, CA, USA" } }, "types": [ "museum", "point_of_interest", "tourist_attraction", "art_gallery", "establishment" ] } } ] }
locationBias kullanarak bir alana yönelik aramayı önyargılı hale getirme
locationBias
ile konum, bir önyargı görevi görür. Bu, belirtilen alanın dışındaki sonuçlar da dahil olmak üzere belirtilen konumun çevresindeki sonuçların döndürülebileceği anlamına gelir. Aşağıdaki örnekte, isteği San Francisco şehir merkezine yönlendiriyorsunuz:
curl -X POST -d '{ "input": "Amoeba", "locationBias": { "circle": { "center": { "latitude": 37.7749, "longitude": -122.4194 }, "radius": 5000.0 } } }' \ -H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \ https://places.googleapis.com/v1/places:autocomplete
Sonuçlar artık 5.000 metre yarıçapının dışındaki sonuçlar da dahil olmak üzere çok daha fazla öğe içeriyor:
{ "suggestions": [ { "placePrediction": { "place": "places/ChIJ5YQQf1GHhYARPKG7WLIaOko", "placeId": "ChIJ5YQQf1GHhYARPKG7WLIaOko", "text": { "text": "Amoeba Music, Haight Street, San Francisco, CA, USA", "matches": [ { "endOffset": 6 } ] }, "structuredFormat": { "mainText": { "text": "Amoeba Music", "matches": [ { "endOffset": 6 } ] }, "secondaryText": { "text": "Haight Street, San Francisco, CA, USA" } }, "types": [ "electronics_store", "point_of_interest", "store", "establishment", "home_goods_store" ] } }, { "placePrediction": { "place": "places/ChIJr7uwwy58hYARBY-e7-QVwqw", "placeId": "ChIJr7uwwy58hYARBY-e7-QVwqw", "text": { "text": "Amoeba Music, Telegraph Avenue, Berkeley, CA, USA", "matches": [ { "endOffset": 6 } ] }, "structuredFormat": { "mainText": { "text": "Amoeba Music", "matches": [ { "endOffset": 6 } ] }, "secondaryText": { "text": "Telegraph Avenue, Berkeley, CA, USA" } }, "types": [ "electronics_store", "point_of_interest", "establishment", "home_goods_store", "store" ] } }, ... ] }
Aramaları dikdörtgen bir görüntü alanıyla sınırlamak için locationBias
simgesini de kullanabilirsiniz. Aşağıdaki örnekte istek, San Francisco şehir merkeziyle sınırlandırılmıştır:
curl -X POST -d '{ "input": "Amoeba", "locationBias": { "rectangle": { "low": { "latitude": 37.7751, "longitude": -122.4219 }, "high": { "latitude": 37.7955, "longitude": -122.3937 } } } }' \ -H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \ https://places.googleapis.com/v1/places:autocomplete
Dikdörtgen görüntü alanındaki arama sonuçları yanıtta görünse de bazı sonuçlar, önyargı nedeniyle tanımlanan sınırların dışındadır. Sonuçlar suggestions
dizisinde de bulunur:
{ "suggestions": [ { "placePrediction": { "place": "places/ChIJ5YQQf1GHhYARPKG7WLIaOko", "placeId": "ChIJ5YQQf1GHhYARPKG7WLIaOko", "text": { "text": "Amoeba Music, Haight Street, San Francisco, CA, USA", "matches": [ { "endOffset": 6 } ] }, "structuredFormat": { "mainText": { "text": "Amoeba Music", "matches": [ { "endOffset": 6 } ] }, "secondaryText": { "text": "Haight Street, San Francisco, CA, USA" } }, "types": [ "point_of_interest", "store", "establishment" ] } }, { "placePrediction": { "place": "places/ChIJr7uwwy58hYARBY-e7-QVwqw", "placeId": "ChIJr7uwwy58hYARBY-e7-QVwqw", "text": { "text": "Amoeba Music, Telegraph Avenue, Berkeley, CA, USA", "matches": [ { "endOffset": 6 } ] }, "structuredFormat": { "mainText": { "text": "Amoeba Music", "matches": [ { "endOffset": 6 } ] }, "secondaryText": { "text": "Telegraph Avenue, Berkeley, CA, USA" } }, "types": [ "point_of_interest", "store", "establishment" ] } }, { "placePrediction": { "place": "places/ChIJRdmfADq_woARYaVhnfQSUTI", "placeId": "ChIJRdmfADq_woARYaVhnfQSUTI", "text": { "text": "Amoeba Music, Hollywood Boulevard, Los Angeles, CA, USA", "matches": [ { "endOffset": 6 } ] }, "structuredFormat": { "mainText": { "text": "Amoeba Music", "matches": [ { "endOffset": 6 } ] }, "secondaryText": { "text": "Hollywood Boulevard, Los Angeles, CA, USA" } }, "types": [ "point_of_interest", "store", "establishment" ] } }, /.../ ] }
includedPrimaryTypes özelliğini kullanma
Tablo A,
Tablo B veya yalnızca (regions)
ya da yalnızca (cities)
'den en fazla beş tür değeri belirtmek için includedPrimaryTypes
parametresini kullanın. Bir yer, yanıta dahil edilmek için belirtilen birincil tür değerlerinden biriyle eşleşmelidir.
Aşağıdaki örnekte "Futbol" input
dizesini belirtir ve sonuçları "sporting_goods_store"
türündeki kuruluşlarla kısıtlamak için includedPrimaryTypes
parametresini kullanırsınız:
curl -X POST -d '{ "input": "Soccer", "includedPrimaryTypes": ["sporting_goods_store"], "locationBias": { "circle": { "center": { "latitude": 37.7749, "longitude": -122.4194 }, "radius": 500.0 } } }' \ -H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \ https://places.googleapis.com/v1/places:autocomplete
includedPrimaryTypes
parametresini çıkarırsanız sonuçlar, "athletic_field"
gibi istemediğiniz bir türdeki kuruluşları içerebilir.
Sorgu tahminleri isteme
Sorgu tahminleri varsayılan olarak döndürülmez. Yanıta sorgu tahminleri eklemek için includeQueryPredictions
istek parametresini kullanın. Örneğin:
curl -X POST -d '{ "input": "Amoeba", "includeQueryPredictions": true, "locationBias": { "circle": { "center": { "latitude": 37.7749, "longitude": -122.4194 }, "radius": 5000.0 } } }' \ -H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \ https://places.googleapis.com/v1/places:autocomplete
suggestions
dizisi artık yukarıdaki Yanıt hakkında bölümünde gösterildiği gibi hem yer tahminlerini hem de sorgu tahminlerini içerir. Her sorgu tahmini, önerilen bir metin arama dizesi içeren text
alanını içerir. Döndürülen sorgu tahminlerinden herhangi biri hakkında daha fazla bilgi edinmek için Metin Arama (Yeni) isteği gönderebilirsiniz.
Kaynağı kullan
Bu örnekte, enlem ve boylam koordinatları olarak isteğe origin
ekleyin.
origin
eklediğinizde API, yanıta origin
ile hedef arasındaki doğrusal mesafeyi içeren distanceMeters
alanını ekler.
Bu örnekte, başlangıç noktası San Francisco'nun merkezi olarak ayarlanmıştır:
curl -X POST -d '{ "input": "Amoeba", "origin": { "latitude": 37.7749, "longitude": -122.4194 }, "locationRestriction": { "circle": { "center": { "latitude": 37.7749, "longitude": -122.4194 }, "radius": 5000.0 } } }' \ -H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \ https://places.googleapis.com/v1/places:autocomplete
Yanıt artık distanceMeters
içeriyor:
{ "suggestions": [ { "placePrediction": { "place": "places/ChIJ5YQQf1GHhYARPKG7WLIaOko", "placeId": "ChIJ5YQQf1GHhYARPKG7WLIaOko", "text": { "text": "Amoeba Music, Haight Street, San Francisco, CA, USA", "matches": [ { "endOffset": 6 } ] }, "structuredFormat": { "mainText": { "text": "Amoeba Music", "matches": [ { "endOffset": 6 } ] }, "secondaryText": { "text": "Haight Street, San Francisco, CA, USA" } }, "types": [ "home_goods_store", "establishment", "point_of_interest", "store", "electronics_store" ], "distanceMeters": 3012 } } ] }
Deneyin!
API Gezgini, API ve API seçeneklerini tanıyabilmeniz için örnek isteklerde bulunmanıza olanak tanır.
- Sayfanın sağ tarafındaki API simgesini () seçin.
- İsteğe bağlı olarak Standart parametreleri göster seçeneğini genişletin ve
fields
parametresini alan maskesi olarak ayarlayın. - İsteğe bağlı olarak İstek gövdesini düzenleyin.
- Yürüt düğmesini seçin. Pop-up'ta, isteği göndermek için kullanmak istediğiniz hesabı seçin.
API Gezgini panelinde, API Gezgini penceresini genişletmek için genişlet simgesini seçin.