Yer kimlikleri

Koleksiyonlar ile düzeninizi koruyun İçeriği tercihlerinize göre kaydedin ve kategorilere ayırın.
Platform seçin: Android iOS JavaScript Web Hizmeti

Yer kimlikleri, bir yeri Google Yerler veritabanında ve Google Haritalar'da benzersiz bir şekilde tanımlar. Yer kimlikleri, aşağıdaki Haritalar API'lerine yapılan isteklerde kabul edilir:

  • Geokodlama API'si web hizmetinde ve Haritalar Kodlama API'sında Coğrafi Kodlama Hizmeti'nde bir Yer Kimliği'nin adresi alınıyor.
  • Directions API web hizmeti ve Directions Service, Maps JavaScript API'de kaynak, hedef ve ara noktalar belirtme.
  • Mesafe Matrisi API'si web hizmetinde ve Mesafe Matrisi Hizmeti'nde Haritalar JavaScript API'sinde kalkış noktalarını ve hedefleri belirtme.
  • Yerler API'si web hizmetinde Yer Ayrıntıları, Android için Yerler SDK'sı, iOS için Yerler SDK'sı ve Yerler Kitaplığı, JavaScript API'sinde alma.
  • Maps Yerleştirme API'sinde Yer Kimliği parametreleri kullanılıyor.
  • Haritalar URL'lerinde arama sorguları alınıyor.
  • Roads API'de hız sınırları gösteriliyor.
  • Veriye dayalı stilde sınır poligonlarını bulma ve biçimlendirme.

Belirli bir yerin kimliğini bulma

Belirli bir yerin yer kimliğini mi arıyorsunuz? Bir yer aramak ve kimliğini almak için aşağıdaki yer kimliği bulucuyu kullanın:

Alternatif olarak, Maps JavaScript API dokümanlarında yer koduyla birlikte yer kimliği bulucuyu görüntüleyebilirsiniz.

Genel bakış

Yer kimliği, bir yeri benzersiz şekilde tanımlayan metinsel tanımlayıcıdır. Tanımlayıcının uzunluğu değişebilir (Yer Kimlikleri için maksimum uzunluk yoktur). Örnekler:

  • ChIJgUbEo8cfqokR5lP9_Wh_DaM
  • GhIJQWDl0CIeQUARxks3icF8U8A
  • EicxMyBNYXJrZXQgU3QsIFdpbG1pbmd0b24sIE5DIDI4NDAxLCBVU0EiGhIYChQKEgnRTo6ixx-qiRHo_bbmkCm7ZRAN
  • EicxMyBNYXJrZXQgU3QsIFdpbG1pbmd0b24sIE5DIDI4NDAxLCBVU0E
  • IhoSGAoUChIJ0U6OoscfqokR6P225pApu2UQDQ

Yer kimlikleri; işletmeler, önemli noktalar, parklar ve kavşaklar gibi çoğu konumda kullanılabilir. Aynı yerin veya konumun birden fazla farklı yer kimliğine sahip olması mümkündür. Yer kimlikleri zamanla değişebilir.

Yerler API'sinde ve çeşitli Google Haritalar Platformu API'lerinde aynı yer kimliğini kullanabilirsiniz. Örneğin, Places API, Maps JavaScript API, Geocode API, Maps Yerleştirme API ve Roads API'de bir yere referans vermek için aynı yer kimliğini kullanabilirsiniz.

Yer kimliğini kullanarak yer ayrıntılarını alın

Yer kimlikleri, Google Haritalar Platformu Hizmet Şartları'nın Bölüm 3.2.3(b)'de belirtilen önbelleğe alma kısıtlamalarından muaftır. Bir yer için yer kimliğini tanımladıktan sonra, söz konusu yeri tekrar aradığınızda bu değeri yeniden kullanabilirsiniz. Daha fazla bilgi için aşağıdaki Yer kimliklerini daha sonra kullanmak üzere kaydetme bölümüne bakın.

Yer kimliklerini kullanmanın yaygın bir yolu, bir yeri aramaktır (örneğin, Maps JavaScript API'deki Places API veya Places kitaplığını kullanarak) ve ardından yer ayrıntılarını almak için döndürülen yer kimliğini kullanmaktır. Yer kimliğini depolayabilir ve daha sonra aynı yer ayrıntılarını almak için kullanabilirsiniz. Aşağıda yer kimliklerini kaydetme hakkında bilgi edinin.

Yerler API'sini kullanma örneği

Yerler API'sini kullanarak, bir Yer Arama isteğinde bulunarak bir yer kimliği bulabilirsiniz.

Aşağıdaki örnekte, Avustralya, Sidney'de bir noktanın 1500 metrelik yarıçapında yer alan ve "gemi seyahati" kelimesini içeren "restoran" türündeki yerler için arama isteği verilmiştir:

https://maps.googleapis.com/maps/api/place/nearbysearch/json?location=-33.8670522,151.1957362&radius=1500&type=restaurant&keyword=cruise&key=YOUR_API_KEY

Yanıt, bu snippet'te gösterildiği gibi place_id alanına bir yer kimliği ekler:

{
  "html_attributions" : [],
  "results" : [
    {
      "geometry" : {
        "location" : {
          "lat" : -33.870775,
          "lng" : 151.199025
        }
      },
      ...
      "place_id" : "ChIJrTLr-GyuEmsRBfy61i59si0",
      ...
    }
  ],
  "status" : "OK"
}

Yanıttaki tüm alanların açıklaması için Yer Arama dokümanlarına bakın.

Artık place_id parametresine yer kimliğini yerleştirerek bir Yer Ayrıntıları isteği gönderebilirsiniz:

https://maps.googleapis.com/maps/api/place/details/json?place_id=ChIJrTLr-GyuEmsRBfy61i59si0&key=YOUR_API_KEY

Yer kimliklerini daha sonra kullanmak üzere kaydetme

Yer kimlikleri, Google Haritalar Platformu Hizmet Şartları'nın Bölüm 3.2.3(a)'da belirtilen önbelleğe alma kısıtlamalarından muaftır. Bu nedenle, yer kimliği değerlerini daha sonra kullanmak üzere saklayabilirsiniz.

Depolanan yer kimlikleri yenileniyor

12 aydan daha eski olan yer kimliklerini yenilemenizi öneririz. Yer kimliklerini ücretsiz olarak Yer Ayrıntıları isteği göndererek yenileyebilirsiniz. Bunun için fields parametresinde yalnızca place_id alanını belirtmeniz gerekir.

Örneğin:

  https://maps.googleapis.com/maps/api/place/details/json?place_id=ChIJ05IRjKHxEQ0RJLV_5NLdK2w&fields=place_id&key=YOUR_API_KEY
  

Bu çağrı tetiklenecek Yer Ayrıntıları - Kimlik Yenileme SKU. Ancak bu istek ayrıca NOT_FOUND durum kodu da döndürebilir. Stratejilerden biri, her yer kimliğini döndüren asıl isteği depolamaktır. Bir yer kimliği geçersiz hale gelirse yeni sonuçlar almak için bu isteği yeniden gönderebilirsiniz. Bu sonuçlar orijinal yeri içerebilir veya içermeyebilir. İstek için ücret alınabilir.

Yer kimlikleri kullanılırken karşılaşılan hata kodları

INVALID_REQUEST durum kodu, belirtilen yer kimliğinin geçerli olmadığını belirtir. INVALID_REQUEST değeri, yer kimliği kesildiğinde veya başka bir şekilde değiştirildiğinde döndürülebilir ve artık doğru olmayabilir.

NOT_FOUND durum kodu, belirtilen yer kimliğinin eski olduğunu belirtir. Bir işletme kapanırsa veya yeni bir konuma taşınırsa yer kimliği geçerliliğini yitirebilir. Google Haritalar veritabanındaki büyük ölçekli güncellemeler nedeniyle yer kimlikleri değişebilir. Bu tür durumlarda bir yer yeni bir yer kimliği alabilir ve eski kimlik, NOT_FOUND yanıtı döndürür.

Özellikle, bazı yer kimliği türleri bazen NOT_FOUND yanıtına neden olabilir veya API yanıtta farklı bir yer kimliği döndürebilir. Bu yer kimliği türleri şunlardır:

  • Google Haritalar'da kesin adres olarak bulunmayan ancak bir adres aralığından tahmin edilen açık adresler.
  • İsteğin bir şehir veya konum da belirttiği uzun rotanın segmentleri.
  • Kesişmeler.
  • Adres türü subpremise olan yerler.

Bu kimlikler genellikle uzun bir dize biçimindedir (Yer Kimlikleri için maksimum uzunluk yoktur). Örneğin:

EpID4LC14LC_4LCo4LCv4LGN4LCo4LCX4LCw4LGNIC0g4LC44LGI4LCm4LGN4LCs4LC-4LCm4LGNIOCwsOCxi-CwoeCxjeCwoeCxgSAmIOCwteCwv-CwqOCwr-CxjSDgsKjgsJfgsLDgsY0g4LCu4LGG4LCv4LC_4LCo4LGNIOCwsOCxi-CwoeCxjeCwoeCxgSwg4LC14LC_4LCo4LCv4LGNIOCwqOCwl-CwsOCxjSDgsJXgsL7gsLLgsKjgsYAsIOCwsuCwleCxjeCwt-CxjeCwruCwv-CwqOCwl-CwsOCxjSDgsJXgsL7gsLLgsKjgsYAsIOCwuOCwsOCxguCwsOCxjSDgsKjgsJfgsLDgsY0g4LC14LGG4LC44LGN4LCf4LGNLCDgsLjgsK_gsYDgsKbgsL7gsKzgsL7gsKbgsY0sIOCwueCxiOCwpuCwsOCwvuCwrOCwvuCwpuCxjSwg4LCk4LGG4LCy4LCC4LCX4LC-4LCjIDUwMDA1OSwg4LCt4LC-4LCw4LCk4LCm4LGH4LC24LCCImYiZAoUChIJ31l5uGWYyzsR9zY2qk9lDiASFAoSCd9ZebhlmMs7Efc2NqpPZQ4gGhQKEglDz61OZpjLOxHgDJCFY-o1qBoUChIJi37TW2-YyzsRr_uv50r7tdEiCg1MwFcKFS_dyy4