Leitfaden und Beispiele für die Map Management API

Mit der Map Management API können Sie Ihre cloudbasierten Ressourcen für das Kartenstyling programmatisch über die Endpunkte v2alpha (experimentell) und v2beta (Vorabversion) hinweg verwalten.

Zusammenfassung der Vorgänge

So visualisieren Sie eine benutzerdefinierte Karte mit der Map Management API:

  1. StyleConfig erstellen: Definieren Sie die visuelle Darstellung Ihrer Karte mit einer JSON-Darstellung von Farb-, Sichtbarkeits- und Dichteeinstellungen.
  2. MapConfig erstellen: Legen Sie eine eindeutige Karten-ID fest, die als Container für die Identität und die allgemeinen Funktionen Ihrer Karte dient.
  3. Mit einer MapContextConfig verknüpfen: Verknüpfen Sie Ihre StyleConfig (und optionalen Datasets) mit bestimmten Kartenvarianten (z. B. ROADMAP oder SATELLITE) in Ihrer MapConfig.

Standardverhalten

Beachten Sie bei der Verwendung der V2-Endpunkte die folgenden Standardverhaltensweisen:

  • Kartentyp: Der Standardtyp für das Rendern von Karten ist RASTER. Wenn Sie vektorbasierte Karten verwenden möchten, müssen Sie map_type in Ihrer MapConfig explizit auf VECTOR festlegen.
  • Kartenvariante: Wenn beim Erstellen eines MapContextConfig keine map_variants angegeben werden, wird die Konfiguration standardmäßig nur auf die ROADMAP-Variante angewendet.
  • Basisstil: Wenn ein json_style_sheet leer ist oder nicht in einem StyleConfig angegeben wird, wird die ungestaltete Google-Basiskarte verwendet.

Mit StyleConfigs arbeiten

Eine StyleConfig enthält die JSON-basierten Stildefinitionen.

StyleConfig erstellen

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

StyleConfigs auflisten

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

Mit MapConfigs arbeiten

Ein MapConfig definiert die Identität und den Hauptrendertyp einer Karte.

MapConfig erstellen

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

Mit MapContextConfigs arbeiten

Mit einem MapContextConfig wird das Styling mit einem MapConfig verknüpft.

MapContextConfig erstellen

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

Fehler

  • PERMISSION_DENIED: Für die Anfrage sind nicht genügend IAM-Berechtigungen vorhanden oder die API ist für das Projekt nicht aktiviert.
  • NOT_FOUND: Die angegebene Ressource (Project, MapConfig oder StyleConfig) ist nicht vorhanden.
  • INVALID_ARGUMENT: Der Anfragetext ist fehlerhaft oder enthält ungültige Feldwerte.