É 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:
- Criar um StyleConfig: defina a aparência visual do mapa usando uma representação JSON de cores, visibilidade e configurações de densidade.
- 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.
- Associar a um MapContextConfig: vincule o
StyleConfig(e os conjuntos de dados opcionais) a variantes de mapa específicas (comoROADMAPouSATELLITE) noMapConfig.
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 omap_typecomoVECTORnoMapConfig. - Variante de mapa: se nenhum
map_variantsfor especificado ao criar umMapContextConfig, a configuração será aplicada apenas à varianteROADMAPpor padrão. - Estilo de mapa de base: se um
json_style_sheetestiver vazio ou não for fornecido em umStyleConfig, 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.