Distance Matrix API (eski) isteği ve yanıtı

Avrupa Ekonomik Alanı (AEA) geliştiricileri

Giriş

Bir Distance Matrix API (Eski) isteği şu biçimde olur:

https://maps.googleapis.com/maps/api/distancematrix/outputFormat?parameters

Burada outputFormat aşağıdaki değerlerden biri olabilir:

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

Bazı parametreler zorunlu, bazıları ise isteğe bağlıdır. URL'lerde standart olduğu gibi, tüm parametreler "ve" işareti (&) kullanılarak ayrılır. Tüm ayrılmış karakterler (ör. artı işareti "+") URL olarak kodlanmalıdır. Parametrelerin listesi ve olası değerleri aşağıda sıralanmıştır.

Gerekli parametreler

  • hedefler

    Seyahat mesafesini ve süresini hesaplamak için bitiş noktası olarak kullanılacak bir veya daha fazla konum. Hedefler parametresinin seçenekleri, kaynaklar parametresinin seçenekleriyle aynıdır.

  • kökenler

    Seyahat mesafesini ve süresini hesaplamak için başlangıç noktası. Dikey çubuk karakteri (|) ile ayrılmış bir veya daha fazla konumu yer kimliği, adres ya da enlem/boylam koordinatları biçiminde sağlayabilirsiniz:

    • Yer kimliği: Bir yer kimliği sağlarsanız place_id: ön ekini eklemeniz gerekir.
    • Adres: Bir adres iletirseniz hizmet, dizeyi coğrafi olarak kodlar ve mesafeyi hesaplamak için enlem/boylam koordinatına dönüştürür. Bu koordinat, Geocoding API tarafından döndürülen koordinattan farklı olabilir. Örneğin, binanın merkezinden ziyade girişini gösterebilir.
      Not: Adres veya enlem/boylam koordinatları yerine yer kimliklerinin kullanılması tercih edilir. Koordinat kullanıldığında nokta her zaman bu koordinatlara en yakın yola sabitlenir. Bu yol, mülke erişim noktası olmayabilir veya hatta hedefe hızlı ya da güvenli bir şekilde ulaşılmasını sağlamayabilir. Adres kullanıldığında binanın girişine değil, binanın merkezine olan mesafe gösterilir.
    • Koordinatlar: Enlem/boylam koordinatları iletirseniz bu koordinatlar en yakın yola tutturulur. Yer kimliği iletmek tercih edilir. Koordinat iletiyorsanız enlem ve boylam değerleri arasında boşluk olmadığından emin olun.
    • Plus kodları, küresel kod veya bileşik kod olarak biçimlendirilmelidir. Artı kodlarını burada gösterildiği gibi biçimlendirin (artı işaretleri %2B olarak URL'den kaçırılır ve boşluklar %20 olarak URL'den kaçırılır):
      • global code, 4 karakterlik bir alan kodu ve 6 karakterlik veya daha uzun bir yerel koddur (849VCWC8+R9, 849VCWC8%2BR9 olarak kodlanır).
      • Bileşik kod, açık bir konuma sahip 6 karakterli veya daha uzun bir yerel koddur (CWC8+R9 Mountain View, CA, USA, CWC8%2BR9%20Mountain%20View%20CA%20USA olarak kodlanır).
    • Kodlanmış Çoklu Çizgi Alternatif olarak, Kodlanmış Çoklu Çizgi Algoritması'nı kullanarak kodlanmış bir koordinat grubu da sağlayabilirsiniz. Bu, özellikle çok sayıda başlangıç noktası varsa yararlıdır. Çünkü kodlanmış bir çoklu çizgi kullanıldığında URL önemli ölçüde kısalır.
      • Kodlanmış çoklu çizgilerin önüne enc: eklenmeli ve ardından iki nokta üst üste : işareti konmalıdır. Örneğin: origins=enc:gfo}EtohhU:
      • Ayrıca, düşey çubuk karakteri | ile ayrılmış birden fazla kodlanmış çoklu çizgi de ekleyebilirsiniz. Örneğin:
        origins=enc:wc~oAwquwMdlTxiKtqLyiK:|enc:c~vnAamswMvlTor@tjGi}L:|enc:udymA{~bxM:
        

İsteğe bağlı parametreler

  • arrival_time

    Toplu taşıma yol tarifleri için tercih edilen varış zamanını, 1 Ocak 1970 UTC tarihinden bu yana geçen saniye cinsinden belirtir. departure_time veya arrival_time değerini belirtebilirsiniz ancak ikisini birden belirtemezsiniz. arrival_time değerinin tam sayı olarak belirtilmesi gerektiğini unutmayın.

  • kaçınmak

    Mesafeler, belirli kısıtlamalara uygun şekilde hesaplanabilir. Kısıtlamalar, "avoid" parametresinin kullanılması ve bu parametreye, kaçınılması gereken kısıtlamayı belirten bir bağımsız değişken eklenmesiyle belirtilir. Aşağıdaki kısıtlamalar desteklenir:

    • tolls, hesaplanan rotada ücretli yolların/köprülerin kullanılmaması gerektiğini gösterir.
    • highways, hesaplanan rotada otoyolların kullanılmaması gerektiğini gösterir.
    • ferries, hesaplanan rotada feribot kullanılmaması gerektiğini gösterir.
    • indoor, hesaplanan rotada yürüme ve toplu taşıma yol tarifleri için kapalı alandaki adımlardan kaçınılması gerektiğini gösterir.

    Ücretli geçişler, otoyollar ve feribotların herhangi bir kombinasyonundan kaçınan bir rota isteğinde bulunmak mümkündür. Bunun için her iki kısıtlamayı da "avoid" parametresine iletmeniz gerekir. Örneğin avoid=tolls|highways|ferries.

    Not: Kısıtlamaların eklenmesi, kısıtlanmış özelliği içeren rotaları engellemez. Sonuç, daha uygun rotalara yönlendirilir.
  • departure_time

    Tercih edilen kalkış zamanını belirtir. Zamanı, 1 Ocak 1970 UTC tarihinden bu yana geçen saniye sayısı olarak belirtebilirsiniz. 9999-12-31T23:59:59.999999999Z tarihinden sonraki bir departure_time belirtilirse API, departure_time değerini 9999-12-31T23:59:59.999999999Z olarak değiştirir. Alternatif olarak, kalkış saatini geçerli saate (en yakın saniyeye kadar doğru) ayarlayan "now" değerini belirtebilirsiniz. Kalkış saati iki durumda belirtilebilir:

    • Seyahat modunun toplu taşıma olduğu istekler için: İsteğe bağlı olarak departure_time veya arrival_time değerlerinden birini belirtebilirsiniz. Herhangi bir saat belirtilmezse departure_time varsayılan olarak şu anki zamana ayarlanır (yani kalkış saati varsayılan olarak geçerli saat olur).
    • Seyahat modunun araba olduğu istekler için: Trafik koşullarını dikkate alan bir rota ve yolculuk süresi (yanıt alanı: duration_in_traffic) almak üzere departure_time değerini belirtebilirsiniz. departure_time, geçerli zamana veya gelecekteki bir zamana ayarlanmalıdır. Geçmişte olamaz.
    Not: Kalkış saati belirtilmemişse rota ve süre seçimi, yol ağına ve ortalama zamandan bağımsız trafik koşullarına göre yapılır. Belirli bir isteğin sonuçları, yol ağındaki değişiklikler, güncellenen ortalama trafik koşulları ve hizmetin dağıtılmış yapısı nedeniyle zaman içinde değişebilir. Sonuçlar, neredeyse eşdeğer rotalar arasında herhangi bir zamanda veya sıklıkta da değişiklik gösterebilir.
    Not: departure_time belirtilen Distance Matrix istekleri, mode=driving istek başına en fazla 100 öğe ile sınırlıdır. Kaynak sayısı ile hedef sayısının çarpımı, öğe sayısını tanımlar.
  • 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 için okunabilir bir açık adres sağlamak üzere elinden geleni yapar. Bu hedefi gerçekleştirmek için tercih edilen dili dikkate alarak gerekirse kullanıcının okuyabileceği bir alfabeye çevrilmiş, yerel dildeki sokak adreslerini döndü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.
    • Ad, tercih edilen dilde mevcut değilse 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ısıdır.
  • mod

    Mesafeleri ve yol tariflerini hesaplamak için kullanılacak ulaşım şeklini belirleyebilirsiniz. Varsayılan olarak DRIVING modu kullanılır. Varsayılan olarak, yol tarifleri araba yol tarifi olarak hesaplanır. Aşağıdaki seyahat modları desteklenir:

    • driving (varsayılan), yol ağını kullanarak standart arabayla yol tariflerini veya mesafeyi gösterir.
    • walking yaya yollarını ve kaldırımları (mevcut olduğu yerlerde) kullanarak yaya yol tarifi veya mesafe isteğinde bulunur.
    • bicycling Bisiklet yollarını ve tercih edilen sokakları (mevcut olduğunda) kullanarak bisikletle yol tarifi veya mesafe isteğinde bulunma
    • transit Toplu taşıma rotalarını kullanarak yol tarifi veya mesafe isteğinde bulunma (kullanılabildiği yerlerde) Modu toplu taşıma olarak ayarlarsanız isteğe bağlı olarak departure_time veya arrival_time belirtebilirsiniz. Herhangi bir saat belirtilmezse, departure_time varsayılan olarak şu anki zamana ayarlanır (yani kalkış saati varsayılan olarak geçerli zamana ayarlanır). İsteğe bağlı olarak transit_mode ve/veya transit_routing_preference da ekleyebilirsiniz.
    Not: Hem yaya hem de bisiklet yol tarifleri bazen net yaya veya bisiklet yollarını içermeyebilir. Bu nedenle, bu yol tarifleri döndürülen sonuçta uyarılar gösterir. Bu uyarıları kullanıcıya göstermeniz gerekir.
    Not: Toplu taşıma yolculukları, veri sağlayıcılar tarafından sağlanan toplu taşıma bilgilerinin kullanılabilirliğine bağlı olarak geçmişte en fazla 7 gün veya gelecekte en fazla 100 gün için kullanılabilir. Toplu taşıma programları sık sık değişir, mevcut toplu taşıma yolculukları zaman içinde değişebilir ve çok önceden yapılan tahminler için tutarlı sonuçlar sağlanacağı garanti edilmez.
  • 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), ISO 3166-1 kodu ise "gb"dir (teknik olarak "Büyük Britanya ve Kuzey İrlanda Birleşik Krallığı" tüzel kişiliği için).

  • traffic_model

    Trafikte geçirilen süreyi hesaplarken kullanılacak varsayımları belirtir. Bu ayar, yanıttaki duration_in_traffic alanında döndürülen değeri etkiler. Bu alan, geçmiş ortalamalara dayalı olarak trafikteki tahmini süreyi içerir. traffic_model parametresi yalnızca istekte departure_time bulunan arabayla yol tarifleri için belirtilebilir. Bu parametre için kullanılabilir değerler şunlardır:

    • best_guess (varsayılan), döndürülen duration_in_traffic değerinin, hem geçmiş trafik koşulları hem de anlık trafik hakkında bilinenler göz önüne alındığında seyahat süresinin en iyi tahmini olması gerektiğini gösterir. Canlı trafik, departure_time şu ana ne kadar yakınsa o kadar önemli hale gelir.
    • pessimistic, döndürülen duration_in_traffic değerinin çoğu günde gerçek seyahat süresinden daha uzun olması gerektiğini gösterir. Ancak özellikle kötü trafik koşullarının olduğu bazı günlerde bu değer aşılabilir.
    • optimistic, döndürülen duration_in_traffic değerinin çoğu günde gerçek seyahat süresinden daha kısa olması gerektiğini gösterir. Ancak trafik koşullarının özellikle iyi olduğu bazı günlerde bu değerden daha hızlı olabilir.

    best_guess için varsayılan değer, kullanım alanlarının büyük çoğunluğu için en yararlı tahminleri sağlar. best_guess tahmin modeli, canlı trafik bilgilerini entegre etme şekli nedeniyle best_guess seyahat süresi tahmininin optimistic süresinden daha kısa veya pessimistic süresinden daha uzun olması mümkündür.

  • transit_mode

    Tercih edilen bir veya daha fazla toplu taşıma modu belirtir. Bu parametre yalnızca toplu taşıma yol tarifleri için belirtilebilir. Parametre aşağıdaki bağımsız değişkenleri destekler:

    • bus, hesaplanan rotada otobüsle seyahatin tercih edilmesi gerektiğini gösterir.
    • subway, hesaplanan rotada metroyla seyahatin tercih edilmesi gerektiğini gösterir.
    • train, hesaplanan rotada trenle seyahatin tercih edilmesi gerektiğini gösterir.
    • tram, hesaplanan rotada tramvay ve hafif raylı sistemle seyahatin tercih edilmesi gerektiğini gösterir.
    • rail, hesaplanan rotada tren, tramvay, hafif raylı sistem ve metro ile seyahatin tercih edilmesi gerektiğini gösterir. Bu, transit_mode=train|tram|subway ile eşdeğerdir.
  • transit_routing_preference

    Toplu taşıma rotalarıyla ilgili tercihleri belirtir. Bu parametreyi kullanarak, API'nin seçtiği varsayılan en iyi rotayı kabul etmek yerine döndürülen seçenekleri tercih edebilirsiniz. Bu parametre yalnızca toplu taşıma araçlarıyla gidilen yerler için belirtilebilir. Parametre aşağıdaki bağımsız değişkenleri destekler:

    • less_walking, hesaplanan rotada sınırlı miktarda yürüyüş tercih edilmesi gerektiğini gösterir.
    • fewer_transfers, hesaplanan rotada sınırlı sayıda aktarma tercih edilmesi gerektiğini gösterir.
  • birim

    Sonuçları görüntülerken kullanılacak birim sistemini belirtir.

    Not: Bu birim sistemi ayarı yalnızca mesafe alanlarında gösterilen metni etkiler. Mesafe alanları, her zaman metre cinsinden ifade edilen değerler de içerir.

İstek örnekleri

Bu örnekte, hedef koordinatları belirtmek için enlem/boylam koordinatları kullanılmaktadır:

URL

https://maps.googleapis.com/maps/api/distancematrix/json
  ?destinations=40.659569%2C-73.933783%7C40.729029%2C-73.851524%7C40.6860072%2C-73.6334271%7C40.598566%2C-73.7527626
  &origins=40.6655101%2C-73.89188969999998
  &key=YOUR_API_KEY

curl

curl -L -X GET 'https://maps.googleapis.com/maps/api/distancematrix/json?origins=40.6655101%2C-73.89188969999998&destinations=40.659569%2C-73.933783%7C40.729029%2C-73.851524%7C40.6860072%2C-73.6334271%7C40.598566%2C-73.7527626&key=YOUR_API_KEY'

Bu örnekte, hedef koordinatları belirtmek için artı kodlar kullanılır:

URL

https://maps.googleapis.com/maps/api/distancematrix/json
  ?destinations=San%20Francisco
  &origins=849VCWC8%2BR9
  &key=YOUR_API_KEY

curl

curl -L -X GET 'https://maps.googleapis.com/maps/api/distancematrix/json?origins=849VCWC8%2BR9&destinations=San%20Francisco&key=YOUR_API_KEY'

Bu örnekte, aynı istek kodlanmış bir çoklu çizgi kullanılarak gösterilmektedir:

URL

https://maps.googleapis.com/maps/api/distancematrix/json
  ?destinations=enc%3A_kjwFjtsbMt%60EgnKcqLcaOzkGari%40naPxhVg%7CJjjb%40cqLcaOzkGari%40naPxhV%3A
  &origins=40.6655101%2C-73.89188969999998
  &key=YOUR_API_KEY

curl

curl -L -X GET 'https://maps.googleapis.com/maps/api/distancematrix/json?origins=40.6655101%2C-73.89188969999998&destinations=enc%3A_kjwFjtsbMt%60EgnKcqLcaOzkGari%40naPxhVg%7CJjjb%40cqLcaOzkGari%40naPxhV%3A&key=YOUR_API_KEY'

Trafik bilgileri

Trafik bilgileri, aşağıdakilerin tümü geçerli olduğunda kullanılır (Bunlar, Distance Matrix yanıtında duration_in_traffic alanını almak için gereken koşullardır):

  • Seyahat mode parametresi driving veya belirtilmemiş (driving, varsayılan ulaşım şeklidir).
  • İstek, geçerli bir departure_time parametresi içeriyor. departure_time, şu anki saate veya gelecekteki bir saate ayarlanabilir. Geçmişte olamaz.

İsteğe bağlı olarak, trafikteki süreyi hesaplarken kullanılacak varsayımları belirtmek için isteğinize traffic_model parametresini ekleyebilirsiniz.

Aşağıdaki URL, Boston, MA veya Charlestown, MA ile Lexington, MA ve Concord, MA arasındaki sürüş mesafeleri için bir Mesafe Matrisi isteği başlatır. İstek, Distance Matrix yanıtında duration_in_traffic alanını döndürmek için gereken tüm koşulları karşılayan bir kalkış saati içeriyor.

URL

https://maps.googleapis.com/maps/api/distancematrix/json
  ?departure_time=now
  &destinations=Lexington%2CMA%7CConcord%2CMA
  &origins=Boston%2CMA%7CCharlestown%2CMA
  &key=YOUR_API_KEY

curl

curl -L -X GET 'https://maps.googleapis.com/maps/api/distancematrix/json?origins=Boston%2CMA%7CCharlestown%2CMA&destinations=Lexington%2CMA%7CConcord%2CMA&departure_time=now&key=YOUR_API_KEY'

JSON

{
  "destination_addresses": ["Lexington, MA, USA", "Concord, MA, USA"],
  "origin_addresses": ["Boston, MA, USA", "Charlestown, Boston, MA, USA"],
  "rows":
    [
      {
        "elements":
          [
            {
              "distance": { "text": "33.3 km", "value": 33253 },
              "duration": { "text": "27 mins", "value": 1620 },
              "duration_in_traffic": { "text": "34 mins", "value": 2019 },
              "status": "OK",
            },
            {
              "distance": { "text": "41.5 km", "value": 41491 },
              "duration": { "text": "33 mins", "value": 1981 },
              "duration_in_traffic": { "text": "39 mins", "value": 2342 },
              "status": "OK",
            },
          ],
      },
      {
        "elements":
          [
            {
              "distance": { "text": "31.1 km", "value": 31100 },
              "duration": { "text": "26 mins", "value": 1543 },
              "duration_in_traffic": { "text": "29 mins", "value": 1754 },
              "status": "OK",
            },
            {
              "distance": { "text": "39.3 km", "value": 39338 },
              "duration": { "text": "32 mins", "value": 1904 },
              "duration_in_traffic": { "text": "35 mins", "value": 2077 },
              "status": "OK",
            },
          ],
      },
    ],
  "status": "OK",
}

XML


 OK
 Boston, MA, USA
 Charlestown, Boston, MA, USA
 Lexington, MA, USA
 Concord, MA, USA
 
  
   OK
   
    1620
    27 mins
   
   
    33253
    33.3 km
   
   
    2018
    34 mins
   
  
  
   OK
   
    1981
    33 mins
   
   
    41491
    41.5 km
   
   
    2342
    39 mins
   
  
 
 
  
   OK
   
    1543
    26 mins
   
   
    31100
    31.1 km
   
   
    1759
    29 mins
   
  
  
   OK
   
    1904
    32 mins
   
   
    39338
    39.3 km
   
   
    2077
    35 mins
   
  
 

Konum değiştiriciler

.

Sürücülerin belirli bir konuma nasıl yaklaşması gerektiğini belirtmek için konum değiştiriciler kullanabilirsiniz. Örneğin, yolun hangi tarafının kullanılacağını belirtmek için side_of_road değiştiricisini kullanabilir veya doğru seyahat yönünü belirtmek için bir başlık belirtebilirsiniz.

Hesaplanan rotaların yolun belirli bir tarafından geçmesi gerektiğini belirtme

Bir konum belirtirken side_of_road: önekini kullanarak hesaplanan rotanın, ara noktanın eğilimli olduğu yol tarafına gitmesini isteyebilirsiniz. Örneğin, bu istek, aracın yolun, ara noktanın yönlendirildiği tarafında durması için uzun bir rotanın mesafesini döndürür:

URL

https://maps.googleapis.com/maps/api/distancematrix/json
  ?destinations=side_of_road%3A37.7663444%2C-122.4412006
  &origins=37.7680296%2C-122.4375126
  &key=YOUR_API_KEY

curl

curl -L -X GET 'https://maps.googleapis.com/maps/api/distancematrix/json?origins=37.7680296%2C-122.4375126&destinations=side_of_road%3A37.7663444%2C-122.4412006&key=YOUR_API_KEY'

side_of_road:, kodlanmış çoklu çizgilerle birlikte kullanıldığında değiştirici, çoklu çizgi üzerindeki her konuma uygulanır. Örneğin, bu istekteki iki hedef de parametreyi kullanır:

URL

https://maps.googleapis.com/maps/api/distancematrix/json
  ?destinations=side_of_road%3Aenc%3A%7BoqeF%60fejV%5BnC%3A
  &origins=San%20Francisco%20City%20hall
  &key=YOUR_API_KEY

curl

curl -L -X GET 'https://maps.googleapis.com/maps/api/distancematrix/json?origins=San%20Francisco%20City%20hall&destinations=side_of_road%3Aenc%3A%7BoqeF%60fejV%5BnC%3A&key=YOUR_API_KEY'

side_of_road: değiştiricisi yalnızca şu kısıtlama ile kullanılabilir:

  • Seyahat mode parametresi driving veya belirtilmemiş (driving, varsayılan ulaşım şeklidir).

Hesaplanmış rotaların belirli bir başlığa sahip olması gerektiğini belirtin

Bir konum belirtirken hesaplanan rotanın belirli bir yönde konumdan geçmesini isteyebilirsiniz. Bu başlık, X'in 0 (dahil) ile 360 (hariç) arasında bir tam sayı derece değeri olduğu heading=X: önekiyle belirtilir. 0 değeri kuzeyi, 90 değeri doğuyu gösterir ve saat yönünde devam eder. Örneğin, bu istekte hesaplanan rota, başlangıç noktasından doğuya doğru gidip U dönüşü yapıyor:

URL

https://maps.googleapis.com/maps/api/distancematrix/json
  ?destinations=37.773245%2C-122.469502
  &origins=heading%3D90%3A37.773279%2C-122.468780
  &key=YOUR_API_KEY

curl

curl -L -X GET 'https://maps.googleapis.com/maps/api/distancematrix/json?origins=heading%3D90%3A37.773279%2C-122.468780&destinations=37.773245%2C-122.469502&key=YOUR_API_KEY'

heading=X: değiştiricisi yalnızca şu kısıtlamalarla kullanılabilir:

  • Seyahat mode parametresi driving, bicycling veya belirtilmemiş (driving varsayılan seyahat modudur).
  • side_of_road değiştiricisi aynı konum için belirtilmemiş.
  • Konum, enlem/boylam değeriyle belirtilir. Adresler, yer kimlikleri veya kodlanmış çoklu çizgilerle heading kullanamazsınız.

Distance Matrix isteği ve yanıtları

Aşağıda, Kanada'nın Vancouver, BC şehrinden ve ABD'nin Seattle, WA şehrinden ABD'nin San Francisco, CA şehrine ve Kanada'nın Victoria, BC şehrine olan mesafeyi ve süreyi isteyen örnek bir HTTP isteği gösterilmektedir.

URL

https://maps.googleapis.com/maps/api/distancematrix/json
  ?destinations=San%20Francisco%7CVictoria%20BC
  &language=fr-FR
  &mode=bicycling
  &origins=Vancouver%20BC%7CSeattle
  &key=YOUR_API_KEY

curl

curl -L -X GET 'https://maps.googleapis.com/maps/api/distancematrix/json?origins=Vancouver%20BC%7CSeattle&destinations=San%20Francisco%7CVictoria%20BC&mode=bicycling&language=fr-FR&key=YOUR_API_KEY'

Bu istek, iki kaynak ve iki hedef olmak üzere dört öğe döndürür:

Vancouver - San Francisco Vancouver - Victoria
Seattle - San Francisco Seattle - Victoria

Sonuçlar satırlar halinde döndürülür. Her satırda, her hedefle eşleştirilmiş bir kaynak bulunur.

JSON

{
  "destination_addresses":
    ["San Francisco, Californie, États-Unis", "Victoria, BC, Canada"],
  "origin_addresses":
    ["Vancouver, BC, Canada", "Seattle, Washington, États-Unis"],
  "rows":
    [
      {
        "elements":
          [
            {
              "distance": { "text": "1 712 km", "value": 1711765 },
              "duration": { "text": "3 jours 16 heures", "value": 318119 },
              "status": "OK",
            },
            {
              "distance": { "text": "140 km", "value": 139695 },
              "duration": { "text": "6 heures 49 minutes", "value": 24567 },
              "status": "OK",
            },
          ],
      },
      {
        "elements":
          [
            {
              "distance": { "text": "1 452 km", "value": 1451704 },
              "duration": { "text": "3 jours 2 heures", "value": 266680 },
              "status": "OK",
            },
            {
              "distance": { "text": "146 km", "value": 146500 },
              "duration": { "text": "2 heures 53 minutes", "value": 10374 },
              "status": "OK",
            },
          ],
      },
    ],
  "status": "OK",
}

XML


 OK
 Vancouver, BC, Canada
 Seattle, Washington, États-Unis
 San Francisco, Californie, États-Unis
 Victoria, BC, Canada
 
  
   OK
   
    318119
    3 jours 16 heures
   
   
    1711765
    1 712 km
   
  
  
   OK
   
    24567
    6 heures 49 minutes
   
   
    139695
    140 km
   
  
 
 
  
   OK
   
    266680
    3 jours 2 heures
   
   
    1451704
    1 452 km
   
  
  
   OK
   
    10374
    2 heures 53 minutes
   
   
    146500
    146 km
   
  
 

DistanceMatrixResponse

Alan Zorunlu Tür Açıklama
required Dizi<dize>

API tarafından orijinal isteğinizden döndürülen adres dizisi. origin_addresses ile olduğu gibi, bunlar da uygun durumlarda yerelleştirilir. Bu içerik olduğu gibi okunmalıdır. Biçimlendirilmiş adresleri programatik olarak ayrıştırmayın.

required Dizi<dize>

API tarafından orijinal isteğinizden döndürülen adres dizisi. Bunlar, coğrafi kodlayıcı tarafından biçimlendirilir ve istekle birlikte iletilen dil parametresine göre yerelleştirilir. Bu içerik olduğu gibi okunmalıdır. Biçimlendirilmiş adresleri programatik olarak ayrıştırmayın.

required Array<DistanceMatrixRow>

Her biri status, duration ve distance öğesi içeren bir öğe dizisi.

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

required DistanceMatrixStatus

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

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

isteğe bağlı dize

İstek işlenirken karşılaşılan hataların okunabilir metnini içeren bir dize.

DistanceMatrixStatus

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

  • OK, yanıtın geçerli bir sonuç içerdiğini gösterir.
  • INVALID_REQUEST, sağlanan isteğin geçersiz olduğunu gösterir.
  • MAX_ELEMENTS_EXCEEDED, kaynak ve hedef ürünlerinin sorgu başına sınırı aştığını gösterir.
  • MAX_DIMENSIONS_EXCEEDED, kaynak veya hedef sayısının sorgu başına sınırı aştığını gösterir.
  • OVER_DAILY_LIMIT, aşağıdakilerden herhangi birini gösterir:
    • API anahtarı eksik veya geçersiz.
    • Hesabınızda faturalandırma etkinleştirilmemiştir.
    • Kullanıcı tarafından belirlenen kullanım sınırı aşıldı.
    • Belirtilen ödeme yöntemi artık geçerli değil (örneğin, kredi kartının süresi dolmuş).
  • OVER_QUERY_LIMIT, hizmetin izin verilen süre içinde uygulamanızdan çok fazla istek aldığını gösterir.
  • REQUEST_DENIED, hizmetin uygulamanız tarafından Mesafe Matrisi hizmetinin kullanımını reddettiğini gösterir.
  • UNKNOWN_ERROR, bir mesafe matrisi isteğinin sunucu hatası nedeniyle işlenemediğini gösterir. Tekrar denerseniz istek başarılı olabilir.

DistanceMatrixRow

Alan Zorunlu Tür Açıklama
required Dizi<DistanceMatrixElement>

Distance Matrix API sonuç döndürdüğünde bunları bir JSON satır dizisine yerleştirir. Sonuç döndürülmese bile (ör. kaynaklar ve/veya hedefler mevcut olmadığında) boş bir dizi döndürür.

Satırlar, isteğin kaynak parametresindeki değerlere göre sıralanır. Her satır bir kaynağa, bu satırdaki her öğe ise kaynağın bir hedef değeriyle eşleşmesine karşılık gelir.

Her satır dizisi, bir veya daha fazla öğe girişi içerir. Bu girişler de tek bir başlangıç-hedef eşleşmesiyle ilgili bilgileri içerir.

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

DistanceMatrixElement

Alan Zorunlu Tür Açıklama
required DistanceMatrixElementStatus

Öğenin durumu.

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

isteğe bağlı TextValueObject

Bu rotanın toplam mesafesi, metre cinsinden (değer) ve metin olarak ifade edilir. Metin değeri, orijinal isteğin birim parametresiyle veya kaynağın bölgesiyle belirtilen birim sistemini kullanır.

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

isteğe bağlı TextValueObject

Bu rotada seyahat etmek için gereken süre, saniye (değer alanı) ve metin olarak ifade edilir. Metin gösterimi, sorgunun dil parametresine göre yerelleştirilir.

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

isteğe bağlı TextValueObject

Mevcut ve geçmiş trafik koşullarına göre bu rotada seyahat etmenin ne kadar süreceği. Döndürülen değerin iyimser, kötümser veya en iyi tahmin tahmini olmasını istemek için kullanabileceğiniz seçenekler hakkında bilgi edinmek üzere traffic_model istek parametresine bakın. Süre saniye cinsinden (değer alanı) ve metin olarak ifade edilir. Metin gösterimi, sorgunun dil parametresine göre yerelleştirilir. Trafikteki süre yalnızca aşağıdaki koşulların tümü geçerliyse döndürülür:

  • İstek, departure_time parametresini içeriyor.
  • İstenen rota için trafik koşulları bilgisi mevcut.
  • Mod parametresi, sürüş olarak ayarlanır.

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

isteğe bağlı Fare

Varsa bu rotadaki toplam ücreti (yani toplam bilet maliyetlerini) içerir. Bu özellik yalnızca toplu taşıma istekleri için ve yalnızca ücret bilgilerinin mevcut olduğu toplu taşıma sağlayıcıları için döndürülür.

Daha fazla bilgi için Fare başlıklı makaleyi inceleyin.

Ücret

Rotanın toplam ücreti.

{
  "currency" : "USD",
  "value" : 6,
  "text" : "$6.00"
}
Alan Zorunlu Tür Açıklama
required dize

Tutarın ifade edildiği para birimini gösteren bir ISO 4217 para birimi kodu.

required dize

İstenen dilde biçimlendirilmiş toplam ücret tutarı.

required sayı

Belirtilen para biriminde toplam ücret tutarı.

DistanceMatrixElementStatus

  • OK, yanıtın geçerli bir sonuç içerdiğini gösterir.
  • NOT_FOUND, bu eşlemenin kaynağının ve/veya hedefinin coğrafi olarak kodlanamadığını gösterir.
  • ZERO_RESULTS, başlangıç ve varış noktası arasında rota bulunamadığını gösterir.
  • MAX_ROUTE_LENGTH_EXCEEDED, istenen rotanın çok uzun olduğunu ve işlenemediğini gösterir.

TextValueObject

Sayısal bir değer ve biçimlendirilmiş metin gösterimini içeren bir nesne.

Alan Zorunlu Tür Açıklama
required dize

Dize değeri.

required sayı

Sayısal değer.