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 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 d'accès de champs séparés par une virgule. Consultez cette documentation détaillée pour savoir comment créer les chemins d'accès aux champs.

Par exemple, dans cette méthode:

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

Vous devez impérativement inclure status dans votre masque de champ, sinon tous les messages semblent corrects. Google déconseille l'utilisation du masque de champ de réponse avec caractère générique (*) pour les raisons suivantes:

  • En sélectionnant uniquement les champs dont vous avez besoin, vous permettez à notre serveur d'économiser des cycles de calcul, ce qui nous permet de vous renvoyer le résultat avec une latence plus faible.
  • Sélectionner uniquement les champs dont vous avez besoin dans votre job de production garantit des 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 du niveau supérieur, vous risquez de constater une dégradation des performances. En effet, tout nouveau champ ajouté sera 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/v1alpha: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 (points de départ × destinations) ne doit pas dépasser 625.
  • Le nombre d'éléments (points de départ × destinations) ne doit pas dépasser 100 si la valeur de routagePreference est définie sur TRAFFIC_AWARE_OPTIMAL.
  • Le nombre de points de cheminement (points de départ + destinations) spécifiés en tant que 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 plus longue, une erreur est renvoyée. À l'avenir, nous pourrons mettre en œuvre un mécanisme de remplacement permettant d'utiliser une autre option lorsque l'option préférée ne donnera pas de résultat valide. Vous ne pouvez spécifier cette option que lorsque 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, 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 s'est déjà produite, 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 une instance de 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.