Yer Adı Otomatik Tamamlama (Eski)

Avrupa Ekonomik Alanı (AEA) geliştiricileri

Yer Adı Otomatik Tamamlama (Eski), bir HTTP isteğine yanıt olarak yer tahminleri döndüren bir web hizmetidir. İstek, metin tabanlı bir arama dizesi ve isteğe bağlı coğrafi sınırlar belirtir. Bu hizmet, kullanıcılar metin tabanlı coğrafi aramalar yaparken işletmeler, adresler ve önemli yerler gibi yerleri döndürerek otomatik tamamlama işlevi sağlamak için kullanılabilir.

Yer Adı Otomatik Tamamlama (Eski) istekleri

Yer Adı Otomatik Tamamlama (Eski), Places API'nin bir parçasıdır ve Places API ile API anahtarı ve kotaları paylaşır.

Yer Adı Otomatik Tamamlama (Eski), tam kelimeler ve alt dizelerle eşleşebilir, yer adlarını, adresleri ve Plus Code'ları çözebilir. Bu nedenle uygulamalar, kullanıcı yazarken anında yer tahminleri sağlamak için sorgu gönderebilir.

Plus Code'ları doğru şekilde biçimlendirmeniz gerekir. Bu, artı işaretini URL çıkış karakteriyle %2B, boşlukları ise URL çıkış karakteriyle %20 olarak değiştirmeniz gerektiği anlamına gelir.

  • global kod, dört karakterli bir alan kodu ve altı karakter veya daha uzun bir yerel koddur. Örneğin, URL'den kaçış global kodu 849VCWC8+R9, 849VCWC8%2BR9 şeklindedir.
  • Bileşik kod, açık bir konuma sahip altı karakterlik (veya daha uzun) bir yerel koddur. Örneğin, URL'de kaçış karakteri kullanılan bileşik kod CWC8+R9 Mountain View, CA, USA, CWC8%2BR9%20Mountain%20View%20CA%20USA şeklindedir.

Döndürülen tahminler, kullanıcıya sunulmak ve istedikleri yeri seçmelerine yardımcı olmak için tasarlanmıştır. Döndürülen yerlerden herhangi biri hakkında daha fazla bilgi edinmek için Yer Ayrıntıları (Eski) isteği gönderebilirsiniz.

Yer Adı Otomatik Tamamlama (Eski) isteği, aşağıdaki biçimde bir HTTP URL'sidir:

https://maps.googleapis.com/maps/api/place/autocomplete/output?parameters

Burada output, aşağıdaki değerlerden biri olabilir:

  • json (önerilir), JavaScript Object Notation (JSON) biçiminde çıktı olduğunu gösterir.
  • xml çıkışın XML olarak gösterileceğini belirtir.

Yer Adı Otomatik Tamamlama (Eski) isteği başlatmak için belirli parametreler gereklidir. URL'lerde standart olduğu gibi, tüm parametreler ve işareti (&) kullanılarak ayrılır. Parametrelerin listesi ve olası değerleri aşağıda sıralanmıştır.

Gerekli parametreler

  • giriş

    Aranacak metin dizesi. Yer Adı Otomatik Tamamlama 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

  • bileşenler

    Sonuçlarınızı kısıtlamak istediğiniz yerlerin gruplandırılması. En fazla 5 ülkeye göre filtrelemek için bileşenleri kullanabilirsiniz. Ülkeler, iki karakterli, ISO 3166-1 Alpha-2 uyumlu ülke kodu olarak iletilmelidir. Örneğin: components=country:fr, sonuçlarınızı Fransa'daki yerlerle kısıtlar. Birden fazla ülke, ayırıcı olarak dikey çizgi karakteri | kullanılarak birden fazla country:XX filtresi olarak iletilmelidir. Örneğin: components=country:us|country:pr|country:vi|country:gu|country:mp sonuçlarınızı ABD ve ABD'ye bağlı, tüzel kişiliği olmayan bölgelerle sınırlar.

    Not: Bir ülke koduyla beklenmedik sonuçlar alırsanız kullanmak istediğiniz ülkeleri, bağımlı bölgeleri ve coğrafi ilgi alanlarını içeren bir kod kullandığınızı doğrulayın. Kod bilgilerini Wikipedia: List of ISO 3166 country codes (Wikipedia: ISO 3166 ülke kodları listesi) veya ISO Online Browsing Platform'da (ISO Online Göz Atma Platformu) bulabilirsiniz.
  • language

    Sonuçların döndürüleceği dil.

    • Desteklenen dillerin listesini inceleyin. Google, desteklenen dilleri sık sık güncellediğinden bu liste kapsamlı olmayabilir.
    • language sağlanmazsa API, Accept-Language başlığında belirtilen tercih edilen dili kullanmaya çalışır.
    • API, hem kullanıcı hem de yerel halk tarafından okunabilen bir açık adres sağlamak için elinden geleni yapar. Bu amaca ulaşmak için açık adresleri yerel dilde döndürür ve gerekirse tercih edilen dili dikkate alarak kullanıcı tarafından okunabilir bir alfabeye dönüştürür. Diğer tüm adresler tercih edilen dilde döndürülür. Adres bileşenlerinin tümü aynı dilde döndürülür. Bu dil, ilk bileşenden seçilir.
    • Tercih edilen dilde ad yoksa API en yakın eşleşmeyi kullanır.
    • Tercih edilen dil, API'nin döndürmeyi seçtiği sonuç kümesi ve bu sonuçların döndürülme sırası üzerinde küçük bir etkiye sahiptir. Coğrafi kodlayıcı, kısaltmaları dile bağlı olarak farklı şekilde yorumlar. Örneğin, sokak türlerinin kısaltmaları veya bir dilde geçerli olup başka bir dilde geçerli olmayan eş anlamlılar. Örneğin, Macarca'da utca ve tér, sokak kelimesinin eş anlamlılarıdır.
  • konum

    Yer bilgilerinin alınacağı nokta. Bu, latitude,longitude olarak belirtilmelidir. Konum belirtirken radius parametresi de sağlanmalıdır. radius sağlanmazsa location parametresi yoksayılır.

    Text Search API kullanılırken `query` parametresi, `Barcelona'daki pazar` gibi açık bir konum içeriyorsa `location` parametresi geçersiz kılınabilir.
  • locationbias

    Belirli bir alandaki sonuçları tercih etmek için yarıçap ve enlem/boylam ya da bir dikdörtgenin noktalarını temsil eden iki enlem/boylam çifti belirtin. Bu parametre belirtilmezse API varsayılan olarak IP adresi önyargısını kullanır.

    • IP önyargısı: API'ye IP adresi önyargısı kullanması talimatını verir. Dizeyi iletin. ipbias (Bu seçenekte ek parametre yoktur).
    • Dairesel: Yarıçapı metre cinsinden belirten bir dize ve ondalık derece cinsinden enlem/boylam. Aşağıdaki biçimi kullanın: circle:radius@lat,lng.
    • Dikdörtgen: Bir dikdörtgenin güney/batı ve kuzey/doğu noktalarını temsil eden, ondalık derece cinsinden iki enlem/boylam çifti belirten bir dize. Aşağıdaki biçimi kullanın:rectangle:south,west|north,east. Doğu/batı değerlerinin -180 ile 180 aralığına, kuzey/güney değerlerinin ise -90 ile 90 aralığına sarıldığını unutmayın.
  • locationrestriction

    Yarıçap ve enlem/boylam ya da bir dikdörtgenin noktalarını temsil eden iki enlem/boylam çifti belirterek sonuçları belirli bir alanla sınırlayın.

    • Dairesel: Yarıçapı metre cinsinden belirten bir dize ve ondalık derece cinsinden enlem/boylam. Aşağıdaki biçimi kullanın: circle:radius@lat,lng.
    • Dikdörtgen: Ondalık derece cinsinden iki enlem/boylam çifti belirten bir dize. Dikdörtgenin güney/batı ve kuzey/doğu noktalarını temsil eder. Aşağıdaki biçimi kullanın:rectangle:south,west|north,east. Doğu/batı değerlerinin -180 ile 180 aralığına, kuzey/güney değerlerinin ise -90 ile 90 aralığına sarıldığını unutmayın.
  • telafi etmek

    Hizmetin tahminleri eşleştirmek için kullandığı son karakterin giriş terimindeki konumu. Örneğin, giriş Google ise ve ofset 3 ise hizmet Goo ile eşleşir. Ofset tarafından belirlenen dize, yalnızca giriş terimindeki ilk kelimeyle eşleştirilir. Örneğin, giriş terimi Google abc ise ve ofset 3 ise hizmet, Goo abc ile eşleşmeye çalışır. Bir ofset sağlanmazsa hizmet, tüm dönemi kullanır. Kaydırma genellikle metin imlecinin konumuna ayarlanmalıdır.

  • kaynak

    Hedefe düz çizgi mesafesinin hesaplanacağı başlangıç noktası (distance_meters olarak döndürülür). Bu değer atlanırsa düz çizgi mesafesi döndürülmez. latitude,longitude olarak belirtilmelidir.

  • yarıçap

    Yer sonuçlarının döndürüleceği mesafeyi (metre cinsinden) tanımlar. location ve radius parametrelerini ileterek sonuçları belirli bir çevreye göre yönlendirebilirsiniz. Bunu yaptığınızda Places hizmetine, bu daire içindeki sonuçları göstermeyi tercih etmesi talimatı verilir. Tanımlanan alanın dışındaki sonuçlar da gösterilebilir.

    Yarıçap, arama türüne ve diğer parametrelere bağlı olarak otomatik olarak maksimum bir değere sabitlenir.

    • Otomatik tamamlama: 50.000 metre
    • Yakında Arama:
      • keyword veya name ile: 50.000 metre
      • keyword veya name olmadan
        • rankby parametresinden bağımsız olarak, alan yoğunluğuna göre dinamik olarak ayarlanan 50.000 metreye kadar.
        • rankby=distance kullanılırken yarıçap parametresi kabul edilmez ve INVALID_REQUEST ile sonuçlanır.
    • Query Autocomplete: 50.000 metre
    • Metin Arama: 50.000 metre
  • bölge

    Bölge kodu, ccTLD ("üst düzey alan") olarak belirtilen iki karakterli bir değerdir. Çoğu ccTLD kodu, ISO 3166-1 kodlarıyla aynıdır. Ancak bazı önemli istisnalar vardır. Örneğin, Birleşik Krallık'ın ccTLD'si "uk" (.co.uk) iken ISO 3166-1 kodu "gb"dir (teknik olarak "Büyük Britanya ve Kuzey İrlanda Birleşik Krallığı" tüzel kişiliği için).

  • sessiontoken

    Fatura amaçlı olarak bir otomatik tamamlama oturumunu tanımlayan rastgele bir dize.

    Oturum, kullanıcının sorgu yazmaya başlamasıyla başlar ve bir yer seçip Yer Ayrıntıları'na çağrı yapılmasıyla sona erer. Her oturumda birden fazla sorgu ve ardından bir yer seçimi olabilir. Bir oturumdaki her istek için kullanılan API anahtarları aynı Google Cloud Console projesine ait olmalıdır. Bir oturum sona erdiğinde jeton artık geçerli olmaz. Uygulamanız her oturum için yeni bir jeton oluşturmalıdır. sessiontoken parametresi atlanırsa veya oturum jetonu yeniden kullanılırsa oturum, oturum jetonu sağlanmamış gibi ücretlendirilir (her istek ayrı olarak faturalandırılır).

    Aşağıdaki yönergeleri uygulamanızı öneririz:

    • Tüm otomatik tamamlama oturumları için oturum jetonlarını kullanın.
    • Her oturum için yeni bir jeton oluşturun. Sürüm 4 UUID kullanılması önerilir.
    • Bir oturumdaki tüm Yer Adı Otomatik Tamamlama ve Yer Ayrıntıları istekleri için kullanılan API anahtarlarının aynı Cloud Console projesine ait olduğundan emin olun.
    • Her yeni oturum için benzersiz bir oturum jetonu ilettiğinizden emin olun. Aynı jetonun birden fazla oturum için kullanılması, her isteğin ayrı ayrı faturalandırılmasına neden olur.
  • strictbounds

    Yalnızca location ve radius ile tanımlanan bölge içinde yer alan yerleri döndürür. Bu bir önyargı değil, kısıtlamadır. Bu nedenle, kullanıcı girişiyle eşleşse bile bu bölgenin dışındaki sonuçlar döndürülmez.

  • türler

    types parametresini ileterek Yer Adı Otomatik Tamamlama isteğinden gelen sonuçları belirli bir türle kısıtlayabilirsiniz. Bu parametre, Yer Türleri'nde listelendiği gibi bir türü veya tür koleksiyonunu belirtir. Hiçbir şey belirtilmezse tüm türler döndürülür.

    Bir yer, yalnızca Tablo 1 veya Tablo 2'de listelenen türlerden tek bir birincil türe sahip olabilir. Örneğin, yemek servisi yapılan bir otel yalnızca types=lodging ile döndürülebilir, types=restaurant ile döndürülemez.

    types parametresinin değeri için aşağıdakilerden birini belirtebilirsiniz:

    • Tablo 1 veya Tablo 2'den en fazla beş değer. Birden fazla değer için her değeri | (dikey çubuk) ile ayırın. Örneğin:

      types=book_store|cafe

    • Tablo 3'te desteklenen tek bir filtre. Tür koleksiyonlarını karıştıramazsınız.

    İstek şu durumlarda INVALID_REQUEST hatasıyla reddedilir:

    • Beşten fazla tür belirtilmiş.
    • Tanınmayan türler var.
    • Tablo 1 veya Tablo 2'deki türler, Tablo 3'teki filtrelerle karıştırılıyor.

Yer Adı Otomatik Tamamlama (Eski) örnekleri

Merkezi San Francisco, Kaliforniya'da olan bir bölgede "Amoeba" dizesini içeren kuruluşlarla ilgili bir istek:

URL

https://maps.googleapis.com/maps/api/place/autocomplete/json
      ?input=amoeba
      &types=establishment
      &location=37.76999%2C-122.44696
      &radius=500
      &key=YOUR_API_KEY

curl

curl -L -X GET 'https://maps.googleapis.com/maps/api/place/autocomplete/json?input=amoeba&types=establishment&location=37.76999%2C-122.44696&radius=500&key=YOUR_API_KEY'

Ashbury St & Haight St, San Francisco'nun 500 metre yakınındaki sonuçlarla kısıtlanmış aynı istek:

URL

https://maps.googleapis.com/maps/api/place/autocomplete/json
      ?input=amoeba
      &types=establishment
      &location=37.76999%2C-122.44696&radius=500
      &strictbounds=true
      &key=YOUR_API_KEY

curl

curl -L -X GET 'https://maps.googleapis.com/maps/api/place/autocomplete/json?input=amoeba&types=establishment&location=37.76999%2C-122.44696&radius=500&strictbounds=true&key=YOUR_API_KEY'

"Vict" içeren adresler için Fransızca sonuçlar içeren bir istek:

URL

https://maps.googleapis.com/maps/api/place/autocomplete/json
      ?input=Vict
      &types=geocode
      &language=fr
      &key=YOUR_API_KEY

curl

curl -L -X GET 'https://maps.googleapis.com/maps/api/place/autocomplete/json?input=Vict&types=geocode&language=fr&key=YOUR_API_KEY'

Brezilya Portekizcesi dilinde sonuçlar içeren, "Vict" ifadesini içeren şehirler için bir istek:

URL

https://maps.googleapis.com/maps/api/place/autocomplete/json
      ?input=Vict
      &types=(cities)
      &language=pt_BR&key=YOUR_API_KEY

curl

curl -L -X GET 'https://maps.googleapis.com/maps/api/place/autocomplete/json?input=Vict&types=(cities)&language=pt_BR&key=YOUR_API_KEY'

Bu örneklerdeki API anahtarını kendi anahtarınızla değiştirmeniz gerektiğini unutmayın.

Yer Adı Otomatik Tamamlama (Eski) yanıtı

Yer Adı Otomatik Tamamlama (Eski) yanıtları, isteğin URL yolundaki output işaretiyle belirtilen biçimde döndürülür. Aşağıdaki sonuçlar, şu parametreleri içeren bir sorgu için döndürülebilecek sonuçları gösterir:

URL

https://maps.googleapis.com/maps/api/place/autocomplete/json
      ?input=Paris
      &types=geocode
      &key=YOUR_API_KEY

curl

curl -L -X GET 'https://maps.googleapis.com/maps/api/place/autocomplete/json?input=Paris&types=geocode&key=YOUR_API_KEY'

JSON

{
  "predictions":
    [
      {
        "description": "Paris, France",
        "matched_substrings": [{ "length": 5, "offset": 0 }],
        "place_id": "ChIJD7fiBh9u5kcRYJSMaMOCCwQ",
        "reference": "ChIJD7fiBh9u5kcRYJSMaMOCCwQ",
        "structured_formatting":
          {
            "main_text": "Paris",
            "main_text_matched_substrings": [{ "length": 5, "offset": 0 }],
            "secondary_text": "France",
          },
        "terms":
          [
            { "offset": 0, "value": "Paris" },
            { "offset": 7, "value": "France" },
          ],
        "types": ["locality", "political", "geocode"],
      },
      {
        "description": "Paris, TX, USA",
        "matched_substrings": [{ "length": 5, "offset": 0 }],
        "place_id": "ChIJmysnFgZYSoYRSfPTL2YJuck",
        "reference": "ChIJmysnFgZYSoYRSfPTL2YJuck",
        "structured_formatting":
          {
            "main_text": "Paris",
            "main_text_matched_substrings": [{ "length": 5, "offset": 0 }],
            "secondary_text": "TX, USA",
          },
        "terms":
          [
            { "offset": 0, "value": "Paris" },
            { "offset": 7, "value": "TX" },
            { "offset": 11, "value": "USA" },
          ],
        "types": ["locality", "political", "geocode"],
      },
      {
        "description": "Paris, TN, USA",
        "matched_substrings": [{ "length": 5, "offset": 0 }],
        "place_id": "ChIJ4zHP-Sije4gRBDEsVxunOWg",
        "reference": "ChIJ4zHP-Sije4gRBDEsVxunOWg",
        "structured_formatting":
          {
            "main_text": "Paris",
            "main_text_matched_substrings": [{ "length": 5, "offset": 0 }],
            "secondary_text": "TN, USA",
          },
        "terms":
          [
            { "offset": 0, "value": "Paris" },
            { "offset": 7, "value": "TN" },
            { "offset": 11, "value": "USA" },
          ],
        "types": ["locality", "political", "geocode"],
      },
      {
        "description": "Paris, Brant, ON, Canada",
        "matched_substrings": [{ "length": 5, "offset": 0 }],
        "place_id": "ChIJsamfQbVtLIgR-X18G75Hyi0",
        "reference": "ChIJsamfQbVtLIgR-X18G75Hyi0",
        "structured_formatting":
          {
            "main_text": "Paris",
            "main_text_matched_substrings": [{ "length": 5, "offset": 0 }],
            "secondary_text": "Brant, ON, Canada",
          },
        "terms":
          [
            { "offset": 0, "value": "Paris" },
            { "offset": 7, "value": "Brant" },
            { "offset": 14, "value": "ON" },
            { "offset": 18, "value": "Canada" },
          ],
        "types": ["neighborhood", "political", "geocode"],
      },
      {
        "description": "Paris, KY, USA",
        "matched_substrings": [{ "length": 5, "offset": 0 }],
        "place_id": "ChIJsU7_xMfKQ4gReI89RJn0-RQ",
        "reference": "ChIJsU7_xMfKQ4gReI89RJn0-RQ",
        "structured_formatting":
          {
            "main_text": "Paris",
            "main_text_matched_substrings": [{ "length": 5, "offset": 0 }],
            "secondary_text": "KY, USA",
          },
        "terms":
          [
            { "offset": 0, "value": "Paris" },
            { "offset": 7, "value": "KY" },
            { "offset": 11, "value": "USA" },
          ],
        "types": ["locality", "political", "geocode"],
      },
    ],
  "status": "OK",
}

XML

    
<?xml version="1.0" encoding="UTF-8"?>
<AutocompletionResponse>
 <status>OK</status>
 <prediction>
  <description>Paris, France</description>
  <type>locality</type>
  <type>political</type>
  <type>geocode</type>
  <reference>ChIJD7fiBh9u5kcRYJSMaMOCCwQ</reference>
  <term>
   <value>Paris</value>
   <offset>0</offset>
  </term>
  <term>
   <value>France</value>
   <offset>7</offset>
  </term>
  <matched_substring>
   <offset>0</offset>
   <length>5</length>
  </matched_substring>
  <place_id>ChIJD7fiBh9u5kcRYJSMaMOCCwQ</place_id>
  <structured_formatting>
   <description>Paris</description>
   <subdescription>France</subdescription>
   <description_matched_substring>
    <offset>0</offset>
    <length>5</length>
   </description_matched_substring>
  </structured_formatting>
 </prediction>
 <prediction>
  <description>Paris, TX, USA</description>
  <type>locality</type>
  <type>political</type>
  <type>geocode</type>
  <reference>ChIJmysnFgZYSoYRSfPTL2YJuck</reference>
  <term>
   <value>Paris</value>
   <offset>0</offset>
  </term>
  <term>
   <value>TX</value>
   <offset>7</offset>
  </term>
  <term>
   <value>USA</value>
   <offset>11</offset>
  </term>
  <matched_substring>
   <offset>0</offset>
   <length>5</length>
  </matched_substring>
  <place_id>ChIJmysnFgZYSoYRSfPTL2YJuck</place_id>
  <structured_formatting>
   <description>Paris</description>
   <subdescription>TX, USA</subdescription>
   <description_matched_substring>
    <offset>0</offset>
    <length>5</length>
   </description_matched_substring>
  </structured_formatting>
 </prediction>
 <prediction>
  <description>Paris, TN, USA</description>
  <type>locality</type>
  <type>political</type>
  <type>geocode</type>
  <reference>ChIJ4zHP-Sije4gRBDEsVxunOWg</reference>
  <term>
   <value>Paris</value>
   <offset>0</offset>
  </term>
  <term>
   <value>TN</value>
   <offset>7</offset>
  </term>
  <term>
   <value>USA</value>
   <offset>11</offset>
  </term>
  <matched_substring>
   <offset>0</offset>
   <length>5</length>
  </matched_substring>
  <place_id>ChIJ4zHP-Sije4gRBDEsVxunOWg</place_id>
  <structured_formatting>
   <description>Paris</description>
   <subdescription>TN, USA</subdescription>
   <description_matched_substring>
    <offset>0</offset>
    <length>5</length>
   </description_matched_substring>
  </structured_formatting>
 </prediction>
 <prediction>
  <description>Paris, Brant, ON, Canada</description>
  <type>neighborhood</type>
  <type>political</type>
  <type>geocode</type>
  <reference>ChIJsamfQbVtLIgR-X18G75Hyi0</reference>
  <term>
   <value>Paris</value>
   <offset>0</offset>
  </term>
  <term>
   <value>Brant</value>
   <offset>7</offset>
  </term>
  <term>
   <value>ON</value>
   <offset>14</offset>
  </term>
  <term>
   <value>Canada</value>
   <offset>18</offset>
  </term>
  <matched_substring>
   <offset>0</offset>
   <length>5</length>
  </matched_substring>
  <place_id>ChIJsamfQbVtLIgR-X18G75Hyi0</place_id>
  <structured_formatting>
   <description>Paris</description>
   <subdescription>Brant, ON, Canada</subdescription>
   <description_matched_substring>
    <offset>0</offset>
    <length>5</length>
   </description_matched_substring>
  </structured_formatting>
 </prediction>
 <prediction>
  <description>Paris, KY, USA</description>
  <type>locality</type>
  <type>political</type>
  <type>geocode</type>
  <reference>ChIJsU7_xMfKQ4gReI89RJn0-RQ</reference>
  <term>
   <value>Paris</value>
   <offset>0</offset>
  </term>
  <term>
   <value>KY</value>
   <offset>7</offset>
  </term>
  <term>
   <value>USA</value>
   <offset>11</offset>
  </term>
  <matched_substring>
   <offset>0</offset>
   <length>5</length>
  </matched_substring>
  <place_id>ChIJsU7_xMfKQ4gReI89RJn0-RQ</place_id>
  <structured_formatting>
   <description>Paris</description>
   <subdescription>KY, USA</subdescription>
   <description_matched_substring>
    <offset>0</offset>
    <length>5</length>
   </description_matched_substring>
  </structured_formatting>
 </prediction>
</AutocompletionResponse>

   

PlacesAutocompleteResponse

Alan Zorunlu Tür Açıklama
required Array<PlaceAutocompletePrediction>

Tahmin dizisi içerir.

Daha fazla bilgi için PlaceAutocompletePrediction bölümüne bakın.

required PlacesAutocompleteStatus

İsteğin durumunu içerir ve isteğin neden başarısız olduğunu bulmanıza yardımcı olacak hata ayıklama bilgilerini içerebilir.

Daha fazla bilgi için PlacesAutocompleteStatus sayfasına bakın.

isteğe bağlı dize

Hizmet OK< dışında bir durum kodu döndürdüğünde yanıt nesnesinde ek bir error_message alanı olabilir. Bu alan, verilen durum kodunun nedenleri hakkında daha ayrıntılı bilgi içerir. Bu alan her zaman döndürülmez ve içeriği değişebilir.

isteğe bağlı Dizi<dize>

Hizmet, istek spesifikasyonu hakkında ek bilgiler döndürdüğünde yanıt nesnesinde ek bir info_messages alanı olabilir. Bu alan yalnızca başarılı istekler için döndürülür. Bu yanıt her zaman döndürülmeyebilir ve içeriği değişebilir.

Sonuçlar arasında özellikle place_id öğeleri ilgi çekicidir. Bu öğeler, ayrı bir sorgu kullanarak yer hakkında daha ayrıntılı bilgi istemek için kullanılabilir. Yer Ayrıntıları (Eski) istekleri bölümüne bakın.

XML yanıtı, iki tür alt öğe içeren tek bir <AutocompletionResponse> öğesinden oluşur:

  • Tek bir <status> öğesi, istekle ilgili meta verileri içerir. Aşağıdaki Durum Kodları bölümüne bakın.
  • Her biri tek bir yerle ilgili bilgileri içeren sıfır veya daha fazla <prediction> öğesi. Bu sonuçlar hakkında bilgi için Yer Adı Otomatik Tamamlama (Eski) Sonuçları bölümüne bakın. Places API en fazla 5 sonuç döndürür.

Uygulamanız herhangi bir nedenle xml gerektirmediği sürece tercih edilen çıkış işareti olarak json kullanmanızı öneririz. XML ağaçlarının işlenmesi, doğru düğümlere ve öğelere referans vermeniz için biraz dikkat gerektirir. XML'yi işleme konusunda yardım almak için XPath ile XML işleme başlıklı makaleye bakın.

PlacesAutocompleteStatus

Hizmet tarafından döndürülen durum kodları.

  • OK, API isteğinin başarılı olduğunu gösterir.
  • Aramanın başarılı olduğunu ancak sonuç döndürmediğini gösteren ZERO_RESULTS. Bu durum, arama uzak bir konumda sınırlara iletildiyse ortaya çıkabilir.
  • INVALID_REQUEST, API isteğinin hatalı biçimlendirildiğini gösterir. Bu durum genellikle input parametresinin eksik olmasından kaynaklanır.
  • OVER_QUERY_LIMIT Aşağıdakilerden herhangi birini belirten:
    • QPS sınırlarını aştınız.
    • Hesabınızda faturalandırma etkinleştirilmemiştir.
    • Aylık 200 ABD doları tutarındaki kredi veya kendinizin belirlediği kullanım sınırı aşılmıştır.
    • Belirtilen ödeme yöntemi artık geçerli değil (örneğin, kredi kartının süresi dolmuş).
    Bu hatayı nasıl düzelteceğiniz hakkında daha fazla bilgi için Haritalar SSS sayfasını inceleyin.
  • REQUEST_DENIED isteğinizin reddedildiğini belirtir. Genellikle şu nedenlerle:
    • İstekte API anahtarı eksik.
    • key parametresi geçersiz.
  • Bilinmeyen bir hatayı gösteren UNKNOWN_ERROR.

Yer hizmeti, bir aramadan JSON sonuçları döndürdüğünde bunları predictions dizisine yerleştirir. Hizmet sonuç döndürmese bile (ör. location uzaktaysa) boş bir predictions dizisi döndürür. XML yanıtları sıfır veya daha fazla <prediction> öğesinden oluşur.

PlaceAutocompletePrediction

Alan Zorunlu Tür Açıklama
required dize

Döndürülen sonucun kullanıcılar tarafından okunabilen adını içerir. establishment sonuçları için bu genellikle işletme adıdır. Bu içerik olduğu gibi okunmalıdır. Biçimlendirilmiş adres programatik olarak ayrıştırılmamalıdır.

required Array<PlaceAutocompleteMatchedSubstring>

Girilen terimin tahmin sonucu metnindeki konumunu açıklayan alt dizelerin listesi. Böylece, seçilirse terim vurgulanabilir.

Daha fazla bilgi için PlaceAutocompleteMatchedSubstring bölümüne bakın.

required PlaceAutocompleteStructuredFormat

Otomatik tamamlama sonuçlarınızda gösterilebilecek önceden biçimlendirilmiş metinler sağlar. Bu içerik olduğu gibi okunmalıdır. Biçimlendirilmiş adresi programatik olarak ayrıştırmayın.

Daha fazla bilgi için PlaceAutocompleteStructuredFormat bölümüne bakın.

required Array<PlaceAutocompleteTerm>

Döndürülen açıklamanın her bölümünü tanımlayan bir terim dizisi içerir (açıklamanın bir bölümü genellikle virgülle sonlandırılır). Dizideki her giriş, terimin metnini içeren bir value alanına ve bu terimin açıklamadaki başlangıç konumunu tanımlayan bir offset alanına sahiptir. Bu konum, Unicode karakterlerle ölçülür.

Daha fazla bilgi için PlaceAutocompleteTerm sayfasına bakın.

isteğe bağlı tam sayı

Başlangıç noktasından metre cinsinden düz çizgi mesafesi. Bu alan yalnızca origin ile yapılan istekler için döndürülür.

isteğe bağlı dize

Bir yeri benzersiz şekilde tanımlayan metin tanımlayıcısı. Yerle ilgili bilgileri almak için bu tanımlayıcıyı bir Places API isteğinin placeId alanına iletin. Yer kimlikleri hakkında daha fazla bilgi için Yer kimliklerine genel bakış başlıklı makaleyi inceleyin.

isteğe bağlı dize

place_id'yi inceleyin.

isteğe bağlı Dizi<dize>

Bu yer için geçerli olan çeşitli türleri içerir. Örneğin: [ "political", "locality" ] veya [ "establishment", "geocode", "beauty_salon" ]. Dizi birden fazla değer içerebilir. Yer türleri hakkında daha fazla bilgi edinin.

PlaceAutocompleteMatchedSubstring

Alan Zorunlu Tür Açıklama
required sayı

Tahmin sonucu metninde eşleşen alt dizenin uzunluğu.

required sayı

Tahmin sonucu metninde eşleşen alt dizenin başlangıç konumu.

PlaceAutocompleteStructuredFormat

Alan Zorunlu Tür Açıklama
required dize

Genellikle yerin adı olan bir tahminin ana metnini içerir.

required Array<PlaceAutocompleteMatchedSubstring>

offset değeri ve length içeren bir dizi içerir. Bunlar, girilen terimin tahmin sonucu metnindeki konumunu açıklar. Böylece, seçilirse terim vurgulanabilir.

Daha fazla bilgi için PlaceAutocompleteMatchedSubstring sayfasına bakın.

isteğe bağlı dize

Bir tahminin ikincil metnini (genellikle yerin konumu) içerir.

isteğe bağlı Array<PlaceAutocompleteMatchedSubstring>

offset değeri ve length içeren bir dizi içerir. Bunlar, girilen terimin tahmin sonucu metnindeki konumunu açıklar. Böylece, seçilen terim vurgulanabilir.

Daha fazla bilgi için PlaceAutocompleteMatchedSubstring bölümüne bakın.

PlaceAutocompleteTerm

Alan Zorunlu Tür Açıklama
required sayı

Bu terimin açıklamadaki başlangıç konumunu tanımlar (Unicode karakterlerle ölçülür)

required dize

Terimin metni.

Yer Adı Otomatik Tamamlama (Eski) optimizasyonu

Bu bölümde, Yer Adı Otomatik Tamamlama (Eski) hizmetinden en iyi şekilde yararlanmanıza yardımcı olacak en iyi uygulamalar açıklanmaktadır.

Genel kurallardan bazıları şunlardır:

Maliyet optimizasyonu ile ilgili en iyi uygulamalar

Temel maliyet optimizasyonu

Yer Adı Otomatik Tamamlama (Eski) hizmetini kullanmanın maliyetini optimize etmek için Yer Ayrıntıları (Eski) ve Yer Adı Otomatik Tamamlama (Eski) widget'larında yalnızca ihtiyacınız olan Yer Adı Otomatik Tamamlama (Eski) veri alanlarını döndürmek üzere alan maskeleri kullanın.

Gelişmiş maliyet optimizasyonu

Yer Adı Otomatik Tamamlama (Eski) hizmetine programatik olarak erişmek için SKU: Autocomplete - Per Request pricing hizmetini kullanın ve Yer Ayrıntıları (Eski) yerine seçilen yerle ilgili Geocoding API sonuçları isteyin. Aşağıdaki koşulların her ikisi de karşılanıyorsa Geocoding API'si ile birlikte kullanılan istek başına fiyatlandırma, oturum başına (oturum tabanlı) fiyatlandırmaya kıyasla daha uygun maliyetlidir:

  • Kullanıcının seçtiği yerin yalnızca enlemi, boylamı veya adresi gerekiyorsa Geocoding API bu bilgileri Place Details (Legacy) çağrısından daha düşük bir maliyetle sağlar.
  • Kullanıcılar ortalama dört veya daha az Yer Adı Otomatik Tamamlama (Eski) tahmin isteği içinde bir otomatik tamamlama tahmini seçerse istek başına fiyatlandırma, oturum başına fiyatlandırmadan daha uygun maliyetli olabilir.
İhtiyaçlarınıza uygun Yer Adı Otomatik Tamamlama (Legacy) uygulamasını seçme konusunda yardım almak için aşağıdaki soruya verdiğiniz yanıtla ilgili sekmeyi seçin.

Uygulamanız, seçilen tahminin adresi ve enlem/boylamı dışında başka bilgi gerektiriyor mu?

Evet, daha fazla ayrıntı gerekiyor

Oturum tabanlı Yer Adı Otomatik Tamamlama (Eski) özelliğini Yer Ayrıntıları (Eski) ile kullanın.
Uygulamanızda yer adı, işletme durumu veya çalışma saatleri gibi Yer Ayrıntıları (Eski) gerekli olduğundan Yer Otomatik Tamamlama (Eski) özelliğinin uygulanmasında oturum jetonu (programatik olarak veya JavaScript, Android ya da iOS widget'larına yerleştirilmiş) oturum başına ve talep ettiğiniz yer verileri alanlarına bağlı olarak geçerli Yer Verileri SKU'ları kullanılmalıdır.1

Widget uygulama
Oturum yönetimi, otomatik olarak JavaScript, Android, veya iOS widget'larına yerleştirilmiştir. Buna, seçilen tahminde hem Yer Adı Otomatik Tamamlama (Eski) istekleri hem de Yer Ayrıntıları (Eski) isteği dahildir. Yalnızca ihtiyacınız olan Yer Adı Otomatik Tamamlama (Eski) veri alanlarını istediğinizden emin olmak için fields parametresini belirttiğinizden emin olun.

Programatik uygulama
Yer Adı Otomatik Tamamlama (Eski) isteklerinizde oturum jetonu kullanın. Seçilen tahminle ilgili Yer Ayrıntıları (Eski) isteğinde bulunurken aşağıdaki parametreleri ekleyin:

  1. Yer Adı Otomatik Tamamlama (Eski) yanıtındaki yer kimliği
  2. Yer Adı Otomatik Tamamlama (Eski) isteğinde kullanılan oturum jetonu
  3. İhtiyacınız olan Yer Adı Otomatik Tamamlama (Eski) veri alanlarını belirten fields parametresi

Hayır, yalnızca adres ve konum gerekiyor

Yer Adı Otomatik Tamamlama (Eski) kullanımınızın performansına bağlı olarak, Geocoding API, uygulamanız için Yer Ayrıntıları (Eski) API'sinden daha uygun maliyetli bir seçenek olabilir. Her uygulamanın Yer Adı Otomatik Tamamlama (Eski) verimliliği; kullanıcıların ne girdiğine, uygulamanın nerede kullanıldığına ve performans optimizasyonuyla ilgili en iyi uygulamaların hayata geçirilip geçirilmediğine bağlı olarak değişir.

Aşağıdaki soruyu yanıtlamak için bir kullanıcının uygulamanızda Yer Adı Otomatik Tamamlama (Eski) tahmini seçmeden önce ortalama kaç karakter yazdığını analiz edin.

Kullanıcılarınız ortalama dört veya daha az istekte bir Yer Adı Otomatik Tamamlama (Eski) tahminini seçiyor mu?

Evet

Oturum jetonları olmadan Yer Adı Otomatik Tamamlama (Eski) programatik olarak uygulayın ve seçilen yer tahmini için Geocoding API'yi çağırın.
Geocoding API, adresleri ve enlem/boylam koordinatlarını sağlar. Seçilen yer tahminiyle ilgili dört Autocomplete - Per Request (İstek Başına Otomatik Tamamlama) isteği ve bir Geocoding API (Coğrafi Kodlama API'si) çağrısı yapmak, oturum başına oturum başına Yer Otomatik Tamamlama (Eski) maliyetinden daha düşüktür.1

Kullanıcılarınızın aradıkları tahmini daha az karakterle almalarına yardımcı olmak için performansla ilgili en iyi uygulamaları kullanabilirsiniz.

Hayır

Yer Ayrıntıları (Eski) ile oturuma dayalı Yer Adı Otomatik Tamamlama (Eski) özelliğini kullanın.
Bir kullanıcı, Yer Adı Otomatik Tamamlama (Eski) tahmini seçmeden önce yapmayı beklediğiniz ortalama istek sayısı, oturum başına fiyatlandırmanın maliyetini aştığından Yer Adı Otomatik Tamamlama (Eski) uygulamanız hem Yer Adı Otomatik Tamamlama (Eski) istekleri hem de ilişkili Yer Ayrıntıları (Eski) isteği için oturum başına bir oturum jetonu kullanmalıdır. 1

Widget uygulama
Oturum yönetimi, JavaScript, Android, veya iOS widget'larına otomatik olarak yerleştirilmiştir. Buna hem Yer Adı Otomatik Tamamlama (eski) istekleri hem de seçilen tahminde Yer Ayrıntıları (eski) isteği dahildir. Yalnızca ihtiyacınız olan alanları istediğinizden emin olmak için fields parametresini belirttiğinizden emin olun.

Programatik uygulama
Yer Adı Otomatik Tamamlama (Eski) isteklerinizde oturum jetonu kullanın. Seçilen tahminle ilgili Yer Ayrıntıları (Eski) isteğinde bulunurken aşağıdaki parametreleri ekleyin:

  1. Yer Adı Otomatik Tamamlama (Eski) yanıtındaki yer kimliği
  2. Yer Adı Otomatik Tamamlama (Eski) isteğinde kullanılan oturum jetonu
  3. Adres ve geometri gibi fields parametresini belirten Temel Veri alanları

Yer Adı Otomatik Tamamlama (Eski) isteklerini geciktirmeyi düşünün
Uygulamanızın daha az istekte bulunması için Yer Adı Otomatik Tamamlama (Eski) isteğini kullanıcı ilk üç veya dört karakteri yazana kadar geciktirmek gibi stratejiler kullanabilirsiniz. Örneğin, kullanıcı üçüncü karakteri yazdıktan sonra her karakter için Yer Adı Otomatik Tamamlama (Eski) isteğinde bulunmak, kullanıcının yedi karakter yazıp bir Geocoding API isteğinde bulunduğunuz bir tahmini seçmesi durumunda toplam maliyetin 4 Yer Adı Otomatik Tamamlama (Eski) İsteği + Coğrafi Kodlama olacağı anlamına gelir.1

İstekleri geciktirerek ortalama programatik istek sayınızı dörtten aşağıya düşürebilirseniz Coğrafi Kodlama API'si ile yüksek performanslı Yer Adı Otomatik Tamamlama (Eski) uygulamasıyla ilgili yönergeleri uygulayabilirsiniz. İsteklerin geciktirilmesinin, her yeni tuş vuruşunda tahmin görmeyi bekleyen kullanıcı tarafından gecikme olarak algılanabileceğini unutmayın.

Kullanıcılarınızın aradıkları tahmini daha az karakterle almalarına yardımcı olmak için performansla ilgili en iyi uygulamaları kullanabilirsiniz.


  1. Maliyetler için Google Haritalar Platformu fiyatlandırma listeleri başlıklı makaleyi inceleyin.

Performansla ilgili en iyi uygulamalar

Aşağıdaki yönergelerde, Yer Adı Otomatik Tamamlama (Eski) performansını optimize etmenin yolları açıklanmaktadır:

  • Place Autocomplete (Legacy) uygulamanıza ülkeye özgü kısıtlamalar, konum ağırlığı ve (programatik uygulamalar için) dil tercihi ekleyin. Dil tercihi, kullanıcının tarayıcısından veya mobil cihazından dil tercihlerini alan widget'larda gerekli değildir.
  • Yer Adı Otomatik Tamamlama (Eski) özelliğine harita eşlik ediyorsa konumu harita görüntü alanına göre yönlendirebilirsiniz.
  • Kullanıcı, Yer Adı Otomatik Tamamlama (Eski) tahminlerinden birini seçmediğinde (genellikle bu tahminlerin hiçbiri istenen sonuç adresi olmadığı için) daha alakalı sonuçlar elde etmek amacıyla orijinal kullanıcı girişini yeniden kullanabilirsiniz:
    • Kullanıcının yalnızca adres bilgilerini girmesini bekliyorsanız Geocoding API çağrısında orijinal kullanıcı girişini yeniden kullanın.
    • Kullanıcının belirli bir yer için ad veya adresle sorgu girmesini bekliyorsanız Yer Ayrıntıları (Eski) isteği kullanın. Sonuçların yalnızca belirli bir bölgede olması bekleniyorsa konum önceliği kullanın.
    Geocoding API'ye başvurmanın en iyi seçenek olduğu diğer senaryolar şunlardır:
    • Kullanıcılar, bir bina içindeki belirli birimlerin veya dairelerin adresleri gibi alt tesis adreslerini girerken. Örneğin, "Stroupežnického 3191/17, Praha" Çekçe adresi, Yer Adı Otomatik Tamamlama (Eski) özelliğinde kısmi bir tahmin oluşturur.
    • New York City'de "23-30 29th St, Queens" veya Hawaii'deki Kauai adasında "47-380 Kamehameha Hwy, Kaneohe" gibi yol segmenti önekleri içeren adresleri giren kullanıcılar.

Konum önyargısı

Bir location parametresi ve bir radius parametresi ileterek sonuçları belirli bir alana yönlendirin. Bu, Yer Adı Otomatik Tamamlama (Eski) özelliğine, tanımlanan alan içindeki sonuçları göstermeyi tercih etmesi talimatını verir. Tanımlanan alanın dışındaki sonuçlar gösterilmeye devam edebilir. Sonuçları filtreleyerek yalnızca belirli bir ülke içindeki yerleri göstermek için includedRegionCodes parametresini kullanabilirsiniz.

Konum kısıtlama

locationRestriction parametresini ileterek sonuçları belirli bir alanla sınırlayın.

Ayrıca, location ve radius parametreleriyle tanımlanan bölgeyle sonuçları kısıtlamak için strictbounds parametresini ekleyebilirsiniz. Bu, Yer Adı Otomatik Tamamlama (Eski) hizmetine yalnızca bu bölgedeki sonuçları döndürmesini söyler.