Guide et exemples de l'API Map Management

Vous pouvez utiliser l'API Map Management pour gérer par programmation les styles de cartes basés dans le cloud dans les points de terminaison v2alpha (expérimental) et v2beta (aperçu).

Résumé des opérations

Pour visualiser une carte personnalisée avec l'API Map Management, procédez comme suit :

  1. Créez un StyleConfig : définissez l'apparence visuelle de votre carte à l'aide d'une représentation JSON des paramètres de couleur, de visibilité et de densité.
  2. Créez un MapConfig : établissez un ID de carte unique qui sert de conteneur pour l'identité et les fonctionnalités de haut niveau de votre carte.
  3. Associez-les à un MapContextConfig : associez votre StyleConfig (et les ensembles de données facultatifs) à des variantes de carte spécifiques (comme ROADMAP ou SATELLITE) dans votre MapConfig.

Comportements par défaut

Lorsque vous utilisez les points de terminaison v2, gardez à l'esprit les comportements par défaut suivants :

  • Type de carte : le type de rendu de carte par défaut est RASTER. Pour utiliser des cartes vectorielles, vous devez définir explicitement map_type sur VECTOR dans votre MapConfig.
  • Variante de carte : si aucun map_variants n'est spécifié lors de la création d'un MapContextConfig, la configuration ne sera appliquée qu'à la variante ROADMAP par défaut.
  • Style de base : si un json_style_sheet est vide ou n'est pas fourni dans un StyleConfig, la carte de base Google par défaut sans style sera utilisée.

Utiliser des StyleConfigs

Un StyleConfig contient les définitions de style basées sur JSON.

Créer un StyleConfig

curl -X POST \
-H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
-H "Content-Type: application/json" \
https://mapmanagement.googleapis.com/v2beta/projects/YOUR_PROJECT_ID/styleConfigs \
-d '{
  "display_name": "My Custom Style",
  "json_style_sheet": "[{\"featureType\":\"all\",\"stylers\":[{\"saturation\":-100}]}]"
}'

Répertorier les StyleConfigs

curl -X GET \
-H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
https://mapmanagement.googleapis.com/v2beta/projects/YOUR_PROJECT_ID/styleConfigs

Utiliser des MapConfigs

Un MapConfig définit l'identité et le type de rendu de base d'une carte.

Créer un MapConfig

curl -X POST \
-H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
-H "Content-Type: application/json" \
https://mapmanagement.googleapis.com/v2beta/projects/YOUR_PROJECT_ID/mapConfigs \
-d '{
  "display_name": "My New Map",
  "map_type": "VECTOR"
}'

Utiliser des MapContextConfigs

Un MapContextConfig associe un style à un MapConfig.

Créer un MapContextConfig

curl -X POST \
-H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
-H "Content-Type: application/json" \
https://mapmanagement.googleapis.com/v2beta/projects/YOUR_PROJECT_ID/mapConfigs/YOUR_MAP_ID/mapContextConfigs \
-d '{
  "style_config": "projects/YOUR_PROJECT_ID/styleConfigs/YOUR_STYLE_ID",
  "map_variants": ["ROADMAP", "NAVIGATION"]
}'

Erreurs

  • PERMISSION_DENIED : la requête ne dispose pas des autorisations IAM suffisantes ou l'API n'est pas activée pour le projet.
  • NOT_FOUND : la ressource spécifiée (Project, MapConfig ou StyleConfig) n'existe pas.
  • INVALID_ARGUMENT : le corps de la requête est mal formé ou contient des valeurs de champ non valides.