Harita Yönetimi API Kılavuzu ve Örnekleri

Bulut tabanlı harita stilleri kaynaklarınızı hem v2alpha (Deneysel) hem de v2beta (Önizleme) uç noktalarında programatik olarak yönetmek için Map Management API'yi kullanabilirsiniz.

İşletme faaliyetlerinin özeti

Map Management API ile özel bir haritayı görselleştirmek için aşağıdaki temel adımları uygulayın:

  1. StyleConfig oluşturma: Renklerin, görünürlüğün ve yoğunluk ayarlarının JSON gösterimini kullanarak haritanızın görsel görünümünü tanımlayın.
  2. MapConfig oluşturma: Haritanızın kimliği ve üst düzey özellikleri için kapsayıcı görevi gören benzersiz bir harita kimliği oluşturun.
  3. Bunları bir MapContextConfig ile ilişkilendirin: StyleConfig (ve isteğe bağlı veri kümelerinizi) MapConfig içindeki belirli harita varyantlarına (ROADMAP veya SATELLITE gibi) bağlayın.

Varsayılan Davranışlar

v2 uç noktalarını kullanırken aşağıdaki varsayılan davranışları göz önünde bulundurun:

  • Harita Türü: Varsayılan harita oluşturma türü RASTER. Vektör tabanlı haritaları kullanmak için MapConfig öğenizde map_type değerini açıkça VECTOR olarak ayarlamanız gerekir.
  • Harita Varyantı: MapContextConfig oluşturulurken map_variants belirtilmezse yapılandırma varsayılan olarak yalnızca ROADMAP varyantına uygulanır.
  • Temel Stil: StyleConfig içinde bir json_style_sheet boşsa veya sağlanmamışsa varsayılan, stilsiz Google Temel Haritası kullanılır.

StyleConfigs ile çalışma

StyleConfig, JSON tabanlı stil tanımlarını içerir.

StyleConfig oluşturma

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

StyleConfig'leri listeleme

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

MapConfig'lerle çalışma

MapConfig, bir haritanın kimliğini ve temel oluşturma türünü tanımlar.

MapConfig oluşturma

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

MapContextConfigs ile çalışma

MapContextConfig, stil oluşturmayı bir MapConfig ile ilişkilendirir.

MapContextConfig oluşturma

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

Hatalar

  • PERMISSION_DENIED: İstek, yeterli IAM izinlerine sahip değil veya projede API etkinleştirilmemiş.
  • NOT_FOUND: Belirtilen kaynak (Project, MapConfig veya StyleConfig) mevcut değil.
  • INVALID_ARGUMENT: İstek gövdesi hatalı biçimlendirilmiş veya geçersiz alan değerleri içeriyor.