Google Maps Platform पर Solar API पर माइग्रेट करें

Google Earth Engine Solar API से Google Maps Platform के Solar API पर जाने के लिए:

  1. अपने क्लाउड प्रोजेक्ट में, Google Maps Platform Solar API को चालू करें.
  2. एक नई कुंजी बनाएं और उसे GMP Solar API तक सीमित करें.
  3. नीचे दिए गए सिलसिलेवार निर्देशों का इस्तेमाल करके, अपना कोड अपडेट करें.

आइटम की अगल-बगल में तुलना

Solar API (नया) सूरज के साथ घरों की इमेज Earth Engine Solar API (इस्तेमाल नहीं किया जा रहा) EE का आइकॉन
लॉन्च की स्थिति लॉन्च किया गया पायलट (अब सेवा में नहीं है)
ऐक्सेस
मैकेनिज़्म Cloud कंसोल के ज़रिए Google Cloud खाता, Solar API को चालू करके, और Google Maps Platform सेक्शन के ज़रिए एपीआई को मैनेज करके Cloud Console के ज़रिए Google Cloud खाता, Earth Engine Solar API को चालू करके
कौन सार्वजनिक ऐक्सेस कंट्रोल
लेवल खुद से प्रावधान की गई Cloud प्रोजेक्ट का मैन्युअल ऐक्सेस
पुष्टि करना एपीआई पासकोड और OAuth API (एपीआई) कुंजी
कीमत
रणनीति Pay-as-you-go 100% की छूट
टीयरिंग हर 1,000 क्वेरी के लिए, वॉल्यूम के हिसाब से कीमत कम होती है
एंडपॉइंट हर एंडपॉइंट के लिए अलग-अलग कीमतें
Cloud
निगरानी "Google Maps Platform" में क्लाउड मॉनिटरिंग "एपीआई और सेवाएं" में जाकर, क्लाउड मॉनिटरिंग
अनुरोध भेजने की तय सीमा क्यूपीएम (हर मिनट की क्वेरी) और क्यूपीएच (हर घंटे की क्वेरी) सालाना
लॉग इन हो रहा है Cloud Logging (ज़रूरी नहीं) Cloud Logging (ज़रूरी नहीं)
बिलिंग Cloud Billing खाता -
सहायता एसएलओ/एसएलए के साथ Google Maps Platform की पूरी सहायता सीमित, ईमेल से
एपीआई
होस्टनेम https://solar.googleapis.com/v1/ (REST) https://earthenginesolar.googleapis.com/v1/ (REST)
तरीके
  • buildingInsights:findClosest
  • dataLayers:get
  • buildings:findClosest
  • solar.get
जवाब पायलट प्रोग्राम की तुलना में कोई बदलाव नहीं किया गया
solarInfo 100 मीटर के दायरे में 100 मीटर के दायरे में
कवरेज
क्षेत्र ग्लोबल ग्लोबल
डेटा क्वालिटी HIGH/MEDIUM HIGH/MEDIUM
बिल्डिंग का टाइप ऐसी कोई भी इमारत जिसे किसी पते से मैप किया गया हो और जो Solar API की इमेज कवरेज में हो ऐसी कोई भी इमारत जिसे किसी पते से मैप किया गया हो और जो Solar API की इमेज कवरेज में हो
सेवा की शर्तें
सेवा की शर्तें Google Maps Platform की शर्तें Google Earth Engine की शर्तें

चरण दर चरण

अपना Google Cloud प्रोजेक्ट सेट अप करना

यहां निर्देश दिए गए हैं: अपना Google Cloud प्रोजेक्ट सेट अप करें.

सिर्फ़ कुछ भूमिकाएं ही Cloud प्रोजेक्ट बना सकती हैं. अगर आपके पास प्रोजेक्ट बनाने का ऐक्सेस नहीं है, तो अपने संगठन के एडमिन से संपर्क करें.

किसी मौजूदा Cloud प्रोजेक्ट का भी इस्तेमाल किया जा सकता है. ज़्यादा जानने के लिए, Google Maps Platform का इस्तेमाल शुरू करना लेख पढ़ें.

अपना बिलिंग खाता सेट अप करना

इसके लिए, यहां दिए गए निर्देश देखें: अपना बिलिंग खाता मैनेज करने का तरीका.

किसी मौजूदा बिलिंग खाते के साथ, किसी मौजूदा Cloud प्रोजेक्ट का इस्तेमाल किया जा सकता है.

एपीआई पासकोड पाना या OAuth टोकन का इस्तेमाल करना

Google Cloud प्रोजेक्ट सेट अप करने के बाद, आपको Solar API का इस्तेमाल करने के लिए एपीआई पासकोड बनाना होगा और उसे सुरक्षित रखना होगा. इसके बारे में एपीआई पासकोड का इस्तेमाल करना में बताया गया है. इसके अलावा, OAuth का इस्तेमाल करना में बताए गए तरीके से OAuth टोकन बनाया जा सकता है.

Solar API का इस्तेमाल करना

  • नए एंडपॉइंट पर GET अनुरोध करें : https://solar.googleapis.com
  • ध्यान दें कि एपीआई के कुछ तरीकों के नाम बदल गए हैं:
    • buildings:findClosestbuildingInsights:findClosest
    • solarinfo:getdataLayers:get

तुरंत आज़माएं: पिछले चरण में सेव किए गए एपीआई पासकोड का इस्तेमाल करें. साथ ही, अपने ब्राउज़र में यूआरएल लोड करने से पहले, यहां दी गई उदाहरण क्वेरी में YOUR_API_KEY को बदलें:

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

रिलीज़ से पहले झलक देखने के लिए बनाए गए ओरिजनल वर्शन के लिए रिस्पॉन्स

9 मई, 2023 को रिलीज़ होने वाली झलक के लिए, रिस्पॉन्स में यूआरएल इस फ़ॉर्मैट में हैं:

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

यहां जवाब का एक उदाहरण दिया गया है:

{
  "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",
    ...
  ]
  }

जवाब में किसी यूआरएल के लिए अनुरोध करने के लिए, अनुरोध में पूरा यूआरएल शामिल करें.

इस अनुरोध और रिस्पॉन्स की पूरी जानकारी, रेफ़रंस दस्तावेज़ में दी गई है.

जवाब के दोनों फ़ॉर्मैट के साथ काम करने वाला ऐप्लिकेशन लिखना

अब आपके पास ऐसा ऐप्लिकेशन बनाने का विकल्प है जो ओरिजनल झलक और मौजूदा रिस्पॉन्स फ़ॉर्मैट, दोनों को हैंडल करता है.

दोनों रिस्पॉन्स के बीच मुख्य अंतर, यूआरएल के अलावा यह है कि आपको नए रिस्पॉन्स फ़ॉर्मैट से यूआरएल ऐक्सेस करने वाले अनुरोध के लिए, एपीआई पासकोड देना होगा. एपीआई पासकोड न डालने पर, अनुरोध पूरा नहीं होता.

उदाहरण के लिए, यूआरएल की जांच करने और हर वर्शन को सही तरीके से मैनेज करने के लिए, अपने ऐप्लिकेशन में यह कोड जोड़ा जा सकता है:

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;
  }
}

निगरानी

प्रोजेक्ट लेवल बिलिंग खाते का लेवल

Cloud Monitoring क्लाउड बिलिंग

काम की सलाह

  • कोटा: सालाना खपत के बजाय, खपत की वह सीमा जिसे बढ़ाया जा सकता है (यह सीमा दिखना बंद हो जाएगी)
    • मौजूदा कोटा, जिसे QPM में बदल दिया जाएगा
    • सबसे सही तरीके: क्लाइंट-साइड कोटा सेट करना और सूचनाएं भेजना
  • कीमत:
    • Pay-as-you-go
    • अगर जगह, कवरेज की रेंज में नहीं है, तो 404 NOT_FOUND रिस्पॉन्स के लिए, बिलिंग नहीं की जाएगी. हालांकि, इसे कोटे में शामिल किया जाएगा
  • इस्तेमाल से जुड़ी सामान्य शर्तें: Google Maps Platform की सेवा की शर्तें