Method: computeRouteMatrix

Reçoit une liste de points de départ et de destinations, et renvoie un flux contenant des informations sur les itinéraires correspondant à chaque combinaison de points de départ et de destination.

REMARQUE : Cette méthode nécessite que vous spécifiiez un masque de champ de réponse dans l'entrée. Vous pouvez fournir le masque de champ de réponse à l'aide du paramètre d'URL $fields ou fields, ou à l'aide de l'en-tête HTTP/gRPC X-Goog-FieldMask (voir les paramètres et en-têtes d'URL disponibles). La valeur est une liste de chemins de champ séparés par une virgule. Consultez cette documentation détaillée sur la construction des chemins d'accès aux champs.

Par exemple, dans cette méthode :

  • Masque de champ de tous les champs disponibles (pour l'inspection manuelle) : X-Goog-FieldMask: *
  • Masque de champ pour les durées, distances, états et conditions des éléments, ainsi que pour les indices des éléments (exemple de configuration de production) : X-Goog-FieldMask: originIndex,destinationIndex,status,condition,distanceMeters,duration

Il est essentiel d'inclure status dans votre masque de champ, sinon tous les messages apparaîtront comme OK. Google déconseille l'utilisation du masque de champ de réponse avec caractère générique (*) pour les raisons suivantes:

  • En ne sélectionnant que les champs dont vous avez besoin, vous aidez notre serveur à économiser des cycles de calcul, ce qui nous permet de vous renvoyer le résultat avec une latence plus faible.
  • En ne sélectionnant que les champs dont vous avez besoin dans votre tâche de production, vous vous assurez de performances de latence stables. Nous ajouterons peut-être d'autres champs de réponse à l'avenir, et ces nouveaux champs pourraient nécessiter un temps de calcul supplémentaire. Si vous sélectionnez tous les champs ou tous les champs au niveau supérieur, vous risquez de constater une dégradation des performances, car tous les nouveaux champs que nous ajoutons seront automatiquement inclus dans la réponse.
  • En ne sélectionnant que les champs dont vous avez besoin, vous pouvez réduire la taille de réponse et, par conséquent, le débit du réseau.

Requête HTTP

POST https://routespreferred.googleapis.com/v1:computeRouteMatrix

L'URL utilise la syntaxe de transcodage gRPC.

Corps de la requête

Le corps de la requête contient des données présentant la structure suivante :

Représentation JSON
{
  "origins": [
    {
      object (RouteMatrixOrigin)
    }
  ],
  "destinations": [
    {
      object (RouteMatrixDestination)
    }
  ],
  "travelMode": enum (RouteTravelMode),
  "routingPreference": enum (RoutingPreference),
  "departureTime": string
}
Champs
origins[]

object (RouteMatrixOrigin)

Obligatoire. Tableau des origines, qui détermine les lignes de la matrice de réponse. Plusieurs restrictions de taille s'appliquent à la cardinalité des points de départ et de destination:

  • Le nombre d'éléments (origines × destinations) ne doit en aucun cas dépasser 625.
  • Le nombre d'éléments (origines × destinations) ne doit pas dépasser 100 si la valeur de routingPreference est TRAFFIC_AWARE_OPTIMAL.
  • Le nombre de points de cheminement (origines + destinations) spécifiés en tant que placeId ne doit pas dépasser 50.
destinations[]

object (RouteMatrixDestination)

Obligatoire. Tableau des destinations, qui détermine les colonnes de la matrice de réponse.

travelMode

enum (RouteTravelMode)

Facultatif. Spécifie le mode de transport.

routingPreference

enum (RoutingPreference)

Facultatif. Indique comment calculer la route. Le serveur tente d'utiliser la préférence de routage sélectionnée pour calculer l'itinéraire. Si la préférence de routage génère une erreur ou une latence plus longue, une erreur est renvoyée. Vous ne pouvez spécifier cette option que lorsque travelMode est DRIVE ou TWO_WHEELER. Sinon, la requête échoue.

departureTime

string (Timestamp format)

Facultatif. Heure de départ. Si vous ne définissez pas cette valeur, l'heure à laquelle vous avez effectué la requête est utilisée par défaut. Si vous définissez cette valeur sur une heure qui est déjà passée, la requête échoue.

Horodatage au format RFC3339 UTC "Zulu", avec une résolution de l'ordre de la nanoseconde et jusqu'à neuf chiffres décimaux. Exemples : "2014-10-02T15:01:23Z" et "2014-10-02T15:01:23.045123456Z".

Corps de la réponse

Si la requête aboutit, le corps de la réponse contient un flux d'instances RouteMatrixElement.

Champs d'application des autorisations

Requiert le niveau d'accès OAuth suivant :

  • https://www.googleapis.com/auth/maps-platform.routespreferred

Pour en savoir plus, consultez la Présentation d'OAuth 2.0.