Requête et réponse de l'API Distance Matrix

Développeurs de l'Espace économique européen (EEE)

Introduction

Une requête API Distance Matrix se présente sous la forme suivante :

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

outputFormat peut avoir l'une des valeurs suivantes :

  • json (recommandé) indique la sortie au format JSON (JavaScript Object Notation).
  • xml indique que la sortie est au format XML.

Certains paramètres sont obligatoires, d'autres sont facultatifs. Comme c'est la norme pour les URL, les différents paramètres sont séparés par une esperluette (&). Tous les caractères réservés (par exemple, le signe plus "+") doivent être encodés au format URL. La liste des paramètres et de leurs valeurs possibles est énumérée ci-dessous.

Paramètres obligatoires

  • destinations

    Un ou plusieurs lieux à utiliser comme point d'arrivée pour calculer la distance et le temps de trajet. Les options du paramètre destinations sont les mêmes que celles du paramètre origins.

  • origines

    Point de départ pour calculer la distance et la durée du trajet. Vous pouvez fournir un ou plusieurs lieux séparés par une barre verticale (|), sous la forme d'un ID de lieu, d'une adresse ou de coordonnées de latitude/longitude :

    • ID de lieu : si vous fournissez un ID de lieu, vous devez le faire précéder de place_id:.
    • Adresse : si vous transmettez une adresse, le service géocode la chaîne et la convertit en coordonnées de latitude/longitude pour calculer la distance. Ces coordonnées peuvent être différentes de celles renvoyées par l'API Geocoding (par exemple, l'entrée d'un bâtiment plutôt que son centre).
      Remarque : Il est préférable d'utiliser des ID de lieu plutôt que des adresses ou des coordonnées de latitude/longitude. L'utilisation de coordonnées entraînera toujours l'ancrage du point à la route la plus proche de ces coordonnées. Il peut s'agir d'un point d'accès à la propriété, ou même d'une route qui ne mènera pas rapidement ou en toute sécurité à la destination. L'utilisation de l'adresse fournira la distance jusqu'au centre du bâtiment, et non jusqu'à une entrée du bâtiment.
    • Coordonnées : si vous transmettez des coordonnées de latitude/longitude, elles seront ajustées à la route la plus proche. Il est préférable de transmettre un ID de lieu. Si vous transmettez des coordonnées, assurez-vous qu'il n'y a pas d'espace entre les valeurs de latitude et de longitude.
    • Les Plus Codes doivent être mis en forme comme un code global ou un code composé. Mettez en forme les Plus Codes comme indiqué ci-dessous (les signes plus sont échappés avec une URL en %2B, et les espaces avec une URL en %20) :
      • Le code global est un indicatif de zone de 4 caractères et un code local à 6 caractères ou plus (849VCWC8+R9 est encodé en 849VCWC8%2BR9).
      • Le code composé est un code local à six caractères ou plus associé à un emplacement explicite (CWC8+R9 Mountain View, CA, USA est encodé en CWC8%2BR9%20Mountain%20View%20CA%20USA).
    • Polyligne encodée : vous pouvez également fournir un ensemble de coordonnées encodées à l'aide de l'algorithme de polyligne encodée. Cela est particulièrement utile si vous avez un grand nombre de points d'origine, car l'URL est beaucoup plus courte lorsque vous utilisez une polyligne encodée.
      • Les polylignes encodées doivent être précédées de enc: et suivies d'un deux-points :. Par exemple : origins=enc:gfo}EtohhU:
      • Vous pouvez également inclure plusieurs polylignes encodées, séparées par le caractère barre verticale |. Exemple :
        origins=enc:wc~oAwquwMdlTxiKtqLyiK:|enc:c~vnAamswMvlTor@tjGi}L:|enc:udymA{~bxM:
        

Paramètres facultatifs

  • arrival_time

    Spécifie l'heure d'arrivée souhaitée pour les itinéraires en transports en commun, en secondes depuis minuit le 1er janvier 1970 UTC. Vous pouvez spécifier departure_time ou arrival_time, mais pas les deux. Notez que arrival_time doit être spécifié sous forme d'entier.

  • éviter

    Il est possible de calculer des distances qui respectent des restrictions données. Les restrictions sont indiquées par l'utilisation du paramètre "avoid" et d'un argument associé indiquant la restriction à éviter. Les restrictions suivantes sont acceptées :

    • tolls indique que l'itinéraire calculé doit éviter les routes et ponts à péage.
    • highways indique que l'itinéraire calculé doit éviter les autoroutes.
    • ferries indique que l'itinéraire calculé doit éviter les ferries.
    • indoor indique que l'itinéraire calculé doit éviter les trajets en intérieur pour les itinéraires à pied et en transports en commun.

    Il est possible de demander un itinéraire qui évite toute combinaison de péages, d'autoroutes et de ferries en transmettant les deux restrictions au paramètre "avoid". Exemple : avoid=tolls|highways|ferries.

    Remarque : L'ajout de restrictions n'empêche pas les itinéraires d'inclure la fonctionnalité restreinte. Il oriente le résultat vers des itinéraires plus favorables.
  • departure_time

    Spécifie l'heure de départ souhaitée. Vous pouvez spécifier l'heure sous la forme d'un entier en secondes depuis minuit, le 1er janvier 1970 UTC. Si une valeur departure_time postérieure à 9999-12-31T23:59:59.999999999Z est spécifiée, l'API rétablit la valeur departure_time sur 9999-12-31T23:59:59.999999999Z. Vous pouvez également spécifier la valeur "now" (maintenant), qui définit l'heure de départ sur l'heure actuelle (à la seconde près). L'heure de départ peut être spécifiée dans deux cas :

    • Pour les requêtes où le mode de transport est "transit", vous pouvez éventuellement spécifier departure_time ou arrival_time. Si aucune heure n'est spécifiée, la valeur par défaut de departure_time est "now" (c'est-à-dire que l'heure de départ est définie sur l'heure actuelle).
    • Pour les requêtes où le mode de déplacement est "driving" (en voiture), vous pouvez spécifier departure_time pour recevoir un itinéraire et une durée de trajet (champ de réponse "duration_in_traffic") qui tiennent compte des conditions de circulation. departure_time doit être défini sur l'heure actuelle ou sur une heure ultérieure. mais pas sur une heure passée.
    Remarque : Si l'heure de départ n'est pas spécifiée, l'itinéraire et la durée sont déterminés en fonction du réseau routier et des conditions de circulation moyennes toutes heures confondues. Les résultats d'une requête donnée peuvent varier au fil du temps en raison des modifications du réseau routier, des nouvelles moyennes de conditions de circulation et de la nature distribuée du service. Les résultats peuvent également varier entre plusieurs itinéraires presque équivalents à tout moment et à n'importe quelle fréquence.
    Remarque : Les requêtes Distance Matrix spécifiant departure_time lorsque mode=driving sont limitées à 100 éléments par requête. Le nombre d'origines multiplié par le nombre de destinations définit le nombre d'éléments.
  • language

    Langue dans laquelle renvoyer les résultats.

    • Consultez la liste des langues disponibles. Google met souvent à jour les langues acceptées. Cette liste n'est donc pas exhaustive.
    • Si language n'est pas fourni, l'API tente d'utiliser la langue préférée spécifiée dans l'en-tête Accept-Language.
    • L'API met tout en œuvre pour fournir une adresse postale lisible pour l'utilisateur et les habitants. Pour ce faire, il renvoie les adresses postales dans la langue locale, translittérées dans un script lisible par l'utilisateur si nécessaire, en respectant la langue préférée. Toutes les autres adresses sont renvoyées dans la langue de préférence. Les composants d'adresse sont tous renvoyés dans la même langue, qui est choisie à partir du premier composant.
    • Si un nom n'est pas disponible dans la langue de votre choix, l'API utilise la correspondance la plus proche.
    • La langue préférée a une faible influence sur l'ensemble des résultats que l'API choisit de renvoyer et sur l'ordre dans lequel ils sont renvoyés. Le géocoder interprète les abréviations différemment selon la langue, par exemple les abréviations des types de rues ou les synonymes qui peuvent être valides dans une langue, mais pas dans une autre. Par exemple, utca et tér sont des synonymes de "rue" en hongrois.
  • mode

    Pour calculer les distances et les itinéraires, vous pouvez spécifier le mode de transport à utiliser. Par défaut, le mode DRIVING est utilisé. Par défaut, les itinéraires sont calculés comme des itinéraires en voiture. Les modes de transport suivants sont acceptés :

    • driving (par défaut) indique un itinéraire en voiture standard ou une distance via le réseau routier.
    • walking demande un itinéraire à pied ou une distance à pied en utilisant les voies piétonnes et les trottoirs (dans la mesure du possible).
    • bicycling demande un itinéraire ou une distance à vélo en utilisant les pistes cyclables et les rues à privilégier (si disponibles).
    • transit demande un itinéraire ou une distance en utilisant les réseaux de transports en commun (le cas échéant). Si vous définissez le mode sur "transit", vous pouvez éventuellement spécifier un departure_time ou un arrival_time. Si aucune heure n'est spécifiée, departure_time est défini par défaut sur l'heure actuelle (c'est-à-dire que l'heure de départ est définie par défaut sur l'heure actuelle). Vous pouvez également inclure un transit_mode et/ou un transit_routing_preference (facultatif).
    Remarque : Il arrive que les itinéraires à pied et à vélo n'incluent pas de voies piétonnes ou cyclables claires. Dans ce cas, ils renvoient des avertissements dans le résultat renvoyé, que vous devez afficher à l'utilisateur.
    Remarque : Les trajets en transports en commun sont disponibles jusqu'à sept jours dans le passé ou jusqu'à 100 jours dans le futur, sous réserve de la disponibilité des informations sur les transports en commun fournies par les fournisseurs de données. Les horaires des transports en commun changent fréquemment, les trajets disponibles peuvent évoluer au fil du temps et il n'est pas garanti de fournir des résultats cohérents pour les prédictions à long terme.
  • région

    Code régional, spécifié sous la forme d'une valeur ccTLD ("top-level domain") à deux caractères. La plupart des codes ccTLD sont identiques aux codes ISO 3166-1, à quelques exceptions près. Par exemple, le ccTLD du Royaume-Uni est "uk" (.co.uk), tandis que son code ISO 3166-1 est "gb" (techniquement pour l'entité "Royaume-Uni de Grande-Bretagne et d'Irlande du Nord").

  • traffic_model

    Spécifie les hypothèses à utiliser pour calculer le temps de trajet. Ce paramètre influe sur la valeur renvoyée dans le champ "duration_in_traffic" de la réponse, qui contient le temps de trajet prévu en fonction des moyennes historiques. Le paramètre traffic_model ne peut être spécifié que pour les itinéraires en voiture lorsque la requête inclut un departure_time. Les valeurs disponibles pour ce paramètre sont les suivantes :

    • best_guess (par défaut) indique que la durée du trajet avec trafic renvoyée doit correspondre à la meilleure estimation du temps de trajet compte tenu des conditions de circulation historiques et en temps réel. Plus departure_time est proche de l'heure actuelle, plus la circulation en temps réel devient importante.
    • pessimistic indique que la durée du trajet avec circulation renvoyée doit être supérieure à la durée réelle du trajet la plupart du temps. Toutefois, les jours où la circulation est particulièrement difficile, le temps de trajet peut être plus long.
    • optimistic indique que la duration_in_traffic renvoyée doit être inférieure à la durée réelle du trajet la plupart du temps. Toutefois, les jours où la circulation est particulièrement fluide, le temps de trajet peut être plus court.

    La valeur par défaut de best_guess fournira les prédictions les plus utiles pour la grande majorité des cas d'utilisation. Il est possible que la prédiction de la durée du trajet best_guess soit plus courte que optimistic ou plus longue que pessimistic, en raison de la façon dont le modèle de prédiction best_guess intègre les informations sur le trafic en temps réel.

  • transit_mode

    Spécifie un ou plusieurs modes de transport à privilégier. Ce paramètre ne peut être spécifié que pour les itinéraires en transports en commun. Le paramètre accepte les arguments suivants :

    • bus indique que l'itinéraire calculé doit privilégier les trajets en bus.
    • subway indique que l'itinéraire calculé doit privilégier les trajets en métro.
    • train indique que l'itinéraire calculé doit privilégier les trajets en train.
    • tram indique que l'itinéraire calculé doit privilégier les trajets en tramway et en métro léger.
    • rail indique que l'itinéraire calculé doit privilégier les trajets en train, en tramway, en métro léger et en métro. Cela équivaut à transit_mode=train|tram|subway.
  • transit_routing_preference

    Spécifie les préférences pour les itinéraires en transports en commun. Ce paramètre vous permet d'ajuster les options renvoyées plutôt que d'accepter le meilleur itinéraire choisi par défaut par l'API. Ce paramètre ne peut être spécifié que pour les itinéraires en transports en commun. Il prend en charge les arguments suivants :

    • less_walking indique que l'itinéraire calculé doit limiter le plus possible la marche.
    • fewer_transfers indique que l'itinéraire calculé doit utiliser un nombre limité de correspondances.
  • unités

    Spécifie le système d'unités à utiliser pour afficher les résultats.

    Remarque : Ce paramètre de système d'unités n'influe que sur le texte affiché dans les champs de distance. Les champs de distance contiennent également des valeurs qui sont toujours exprimées en mètres.

Exemples de requêtes

Cet exemple utilise des coordonnées de latitude/longitude pour spécifier les coordonnées de destination :

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'

Cet exemple utilise des codes Plus pour spécifier les coordonnées de la destination :

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'

Cet exemple montre la même requête à l'aide d'une polyligne encodée :

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'

Information sur l'état de la circulation

Les informations sur le trafic sont utilisées lorsque toutes les conditions suivantes s'appliquent (à savoir celles requises pour recevoir le champ duration_in_traffic dans la réponse Distance Matrix) :

  • Le paramètre mode de transport est driving ou n'est pas spécifié (driving est le mode de transport par défaut).
  • La requête inclut un paramètre departure_time valide. departure_time peut être défini sur l'heure actuelle ou sur une heure ultérieure. mais pas sur une heure passée.

Vous pouvez également inclure le paramètre traffic_model dans votre requête pour spécifier les hypothèses à utiliser lors du calcul du temps passé dans le trafic.

L'URL suivante lance une requête Distance Matrix pour calculer les distances en voiture entre Boston, MA ou Charlestown, MA, et Lexington, MA et Concord, MA. La requête inclut une heure de départ, ce qui répond à toutes les exigences pour renvoyer le champ duration_in_traffic dans la réponse Distance Matrix.

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
   
  
 

Modificateurs de position

Vous pouvez utiliser des modificateurs d'emplacement pour indiquer aux conducteurs comment aborder un lieu donné, en utilisant le modificateur side_of_road pour spécifier le côté de la route à utiliser ou en spécifiant un cap pour indiquer la bonne direction.

Spécifier que les itinéraires calculés doivent passer par un côté particulier de la route

Lorsque vous spécifiez un lieu, vous pouvez demander que l'itinéraire calculé passe du côté de la route vers lequel le point de repère est orienté en utilisant le préfixe side_of_road:. Par exemple, cette requête renverra la distance d'un long itinéraire afin que le véhicule s'arrête sur le côté de la route vers lequel le point de repère était orienté :

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'

Lorsque vous utilisez side_of_road: avec des polylignes encodées, le modificateur est appliqué à chaque emplacement de la polyligne. Par exemple, les deux destinations de cette requête utilisent le paramètre suivant :

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'

Le modificateur side_of_road: ne peut être utilisé qu'avec cette restriction :

  • Le paramètre mode de transport est driving ou n'est pas spécifié (driving est le mode de transport par défaut).

Spécifier que les itinéraires calculés doivent avoir un cap particulier

Lorsque vous spécifiez un lieu, vous pouvez demander que l'itinéraire calculé passe par ce lieu dans un cap particulier. Cet en-tête est spécifié avec le préfixe heading=X:, où X est une valeur entière comprise entre 0 (inclus) et 360 (exclus). Un cap de 0 indique le nord, 90 indique l'est, et ainsi de suite dans le sens des aiguilles d'une montre. Par exemple, dans cette requête, l'itinéraire calculé part vers l'est depuis l'origine, puis fait demi-tour :

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'

Le modificateur heading=X: ne peut être utilisé qu'avec les restrictions suivantes :

  • Le paramètre mode de transport est driving, bicycling ou n'est pas spécifié (driving est le mode de transport par défaut).
  • Le modificateur side_of_road n'est pas spécifié pour le même emplacement.
  • L'emplacement est spécifié par une valeur de latitude/longitude. Vous ne pouvez pas utiliser heading avec des adresses, des ID de lieux ni des polylignes encodées.

Requêtes et réponses Distance Matrix

Vous trouverez ci-dessous un exemple de requête HTTP demandant la distance et la durée entre Vancouver (Colombie-Britannique, Canada) et Seattle (Washington, États-Unis) et San Francisco (Californie, États-Unis) et Victoria (Colombie-Britannique, Canada).

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'

Cette requête renvoie quatre éléments (les quatre trajets possibles avec les deux points de départ et les deux destinations) :

De Vancouver à San Francisco De Vancouver à Victoria
De Seattle à San Francisco De Seattle à Victoria

Les résultats sont renvoyés sous forme de lignes, chacune contenant un point de départ associé à chaque destination.

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
    1712 km
   
  
  
   OK
   
    24567
    6 heures 49 minutes
   
   
    139695
    140 km
   
  
 
 
  
   OK
   
    266680
    3 jours 2 heures
   
   
    1451704
    1452 km
   
  
  
   OK
   
    10374
    2 heures 53 minutes
   
   
    146500
    146 km
   
  
 

DistanceMatrixResponse

Champ Obligatoire Type Description
required Array<string>

Tableau d'adresses renvoyé par l'API à partir de votre demande d'origine. Comme pour origin_addresses, ces valeurs sont localisées si nécessaire. Ce contenu est destiné à être lu tel quel. N'analysez pas par programmation les adresses formatées.

required Array<string>

Tableau d'adresses renvoyé par l'API à partir de votre demande d'origine. Elles sont formatées par le geocoder et localisées en fonction du paramètre de langue transmis avec la requête. Ce contenu est destiné à être lu tel quel. N'analysez pas par programmation les adresses formatées.

required Array<DistanceMatrixRow>

Tableau d'éléments, qui contiennent chacun un élément status, duration et distance.

Pour en savoir plus, consultez DistanceMatrixRow.

required DistanceMatrixStatus

Contient l'état de la requête et éventuellement des informations de débogage qui vous aident à savoir pourquoi la requête a échoué.

Pour en savoir plus, consultez DistanceMatrixStatus.

facultatif chaîne

Chaîne contenant le texte lisible de toutes les erreurs rencontrées lors du traitement de la demande.

DistanceMatrixStatus

Codes d'état renvoyés par le service.

  • OK indique que la réponse contient un résultat valide.
  • INVALID_REQUEST indique que la requête fournie n'était pas valide.
  • MAX_ELEMENTS_EXCEEDED indique que le produit du nombre de points de départ par le nombre de destinations dépasse la limite par requête.
  • MAX_DIMENSIONS_EXCEEDED indique que le nombre d'origines ou de destinations dépasse la limite par requête.
  • OVER_DAILY_LIMIT indique l'un des éléments suivants :
    • La clé API est manquante ou non valide.
    • La facturation n'a pas été activée pour votre compte.
    • La limite d'utilisation que vous avez définie vous-même a été dépassée.
    • Le mode de facturation fourni n'est plus valide (une carte de crédit est arrivée à expiration, par exemple).
  • OVER_QUERY_LIMIT indique que le service a reçu trop de requêtes de votre application au cours de la période autorisée.
  • REQUEST_DENIED indique que le service a refusé l'utilisation du service Distance Matrix par votre application.
  • UNKNOWN_ERROR indique qu'une requête Distance Matrix n'a pas pu être traitée en raison d'une erreur du serveur. Si vous essayez à nouveau, la requête pourrait aboutir.

DistanceMatrixRow

Champ Obligatoire Type Description
required Array<DistanceMatrixElement>

Lorsque l'API Distance Matrix renvoie des résultats, elle les place dans un tableau de lignes JSON. Même si aucun résultat n'est renvoyé (par exemple, lorsque les origines et/ou les destinations n'existent pas), il renvoie toujours un tableau vide.

Les lignes sont triées en fonction des valeurs du paramètre "origin" de la requête. Chaque ligne correspond à un point de départ, et chaque élément de cette ligne correspond à une paire point de départ-destination.

Chaque tableau de lignes contient une ou plusieurs entrées d'éléments, qui contiennent à leur tour les informations sur une seule paire origine-destination.

Pour en savoir plus, consultez DistanceMatrixElement.

DistanceMatrixElement

Champ Obligatoire Type Description
required DistanceMatrixElementStatus

État de l'élément.

Pour en savoir plus, consultez DistanceMatrixElementStatus.

facultatif TextValueObject

Distance totale de l'itinéraire, exprimée en mètres (valeur) et sous forme de texte. La valeur textuelle utilise le système d'unités spécifié avec le paramètre "unit" de la requête d'origine ou la région d'origine.

Pour en savoir plus, consultez TextValueObject.

facultatif TextValueObject

Durée du trajet pour cet itinéraire, exprimée en secondes (champ "value") et sous forme de texte. La représentation textuelle est localisée en fonction du paramètre de langue de la requête.

Pour en savoir plus, consultez TextValueObject.

facultatif TextValueObject

Durée du trajet sur cet itinéraire, basée sur les conditions de circulation actuelles et passées. Consultez le paramètre de requête traffic_model pour connaître les options que vous pouvez utiliser pour demander que la valeur renvoyée soit optimiste, pessimiste ou une estimation approximative. La durée est exprimée en secondes (champ de valeur) et sous forme de texte. La représentation textuelle est localisée en fonction du paramètre de langue de la requête. La durée dans le trafic n'est renvoyée que si toutes les conditions suivantes sont remplies :

  • La requête inclut un paramètre departure_time.
  • Les conditions de circulation sont disponibles pour l'itinéraire demandé.
  • Le paramètre "mode" est défini sur "driving" (conduite).

Pour en savoir plus, consultez TextValueObject.

facultatif Tarif

Si elle est présente, elle contient le tarif total de l'itinéraire (c'est-à-dire le total des prix des billets). Cette propriété n'est renvoyée que pour les requêtes de transport en commun et uniquement si les informations tarifaires sont disponibles pour les fournisseurs de transport en commun impliqués.

Pour en savoir plus, consultez Tarif.

Fare

Tarif total de l'itinéraire.

{
  "currency" : "USD",
  "value" : 6,
  "text" : "$6.00"
}
Champ Obligatoire Type Description
required chaîne
required chaîne

Prix total, formaté dans la langue spécifiée.

required nombre

Tarif total exprimé dans la devise spécifiée.

DistanceMatrixElementStatus

  • OK indique que la réponse contient un résultat valide.
  • NOT_FOUND indique que le point de départ et/ou la destination de cette paire n'ont pas pu être géocodés.
  • ZERO_RESULTS indique qu'aucun itinéraire n'a été trouvé entre le point de départ et la destination.
  • MAX_ROUTE_LENGTH_EXCEEDED indique que l'itinéraire demandé est trop long et ne peut pas être traité.

TextValueObject

Objet contenant une valeur numérique et sa représentation textuelle formatée.

Champ Obligatoire Type Description
required chaîne

Valeur de chaîne.

required nombre

Valeur numérique.