Ce guide explique comment migrer des applications qui utilisent l'API Directions ou l'API Distance Matrix vers l'API Routes. Pour en savoir plus sur l'API Routes, consultez la présentation du produit.
Bonnes pratiques de facturation pour la migration
Ces conseils s'appliquent si votre utilisation de l'API est suffisamment élevée pour passer à la tarification de deuxième niveau. Lorsque vous migrez vers une version plus récente d'une API, vous êtes également facturé pour un autre code SKU. Pour éviter une augmentation des coûts pendant le mois de votre transition, nous vous recommandons de passer aux nouvelles API en production le plus tôt possible au début du mois. Vous vous assurez ainsi d'atteindre les niveaux de tarification mensuels les plus rentables pendant le mois de la migration. Pour en savoir plus sur les niveaux de tarification, consultez la page Tarifs et la FAQ sur la tarification.
Mettre à jour les points de terminaison de l'API REST
Mettez à jour votre code pour utiliser les nouveaux points de terminaison de l'API Routes.
À partir de l'API Directions
| API Directions | https://maps.googleapis.com/maps/api/directions/outputFormat?parameters |
| API Routes | https://routes.googleapis.com/directions/v2:computeRoutes |
À partir de l'API Distance Matrix
| API Distance Matrix | https://maps.googleapis.com/maps/api/distancematrix/outputFormat?parameters |
| API Routes | https://routes.googleapis.com/distanceMatrix/v2:computeRouteMatrix |
Convertir les paramètres d'URL pour utiliser un corps de requête HTTPS
Avec l'API Directions et l'API Distance Matrix, vous transmettez les propriétés de configuration en tant que paramètres d'URL à une requête HTTP GET. Par exemple, pour l'API Directions :
https://maps.googleapis.com/maps/api/directions/outputFormat?parameters
Avec l'API Routes, vous transmettez les paramètres dans un corps de requête ou dans des en-têtes dans le cadre d'une requête HTTP POST. Par exemple, consultez les pages suivantes :
Convertir les points de cheminement encodés en polylignes en points de cheminement de localisation
La spécification des points de cheminement en tant que polylignes encodées est disponible dans l' API Directions (héritée) pour adapter un grand nombre de points de cheminement à la limite d'URL de 16 384 caractères. Cette fonctionnalité n'est pas nécessaire dans l'API Routes, car les points de cheminement peuvent être transmis dans le corps de la requête REST ou gRPC sous forme de coordonnées de latitude/longitude. Pour obtenir des exemples, consultez l' exemple HTTP dans le document Calculer une matrice d'itinéraires ou Définir un point de cheminement intermédiaire dans le document Spécifier des points de cheminement intermédiaires.
Convertir les paramètres
Les tableaux suivants répertorient les paramètres de l'API Directions et de l'API Distance Matrix qui ont été renommés ou modifiés, ou qui ne sont pas compatibles avec la version GA. Mettez à jour votre code si vous utilisez l'un de ces paramètres.
Conversions des paramètres de requête
| Paramètre Directions ou matrice des distances | Paramètre de l'API Routes | Remarques |
|---|---|---|
alternatives |
computeAlternativeRoutes |
|
arrival_time |
arrivalTime |
Disponible uniquement en mode TRANSIT, et non en même temps que departureTime. |
avoid |
routeModifiers |
|
departure_time |
departureTime |
Ne peut pas être utilisé en même temps que arrivalTime. |
language |
languageCode |
Compatible uniquement avec Compute Routes. |
mode |
travelMode |
Ajout de la compatibilité avec |
region |
regionCode |
|
traffic_model |
trafficModel |
En savoir plus |
transit_mode |
"travelMode": "TRANSIT" |
Dans l'API Directions (héritée), dans un itinéraire en transports en commun, chaque segment d'un trajet avec le même mode de transport (par exemple, à pied ou en transports en commun) est considéré comme une étape, et les instructions individuelles pour ce mode de transport se trouvent dans les sous-étapes. En revanche, dans l' API Routes, les étapes sont toujours une instruction de navigation pour tous les types de transport. Chaque instruction de navigation est donc une étape. Pour plusieurs étapes dans un même mode de transport, l'API Routes fournit des métadonnées contenant un résumé des étapes pour ce mode de transport dans `stepsOverview`. Pour demander ces métadonnées, utilisez le `routes.legs.stepsOverview` masque de champ. En savoir plus. |
transit_routing_preference |
transitRoutingPreference |
En savoir plus |
units |
units |
En savoir plus |
waypoints |
intermediates |
Suppression de la compatibilité avec les polylignes encodées. |
optimize=true pour les points de cheminement |
"optimizeWaypointOrder": "true" |
En savoir plus |
Conversions des paramètres de réponse
| Paramètre Directions ou matrice des distances | Paramètre de l'API Routes | Remarques |
|---|---|---|
copyrights |
Non inclus dans la réponse. Vous devez inclure la déclaration suivante lorsque vous affichez les résultats à vos utilisateurs :
Exemple :
|
|
distance |
distanceMeters |
La distance n'est disponible qu'en mètres. |
duration_in_traffic |
duration |
Supprimé dans l'API Routes, utilisez duration. |
status |
Non disponible. Utilisez les codes de réponse HTTP pour les erreurs signalées par l'API. Pour en savoir plus, consultez Gérer les erreurs de requête. | |
geocoded_waypoints |
geocoding_results |
Compatible uniquement avec Compute Routes. Contient des informations de réponse de geocoding uniquement pour les points de cheminement spécifiés en tant qu'adresses. |
bounds |
viewport |
|
legs.end_address |
Non disponible. | Utilisez des identifiants de lieu au lieu de coordonnées pour un routage de haute précision. Les identifiants de lieu contiennent des données qui associent l'itinéraire aux points d'accès corrects.
|
legs.start_address |
Non disponible. | |
overview_polyline |
polyligne | |
summary |
description |
|
waypoint_order |
optimizedIntermediateWaypointIndex |