Guía y ejemplos de la API de Map Management

Puedes usar la API de Map Management para administrar de forma programática tus recursos de diseño de mapas basado en Cloud en los extremos v2alpha (experimental) y v2beta (versión preliminar).

Resumen de las operaciones

Para visualizar un mapa personalizado con la API de Map Management, sigue estos pasos clave:

  1. Crea un StyleConfig: Define la apariencia visual de tu mapa con una representación en JSON de los parámetros de configuración de colores, visibilidad y densidad.
  2. Crea un MapConfig: Establece un ID de mapa único que actúe como contenedor para la identidad y las funciones de alto nivel de tu mapa.
  3. Asócialos con un MapContextConfig: Vincula tu StyleConfig (y los conjuntos de datos opcionales) a variantes de mapa específicas (como ROADMAP o SATELLITE) dentro de tu MapConfig.

Comportamientos predeterminados

Cuando uses los extremos de la versión 2, ten en cuenta los siguientes comportamientos predeterminados:

  • Tipo de mapa: El tipo de renderización de mapa predeterminado es RASTER. Para usar mapas basados en vectores, debes establecer de forma explícita el map_type en VECTOR en tu MapConfig.
  • Variante de mapa: Si no se especifica ningún map_variants cuando se crea un MapContextConfig, la configuración se aplicará solo a la variante ROADMAP de forma predeterminada.
  • Diseño base: Si un json_style_sheet está vacío o no se proporciona en un StyleConfig, se usará el mapa base de Google predeterminado sin diseño.

Cómo trabajar con StyleConfigs

Un StyleConfig contiene las definiciones de diseño basadas en JSON.

Crea 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}]}]"
}'

Enumera StyleConfigs

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

Cómo trabajar con MapConfigs

Un MapConfig define la identidad y el tipo de renderización principal de un mapa.

Crea 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"
}'

Cómo trabajar con MapContextConfigs

Un MapContextConfig vincula el diseño a un MapConfig.

Crea 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"]
}'

Errores

  • PERMISSION_DENIED: La solicitud no tiene permisos de IAM suficientes o el proyecto no tiene la API habilitada.
  • NOT_FOUND: El recurso especificado (Project, MapConfig o StyleConfig) no existe.
  • INVALID_ARGUMENT: El cuerpo de la solicitud tiene un formato incorrecto o contiene valores de campo no válidos.