Google Haritalar Platformu'nda Solar API'ye geçiş yapın

Avrupa Ekonomik Alanı (AEA) geliştiricileri

Google Earth Engine Solar API'den Google Haritalar Platformu Solar API'ye geçmek için:

  1. Cloud projenizde Google Haritalar Platformu Solar API'yi etkinleştirin.
  2. Yeni bir anahtar oluşturun ve bu anahtarı GMP Solar API ile kısıtlayın.
  3. Aşağıdaki adım adım talimatları uygulayarak kodunuzu güncelleyin.

Yan yana karşılaştırma

Solar API (yeni) Güneşli evler Earth Engine Solar API (kullanımdan kaldırıldı) EE simgesi
Başlatma durumu Başlatıldı Pilot (desteği sonlandırıldı)
Erişim
Sistem Cloud Console üzerinden Google Cloud hesabı, Solar API'yi etkinleştirerek ve API'yi Google Haritalar Platformu bölümünden yöneterek Cloud Console'dan Earth Engine Solar API'yi etkinleştirerek Google Cloud hesabı
Kim Herkese açık Erişim denetimli
Seviye Kendi kendine sağlanan Cloud projesine manuel erişim
Kimlik doğrulama API anahtarı ve OAuth API Anahtarı
Fiyatlandırma
Strateji Pay-as-you-go %100 indirim
Katmanlama Hacme göre azalan fiyatlandırmayla 1.000 sorgu başına
Uç noktalar Uç nokta başına farklı fiyatlar
Cloud
İzleme "Google Maps Platform" bölümünde Cloud Monitoring "API'ler ve Hizmetler" bölümünde Cloud Monitoring
Kota QPM (dakika başına sorgu sayısı) ve QPH (saat başına sorgu sayısı) Yıllık
Günlük Kaydı Cloud Logging (isteğe bağlı) Cloud Logging (isteğe bağlı)
Faturalandırma Cloud Faturalandırma Hesabı -
Destek SLO/HDS ile tam Google Haritalar Platformu desteği E-postayla sınırlı
API
Ana makine adı https://solar.googleapis.com/v1/ (REST) https://earthenginesolar.googleapis.com/v1/ (REST)
Yöntemler
  • buildingInsights:findClosest
  • dataLayers:get
  • buildings:findClosest
  • solar.get
Yanıt Pilot uygulamaya kıyasla değişiklik yok
solarInfo ≤100 m yarıçap ≤100 m yarıçap
Kapsam
Bölge Global Global
Veri kalitesi HIGH/MEDIUM HIGH/MEDIUM
Bina türü Bir adresle eşlenmiş VE Solar API görüntü kapsamı içinde olan tüm binalar Bir adresle eşlenmiş VE Solar API görüntü kapsamı içinde olan tüm binalar
Hizmet Şartları
Hizmet Şartları Google Haritalar Platformu Şartları Google Earth Engine şartları

Adım adım

Google Cloud projenizi oluşturma

Talimatlar için Google Cloud projenizi oluşturma başlıklı makaleyi inceleyin.

Yalnızca belirli roller Cloud projesi oluşturabilir. Proje oluşturamıyorsanız kuruluşunuzun yöneticisiyle iletişime geçin.

Mevcut bir Cloud projesini de kullanabilirsiniz. Daha fazla bilgi edinmek için Google Haritalar Platformu'nu kullanmaya başlama başlıklı makaleyi inceleyin.

Faturalandırma hesabınızı oluşturma

Talimatlar için Faturalandırma hesabınızı nasıl yöneteceğinizi öğrenin.

Mevcut bir faturalandırma hesabıyla mevcut bir Cloud projesini kullanabilirsiniz.

API anahtarı alma veya OAuth jetonu kullanma

Google Cloud projenizi ayarladıktan sonra, Solar API'yi kullanmak için API anahtarlarını kullanma bölümünde açıklandığı gibi API anahtarınızı oluşturup güvenliğini sağlamanız gerekir. Alternatif olarak, OAuth kullanma bölümünde açıklandığı gibi bir OAuth jetonu oluşturabilirsiniz.

Solar API'yi kullanma

  • Yeni uç noktalara GET istekleri gönderin : https://solar.googleapis.com
  • Bazı API yöntemi adlarının değiştiğini unutmayın:
    • buildings:findClosestbuildingInsights:findClosest
    • solarinfo:getdataLayers:get

Hızlı deneme: Önceki adımda kaydedilen API anahtarını kullanın ve URL'yi tarayıcınıza yüklemeden önce aşağıdaki örnek sorguda YOUR_API_KEY yerine bu anahtarı girin:

https://solar.googleapis.com/v1/dataLayers:get?location.latitude=37.2746464&location.longitude=-121.7530949&radius_meters=10&key=YOUR_API_KEY

Orijinal önizleme sürümüne yönelik yanıt

9 Mayıs 2023'teki orijinal önizleme sürümünde, yanıttaki URL'ler şu biçimdedir:

https://earthengine.googleapis.com/v1alpha/projects/sunroof-api/thumbnails/THUMBNAIL_ID:getPixels

Aşağıdaki snippet, örnek bir yanıttır:

{
  "imageryDate": {
    "year": 2015,
    "month": 8,
    "day": 8
  },
  "imageryProcessedDate": {
    "year": 2021,
    "month": 2,
    "day": 15
  },
  "dsmUrl": "https://earthengine.googleapis.com/v1alpha/projects/geo-solar-api/thumbnails/fbde33e9cd16d5fd10d19a19dc580bc1-8614f599c5c264553f821cd034d5cf32:getPixels",
  "rgbUrl": "https://earthengine.googleapis.com/v1alpha/projects/geo-solar-api/thumbnails/91ed3551f2d0abee20af35e07bd0c927-c96c59e80cf1fc1dc86cf59fc8ec86ba:getPixels",
  "maskUrl": "https://earthengine.googleapis.com/v1alpha/projects/geo-solar-api/thumbnails/e4051553dba6870c03d855ae82c30b7e-7cc8ae6ce7c73f219e3c1924e5c17fc6:getPixels",
  "annualFluxUrl": "https://earthengine.googleapis.com/v1alpha/projects/geo-solar-api/thumbnails/9b0f87f49d778a65c9e27ff936e6dbba-b90be2fe80d25abd4c9e8c4dc809f763:getPixels",
  "monthlyFluxUrl": "https://earthengine.googleapis.com/v1alpha/projects/geo-solar-api/thumbnails/90e7cca77402f14809e349937f0a0be8-94fafeb4ef42d72f1b3c0652a1cb5518:getPixels",
  "hourlyShadeUrls": [
    "https://earthengine.googleapis.com/v1alpha/projects/geo-solar-api/thumbnails/dcd276e4782aef4ff1b230b781736d37-e193b231ce57a03449afc3e21cf6783b:getPixels",
    ...
  ]
  }

Yanıtın URL'sine istekte bulunmak için URL'nin tamamını isteğe ekleyin.

Bu istek ve yanıtın tam spesifikasyonu referans belgelerinde yer almaktadır.

Her iki yanıt biçimini de destekleyen bir uygulama yazın

Artık hem orijinal önizleme hem de mevcut yanıt biçimlerini işleyen bir uygulama yazabilirsiniz.

Gerçek URL'nin kendisi dışında, iki yanıt arasındaki temel fark, yeni yanıt biçimindeki URL'lere erişen bir isteğe API anahtarı iletmenin zorunlu olmasıdır. API anahtarını atlarsanız istek başarısız olur.

Örneğin, URL'yi incelemek ve her sürümü doğru şekilde işlemek için uygulamanıza aşağıdaki kodu ekleyebilirsiniz:

JavaScript

/**
* Function to examine a response URL and to append the API key to the
* URL if it is in the new format.
*/
function prepareGetGeoTiffUrl(geoTiffUrl, apiKey) {
  if (geoTiffUrl.match("solar.googleapis.com")) {
    let url = new URL(geoTiffUrl);
    url.searchParams.set('apiKey', apiKey);
    return url.toString();
  }
  return geoTiffUrl;
}

Python

# Functions to examine a response URL and to append the API key to the
# URL if it is in the new format.

def add_api_key_to_url(base_url: str, api_key: str) -> str:
  '''Formats URL that currently lacks an API key to use the one provided.'''
  return base_url + "&key=" +api_key;

def prepare_geo_tiff_url(base_url: str, api_key: str) -> str:
  '''Prepares URL from GetDataLayers depending on API being called.
    If the geoTIFF url from GetDataLayers is for the solar API GetGeoTiff
      endpoint, append the API key. Otherwise return the URL as is.
  '''
  if re.search("solar.googleapis.com", geo_tiff_url):
    return add_api_key_to_url(geo_tiff_url, api_key)
  return geo_tiff_url

Java

/** Adds API key to a URL. */
private String addApiKeyToUrl(String geoTiffUrl, String apiKey) {
  return geoTiffUrl + "&key=" + apiKey;
}

/**
* Function to examine a response URL and to append the API key to the
* URL if it is in the new format.
*/
private String prepareGetGeoTiffUrl(String geoTiffUrl, String apiKey) {
  Pattern pattern = Pattern.compile("solar.googleapis.com");
  Matcher matcher = pattern.matcher(geoTiffUrl);
  if (matcher.find()) {
    return addApiKeyToUrl(geoTiffUrl, apiKey);
  } else {
    return geoTiffUrl;
  }
}

Gözle

Proje düzeyi Faturalandırma hesabı düzeyi

Cloud Monitoring Cloud Billing

Bilmeniz gereken ipuçları

  • Kota: Ölçeklenebilen tüketim (yok olacak yıllık tüketim yerine)
    • Mevcut kota BGBM olarak değiştirilecek
    • En iyi uygulamalar: İstemci tarafı kotası ayarlama ve uyarı gönderme
  • Fiyatlandırma:
    • Kullandıkça ödeyin
    • Konum kapsama alanında olmadığında 404 NOT_FOUND yanıtları faturalandırılmaz ancak kotaya dahil edilir.
  • Genel kullanım şartları: Google Haritalar Platformu Hizmet Şartları