Guia e exemplos da API Map Management

Use a API Map Management para gerenciar de forma programática seus recursos de estilização de mapas baseada na nuvem nos endpoints v2alpha (experimental) e v2beta (pré-lançamento).

Resumo das operações

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

  1. Crie 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 para a identidade e os recursos de alto nível do mapa.
  3. Associe-os a um MapContextConfig: vincule seu StyleConfig (e conjuntos de dados opcionais) a variantes de mapa específicas (como ROADMAP ou SATELLITE) no seu 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 vetores, defina explicitamente map_type como VECTOR no MapConfig.
  • Variante do mapa: se nenhum map_variants for especificado ao criar um MapContextConfig, a configuração será aplicada apenas à variante ROADMAP por padrão.
  • Estilo de base: se um json_style_sheet estiver vazio ou não for fornecido em um StyleConfig, o mapa de base padrão do Google sem estilo 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 suficientes do IAM ou o projeto não tem a API ativada.
  • NOT_FOUND: o recurso especificado (Project, MapConfig ou StyleConfig) não existe.
  • INVALID_ARGUMENT: o corpo da solicitação está malformado ou contém valores de campo inválidos.