Partager via


Route - Post Route Directions Batch

Permet d’envoyer un lot de requêtes à l’API Get Route Directions dans une requête asynchrone unique.

L’API Post Route Directions Batch est une requête HTTP POST qui envoie des lots de requêtes à l’API Get Route Directions à l’aide d’une requête asynchrone unique. Vous pouvez appeler Route Directions Batch API pour s’exécuter de manière asynchrone (asynchrone) ou synchrone (synchronisation). L’API asynchrone permet à l’appelant de traiter par lots jusqu’à 700 requêtes et de synchroniser l’API jusqu’à 100 requêtes. Pour appeler l’API Post Route Directions Batch dans une requête synchrone, consultez Post Route Directions Batch Sync.

Envoyer une demande de traitement par lots asynchrone

L’API asynchrone est appropriée pour traiter de gros volumes de demandes de routage relativement complexes

  • Il permet la récupération des résultats dans un appel distinct (plusieurs téléchargements sont possibles).
  • L’API asynchrone est optimisée pour la fiabilité et n’est pas censée s’exécuter dans un délai d’expiration.
  • Le nombre d’éléments de lot est limité à 700 pour cette API.

Lorsque vous effectuez une requête à l’aide d’une requête asynchrone, par défaut, le service retourne un code de réponse 202 le long d’une URL de redirection dans le champ Emplacement de l’en-tête de réponse. Cette URL doit être vérifiée régulièrement jusqu’à ce que les données de réponse ou les informations d’erreur soient disponibles. Les réponses asynchrones sont stockées pendant 24 heures. L’URL de redirection retourne une réponse 404 si elle est utilisée après la période d’expiration.

Notez que la demande de traitement par lots asynchrone est une opération longue. Voici une séquence classique d’opérations :

  1. Le client envoie une demande de POST Route Directions Batch à Azure Maps.
POST https://atlas.microsoft.com/route/directions/batch/json?api-version=1.0&subscription-key={subscription-key}
  1. Le serveur répond avec l’une des options suivantes :

    HTTP 202 Accepted : la requête Batch a été acceptée.

    HTTP Error : une erreur s’est produite lors du traitement de votre requête Batch. Il peut s’agir d’un 400 Bad Request ou d’un autre code d’état Error.

  2. Si la demande de lot a été acceptée avec succès, l’en-tête Location dans la réponse contient l’URL pour télécharger les résultats de la demande de traitement. Cet URI d’état ressemble à ceci :

GET https://atlas.microsoft.com/route/directions/batch/{batch-id}?api-version=1.0&subscription-key={subscription-key} 
  1. Le client émet une demande de GET sur l’URL de téléchargement obtenue à l’étape 3 pour télécharger les résultats du lot.

Corps POST pour la requête Batch

Pour envoyer les itinéraires itinéraires requêtes, vous utiliserez une requête POST où le corps de la requête contiendra le tableau batchItems au format json et l’en-tête Content-Type sera défini sur application/json. Voici un exemple de corps de requête contenant 3 itinéraires itinéraires requêtes :

{
    "batchItems": [
        { "query": "?query=47.620659,-122.348934:47.610101,-122.342015&travelMode=bicycle&routeType=eco&traffic=false" },
        { "query": "?query=40.759856,-73.985108:40.771136,-73.973506&travelMode=pedestrian&routeType=shortest" },
        { "query": "?query=48.923159,-122.557362:32.621279,-116.840362" }
    ]
}

Un itinéraire directions requête dans un lot n’est qu’une URL partielle sans le protocole, l’URL de base, le chemin d’accès, la version d’API et la clé d’abonnement. Il peut accepter l’un des itinéraires de routage pris en chargeparamètres d’URI. Les valeurs de chaîne dans la directions de l’itinéraire requête doivent être correctement placées en échappement (par exemple, « le caractère doit être échappé avec \ ) et il doit également être correctement codé en URL.

L’API asynchrone permet à l’appelant de traiter jusqu’à 700 requêtes et de synchroniser l’API jusqu’à 100 requêtes, et le lot doit contenir au moins 1 requête.

Télécharger les résultats de lot asynchrones

Pour télécharger les résultats de lot asynchrones, vous émettrez une demande de GET sur le point de terminaison de téléchargement par lots. Cette 'URL de téléchargement peut être obtenue à partir de l’en-tête Location d’une demande de traitement par lots réussie POST et ressemble à ce qui suit :

https://atlas.microsoft.com/route/directions/batch/{batch-id}?api-version=1.0&subscription-key={subscription-key}

Voici la séquence classique d’opérations pour télécharger les résultats du lot :

  1. Le client envoie une demande de GET à l’aide de l’URL de téléchargement .

  2. Le serveur répond avec l’une des options suivantes :

    HTTP 202 Accepted : la requête Batch a été acceptée mais est toujours traitée. Réessayez dans un certain temps.

    HTTP 200 OK - Requête batch correctement traitée. Le corps de la réponse contient tous les résultats du lot.

Modèle de réponse par lot

Le contenu de données retourné est similaire pour les demandes asynchrones et de synchronisation. Lors du téléchargement des résultats d’une demande de traitement asynchrone par lot, si le traitement du lot a terminé, le corps de la réponse contient la réponse par lot. Cette réponse par lot contient un composant summary qui indique les totalRequests qui faisaient partie de la demande de lot d’origine et successfulRequestsc’est-à-dire les requêtes qui ont été exécutées avec succès. La réponse par lot inclut également un tableau batchItems qui contient une réponse pour chaque requête dans la requête de lot. Les batchItems contiennent les résultats dans le même ordre que les requêtes d’origine ont été envoyées dans la requête de lot. Chaque élément de batchItems contient des champs statusCode et response. Chaque response dans batchItems est de l’un des types suivants :

  • RouteDirections : si la requête s’est terminée correctement.

  • Error : si la requête a échoué. La réponse contient une code et une message dans ce cas.

Voici un exemple de réponse Batch avec 1 réussite et 1 échec résultat :

{
    "summary": {
        "successfulRequests": 1,
        "totalRequests": 2
    },
    "batchItems": [
        {
            "statusCode": 200,
            "response": {
                "routes": [
                    {
                        "summary": {
                            "lengthInMeters": 1758,
                            "travelTimeInSeconds": 387,
                            "trafficDelayInSeconds": 0,
                            "departureTime": "2018-07-17T00:49:56+00:00",
                            "arrivalTime": "2018-07-17T00:56:22+00:00"
                        },
                        "legs": [
                            {
                                "summary": {
                                    "lengthInMeters": 1758,
                                    "travelTimeInSeconds": 387,
                                    "trafficDelayInSeconds": 0,
                                    "departureTime": "2018-07-17T00:49:56+00:00",
                                    "arrivalTime": "2018-07-17T00:56:22+00:00"
                                },
                                "points": [
                                    {
                                        "latitude": 47.62094,
                                        "longitude": -122.34892
                                    },
                                    {
                                        "latitude": 47.62094,
                                        "longitude": -122.3485
                                    },
                                    {
                                        "latitude": 47.62095,
                                        "longitude": -122.3476
                                    }
                                ]
                            }
                        ],
                        "sections": [
                            {
                                "startPointIndex": 0,
                                "endPointIndex": 40,
                                "sectionType": "TRAVEL_MODE",
                                "travelMode": "bicycle"
                            }
                        ]
                    }
                ]
            }
        },
        {
            "statusCode": 400,
            "response":
            {
                "error":
                {
                    "code": "400 BadRequest",
                    "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive."
                }
            }
        }
    ]
}
POST https://atlas.microsoft.com/route/directions/batch/json?api-version=1.0

Paramètres URI

Nom Dans Obligatoire Type Description
format
path True

JsonFormat

Format souhaité de la réponse. Seul json format est pris en charge.

api-version
query True

string

Numéro de version de l’API Azure Maps.

En-tête de la demande

Nom Obligatoire Type Description
x-ms-client-id

string

Spécifie le compte destiné à l’utilisation conjointement avec le modèle de sécurité Microsoft Entra ID. Il représente un ID unique pour le compte Azure Maps et peut être récupéré à partir de l’API compte de plan de gestion Azure Maps. Pour utiliser la sécurité microsoft Entra ID dans Azure Maps, consultez les articles suivants pour obtenir des conseils.

Corps de la demande

Nom Type Description
batchItems

BatchRequestItem[]

Liste des requêtes à traiter.

Réponses

Nom Type Description
200 OK

RouteDirectionsBatchResult

Requête batch correctement traitée. Le corps de la réponse contient tous les résultats du lot.

202 Accepted

Prise en charge uniquement pour la requête asynchrone. Demande acceptée : la demande a été acceptée pour traitement. Utilisez l’URL dans l’en-tête d’emplacement pour réessayer ou accéder aux résultats.

En-têtes

Location: string

Other Status Codes

ErrorResponse

Une erreur inattendue s’est produite.

Sécurité

AADToken

Il s’agit des flux Microsoft Entra OAuth 2.0. Lorsqu’il est associé à 'accès en fonction du rôle Azure contrôle, il peut être utilisé pour contrôler l’accès aux API REST Azure Maps. Les contrôles d’accès en fonction du rôle Azure sont utilisés pour désigner l’accès à un ou plusieurs comptes de ressources Azure Maps ou sous-ressources. Tout utilisateur, groupe ou principal de service peut avoir accès via un rôle intégré ou un rôle personnalisé composé d’une ou plusieurs autorisations pour les API REST Azure Maps.

Pour implémenter des scénarios, nous vous recommandons d’afficher concepts d’authentification. En résumé, cette définition de sécurité fournit une solution pour la modélisation des applications via des objets capables de contrôler l’accès sur des API et des étendues spécifiques.

Notes

  • Cette définition de sécurité nécessite l’utilisation de l’en-tête x-ms-client-id pour indiquer la ressource Azure Maps à laquelle l’application demande l’accès. Cela peut être acquis à partir de l’API de gestion Maps.

La Authorization URL est spécifique à l’instance de cloud public Azure. Les clouds souverains ont des URL d’autorisation uniques et des configurations d’ID Microsoft Entra. * Le contrôle d’accès en fonction du rôle Azure est configuré à partir de l'plan de gestion Azure via le portail Azure, PowerShell, l’interface CLI, les SDK Azure ou les API REST. * L’utilisation du kit de développement logiciel (SDK) web Azure Maps permet la configuration basée sur la configuration d’une application pour plusieurs cas d’usage.

Type: oauth2
Flux: implicit
URL d’autorisation: https://login.microsoftonline.com/common/oauth2/authorize

Étendues

Nom Description
https://atlas.microsoft.com/.default https://atlas.microsoft.com/.default

subscription-key

Il s’agit d’une clé partagée provisionnée lorsque vous créer un compte Azure Maps dans le portail Azure ou à l’aide de PowerShell, CLI, sdk Azure ou API REST.

Avec cette clé, toute application peut accéder à toutes les API REST. En d’autres termes, cette clé peut être utilisée comme clé principale dans le compte dans lequel elles sont émises.

Pour les applications exposées publiquement, nous vous recommandons d’utiliser les applications clientes confidentielles approche permettant d’accéder aux API REST Azure Maps afin que votre clé puisse être stockée en toute sécurité.

Type: apiKey
Dans: query

SAS Token

Il s’agit d’un jeton de signature d’accès partagé créé à partir de l’opération List SAS sur la ressource Azure Maps via le plan de gestion Azure via le portail Azure, PowerShell, CLI, azure SDK ou LES API REST.

Avec ce jeton, toute application est autorisée à accéder avec des contrôles d’accès en fonction du rôle Azure et un contrôle précis à l’expiration, au taux et aux régions d’utilisation pour le jeton particulier. En d’autres termes, le jeton SAP peut être utilisé pour permettre aux applications de contrôler l’accès de manière plus sécurisée que la clé partagée.

Pour les applications exposées publiquement, nous vous recommandons de configurer une liste spécifique d’origines autorisées sur la ressource de compte mapper pour limiter l’abus de rendu et renouveler régulièrement le jeton SAP.

Type: apiKey
Dans: header

Exemples

Successfully submit a route direction batch request

Exemple de requête

POST https://atlas.microsoft.com/route/directions/batch/json?api-version=1.0

{
  "batchItems": [
    {
      "query": "?query=47.639987,-122.128384:47.621252,-122.184408:47.596437,-122.332000&routeType=fastest&travelMode=car&maxAlternatives=99"
    },
    {
      "query": "?query=47.620659,-122.348934:47.610101,-122.342015&travelMode=bicycle&routeType=eco&traffic=false"
    },
    {
      "query": "?query=40.759856,-73.985108:40.771136,-73.973506&travelMode=pedestrian&routeType=shortest"
    }
  ]
}

Exemple de réponse

{
  "batchItems": [
    {
      "statusCode": 400,
      "response": {
        "error": {
          "code": "400 BadRequest",
          "message": "maxAlternatives parameter value should be between 0 and 5 inclusive"
        }
      }
    },
    {
      "statusCode": 200,
      "response": {
        "formatVersion": "0.0.12",
        "routes": [
          {
            "summary": {
              "lengthInMeters": 1754,
              "travelTimeInSeconds": 386,
              "trafficDelayInSeconds": 0,
              "departureTime": "2019-06-21T22:56:23+00:00",
              "arrivalTime": "2019-06-21T23:02:49+00:00"
            },
            "legs": [
              {
                "summary": {
                  "lengthInMeters": 1754,
                  "travelTimeInSeconds": 386,
                  "trafficDelayInSeconds": 0,
                  "departureTime": "2019-06-21T22:56:23+00:00",
                  "arrivalTime": "2019-06-21T23:02:49+00:00"
                },
                "points": [
                  {
                    "latitude": 47.62094,
                    "longitude": -122.34892
                  },
                  {
                    "latitude": 47.62094,
                    "longitude": -122.3485
                  },
                  {
                    "latitude": 47.62095,
                    "longitude": -122.3476
                  },
                  {
                    "latitude": 47.60995,
                    "longitude": -122.34174
                  },
                  {
                    "latitude": 47.61011,
                    "longitude": -122.342
                  }
                ]
              }
            ],
            "sections": [
              {
                "startPointIndex": 0,
                "endPointIndex": 44,
                "sectionType": "TRAVEL_MODE",
                "travelMode": "bicycle"
              }
            ]
          }
        ]
      }
    },
    {
      "statusCode": 200,
      "response": {
        "formatVersion": "0.0.12",
        "routes": [
          {
            "summary": {
              "lengthInMeters": 1772,
              "travelTimeInSeconds": 1276,
              "trafficDelayInSeconds": 0,
              "departureTime": "2019-06-21T22:56:23+00:00",
              "arrivalTime": "2019-06-21T23:17:38+00:00"
            },
            "legs": [
              {
                "summary": {
                  "lengthInMeters": 1772,
                  "travelTimeInSeconds": 1276,
                  "trafficDelayInSeconds": 0,
                  "departureTime": "2019-06-21T22:56:23+00:00",
                  "arrivalTime": "2019-06-21T23:17:38+00:00"
                },
                "points": [
                  {
                    "latitude": 40.75982,
                    "longitude": -73.98493
                  },
                  {
                    "latitude": 40.7601,
                    "longitude": -73.98483
                  },
                  {
                    "latitude": 40.75984,
                    "longitude": -73.98417
                  },
                  {
                    "latitude": 40.76047,
                    "longitude": -73.9837
                  },
                  {
                    "latitude": 40.77095,
                    "longitude": -73.9736
                  },
                  {
                    "latitude": 40.77114,
                    "longitude": -73.97356
                  }
                ]
              }
            ],
            "sections": [
              {
                "startPointIndex": 0,
                "endPointIndex": 47,
                "sectionType": "TRAVEL_MODE",
                "travelMode": "pedestrian"
              }
            ]
          }
        ]
      }
    }
  ],
  "summary": {
    "successfulRequests": 2,
    "totalRequests": 3
  }
}
operation-Location: URL to download the results of the long-running batch request.

Définitions

Nom Description
BatchRequest

Ce type représente le corps de la requête pour le service Batch.

BatchRequestItem

Objet de requête Batch

DelayMagnitude

Ampleur du délai causé par l’incident. Ces valeurs correspondent aux valeurs du champ de réponse de la 'API Get Traffic Incident Detail.

DrivingSide

Indique la main gauche et le côté droit à la conduite au point de la manœuvre.

EffectiveSetting

Paramètre ou données effectifs utilisés lors de l’appel de cette API route.

ErrorAdditionalInfo

Informations supplémentaires sur l’erreur de gestion des ressources.

ErrorDetail

Détail de l’erreur.

ErrorResponse

Réponse d’erreur

GuidanceInstructionType

Type de l’instruction, par exemple, tourner ou changer de forme routière.

GuidanceManeuver

Code identifiant la manœuvre.

JsonFormat

Format souhaité de la réponse. Seul json format est pris en charge.

JunctionType

Type de la jonction où la manœuvre a lieu. Pour les grands ronds-points, deux instructions distinctes sont générées pour entrer et quitter le rond-point.

LatLongPair

Emplacement représenté sous la forme d’une latitude et d’une longitude.

Response

Résultat de la requête. RouteDirections si la requête s’est terminée correctement, ErrorResponse sinon.

ResponseSectionType

Types de section de la réponse de routage signalée

ResponseTravelMode

Mode de déplacement pour l’itinéraire calculé. La valeur est définie sur other si le mode de transport demandé n’est pas possible dans cette section

Route
RouteDirectionsBatchItem

Élément retourné à partir de l’appel de service Route Directions Batch.

RouteDirectionsBatchResult

Cet objet est retourné à partir d’un appel de service Route Directions Batch réussi.

RouteGuidance

Contient des éléments associés à des conseils. Ce champ n’est présent que lorsque des conseils ont été demandés et sont disponibles.

RouteInstruction

Ensemble d’attributs décrivant une manœuvre, par exemple « Tourner à droite », « Garder à gauche », « Prendre le ferry », « Prendre l’autoroute », « Arriver ».

RouteInstructionGroup

Regroupe une séquence d’éléments d’instruction qui sont liés les uns aux autres. La plage de séquences est limitée avec firstInstructionIndex et lastInstructionIndex. Lorsque des messages texte lisibles par l’homme sont demandés pour obtenir des conseils (instructionType=text ou étiqueté), le groupe d’instructions a un message de synthèse retourné lorsqu’il est disponible.

RouteLeg

Description d’une partie d’une route, composée d’une liste de points. Chaque point de route supplémentaire fourni dans la requête entraîne une étape supplémentaire dans l’itinéraire retourné.

RouteLegSummary

Objet de synthèse pour la section route.

RouteOptimizedWaypoint

Objet point de chemin optimisé.

RouteReport

Signale les paramètres effectifs utilisés dans l’appel actuel.

RouteSection

Les sections de routage contiennent des informations supplémentaires sur les parties d’un itinéraire. Chaque section contient au moins les éléments startPointIndex, endPointIndexet sectionType.

RouteSectionTec

Détails de l’événement de trafic, à l’aide de définitions dans la norme TPEG2-TEC. Peut contenir effectCode et provoquer des éléments.

RouteSectionTecCause

Cause de l’événement de trafic. Peut contenir des éléments mainCauseCode et subCauseCode. Peut être utilisé pour définir l’iconographie et les descriptions.

RouteSummary

Objet Summary

SimpleCategory

Type de l’incident. Peut actuellement être JAM, ROAD_WORK, ROAD_CLOSURE ou OTHER. Pour plus d’informations, consultez « tec ».

Summary

Résumé des résultats de la demande de traitement par lots

BatchRequest

Ce type représente le corps de la requête pour le service Batch.

Nom Type Description
batchItems

BatchRequestItem[]

Liste des requêtes à traiter.

BatchRequestItem

Objet de requête Batch

Nom Type Description
query

string

Ce paramètre contient une chaîne de requête utilisée pour effectuer une opération de géocodage non structurée. La chaîne de requête est transmise textuellement à l’API de recherche pour le traitement.

DelayMagnitude

Ampleur du délai causé par l’incident. Ces valeurs correspondent aux valeurs du champ de réponse de la 'API Get Traffic Incident Detail.

Nom Type Description
0

string

Inconnu.

1

string

Mineur.

2

string

Modéré.

3

string

Majeur.

4

string

Non défini, utilisé pour les fermetures de routes et d’autres retards indéfinis.

DrivingSide

Indique la main gauche et le côté droit à la conduite au point de la manœuvre.

Nom Type Description
LEFT

string

Gauche.

RIGHT

string

Côté droit.

EffectiveSetting

Paramètre ou données effectifs utilisés lors de l’appel de cette API route.

Nom Type Description
key

string

Nom du paramètre utilisé.

value

string

Valeur du paramètre utilisé.

ErrorAdditionalInfo

Informations supplémentaires sur l’erreur de gestion des ressources.

Nom Type Description
info

object

Informations supplémentaires.

type

string

Type d’informations supplémentaire.

ErrorDetail

Détail de l’erreur.

Nom Type Description
additionalInfo

ErrorAdditionalInfo[]

Informations supplémentaires sur l’erreur.

code

string

Code d’erreur.

details

ErrorDetail[]

Détails de l’erreur.

message

string

Message d’erreur.

target

string

Cible d’erreur.

ErrorResponse

Réponse d’erreur

Nom Type Description
error

ErrorDetail

Objet d’erreur.

GuidanceInstructionType

Type de l’instruction, par exemple, tourner ou changer de forme routière.

Nom Type Description
DIRECTION_INFO

string

Informations de direction.

LOCATION_ARRIVAL

string

Emplacement d’arrivée.

LOCATION_DEPARTURE

string

Emplacement de départ.

LOCATION_WAYPOINT

string

Emplacement du point de chemin.

ROAD_CHANGE

string

Changement de route.

TURN

string

Tourner.

GuidanceManeuver

Code identifiant la manœuvre.

Nom Type Description
ARRIVE

string

Tu es arrivé.

ARRIVE_LEFT

string

Tu es arrivé. Votre destination est à gauche.

ARRIVE_RIGHT

string

Tu es arrivé. Votre destination est à droite.

BEAR_LEFT

string

Ours à gauche.

BEAR_RIGHT

string

Portez à droite.

DEPART

string

Partir.

ENTER_FREEWAY

string

Prenez la voie libre.

ENTER_HIGHWAY

string

Prenez l’autoroute.

ENTER_MOTORWAY

string

Prenez l’autoroute.

ENTRANCE_RAMP

string

Prenez la rampe.

FOLLOW

string

Suivre.

KEEP_LEFT

string

Restez à gauche.

KEEP_RIGHT

string

Gardez la droite.

MAKE_UTURN

string

Faites un U-turn.

MOTORWAY_EXIT_LEFT

string

Prenez la sortie gauche.

MOTORWAY_EXIT_RIGHT

string

Prenez la sortie droite.

ROUNDABOUT_BACK

string

Tournez autour du rond-point.

ROUNDABOUT_CROSS

string

Traverser le rond-point.

ROUNDABOUT_LEFT

string

Au rond-point, prenez la sortie sur la gauche.

ROUNDABOUT_RIGHT

string

Au rond-point, prenez la sortie à droite.

SHARP_LEFT

string

Tournez vers la gauche forte.

SHARP_RIGHT

string

Tournez vers la droite.

STRAIGHT

string

Continuez tout droit.

SWITCH_MAIN_ROAD

string

Basculez vers la route principale.

SWITCH_PARALLEL_ROAD

string

Basculez vers la route parallèle.

TAKE_EXIT

string

Prenez la sortie.

TAKE_FERRY

string

Prenez le ferry.

TRY_MAKE_UTURN

string

Essayez de faire un U-turn.

TURN_LEFT

string

Tournez vers la gauche.

TURN_RIGHT

string

Tournez vers la droite.

WAYPOINT_LEFT

string

Vous avez atteint le point de route. C’est à gauche.

WAYPOINT_REACHED

string

Vous avez atteint le point de route.

WAYPOINT_RIGHT

string

Vous avez atteint le point de route. C’est sur la droite.

JsonFormat

Format souhaité de la réponse. Seul json format est pris en charge.

Nom Type Description
json

string

le format d’échange de données JavaScript Object Notation

JunctionType

Type de la jonction où la manœuvre a lieu. Pour les grands ronds-points, deux instructions distinctes sont générées pour entrer et quitter le rond-point.

Nom Type Description
BIFURCATION

string

bifurcation

REGULAR

string

régulier

ROUNDABOUT

string

rond-point

LatLongPair

Emplacement représenté sous la forme d’une latitude et d’une longitude.

Nom Type Description
latitude

number

Latitude, propriété

longitude

number

Longitude, propriété

Response

Résultat de la requête. RouteDirections si la requête s’est terminée correctement, ErrorResponse sinon.

Nom Type Description
error

ErrorDetail

Objet d’erreur.

formatVersion

string

Format Version, propriété

optimizedWaypoints

RouteOptimizedWaypoint[]

Séquence optimisée de points de route. Il affiche l’index de l’utilisateur fourni une séquence waypoint pour la liste d’origine et optimisée. Par exemple, une réponse :

<optimizedWaypoints>
<waypoint providedIndex="0" optimizedIndex="1"/>
<waypoint providedIndex="1" optimizedIndex="2"/>
<waypoint providedIndex="2" optimizedIndex="0"/>
</optimizedWaypoints>

signifie que la séquence d’origine est [0, 1, 2] et la séquence optimisée est [1, 2, 0]. Étant donné que l’index commence par 0, l’original est « premier, deuxième, troisième », tandis que l’optimise est « second, troisième, first ».

report

RouteReport

Signale les paramètres effectifs utilisés dans l’appel actuel.

routes

Route[]

Tableau d’itinéraires

ResponseSectionType

Types de section de la réponse de routage signalée

Nom Type Description
CARPOOL

string

Sections de l’itinéraire qui nécessitent l’utilisation des voies de stationnement (HOV/High Occupationy Vehicle).

CAR_TRAIN

string

Sections de l’itinéraire qui sont des voitures ou des trains.

COUNTRY

string

Sections indiquant les pays/régions dans lesquels se trouve l’itinéraire.

FERRY

string

Sections de l’itinéraire qui sont des ferries.

MOTORWAY

string

Sections de l’itinéraire qui sont des autoroutes.

PEDESTRIAN

string

Sections de la route qui ne conviennent qu’aux piétons.

TOLL_ROAD

string

Sections de l’itinéraire qui nécessitent un péage à payer.

TOLL_VIGNETTE

string

Sections de l’itinéraire qui nécessitent la présence d’une vignette de péage.

TRAFFIC

string

Sections de l’itinéraire qui contiennent des informations de trafic.

TRAVEL_MODE

string

Sections par rapport au paramètre de requête travelMode.

TUNNEL

string

Sections de l’itinéraire qui sont des tunnels.

URBAN

string

Sections de la route situées dans les zones urbaines.

ResponseTravelMode

Mode de déplacement pour l’itinéraire calculé. La valeur est définie sur other si le mode de transport demandé n’est pas possible dans cette section

Nom Type Description
bicycle

string

Les itinéraires retournés sont optimisés pour les vélos, y compris l’utilisation de voies cyclables.

bus

string

Les itinéraires retournés sont optimisés pour les bus, y compris l’utilisation des voies de bus uniquement. Fonctionnalité BÊTA.

car

string

Les itinéraires retournés sont optimisés pour les voitures.

motorcycle

string

Les itinéraires retournés sont optimisés pour les motocyclettes. Fonctionnalité BÊTA.

other

string

Le mode de transport donné n’est pas possible dans cette section

pedestrian

string

Les itinéraires retournés sont optimisés pour les piétons, y compris l’utilisation des trottoirs.

taxi

string

Les itinéraires retournés sont optimisés pour les taxis. Fonctionnalité BÊTA.

truck

string

Les itinéraires retournés sont optimisés pour les véhicules commerciaux, comme pour les camions.

van

string

Les itinéraires retournés sont optimisés pour les vans. Fonctionnalité BÊTA.

Route

Nom Type Description
guidance

RouteGuidance

Contient des éléments associés à des conseils. Ce champ n’est présent que lorsque des conseils ont été demandés et sont disponibles.

legs

RouteLeg[]

Tableau de jambes

sections

RouteSection[]

Tableau de sections

summary

RouteSummary

Objet Summary

RouteDirectionsBatchItem

Élément retourné à partir de l’appel de service Route Directions Batch.

Nom Type Description
response

Response

Résultat de la requête. RouteDirections si la requête s’est terminée correctement, ErrorResponse sinon.

statusCode

integer

Code d’état de la requête HTTP.

RouteDirectionsBatchResult

Cet objet est retourné à partir d’un appel de service Route Directions Batch réussi.

Nom Type Description
batchItems

RouteDirectionsBatchItem[]

Tableau contenant les résultats du lot.

summary

Summary

Résumé des résultats de la demande de traitement par lots

RouteGuidance

Contient des éléments associés à des conseils. Ce champ n’est présent que lorsque des conseils ont été demandés et sont disponibles.

Nom Type Description
instructionGroups

RouteInstructionGroup[]

Regroupe une séquence d’éléments d’instruction qui sont liés les uns aux autres.

instructions

RouteInstruction[]

Une liste d’instructions décrivant les manœuvres.

RouteInstruction

Ensemble d’attributs décrivant une manœuvre, par exemple « Tourner à droite », « Garder à gauche », « Prendre le ferry », « Prendre l’autoroute », « Arriver ».

Nom Type Description
combinedMessage

string

Message lisible par l’homme pour la manœuvre combinée avec le message de l’instruction suivante. Parfois, il est possible de combiner deux instructions successives en une seule instruction, ce qui facilite le suivi. Lorsque c’est le cas, l’indicateur possibleCombineWithNext sera vrai. Par exemple:

10. Turn left onto Einsteinweg/A10/E22 towards Ring Amsterdam
11. Follow Einsteinweg/A10/E22 towards Ring Amsterdam

L’indicateur possibleCombineWithNext sur l’instruction 10 est vrai. Cela indique aux clients des instructions codées qu’il peut être combiné avec l’instruction 11. Les instructions seront combinées automatiquement pour les clients demandant des conseils lisibles par l’homme. Le champ combinéMessage contient le message combiné :

Turn left onto Einsteinweg/A10/E22 towards Ring Amsterdam
then follow Einsteinweg/A10/E22 towards Ring Amsterdam.
countryCode

string

3 caractères code de pays ISO 3166-1 alpha-3. C’est-à-dire les États-Unis.

drivingSide

DrivingSide

Indique la main gauche et le côté droit à la conduite au point de la manœuvre.

exitNumber

string

Nombre(s) d’une sortie d’autoroute prise par la manœuvre actuelle. Si une sortie a plusieurs numéros de sortie, ils sont séparés par « », et éventuellement agrégés par « - », par exemple , « 10, 13-15 ».

instructionType

GuidanceInstructionType

Type de l’instruction, par exemple, tourner ou changer de forme routière.

junctionType

JunctionType

Type de la jonction où la manœuvre a lieu. Pour les grands ronds-points, deux instructions distinctes sont générées pour entrer et quitter le rond-point.

maneuver

GuidanceManeuver

Code identifiant la manœuvre.

message

string

Un message lisible par l’homme pour la manœuvre.

point

LatLongPair

Emplacement représenté sous la forme d’une latitude et d’une longitude.

pointIndex

integer

Index du point dans la liste des « points » polylignes correspondant au point de l’instruction.

possibleCombineWithNext

boolean

Il est possible de combiner éventuellement l’instruction avec la suivante. Cela peut être utilisé pour générer des messages tels que « Tourner à gauche, puis tourner vers la droite ».

roadNumbers

string[]

Le ou les numéros de route des segments de route importants suivants après la manœuvre, ou de la ou des routes à suivre. Exemple : ["E34 », « N205"]

roundaboutExitNumber

integer

Cela indique quelle sortie prendre à un rond-point.

routeOffsetInMeters

integer

Distance entre le début de l’itinéraire et le point de l’instruction.

signpostText

string

Texte sur un panneau qui est le plus pertinent pour la manœuvre, ou pour la direction qui doit être suivie.

stateCode

string

Sous-division (par exemple, état) du pays, représentée par la deuxième partie d’un code ISO 3166-2. Ceci n’est disponible que pour certains pays/régions comme les États-Unis, le Canada et le Mexique.

street

string

Nom de rue du prochain segment de route important après la manœuvre, ou de la rue qui devrait être suivie.

travelTimeInSeconds

integer

Durée de trajet estimée jusqu’au point correspondant à routeOffsetInMeters.

turnAngleInDecimalDegrees

integer

Indique la direction d’une instruction. Si junctionType indique une instruction de tour :

  • 180 = U-turn
  • [-179, -1] = Tour gauche
  • 0 = Droite sur (tour '0 degré')
  • [1, 179] = Virage droit

Si junctionType indique une instruction de bifurcation :

  • <0 - conserver à gauche
  • >0 - gardez à droite

RouteInstructionGroup

Regroupe une séquence d’éléments d’instruction qui sont liés les uns aux autres. La plage de séquences est limitée avec firstInstructionIndex et lastInstructionIndex. Lorsque des messages texte lisibles par l’homme sont demandés pour obtenir des conseils (instructionType=text ou étiqueté), le groupe d’instructions a un message de synthèse retourné lorsqu’il est disponible.

Nom Type Description
firstInstructionIndex

integer

Index de la première instruction dans les instructions et appartenant à ce groupe.

groupLengthInMeters

integer

Longueur du groupe.

groupMessage

string

Message de synthèse lorsque des messages texte lisibles par l’homme sont demandés pour obtenir des conseils (instructionType=text ou étiqueté).

lastInstructionIndex

integer

Index de la dernière instruction dans les instructions et appartenant à ce groupe.

RouteLeg

Description d’une partie d’une route, composée d’une liste de points. Chaque point de route supplémentaire fourni dans la requête entraîne une étape supplémentaire dans l’itinéraire retourné.

Nom Type Description
points

LatLongPair[]

Tableau de points

summary

RouteLegSummary

Objet de synthèse pour la section route.

RouteLegSummary

Objet de synthèse pour la section route.

Nom Type Description
arrivalTime

string

Heure d’arrivée estimée pour l’itinéraire ou la jambe. L’heure est au format UTC.

batteryConsumptionInkWh

number

Consommation d’énergie électrique estimée en kWh (kWh) à l’aide du modèle de consommation électrique. Inclus si vehicleEngineType est défini sur électrique et constantSpeedConsumptionInkWhPerHundredkm est spécifié. La valeur de batteryConsumptionInkWh inclut l’énergie électrique récupérée et peut donc être négative (ce qui indique l’acquisition d’énergie). Si maxChargeInkWh et currentChargeInkWh sont spécifiés, la récupération est limitée pour s’assurer que le niveau de charge de la batterie ne dépasse jamais maxChargeInkWh. Si ni maxChargeInkWh ni currentChargeInkWh ne sont spécifiés, la récupération non contrainte est supposée dans le calcul de la consommation.

departureTime

string

Heure de départ estimée pour l’itinéraire ou la jambe. L’heure est au format UTC.

fuelConsumptionInLiters

number

Consommation estimée de carburant en litres à l’aide du modèle de consommation de combustion. Inclus si vehicleEngineType est défini sur combustion et constantSpeedConsumptionInLitersPerHundredkm est spécifié. La valeur est non négative.

historicTrafficTravelTimeInSeconds

integer

Durée de déplacement estimée calculée à l’aide de données de trafic historique dépendantes du temps. Inclus uniquement si computeHotelTimeFor = tout est utilisé dans la requête.

lengthInMeters

integer

Length In Meters, propriété

liveTrafficIncidentsTravelTimeInSeconds

integer

Temps de voyage estimé calculé à l’aide de données de vitesse en temps réel. Inclus uniquement si computeHotelTimeFor = tout est utilisé dans la requête.

noTrafficTravelTimeInSeconds

integer

Estimation du temps de trajet calculé comme s’il n’y a pas de retards sur l’itinéraire en raison de conditions de circulation (par exemple, congestion). Inclus uniquement si computeHotelTimeFor = tout est utilisé dans la requête.

trafficDelayInSeconds

integer

Délai estimé en secondes provoqué par les incidents en temps réel en fonction des informations de trafic. Pour les itinéraires prévus avec l’heure de départ à l’avenir, les retards sont toujours 0. Pour retourner des temps de voyage supplémentaires à l’aide de différents types d’informations de trafic, le paramètre computeTravelTimeFor=all doit être ajouté.

travelTimeInSeconds

integer

Durée de voyage estimée en secondes qui inclut le délai en raison du trafic en temps réel. Notez que même lorsque traffic=false travelTimeInSeconds inclut toujours le délai en raison du trafic. Si DepartAt est à l’avenir, le temps de trajet est calculé à l’aide de données de trafic historique dépendantes du temps.

RouteOptimizedWaypoint

Objet point de chemin optimisé.

Nom Type Description
optimizedIndex

integer

Index de point de façon optimisée à partir du système.

providedIndex

integer

Index de point de chemin fourni par l’utilisateur.

RouteReport

Signale les paramètres effectifs utilisés dans l’appel actuel.

Nom Type Description
effectiveSettings

EffectiveSetting[]

Paramètres ou données effectifs utilisés lors de l’appel de cette API route.

RouteSection

Les sections de routage contiennent des informations supplémentaires sur les parties d’un itinéraire. Chaque section contient au moins les éléments startPointIndex, endPointIndexet sectionType.

Nom Type Description
delayInSeconds

integer

Retard en secondes provoqué par l’incident.

effectiveSpeedInKmh

integer

Vitesse effective de l’incident en km/h, moyenne sur toute sa longueur.

endPointIndex

integer

Index du dernier point (offset 0) dans l’itinéraire auquel cette section s’applique.

magnitudeOfDelay

DelayMagnitude

Ampleur du délai causé par l’incident. Ces valeurs correspondent aux valeurs du champ de réponse de la 'API Get Traffic Incident Detail.

sectionType

ResponseSectionType

Types de section de la réponse de routage signalée

simpleCategory

SimpleCategory

Type de l’incident. Peut actuellement être JAM, ROAD_WORK, ROAD_CLOSURE ou OTHER. Pour plus d’informations, consultez « tec ».

startPointIndex

integer

Index du premier point (offset 0) dans l’itinéraire auquel cette section s’applique.

tec

RouteSectionTec

Détails de l’événement de trafic, à l’aide de définitions dans la norme TPEG2-TEC. Peut contenir effectCode et provoquer des éléments.

travelMode

ResponseTravelMode

Mode de déplacement pour l’itinéraire calculé. La valeur est définie sur other si le mode de transport demandé n’est pas possible dans cette section

RouteSectionTec

Détails de l’événement de trafic, à l’aide de définitions dans la norme TPEG2-TEC. Peut contenir effectCode et provoquer des éléments.

Nom Type Description
causes

RouteSectionTecCause[]

Causes du tableau

effectCode

integer

Effet sur le flux de trafic. Contient une valeur dans la table tec001 :EffectCode, telle que définie dans la norme TPEG2-TEC. Peut être utilisé pour les événements de trafic de code couleur en fonction de la gravité.

RouteSectionTecCause

Cause de l’événement de trafic. Peut contenir des éléments mainCauseCode et subCauseCode. Peut être utilisé pour définir l’iconographie et les descriptions.

Nom Type Description
mainCauseCode

integer

La principale cause de l’événement de trafic. Contient une valeur dans la table tec002 :CauseCode, telle que définie dans la norme TPEG2- TEC.

subCauseCode

integer

Sous-analyse de l’événement de trafic. Contient une valeur dans la table de sous-cause définie par le mainCauseCode, tel que défini dans la norme TPEG2-TEC.

RouteSummary

Objet Summary

Nom Type Description
arrivalTime

string

Heure d’arrivée estimée pour l’itinéraire ou la jambe. L’heure est au format UTC.

departureTime

string

Heure de départ estimée pour l’itinéraire ou la jambe. L’heure est au format UTC.

lengthInMeters

integer

Length In Meters, propriété

trafficDelayInSeconds

integer

Délai estimé en secondes provoqué par les incidents en temps réel en fonction des informations de trafic. Pour les itinéraires prévus avec l’heure de départ à l’avenir, les retards sont toujours 0. Pour retourner des temps de voyage supplémentaires à l’aide de différents types d’informations de trafic, le paramètre computeTravelTimeFor=all doit être ajouté.

travelTimeInSeconds

integer

Durée de voyage estimée en secondes qui inclut le délai en raison du trafic en temps réel. Notez que même lorsque traffic=false travelTimeInSeconds inclut toujours le délai en raison du trafic. Si DepartAt est à l’avenir, le temps de trajet est calculé à l’aide de données de trafic historique dépendantes du temps.

SimpleCategory

Type de l’incident. Peut actuellement être JAM, ROAD_WORK, ROAD_CLOSURE ou OTHER. Pour plus d’informations, consultez « tec ».

Nom Type Description
JAM

string

Embouteillage.

OTHER

string

Autre.

ROAD_CLOSURE

string

Fermeture de la route.

ROAD_WORK

string

Travaux routiers.

Summary

Résumé des résultats de la demande de traitement par lots

Nom Type Description
successfulRequests

integer

Nombre de requêtes réussies dans le lot

totalRequests

integer

Nombre total de requêtes dans le lot