Method: computeRouteMatrix

Se base sur une liste de points de départ et de destinations, et renvoie un flux contenant des informations sur l'itinéraire pour chaque combinaison de points de départ et d'arrivée.

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 de l'en-tête HTTP/gRPC X-Goog-FieldMask (consultez Paramètres et en-têtes d'URL disponibles. La valeur est une liste de chemins d'accès de champs séparés par une virgule. Consultez cette documentation détaillée sur la création 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 contenant la durée de l'itinéraire, les distances, l'état des éléments, l'état et 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 s'afficheront correctement. Google déconseille l'utilisation du masque de champ de réponse utilisant le caractère générique (*) pour les raisons suivantes:

  • Sélectionner uniquement les champs dont vous avez besoin permet à notre serveur d'économiser des cycles de calcul et de vous renvoyer le résultat avec une latence plus faible.
  • Sélectionner uniquement les champs dont vous avez besoin pour votre job de production garantit des performances de latence stables. Nous pourrions ajouter d'autres champs de réponse à l'avenir, et ces nouveaux champs pourraient nécessiter du 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 tout nouveau champ que nous ajoutons sera automatiquement inclus dans la réponse.
  • Si vous ne sélectionnez que les champs dont vous avez besoin, vous réduirez la taille des réponses 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 des destinations:

  • Le nombre d'éléments (points de départ × destinations) ne doit pas dépasser 625.
  • Le nombre d'éléments (origines × destinations) ne doit pas être supérieur à 100 si "RoutingPreference" est défini sur TRAFFIC_AWARE_OPTIMAL.
  • Le nombre de points de cheminement (points de départ + destinations) spécifié dans placeId ne doit pas être supérieur à 50.
destinations[]

object (RouteMatrixDestination)

Obligatoire. Tableau de 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. Spécifie comment calculer la route. Le serveur tente d'utiliser la préférence de routage sélectionnée pour calculer la route. Si la préférence de routage génère une erreur ou une latence extra longue, une erreur est renvoyée. À l'avenir, nous pourrons mettre en place un mécanisme de remplacement permettant d'utiliser une option différente lorsque l'option préférée ne donnera pas de résultat valide. Vous ne pouvez spécifier cette option que si travelMode est défini sur 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, la valeur par défaut est l'heure à laquelle vous avez effectué la requête. Si vous définissez cette valeur sur une heure déjà passée, la requête échoue.

Code temporel au format RFC3339 UTC "Zulu", avec une résolution à la nanoseconde et jusqu'à neuf chiffres fractionnaires. 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 une instance de RouteMatrixElement.

Niveaux d'accès 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.