Guide et exemples de l'API Map Management

Vous pouvez utiliser l'API Map Management pour gérer de manière programmatique vos ressources de styles de cartes basés dans le cloud sur les points de terminaison v2alpha (expérimental) et v2beta (preview).

Résumé des opérations

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

  1. Créer 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éer 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 vos 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, tenez compte des 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 aucune map_variants n'est spécifiée 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 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}]}]"
}'

Lister 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 principal 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 incorrect ou contient des valeurs de champ non valides.