Method: computeRoutes

Renvoie l'itinéraire principal ainsi que des itinéraires alternatifs facultatifs, en fonction d'un ensemble de points de cheminement finaux et intermédiaires.

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 d'un 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 la documentation détaillée sur la construction des chemins d'accès de champ.

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 la durée, la distance et la polyligne au niveau de l'itinéraire (exemple de configuration de production): X-Goog-FieldMask: routes.duration,routes.distanceMeters,routes.polyline.encodedPolyline

Google déconseille d'utiliser le masque de champ de réponse générique (*) ou de spécifier le masque de champ au niveau supérieur (routes), car:

  • 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 pourrons ajouter 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.
  • Si vous ne sélectionnez que les champs dont vous avez besoin, la taille de la réponse sera plus petite, ce qui augmentera le débit réseau.

Requête HTTP

POST https://routes.googleapis.com/directions/v2:computeRoutes

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
{
  "origin": {
    object (Waypoint)
  },
  "destination": {
    object (Waypoint)
  },
  "intermediates": [
    {
      object (Waypoint)
    }
  ],
  "travelMode": enum (RouteTravelMode),
  "routingPreference": enum (RoutingPreference),
  "polylineQuality": enum (PolylineQuality),
  "polylineEncoding": enum (PolylineEncoding),
  "departureTime": string,
  "arrivalTime": string,
  "computeAlternativeRoutes": boolean,
  "routeModifiers": {
    object (RouteModifiers)
  },
  "languageCode": string,
  "regionCode": string,
  "units": enum (Units),
  "optimizeWaypointOrder": boolean,
  "requestedReferenceRoutes": [
    enum (ReferenceRoute)
  ],
  "extraComputations": [
    enum (ExtraComputation)
  ],
  "trafficModel": enum (TrafficModel),
  "transitPreferences": {
    object (TransitPreferences)
  }
}
Champs
origin

object (Waypoint)

Obligatoire. Point d'intérêt de départ.

destination

object (Waypoint)

Obligatoire. Point de cheminement de destination.

intermediates[]

object (Waypoint)

Facultatif. Ensemble de points de cheminement le long du parcours (à l'exception des points de terminaison), à des fins d'arrêt ou de passage. Vous pouvez ajouter jusqu'à 25 points de cheminement intermédiaires.

travelMode

enum (RouteTravelMode)

Facultatif. Spécifie le mode de transport.

routingPreference

enum (RoutingPreference)

Facultatif. Spécifie comment calculer l'itinéraire. 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 entraîne une erreur ou une latence très 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.

polylineQuality

enum (PolylineQuality)

Facultatif. Indique votre préférence pour la qualité de la polyligne.

polylineEncoding

enum (PolylineEncoding)

Facultatif. Spécifie l'encodage à privilégier pour la polyligne.

departureTime

string (Timestamp format)

Facultatif. Heure de départ. Si vous ne définissez pas cette valeur, elle est définie par défaut sur l'heure à laquelle vous avez effectué la requête. REMARQUE: Vous ne pouvez spécifier un departureTime dans le passé que lorsque RouteTravelMode est défini sur TRANSIT. Les trajets en transports en commun sont disponibles jusqu'à sept jours en arrière ou 100 jours en avant.

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".

arrivalTime

string (Timestamp format)

Facultatif. Heure d'arrivée. REMARQUE: Ne peut être défini que si RouteTravelMode est défini sur TRANSIT. Vous pouvez spécifier departureTime ou arrivalTime, mais pas les deux. Les trajets en transports en commun sont disponibles jusqu'à sept jours en arrière ou 100 jours en avant.

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".

computeAlternativeRoutes

boolean

Facultatif. Indique si des itinéraires bis doivent être calculés en plus de l'itinéraire. Aucune autre route n'est renvoyée pour les requêtes comportant des points de cheminement intermédiaires.

routeModifiers

object (RouteModifiers)

Facultatif. Ensemble de conditions à remplir qui affectent la façon dont les itinéraires sont calculés.

languageCode

string

Facultatif. Le code de langue BCP-47, tel que "en-US" ou "sr-Latn". Pour en savoir plus, consultez Identifiant de paramètres régionaux Unicode. Pour obtenir la liste des langues acceptées, consultez la section Langues acceptées. Si vous ne fournissez pas cette valeur, la langue d'affichage est déduite de l'emplacement de la requête d'itinéraire.

regionCode

string

Facultatif. Code régional, spécifié sous la forme d'une valeur ccTLD (TLD pour top-level domain, domaine de premier niveau) à deux caractères. Pour en savoir plus, consultez la section Domaines de premier niveau avec code pays.

units

enum (Units)

Facultatif. Spécifie les unités de mesure des champs d'affichage. Ces champs incluent le champ instruction dans NavigationInstruction. Cette valeur n'a aucune incidence sur les unités de mesure utilisées pour l'itinéraire, l'étape, la distance et la durée des pas. Si vous ne fournissez pas cette valeur, les unités d'affichage sont déduites de l'emplacement de la première origine.

optimizeWaypointOrder

boolean

Facultatif. Si cette valeur est définie sur "true", le service tente de minimiser le coût global de l'itinéraire en réorganisant les points de cheminement intermédiaires spécifiés. La requête échoue si l'un des points de cheminement intermédiaires est un point de cheminement via. Utilisez ComputeRoutesResponse.Routes.optimized_intermediate_waypoint_index pour trouver la nouvelle commande. Si ComputeRoutesResponseroutes.optimized_intermediate_waypoint_index n'est pas demandé dans l'en-tête X-Goog-FieldMask, la requête échoue. Si optimizeWaypointOrder est défini sur "false", ComputeRoutesResponse.optimized_intermediate_waypoint_index sera vide.

requestedReferenceRoutes[]

enum (ReferenceRoute)

Facultatif. Indique les routes de référence à calculer dans le cadre de la requête en plus de l'itinéraire par défaut. Une route de référence est une route dont l'objectif de calcul est différent de celui de la route par défaut. Par exemple, le calcul d'un itinéraire de référence FUEL_EFFICIENT tient compte de divers paramètres qui généreraient un itinéraire optimal en termes de consommation de carburant. Lorsque vous utilisez cette fonctionnalité, recherchez routeLabels sur les routes générées.

extraComputations[]

enum (ExtraComputation)

Facultatif. Liste des calculs supplémentaires pouvant être utilisés pour traiter la requête. Remarque: Ces calculs supplémentaires peuvent renvoyer des champs supplémentaires dans la réponse. Ces champs supplémentaires doivent également être spécifiés dans le masque de champ pour être renvoyés dans la réponse.

trafficModel

enum (TrafficModel)

Facultatif. Spécifie les hypothèses à utiliser pour calculer le temps de trajet selon le trafic. Ce paramètre influe sur la valeur renvoyée dans le champ "durée" de Route et RouteLeg, qui contient le temps de trajet prévu en fonction des moyennes historiques. TrafficModel n'est disponible que pour les requêtes pour lesquelles RoutingPreference est défini sur TRAFFIC_AWARE_OPTIMAL et RouteTravelMode sur DRIVE. La valeur par défaut est BEST_GUESS si le trafic est demandé et que TrafficModel n'est pas spécifié.

transitPreferences

object (TransitPreferences)

Facultatif. Spécifie les préférences qui influencent l'itinéraire renvoyé pour les itinéraires TRANSIT. REMARQUE: Vous ne pouvez spécifier un transitPreferences que lorsque RouteTravelMode est défini sur TRANSIT.

Corps de la réponse

v2.computeRoutes le message de réponse.

Si la requête aboutit, le corps de la réponse contient des données qui ont la structure suivante :

Représentation JSON
{
  "routes": [
    {
      object (Route)
    }
  ],
  "fallbackInfo": {
    object (FallbackInfo)
  },
  "geocodingResults": {
    object (GeocodingResults)
  }
}
Champs
routes[]

object (Route)

Contient un tableau d'itinéraires calculés (jusqu'à trois) lorsque vous spécifiez compute_alternatives_routes, et ne contient qu'un seul itinéraire si vous ne le faites pas. Lorsque ce tableau contient plusieurs entrées, la première est l'itinéraire le plus recommandé. Si le tableau est vide, cela signifie qu'aucun itinéraire n'a été trouvé.

fallbackInfo

object (FallbackInfo)

Dans certains cas, lorsque le serveur ne parvient pas à calculer les résultats d'itinéraire avec toutes les préférences d'entrée, il peut utiliser une autre méthode de calcul. Lorsque le mode de remplacement est utilisé, ce champ contient des informations détaillées sur la réponse de remplacement. Sinon, ce champ n'est pas défini.

geocodingResults

object (GeocodingResults)

Inclut des informations de réponse de géocodage pour les points de cheminement spécifiés en tant qu'adresses.

PolylineQuality

Ensemble de valeurs qui spécifient la qualité de la polyligne.

Enums
POLYLINE_QUALITY_UNSPECIFIED Aucune préférence de qualité de la polyligne n'est spécifiée. La valeur par défaut est OVERVIEW.
HIGH_QUALITY Spécifie une polyligne de haute qualité, qui est composée à l'aide de plus de points que OVERVIEW, ce qui augmente la taille de la réponse. Utilisez cette valeur lorsque vous avez besoin de plus de précision.
OVERVIEW Spécifie une polyligne d'aperçu, qui est composée à l'aide d'un petit nombre de points. Utilisez cette valeur lorsque vous affichez une vue d'ensemble du parcours. Cette option offre une latence de requête inférieure à celle de l'option HIGH_QUALITY.

PolylineEncoding

Spécifie le type de polyligne à renvoyer.

Enums
POLYLINE_ENCODING_UNSPECIFIED Aucune préférence de type de polyligne spécifiée. La valeur par défaut est ENCODED_POLYLINE.
ENCODED_POLYLINE Spécifie une polyligne encodée à l'aide de l'algorithme d'encodage de polyligne.
GEO_JSON_LINESTRING Spécifie une polyligne à l'aide du format GeoJSON LineString

ReferenceRoute

Route de référence compatible dans ComputeRoutesRequest.

Enums
REFERENCE_ROUTE_UNSPECIFIED Non utilisé. Les requêtes contenant cette valeur échouent.
FUEL_EFFICIENT Itinéraire économe en carburant.
SHORTER_DISTANCE

Itinéraire avec une distance plus courte. Cette fonctionnalité est expérimentale.

Pour les requêtes DRIVE, cette fonctionnalité donne la priorité à la distance la plus courte par rapport au confort de conduite. Par exemple, il peut préférer les routes locales aux autoroutes, emprunter des routes non bitumées, passer par des parkings, etc. Cette fonctionnalité n'affiche aucune manœuvre que Google Maps sait être illégale.

Pour les requêtes BICYCLE et TWO_WHEELER, cette fonctionnalité renvoie des itinéraires semblables à ceux renvoyés lorsque vous ne spécifiez pas requestedReferenceRoutes.

Cette fonctionnalité n'est pas compatible avec les autres modes de transport, les points de cheminement intermédiaires ni optimizeWaypointOrder. Ces requêtes échoueront. Toutefois, vous pouvez l'utiliser avec n'importe quel routingPreference.

ExtraComputation

Calculs supplémentaires à effectuer lors de l'exécution de la requête.

Enums
EXTRA_COMPUTATION_UNSPECIFIED Non utilisé. Les requêtes contenant cette valeur échoueront.
TOLLS Informations sur les péages pour l'itinéraire ou les itinéraires.
FUEL_CONSUMPTION Consommation de carburant estimée pour l'itinéraire ou les itinéraires.
TRAFFIC_ON_POLYLINE Polylignes tenant compte du trafic pour l'itinéraire ou les itinéraires.
HTML_FORMATTED_NAVIGATION_INSTRUCTIONS NavigationInstructions présenté sous la forme d'une chaîne de texte HTML mise en forme. Ce contenu est destiné à être lu tel quel. Il est uniquement à des fins d'affichage. N'analysez pas ce contenu de manière programmatique.
FLYOVER_INFO_ON_POLYLINE Informations sur le survol pour l'itinéraire ou les itinéraires. Le champmask routes.polyline_details.flyover_info doit être spécifié pour renvoyer ces informations. Pour le moment, ces données ne sont renseignées que pour certaines villes indiennes. Cette fonctionnalité est expérimentale. Le code SKU/la facturation peuvent être modifiés.
NARROW_ROAD_INFO_ON_POLYLINE Informations sur les routes étroites pour l'itinéraire ou les itinéraires. Le champmask routes.polyline_details.narrow_road_info doit être spécifié pour renvoyer ces informations. Pour le moment, ces données ne sont renseignées que pour certaines villes indiennes. Cette fonctionnalité est expérimentale. Le code SKU/la facturation peuvent être modifiés.

Itinéraire

Contient un itinéraire, qui consiste en une série de segments de route connectés qui relient les points de cheminement de début, de fin et intermédiaires.

Représentation JSON
{
  "routeLabels": [
    enum (RouteLabel)
  ],
  "legs": [
    {
      object (RouteLeg)
    }
  ],
  "distanceMeters": integer,
  "duration": string,
  "staticDuration": string,
  "polyline": {
    object (Polyline)
  },
  "description": string,
  "warnings": [
    string
  ],
  "viewport": {
    object (Viewport)
  },
  "travelAdvisory": {
    object (RouteTravelAdvisory)
  },
  "optimizedIntermediateWaypointIndex": [
    integer
  ],
  "localizedValues": {
    object (RouteLocalizedValues)
  },
  "routeToken": string,
  "polylineDetails": {
    object (PolylineDetails)
  }
}
Champs
routeLabels[]

enum (RouteLabel)

Libellés de l'Route qui permettent d'identifier des propriétés spécifiques du parcours à comparer à d'autres.

legs[]

object (RouteLeg)

Ensemble de sections (segments de trajet entre les points de cheminement) qui constituent l'itinéraire. Chaque étape correspond au trajet entre deux Waypoints autres que via. Par exemple, un itinéraire sans point de cheminement intermédiaire ne comporte qu'une seule étape. Un itinéraire qui inclut un point de cheminement intermédiaire autre que via comporte deux sections. Un itinéraire qui inclut un point de cheminement intermédiaire via comporte une seule section. L'ordre des segments correspond à l'ordre des points de cheminement de origin à intermediates, puis à destination.

distanceMeters

integer

Distance du trajet en mètres.

duration

string (Duration format)

Durée nécessaire pour suivre l'itinéraire. Si vous définissez routingPreference sur TRAFFIC_UNAWARE, cette valeur est identique à staticDuration. Si vous définissez routingPreference sur TRAFFIC_AWARE ou TRAFFIC_AWARE_OPTIMAL, cette valeur est calculée en tenant compte des conditions de circulation.

Durée en secondes avec neuf chiffres au maximum après la virgule et se terminant par "s". Exemple : "3.5s"

staticDuration

string (Duration format)

Durée du trajet sur l'itinéraire sans tenir compte des conditions de circulation.

Durée en secondes avec neuf chiffres au maximum après la virgule et se terminant par "s". Exemple : "3.5s"

polyline

object (Polyline)

Polyligne de l'itinéraire global. Cette polyligne est la polyligne combinée de tous les legs.

description

string

Description de l'itinéraire.

warnings[]

string

Tableau d'avertissements à afficher lors de l'affichage de l'itinéraire.

viewport

object (Viewport)

Cadre de délimitation de la fenêtre d'affichage de la polyligne.

travelAdvisory

object (RouteTravelAdvisory)

Informations supplémentaires sur l'itinéraire.

optimizedIntermediateWaypointIndex[]

integer

Si vous définissez optimizeWaypointOrder sur "true", ce champ contient l'ordre optimisé des points de cheminement intermédiaires. Sinon, ce champ est vide. Par exemple, si vous indiquez comme valeurs "Origine: Los Angeles", "Points de cheminement intermédiaires: Dallas, Bangor, Phoenix" et "Destination: New York", et que l'ordre optimisé des points de cheminement intermédiaires est Phoenix, Dallas, Bangor, ce champ contient les valeurs [2, 0, 1]. L'indice commence par 0 pour le premier point de cheminement intermédiaire fourni dans l'entrée.

localizedValues

object (RouteLocalizedValues)

Représentations textuelles des propriétés de Route.

routeToken

string

Jeton opaque pouvant être transmis au SDK Navigation pour reconstruire l'itinéraire pendant la navigation et, en cas de recalcul d'itinéraire, respecter l'intention initiale lors de la création de l'itinéraire. Traitez ce jeton comme un blob opaque. Ne comparez pas sa valeur entre les requêtes, car elle peut changer même si le service renvoie exactement le même itinéraire.

REMARQUE: Route.route_token n'est disponible que pour les requêtes pour lesquelles ComputeRoutesRequest.routing_preference est défini sur TRAFFIC_AWARE ou TRAFFIC_AWARE_OPTIMAL. Route.route_token n'est pas compatible avec les requêtes contenant des points de cheminement Via.

polylineDetails

object (PolylineDetails)

Contient des informations sur les détails le long de la polyligne.

RouteLabel

Libellés de l'Route qui permettent d'identifier des propriétés spécifiques du parcours à comparer à d'autres.

Enums
ROUTE_LABEL_UNSPECIFIED Par défaut : non utilisé.
DEFAULT_ROUTE Itinéraire "meilleur" par défaut renvoyé pour le calcul d'itinéraire.
DEFAULT_ROUTE_ALTERNATE Alternative à l'itinéraire "meilleur" par défaut. Des itinéraires comme celui-ci sont renvoyés lorsque computeAlternativeRoutes est spécifié.
FUEL_EFFICIENT Itinéraire économe en carburant. Les itinéraires associés à cette valeur sont optimisés pour les paramètres éco, comme la consommation de carburant.
SHORTER_DISTANCE Itinéraire plus court. Cette fonctionnalité est expérimentale.

RouteLeg

Contient un segment entre des points de cheminement autres que via.

Représentation JSON
{
  "distanceMeters": integer,
  "duration": string,
  "staticDuration": string,
  "polyline": {
    object (Polyline)
  },
  "startLocation": {
    object (Location)
  },
  "endLocation": {
    object (Location)
  },
  "steps": [
    {
      object (RouteLegStep)
    }
  ],
  "travelAdvisory": {
    object (RouteLegTravelAdvisory)
  },
  "localizedValues": {
    object (RouteLegLocalizedValues)
  },
  "stepsOverview": {
    object (StepsOverview)
  }
}
Champs
distanceMeters

integer

Distance parcourue par l'étape du trajet, en mètres.

duration

string (Duration format)

Durée nécessaire pour parcourir l'étape. Si route_preference est défini sur TRAFFIC_UNAWARE, cette valeur est identique à staticDuration. Si route_preference est TRAFFIC_AWARE ou TRAFFIC_AWARE_OPTIMAL, cette valeur est calculée en tenant compte des conditions de circulation.

Durée en secondes avec neuf chiffres au maximum après la virgule et se terminant par "s". Exemple : "3.5s"

staticDuration

string (Duration format)

Durée du trajet sur la section, calculée sans tenir compte des conditions de circulation.

Durée en secondes avec neuf chiffres au maximum après la virgule et se terminant par "s". Exemple : "3.5s"

polyline

object (Polyline)

Polyligne globale de cet itinéraire qui inclut la polyligne de chaque step.

startLocation

object (Location)

Lieu de départ de cette étape. Cet emplacement peut être différent de l'origin fourni. Par exemple, lorsque le origin fourni n'est pas à proximité d'une route, il s'agit d'un point sur la route.

endLocation

object (Location)

Emplacement de fin de cette section. Cet emplacement peut être différent de l'destination fourni. Par exemple, lorsque le destination fourni n'est pas à proximité d'une route, il s'agit d'un point sur la route.

steps[]

object (RouteLegStep)

Tableau d'étapes indiquant les segments de cet itinéraire. Chaque étape représente une instruction de navigation.

travelAdvisory

object (RouteLegTravelAdvisory)

Contient les informations supplémentaires que l'utilisateur doit connaître, telles que les éventuelles restrictions de zone de circulation, sur un tronçon de parcours.

localizedValues

object (RouteLegLocalizedValues)

Représentations textuelles des propriétés de RouteLeg.

stepsOverview

object (StepsOverview)

Informations générales sur les étapes de cette RouteLeg. Ce champ n'est renseigné que pour les itinéraires en transports en commun.

Polyline

Encapsule une polyligne encodée.

Représentation JSON
{

  // Union field polyline_type can be only one of the following:
  "encodedPolyline": string,
  "geoJsonLinestring": {
    object
  }
  // End of list of possible types for union field polyline_type.
}
Champs
Champ d'union polyline_type. Encapsule le type de polyligne. La valeur par défaut est encoded_polyline. polyline_type ne peut être qu'un des éléments suivants :
encodedPolyline

string

Encodage de la chaîne de la polyligne à l'aide de l'algorithme d'encodage de polyligne

geoJsonLinestring

object (Struct format)

Spécifie une polyligne au format GeoJSON LineString.

RouteLegStep

Contient un segment d'un RouteLeg. Une étape correspond à une seule instruction de navigation. Les segments de parcours sont composés d'étapes.

Représentation JSON
{
  "distanceMeters": integer,
  "staticDuration": string,
  "polyline": {
    object (Polyline)
  },
  "startLocation": {
    object (Location)
  },
  "endLocation": {
    object (Location)
  },
  "navigationInstruction": {
    object (NavigationInstruction)
  },
  "travelAdvisory": {
    object (RouteLegStepTravelAdvisory)
  },
  "localizedValues": {
    object (RouteLegStepLocalizedValues)
  },
  "transitDetails": {
    object (RouteLegStepTransitDetails)
  },
  "travelMode": enum (RouteTravelMode)
}
Champs
distanceMeters

integer

Distance parcourue pour cette étape, en mètres. Dans certains cas, ce champ peut ne pas avoir de valeur.

staticDuration

string (Duration format)

Durée du trajet au cours de cette étape, sans tenir compte des conditions de circulation. Dans certains cas, ce champ peut ne pas avoir de valeur.

Durée en secondes avec neuf chiffres au maximum après la virgule et se terminant par "s". Exemple : "3.5s"

polyline

object (Polyline)

Polyligne associée à cette étape.

startLocation

object (Location)

Emplacement de départ de cette étape.

endLocation

object (Location)

Emplacement de fin de cette étape.

navigationInstruction

object (NavigationInstruction)

Instructions de navigation.

travelAdvisory

object (RouteLegStepTravelAdvisory)

Contient les informations supplémentaires que l'utilisateur doit connaître, telles que les éventuelles restrictions de zone de circulation, pour une étape de trajet.

localizedValues

object (RouteLegStepLocalizedValues)

Représentations textuelles des propriétés de RouteLegStep.

transitDetails

object (RouteLegStepTransitDetails)

Informations sur cette étape si le mode de déplacement est TRANSIT.

travelMode

enum (RouteTravelMode)

Mode de transport utilisé pour cette étape.

Manœuvre

Ensemble de valeurs qui spécifient l'action de navigation à effectuer pour l'étape en cours (par exemple, tourner à gauche, s'insérer dans la voie de gauche ou continuer tout droit).

Enums
MANEUVER_UNSPECIFIED Non utilisé.
TURN_SLIGHT_LEFT Tournez légèrement la tête vers la gauche.
TURN_SHARP_LEFT Tournez brusquement à gauche.
UTURN_LEFT Faites demi-tour à gauche.
TURN_LEFT Tournez à gauche.
TURN_SLIGHT_RIGHT Tournez légèrement vers la droite.
TURN_SHARP_RIGHT Tournez brusquement à droite.
UTURN_RIGHT Faites demi-tour à droite.
TURN_RIGHT Tournez à droite.
STRAIGHT Continuez tout droit.
RAMP_LEFT Prenez la bretelle de gauche.
RAMP_RIGHT Prenez la bretelle de droite.
MERGE Rejoindre le trafic.
FORK_LEFT Prenez la bifurcation de gauche.
FORK_RIGHT Prenez la route de droite.
FERRY Prendre le ferry
FERRY_TRAIN Prenez le train qui mène au ferry.
ROUNDABOUT_LEFT Tournez à gauche au rond-point.
ROUNDABOUT_RIGHT Tournez à droite au rond-point.
DEPART Manœuvre initiale.
NAME_CHANGE Indique un changement de nom de rue.

RouteLegStepTravelAdvisory

Contient les informations supplémentaires que l'utilisateur doit connaître, telles que les éventuelles restrictions de zone de circulation sur une étape de trajet.

Représentation JSON
{
  "speedReadingIntervals": [
    {
      object (SpeedReadingInterval)
    }
  ]
}
Champs
speedReadingIntervals[]

object (SpeedReadingInterval)

REMARQUE: Ce champ n'est pas renseigné pour le moment.

RouteLegStepLocalizedValues

Représentations textuelles de certaines propriétés.

Représentation JSON
{
  "distance": {
    object (LocalizedText)
  },
  "staticDuration": {
    object (LocalizedText)
  }
}
Champs
distance

object (LocalizedText)

Distance parcourue représentée sous forme de texte.

staticDuration

object (LocalizedText)

Durée sans tenir compte des conditions de circulation, représentée sous forme de texte.

RouteLegStepTransitDetails

Informations supplémentaires sur le RouteLegStep liées aux routes TRANSIT.

Représentation JSON
{
  "stopDetails": {
    object (TransitStopDetails)
  },
  "localizedValues": {
    object (TransitDetailsLocalizedValues)
  },
  "headsign": string,
  "headway": string,
  "transitLine": {
    object (TransitLine)
  },
  "stopCount": integer,
  "tripShortText": string
}
Champs
stopDetails

object (TransitStopDetails)

Informations sur les arrêts d'arrivée et de départ de l'étape.

localizedValues

object (TransitDetailsLocalizedValues)

Représentations textuelles des propriétés de RouteLegStepTransitDetails.

headsign

string

Spécifie le sens du trajet sur cette ligne tel qu'indiqué sur le véhicule ou à l'arrêt de départ. La direction est souvent la station terminus.

headway

string (Duration format)

Indique le temps estimé en tant que durée entre deux départs depuis le même arrêt à l'heure actuelle. Par exemple, si la valeur de l'intervalle de temps est de 600 secondes, vous attendrez environ 10 minutes si vous manquez votre bus.

Durée en secondes avec neuf chiffres au maximum après la virgule et se terminant par "s". Exemple : "3.5s"

transitLine

object (TransitLine)

Informations sur la ligne de transports en commun utilisée à cette étape.

stopCount

integer

Nombre d'arrêts entre le départ et l'arrivée. Ce nombre inclut l'arrêt d'arrivée, mais exclut celui de départ. Par exemple, si votre itinéraire part de l'arrêt A, passe par les arrêts B et C, et arrive à l'arrêt D,

stopCount

renvoie 3.

tripShortText

string

Texte qui s'affiche sur les tableaux d'horaires et les panneaux d'affichage afin de permettre aux passagers d'identifier leur trajet en transports en commun. Le texte doit identifier de manière unique un trajet au cours d'une journée de service. Par exemple, "538" est le tripShortText du train Amtrak qui quitte San Jose (Californie) à 15h10 en semaine pour se rendre à Sacramento (Californie).

TransitStopDetails

Informations sur les arrêts de transports en commun pour le RouteLegStep.

Représentation JSON
{
  "arrivalStop": {
    object (TransitStop)
  },
  "arrivalTime": string,
  "departureStop": {
    object (TransitStop)
  },
  "departureTime": string
}
Champs
arrivalStop

object (TransitStop)

Informations sur l'arrêt d'arrivée de l'étape.

arrivalTime

string (Timestamp format)

Heure d'arrivée estimée de l'étape.

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".

departureStop

object (TransitStop)

Informations sur l'arrêt de départ de l'étape.

departureTime

string (Timestamp format)

Heure de départ estimée de l'étape.

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".

TransitStop

Informations sur un arrêt de transports en commun.

Représentation JSON
{
  "name": string,
  "location": {
    object (Location)
  }
}
Champs
name

string

Nom de l'arrêt de transports en commun.

location

object (Location)

Emplacement de l'arrêt exprimé en coordonnées de latitude/longitude.

TransitDetailsLocalizedValues

Descriptions localisées des valeurs pour RouteTransitDetails.

Représentation JSON
{
  "arrivalTime": {
    object (LocalizedTime)
  },
  "departureTime": {
    object (LocalizedTime)
  }
}
Champs
arrivalTime

object (LocalizedTime)

Heure au format de texte avec le fuseau horaire correspondant.

departureTime

object (LocalizedTime)

Heure au format de texte avec le fuseau horaire correspondant.

LocalizedTime

Description localisée de l'heure.

Représentation JSON
{
  "time": {
    object (LocalizedText)
  },
  "timeZone": string
}
Champs
time

object (LocalizedText)

L'heure spécifiée sous forme de chaîne dans un fuseau horaire donné.

timeZone

string

Inclut le fuseau horaire. La valeur correspond au nom du fuseau horaire, tel que défini dans la base de données des fuseaux horaires de l'IANA (par exemple, "America/New_York").

TransitLine

Inclut des informations sur la ligne de transports en commun utilisée à cette étape.

Représentation JSON
{
  "agencies": [
    {
      object (TransitAgency)
    }
  ],
  "name": string,
  "uri": string,
  "color": string,
  "iconUri": string,
  "nameShort": string,
  "textColor": string,
  "vehicle": {
    object (TransitVehicle)
  }
}
Champs
agencies[]

object (TransitAgency)

L'agence (ou les agences) de transports en commun qui exploite cette ligne.

name

string

Nom complet de cette ligne de transports en commun (par exemple, "8 Avenue Local").

uri

string

URI de cette ligne de transports en commun fournie par l'agence de transports en commun.

color

string

Couleur couramment utilisée pour désigner cette ligne. Représenté en hexadécimal.

iconUri

string

URI de l'icône associée à cette ligne.

nameShort

string

Nom court de cette ligne de transports en commun. Il s'agit généralement d'un numéro de ligne tel que "M7" ou "355".

textColor

string

Couleur couramment utilisée pour le texte des panneaux de cette ligne. Représenté en hexadécimal.

vehicle

object (TransitVehicle)

Type de véhicule utilisé sur cette ligne de transports en commun.

TransitAgency

Agence de transports en commun qui gère une ligne de transports en commun.

Représentation JSON
{
  "name": string,
  "phoneNumber": string,
  "uri": string
}
Champs
name

string

Nom de cette agence de transports en commun.

phoneNumber

string

Numéro de téléphone de l'agence de transports en commun au format propre à la région.

uri

string

URI de l'agence de transports en commun.

TransitVehicle

Informations sur un véhicule utilisé sur des itinéraires de transports en commun.

Représentation JSON
{
  "name": {
    object (LocalizedText)
  },
  "type": enum (TransitVehicleType),
  "iconUri": string,
  "localIconUri": string
}
Champs
name

object (LocalizedText)

Nom de ce véhicule, en majuscules.

type

enum (TransitVehicleType)

Type de véhicule utilisé.

iconUri

string

URI de l'icône associée à ce type de véhicule.

localIconUri

string

URI de l'icône associée à ce type de véhicule d'après la signalétique locale pour les transports en commun.

TransitVehicleType

Type de véhicules pour les itinéraires en transports en commun.

Enums
TRANSIT_VEHICLE_TYPE_UNSPECIFIED Non utilisé.
BUS Bus.
CABLE_CAR Véhicule tracté par un câble, généralement en surface. Les téléphériques peuvent être de type GONDOLA_LIFT.
COMMUTER_TRAIN Train de banlieue.
FERRY Ferry.
FUNICULAR Véhicule tracté par un câble le long d'une pente prononcée. Un funiculaire se compose généralement de deux rames, chacune agissant comme contrepoids de l'autre.
GONDOLA_LIFT Téléphérique.
HEAVY_RAIL Métro.
HIGH_SPEED_TRAIN Train à grande vitesse.
INTERCITY_BUS Bus interurbain.
LONG_DISTANCE_TRAIN Train longue distance.
METRO_RAIL Métro léger.
MONORAIL Monorail.
OTHER Tous les autres véhicules.
RAIL Train.
SHARE_TAXI Type de bus pouvant faire monter et descendre des passagers n'importe où sur la ligne.
SUBWAY Métro léger souterrain.
TRAM Métro léger en surface.
TROLLEYBUS Trolleybus.

RouteLegTravelAdvisory

Inclut les informations supplémentaires que l'utilisateur doit connaître au cours d'une étape de trajet, telles que les éventuelles restrictions de zone de circulation.

Représentation JSON
{
  "tollInfo": {
    object (TollInfo)
  },
  "speedReadingIntervals": [
    {
      object (SpeedReadingInterval)
    }
  ]
}
Champs
tollInfo

object (TollInfo)

Contient des informations sur les péages sur l'RouteLeg spécifique. Ce champ n'est renseigné que si des péages sont attendus sur la RouteLeg. Si ce champ est défini, mais que le sous-champ "estimatedPrice" n'est pas renseigné, nous supposons que la route comporte des péages, mais nous ne connaissons pas le prix estimé. Si ce champ n'existe pas, aucun péage n'est appliqué sur la RouteLeg.

speedReadingIntervals[]

object (SpeedReadingInterval)

Intervalles de lecture rapide détaillant la densité du trafic. Applicable en cas de préférences de routage TRAFFIC_AWARE et TRAFFIC_AWARE_OPTIMAL. Les intervalles couvrent l'intégralité de la polyligne de l'RouteLeg sans chevauchement. Le point de départ d'un intervalle spécifié est identique au point de fin de l'intervalle précédent.

Exemple :

polyline: A ---- B ---- C ---- D ---- E ---- F ---- G
speedReadingIntervals: [A,C), [C,D), [D,G).

RouteLegLocalizedValues

Représentations textuelles de certaines propriétés.

Représentation JSON
{
  "distance": {
    object (LocalizedText)
  },
  "duration": {
    object (LocalizedText)
  },
  "staticDuration": {
    object (LocalizedText)
  }
}
Champs
distance

object (LocalizedText)

Distance parcourue représentée sous forme de texte.

duration

object (LocalizedText)

Durée, représentée sous forme de texte et localisée en fonction de la région de la requête. Tenir compte des conditions de circulation Remarque: Si vous n'avez pas demandé d'informations sur le trafic, cette valeur est identique à staticDuration.

staticDuration

object (LocalizedText)

Durée sans tenir compte des conditions de circulation, représentée sous forme de texte.

StepsOverview

Fournit des informations générales sur une liste de RouteLegStep.

Représentation JSON
{
  "multiModalSegments": [
    {
      object (MultiModalSegment)
    }
  ]
}
Champs
multiModalSegments[]

object (MultiModalSegment)

Informations récapitulatives sur les différents segments multimodaux de l'RouteLeg.steps. Ce champ n'est pas renseigné si RouteLeg ne contient aucun segment multimodal dans les étapes.

MultiModalSegment

Fournit des informations récapitulatives sur les différents segments multimodaux de l'RouteLeg.steps. Un segment multimodal est défini comme un ou plusieurs RouteLegStep contigus ayant la même RouteTravelMode. Ce champ n'est pas renseigné si RouteLeg ne contient aucun segment multimodal dans les étapes.

Représentation JSON
{
  "navigationInstruction": {
    object (NavigationInstruction)
  },
  "travelMode": enum (RouteTravelMode),
  "stepStartIndex": integer,
  "stepEndIndex": integer
}
Champs
navigationInstruction

object (NavigationInstruction)

NavigationInstruction pour le segment multimodal.

travelMode

enum (RouteTravelMode)

Mode de transport du segment multimodal.

stepStartIndex

integer

Index RouteLegStep correspondant au début d'un segment multimodal.

stepEndIndex

integer

Indice RouteLegStep correspondant à la fin d'un segment multimodal.

Fenêtre d'affichage

Fenêtre d'affichage de latitude-longitude, représentée par deux points low et high diagonalement opposés. Une fenêtre d'affichage est considérée comme une région fermée, c'est-à-dire qu'elle inclut sa limite. Les limites de latitude doivent être comprises entre -90 et 90 degrés, inclus, et les limites de longitude entre -180 et 180 degrés, inclus. Voici quelques exemples:

  • Si low = high, la fenêtre d'affichage ne comprend qu'un seul point.

  • Si low.longitude > high.longitude, la plage de longitude est inversée (la fenêtre d'affichage croise la ligne de longitude de 180 degrés).

  • Si low.longitude correspond à -180 degrés et high.longitude à 180 degrés, la fenêtre d'affichage inclut toutes les longitudes.

  • Si low.longitude est défini sur 180 degrés et high.longitude sur -180 degrés, la plage de longitudes est vide.

  • Si low.latitude > high.latitude, la plage de latitude est vide.

low et high doivent être renseignés, et la zone représentée ne doit pas être vide (comme indiqué dans les définitions ci-dessus). Un viewport vide entraînera une erreur.

Par exemple, ce viewport englobe entièrement la ville de New York:

{ "low": { "latitude": 40.477398, "longitude": -74.259087 }, "high": { "latitude": 40.91618, "longitude": -73.70018 } }

Représentation JSON
{
  "low": {
    object (LatLng)
  },
  "high": {
    object (LatLng)
  }
}
Champs
low

object (LatLng)

Obligatoire. Point bas de la fenêtre d'affichage.

high

object (LatLng)

Obligatoire. Point le plus élevé de la fenêtre d'affichage.

RouteLocalizedValues

Représentations textuelles de certaines propriétés.

Représentation JSON
{
  "distance": {
    object (LocalizedText)
  },
  "duration": {
    object (LocalizedText)
  },
  "staticDuration": {
    object (LocalizedText)
  },
  "transitFare": {
    object (LocalizedText)
  }
}
Champs
distance

object (LocalizedText)

Distance parcourue représentée sous forme de texte.

duration

object (LocalizedText)

Durée, représentée sous forme de texte et localisée en fonction de la région de la requête. Tenir compte des conditions de circulation Remarque: Si vous n'avez pas demandé d'informations sur le trafic, cette valeur est identique à staticDuration.

staticDuration

object (LocalizedText)

Durée sans tenir compte des conditions de circulation, représentée sous forme de texte.

transitFare

object (LocalizedText)

Tarif des transports en commun sous forme de texte.

PolylineDetails

Informations correspondant à un index donné ou à un segment contigu d'une polyligne. Étant donné une polyligne avec les points P_0, P_1, ... , P_N (indice à partir de zéro), PolylineDetails définit un intervalle et les métadonnées associées.

Représentation JSON
{
  "flyoverInfo": [
    {
      object (FlyoverInfo)
    }
  ],
  "narrowRoadInfo": [
    {
      object (NarrowRoadInfo)
    }
  ]
}
Champs
flyoverInfo[]

object (FlyoverInfo)

Informations sur le survol le long de la polyligne.

narrowRoadInfo[]

object (NarrowRoadInfo)

Informations sur la route étroite le long de la polyligne.

FlyoverInfo

Encapsule des informations sur les survols le long de la polyligne.

Représentation JSON
{
  "flyoverPresence": enum (RoadFeatureState),
  "polylinePointIndex": {
    object (PolylinePointIndex)
  }
}
Champs
flyoverPresence

enum (RoadFeatureState)

Uniquement en sortie. Indique si un survol existe pour un tronçon donné de la polyligne.

polylinePointIndex

object (PolylinePointIndex)

Emplacement des informations liées à la vue aérienne le long de la polyligne.

RoadFeatureState

Encapsule les états des éléments routiers le long d'un tronçon de polyligne.

Enums
ROAD_FEATURE_STATE_UNSPECIFIED L'état de l'élément routier n'a pas été calculé (valeur par défaut).
EXISTS La route existe.
DOES_NOT_EXIST L'élément routier n'existe pas.

PolylinePointIndex

Encapsule les indices de début et de fin d'un élément de polyligne. Dans les cas où les données correspondent à un seul point, startIndex et endIndex sont égaux.

Représentation JSON
{
  "startIndex": integer,
  "endIndex": integer
}
Champs
startIndex

integer

Index de début de ce détail dans la polyligne.

endIndex

integer

Indice de fin de ce détail dans la polyligne.

NarrowRoadInfo

Encapsule des informations sur les routes étroites le long de la polyligne.

Représentation JSON
{
  "narrowRoadPresence": enum (RoadFeatureState),
  "polylinePointIndex": {
    object (PolylinePointIndex)
  }
}
Champs
narrowRoadPresence

enum (RoadFeatureState)

Uniquement en sortie. Indique si une route étroite existe pour un tronçon donné de la polyligne.

polylinePointIndex

object (PolylinePointIndex)

Emplacement des informations sur les routes étroites le long de la polyligne.

GeocodingResults

Contient GeocodedWaypoints pour le point de départ, la destination et les points de cheminement intermédiaires. Renseigné uniquement pour les repères d'adresse.

Représentation JSON
{
  "origin": {
    object (GeocodedWaypoint)
  },
  "destination": {
    object (GeocodedWaypoint)
  },
  "intermediates": [
    {
      object (GeocodedWaypoint)
    }
  ]
}
Champs
origin

object (GeocodedWaypoint)

Point de cheminement géocodé d'origine.

destination

object (GeocodedWaypoint)

Point de cheminement géocodé de la destination.

intermediates[]

object (GeocodedWaypoint)

Liste des points de cheminement géocodés intermédiaires, chacun contenant un champ d'index correspondant à la position du point de cheminement à partir de zéro dans l'ordre spécifié dans la requête.

GeocodedWaypoint

Informations sur les lieux utilisés comme points de repère. Renseigné uniquement pour les repères d'adresse. Inclut des informations sur les résultats de géolocalisation afin de déterminer à quoi l'adresse a été géocodée.

Représentation JSON
{
  "geocoderStatus": {
    object (Status)
  },
  "type": [
    string
  ],
  "partialMatch": boolean,
  "placeId": string,
  "intermediateWaypointRequestIndex": integer
}
Champs
geocoderStatus

object (Status)

Indique le code d'état résultant de l'opération de géocodage.

type[]

string

Type(s) du résultat, sous la forme d'un ou de plusieurs tags de type. Types acceptés: Types d'adresses et de composants d'adresse.

partialMatch

boolean

Indique que le géocodeur n'a pas renvoyé de correspondance exacte pour la requête d'origine, bien qu'il ait pu trouver une partie de l'adresse demandée. Nous vous recommandons d'examiner la requête d'origine pour vérifier qu'elle ne contient pas d'erreur de syntaxe et/ou que l'adresse est bien complète.

placeId

string

ID du lieu pour ce résultat.

intermediateWaypointRequestIndex

integer

Indice du point de cheminement intermédiaire correspondant dans la requête. N'est renseigné que si le point de cheminement correspondant est un point de cheminement intermédiaire.