Guia e exemplos da API Map Management

É possível usar a API Map Management para gerenciar de forma programática os recursos de estilização de mapas baseada na nuvem nos endpoints v2alpha (experimental) e v2beta (prévia).

Resumo das operações

Para visualizar um mapa personalizado com a API Map Management, siga estas etapas principais:

  1. Criar um StyleConfig: defina a aparência visual do mapa usando uma representação JSON de cores, visibilidade e configurações de densidade.
  2. Criar um MapConfig: estabeleça um ID do mapa exclusivo que funcione como o contêiner da identidade e dos recursos de alto nível do mapa.
  3. Associar a um MapContextConfig: vincule o StyleConfig (e os conjuntos de dados opcionais) a variantes de mapa específicas (como ROADMAP ou SATELLITE) no MapConfig.

Comportamentos padrão

Ao usar os endpoints da v2, lembre-se dos seguintes comportamentos padrão:

  • Tipo de mapa: o tipo de renderização de mapa padrão é RASTER. Para usar mapas baseados em vetor, defina explicitamente o map_type como VECTOR no MapConfig.
  • Variante de mapa: se nenhum map_variants for especificado ao criar um MapContextConfig, a configuração será aplicada apenas à variante ROADMAP por padrão.
  • Estilo de mapa de base: se um json_style_sheet estiver vazio ou não for fornecido em um StyleConfig, o mapa de base do Google sem estilo padrão será usado.

Como trabalhar com StyleConfigs

Um StyleConfig contém as definições de estilo baseadas em JSON.

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

Listar StyleConfigs

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

Como trabalhar com MapConfigs

Um MapConfig define a identidade e o tipo de renderização principal de um mapa.

Criar um 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"
}'

Como trabalhar com MapContextConfigs

Um MapContextConfig vincula o estilo a um MapConfig.

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

Erros

  • PERMISSION_DENIED: a solicitação não tem permissões do IAM suficientes ou o projeto não tem a API ativada.
  • NOT_FOUND: o recurso especificado (projeto, MapConfig ou StyleConfig) não existe.
  • INVALID_ARGUMENT: o corpo da solicitação está malformado ou contém valores de campo inválidos.