ऊंचाई के डेटा के लिए अनुरोध
ऊंचाई के डेटा के लिए Elevation API के अनुरोध, यूआरएल स्ट्रिंग के तौर पर बनाए जाते हैं. यह एपीआई, धरती पर मौजूद जगहों की ऊंचाई का डेटा दिखाता है. जगह की जानकारी का डेटा देने के लिए, इनमें से कोई एक तरीका अपनाएं:
locationsके एक या एक से ज़्यादा सेट के तौर पर.pathके साथ कनेक्ट किए गए पॉइंट की सीरीज़ के तौर पर.
इनमें से किसी भी तरीके में, जगहों या पाथ के वर्टिकल पॉइंट की पहचान करने के लिए, अक्षांश/देशांतर के निर्देशांकों का इस्तेमाल किया जाता है. इस दस्तावेज़ में, Elevation API के यूआरएल के लिए ज़रूरी फ़ॉर्मैट और उपलब्ध पैरामीटर के बारे में बताया गया है.
Elevation API, एक पॉइंट की क्वेरी के लिए, ज़्यादा से ज़्यादा सटीक डेटा दिखाता है. एक से ज़्यादा जगहों के लिए बैच क्वेरी करने पर, कम सटीक डेटा मिल सकता है. ऐसा तब हो सकता है, जब जगहों के बीच की दूरी ज़्यादा हो, क्योंकि डेटा को थोड़ा स्मूद किया जाता है.
Elevation API का अनुरोध इस फ़ॉर्मैट में किया जाता है:
https://maps.googleapis.com/maps/api/elevation/outputFormat?parameters
यहां outputFormat की वैल्यू इनमें से कोई एक हो सकती है:
json(सुझाया जाता है). इसका मतलब है कि आउटपुट, JavaScript ऑब्जेक्ट नोटेशन (JSON) में होगा. याxmlइसका मतलब है कि आउटपुट, एक्सएमएल में होगा. इसे<ElevationResponse>नोड में रैप किया जाएगा.
ध्यान दें: यूआरएल मान्य होने के लिए, उन्हें सही तरीके से एन्कोड किया जाना चाहिए. साथ ही, सभी वेब सेवाओं के लिए, यूआरएल में ज़्यादा से ज़्यादा 16,384 वर्ण हो सकते हैं. यूआरएल बनाते समय, इस सीमा का ध्यान रखें. ध्यान दें कि अलग-अलग ब्राउज़र, प्रॉक्सी, और सर्वर के लिए, यूआरएल में वर्णों की सीमा अलग-अलग हो सकती है.
एपीआई पासकोड का इस्तेमाल करने वाले अनुरोधों के लिए, एचटीटीपीएस ज़रूरी है.
अनुरोध के पैरामीटर
Elevation API के अनुरोधों के लिए, अलग-अलग पैरामीटर का इस्तेमाल किया जाता है. यह इस बात पर निर्भर करता है कि अनुरोध, अलग-अलग जगहों के लिए है या क्रम से लगाए गए पाथ के लिए. अलग-अलग जगहों के लिए, ऊंचाई के डेटा के अनुरोधों में, अनुरोध में दी गई खास जगहों का डेटा मिलता है. वहीं, पाथ के लिए, ऊंचाई के डेटा के अनुरोधों में, दिए गए पाथ के साथ-साथ सैंपल लिए जाते हैं.
सभी यूआरएल में स्टैंडर्ड के तौर पर, पैरामीटर को एंपरसैंड (&) वर्ण का इस्तेमाल करके अलग किया जाता है. पैरामीटर और उनकी संभावित वैल्यू की सूची यहां दी गई है.
सभी अनुरोध
key-- (ज़रूरी है) आपके ऐप्लिकेशन का एपीआई पासकोड. यह पासकोड, कोटा मैनेजमेंट के लिए आपके ऐप्लिकेशन की पहचान करता है. पासकोड पाने का तरीका जानें .
जगह की जानकारी के लिए अनुरोध
locations(ज़रूरी है) धरती पर मौजूद उन जगहों की जानकारी देता है जिनके लिए ऊंचाई का डेटा दिखाना है. इस पैरामीटर में, {अक्षांश,देशांतर} के कॉमा से अलग किए गए पेयर के तौर पर, एक जगह की जानकारी दी जाती है.जैसे, "40.714728,-73.998672". इसके अलावा, इसमें अक्षांश/देशांतर के कई पेयर, ऐरे के तौर पर या एन्कोड की गई पॉलीलाइन के तौर पर दिए जाते हैं. इस पैरामीटर के लिए, ज़्यादा से ज़्यादा 512 पॉइंट की सीमा है. ज़्यादा जानकारी के लिए, नीचे जगहों की जानकारी देना सेक्शन देखें.
सैंपल लिए गए पाथ के लिए अनुरोध
path(ज़रूरी है) धरती पर मौजूद उस पाथ की जानकारी देता है जिसके लिए ऊंचाई का डेटा दिखाना है. इस पैरामीटर में, {अक्षांश,देशांतर} के क्रम से लगाए गए दो या इससे ज़्यादा पेयर का सेट तय किया जाता है. इससे धरती की सतह पर मौजूद पाथ की जानकारी मिलती है. इस पैरामीटर का इस्तेमाल, नीचे बताए गएsamplesपैरामीटर के साथ किया जाना चाहिए. इस पैरामीटर के लिए, ज़्यादा से ज़्यादा 512 पॉइंट की सीमा है. ज़्यादा जानकारी के लिए, नीचे पाथ की जानकारी देना सेक्शन देखें.samples(ज़रूरी है) किसी पाथ के साथ-साथ, सैंपल पॉइंट की संख्या तय करता है. इसके लिए, ऊंचाई का डेटा दिखाना होता है.samplesपैरामीटर, दिए गएpathको, पाथ के साथ-साथ बराबर दूरी पर मौजूद पॉइंट के क्रम से लगाए गए सेट में बांटता है.
जगहों की जानकारी देना
जगह की जानकारी के लिए अनुरोध, locations पैरामीटर का इस्तेमाल करके किए जाते हैं. इससे, अक्षांश/देशांतर की वैल्यू के तौर पर दी गई खास जगहों के लिए, ऊंचाई के डेटा के अनुरोधों की जानकारी मिलती है.
locations पैरामीटर में ये आर्ग्युमेंट दिए जा सकते हैं:
- एक कोऑर्डिनेट:
locations=40.714728,-73.998672 - पाइप ('
|') वर्ण का इस्तेमाल करके अलग किए गए कोऑर्डिनेट का ऐरे:locations=40.714728,-73.998672|-34.397,150.644 - एन्कोडेड कोऑर्डिनेट का सेट, जिसमें एन्कोडेड पॉलीलाइन
एल्गोरिदम का इस्तेमाल किया गया है:
locations=enc:gfo}EtohhU
अक्षांश और देशांतर के कोऑर्डिनेट स्ट्रिंग, कॉमा लगाकर अलग किए गए टेक्स्ट स्ट्रिंग में अंकों का इस्तेमाल करके तय किए जाते हैं. उदाहरण के लिए, "40.714728,-73.998672", locations की मान्य वैल्यू है. अक्षांश और देशांतर की वैल्यू, धरती पर मौजूद किसी मान्य जगह से मेल खानी चाहिए. अक्षांश की वैल्यू
-90 और 90 के बीच हो सकती है. वहीं, देशांतर की वैल्यू
-180 और 180 के बीच हो सकती है. अगर अक्षांश या देशांतर की कोई अमान्य वैल्यू दी जाती है, तो आपका अनुरोध, अमान्य अनुरोध के तौर पर अस्वीकार कर दिया जाएगा.
मान्य यूआरएल बनाते समय, ऐरे या एन्कोड की गई पॉलीलाइन में ज़्यादा से ज़्यादा 512 कोऑर्डिनेट दिए जा सकते हैं. ध्यान दें कि एक से ज़्यादा कोऑर्डिनेट देने पर, दिखाए गए डेटा की सटीक जानकारी, एक कोऑर्डिनेट के लिए डेटा का अनुरोध करने पर मिलने वाले डेटा की तुलना में कम हो सकती है. 'locations' या 'path' पैरामीटर में 512 से ज़्यादा पॉइंट या कोऑर्डिनेट देने पर, INVALID_REQUEST का जवाब मिलता है.
पाथ की जानकारी देना
सैंपल लिए गए पाथ के लिए अनुरोध, path और samples पैरामीटर का इस्तेमाल करके किए जाते हैं. इससे, तय इंटरवल पर किसी पाथ के साथ-साथ, ऊंचाई के डेटा के अनुरोध की जानकारी मिलती है. locations पैरामीटर का इस्तेमाल करके, जगह की जानकारी के लिए अनुरोधों की तरह, path पैरामीटर में अक्षांश और देशांतर की वैल्यू का सेट तय किया जाता है. हालांकि, जगह की जानकारी के लिए अनुरोध के उलट, path में वर्टिकल पॉइंट का क्रम से लगाया गया सेट तय किया जाता है. पाथ के लिए अनुरोधों में, सिर्फ़ वर्टिकल पॉइंट पर ऊंचाई का डेटा दिखाने के बजाय, samples
की तय की गई संख्या के आधार पर, along the
length of the path सैंपल लिए जाते हैं. इसमें एंडपॉइंट भी शामिल होते हैं.
path पैरामीटर में इनमें से कोई एक आर्ग्युमेंट दिया जा सकता है:
- पाइप ('
|') वर्ण का इस्तेमाल करके अलग किए गए, कॉमा से अलग किए गए कोऑर्डिनेट टेक्स्ट स्ट्रिंग का ऐरे. इसमें दो या इससे ज़्यादा स्ट्रिंग हो सकती हैं:path=40.714728,-73.998672|-34.397,150.644 - एन्कोडेड पॉलीलाइन एल्गोरिदम का इस्तेमाल करके, एन्कोड किए गए कोऑर्डिनेट: एन्कोडेड पॉलीलाइन
एल्गोरिदम:
path=enc:gfo}EtohhUxD@bAxJmGF
अक्षांश और देशांतर के कोऑर्डिनेट स्ट्रिंग, कॉमा लगाकर अलग किए गए टेक्स्ट स्ट्रिंग में अंकों का इस्तेमाल करके तय किए जाते हैं. उदाहरण के लिए, "40.714728,-73.998672|-34.397, 150.644", path की मान्य वैल्यू है. अक्षांश और देशांतर की वैल्यू, धरती पर मौजूद किसी मान्य जगह से मेल खानी चाहिए. अक्षांश की वैल्यू
-90 और 90 के बीच हो सकती है. वहीं, देशांतर की वैल्यू -180
और 180 के बीच हो सकती है. अगर अक्षांश या देशांतर की कोई अमान्य वैल्यू दी जाती है, तो आपका अनुरोध, अमान्य अनुरोध के तौर पर अस्वीकार कर दिया जाएगा.
मान्य यूआरएल बनाते समय, ऐरे या एन्कोड की गई पॉलीलाइन में ज़्यादा से ज़्यादा 512 कोऑर्डिनेट दिए जा सकते हैं. ध्यान दें कि एक से ज़्यादा कोऑर्डिनेट देने पर, दिखाए गए डेटा की सटीक जानकारी, एक कोऑर्डिनेट के लिए डेटा का अनुरोध करने पर मिलने वाले डेटा की तुलना में कम हो सकती है. 'locations' या 'path' पैरामीटर में 512 से ज़्यादा पॉइंट या कोऑर्डिनेट देने पर, INVALID_REQUEST का जवाब मिलता है.
ऊंचाई के डेटा के जवाब
- पाइप ('
|') वर्ण का इस्तेमाल करके अलग किए गए, कॉमा से अलग किए गए कोऑर्डिनेट टेक्स्ट स्ट्रिंग का ऐरे. इसमें दो या इससे ज़्यादा स्ट्रिंग हो सकती हैं:path=40.714728,-73.998672|-34.397,150.644 - एन्कोडेड पॉलीलाइन एल्गोरिदम का इस्तेमाल करके, एन्कोड किए गए कोऑर्डिनेट: एन्कोडेड पॉलीलाइन
एल्गोरिदम:
path=enc:gfo}EtohhUxD@bAxJmGF
अक्षांश और देशांतर के कोऑर्डिनेट स्ट्रिंग, कॉमा लगाकर अलग किए गए टेक्स्ट स्ट्रिंग में अंकों का इस्तेमाल करके तय किए जाते हैं. उदाहरण के लिए, "40.714728,-73.998672|-34.397, 150.644", path की मान्य वैल्यू है. अक्षांश और देशांतर की वैल्यू, धरती पर मौजूद किसी मान्य जगह से मेल खानी चाहिए. अक्षांश की वैल्यू
-90 और 90 के बीच हो सकती है. वहीं, देशांतर की वैल्यू -180
और -180 के बीच हो सकती है. अगर अक्षांश या देशांतर की कोई अमान्य वैल्यू दी जाती है, तो आपका अनुरोध, अमान्य अनुरोध के तौर पर अस्वीकार कर दिया जाएगा.
मान्य यूआरएल बनाते समय, ऐरे या एन्कोड की गई पॉलीलाइन में ज़्यादा से ज़्यादा 512 कोऑर्डिनेट दिए जा सकते हैं. ध्यान दें कि एक से ज़्यादा कोऑर्डिनेट देने पर, दिखाए गए डेटा की सटीक जानकारी, एक कोऑर्डिनेट के लिए डेटा का अनुरोध करने पर मिलने वाले डेटा की तुलना में कम हो सकती है. 'locations' या 'path' पैरामीटर में 512 से ज़्यादा पॉइंट या कोऑर्डिनेट देने पर, INVALID_REQUEST का जवाब मिलता है.
ऊंचाई के डेटा के जवाब
हर मान्य अनुरोध के लिए, Elevation की सेवा, अनुरोध के यूआरएल में बताए गए फ़ॉर्मैट में, ऊंचाई के डेटा का जवाब देती है.
ElevationResponse
| फ़ील्ड | ज़रूरी है | टाइप | ब्यौरा |
|---|---|---|---|
|
ज़रूरी है | Array<ElevationResult> | ज़्यादा जानकारी के लिए, ElevationResult देखें. |
|
ज़रूरी है | ElevationStatus | ज़्यादा जानकारी के लिए, ElevationStatus देखें. |
|
ज़रूरी नहीं | स्ट्रिंग |
जब सेवा, |
ElevationStatus
सेवा से मिलने वाले स्टेटस कोड.
OK. इसका मतलब है कि एपीआई का अनुरोध पूरा हो गया है.DATA_NOT_AVAILABLE. इसका मतलब है कि इनपुट के तौर पर दी गई जगहों के लिए, कोई डेटा उपलब्ध नहीं है.INVALID_REQUEST. इसका मतलब है कि एपीआई का अनुरोध गलत तरीके से किया गया था.OVER_DAILY_LIMIT. इसका मतलब है कि इनमें से कोई एक वजह है:- एपीआई पासकोड मौजूद नहीं है या अमान्य है.
- आपके खाते पर बिलिंग की सुविधा चालू नहीं है.
- इस्तेमाल की तय की गई सीमा पार हो गई है.
- पेमेंट का दिया गया तरीका अब मान्य नहीं है. उदाहरण के लिए, क्रेडिट कार्ड की समयसीमा खत्म हो गई है.
OVER_QUERY_LIMIT. इसका मतलब है कि अनुरोध करने वाले व्यक्ति ने कोटा पार कर लिया है.REQUEST_DENIED. इसका मतलब है कि एपीआई, अनुरोध को पूरा नहीं कर सका.UNKNOWN_ERROR. इसका मतलब है कि कोई अनजान गड़बड़ी हुई है.
जब स्टेटस कोड, OK के अलावा कोई दूसरा होता है, तो Elevation के जवाब के ऑब्जेक्ट में, error_message का एक और फ़ील्ड हो सकता है. इस फ़ील्ड में, दिए गए स्टेटस कोड की वजहों के बारे में ज़्यादा जानकारी होती है.
जवाब में, results का एक ऐरे होता है. इसमें ये एलिमेंट शामिल होते हैं:
ElevationResult
| फ़ील्ड | ज़रूरी है | टाइप | ब्यौरा |
|---|---|---|---|
|
ज़रूरी है | संख्या |
मीटर में, जगह की ऊंचाई. |
|
ज़रूरी है | LatLngLiteral |
उस जगह की जानकारी का एलिमेंट जिसके लिए ऊंचाई का डेटा कैलकुलेट किया जा रहा है. ध्यान दें कि पाथ के लिए अनुरोधों में, जगह की जानकारी के एलिमेंट के सेट में, पाथ के साथ-साथ लिए गए सैंपल पॉइंट शामिल होंगे. ज़्यादा जानकारी के लिए, LatLngLiteral देखें. |
|
ज़रूरी नहीं | संख्या |
यह वैल्यू, डेटा पॉइंट के बीच की ज़्यादा से ज़्यादा दूरी दिखाती है. इस दूरी के आधार पर, ऊंचाई का अनुमान लगाया गया है. यह वैल्यू मीटर में होती है. अगर रिज़ॉल्यूशन की जानकारी नहीं है, तो यह प्रॉपर्टी मौजूद नहीं होगी. ध्यान दें कि एक से ज़्यादा पॉइंट देने पर, ऊंचाई का डेटा कम सटीक होता है. ऐसा इसलिए, क्योंकि रिज़ॉल्यूशन की वैल्यू ज़्यादा होती है. किसी पॉइंट के लिए, ऊंचाई की सबसे सटीक वैल्यू पाने के लिए, उसकी क्वेरी अलग से की जानी चाहिए. |
LatLngLiteral
यह ऑब्जेक्ट, दशमलव डिग्री में अक्षांश और देशांतर की जानकारी के साथ, किसी खास जगह के बारे में बताता है.
| फ़ील्ड | ज़रूरी है | टाइप | ब्यौरा |
|---|---|---|---|
|
ज़रूरी है | संख्या |
दशमलव डिग्री में अक्षांश |
|
ज़रूरी है | संख्या |
दशमलव डिग्री में देशांतर |
जगह की जानकारी के लिए ऊंचाई के डेटा के उदाहरण
इस उदाहरण में, कोलोराडो के डेनवर की ऊंचाई के डेटा का अनुरोध किया गया है. इसे "माइल हाई सिटी" भी कहा जाता है:
URL
https://maps.googleapis.com/maps/api/elevation/json
?locations=39.7391536%2C-104.9847034
&key=YOUR_API_KEY
cURL
curl -L -X GET 'https://maps.googleapis.com/maps/api/elevation/json?locations=39.7391536%2C-104.9847034&key=YOUR_API_KEY'
JSON
{ "results": [ { "elevation": 1608.637939453125, "location": { "lat": 39.7391536, "lng": -104.9847034 }, "resolution": 4.771975994110107, }, ], "status": "OK", }
XML
<ElevationResponse> <status>OK</status> <result> <location> <lat>39.7391536</lat> <lng>-104.9847034</lng> </location> <elevation>1608.6379395</elevation> <resolution>4.7719760</resolution> </result> </ElevationResponse>
इस उदाहरण में, एक से ज़्यादा जवाब दिखाए गए हैं. ये जवाब, कोलोराडो के डेनवर और कैलिफ़ोर्निया के डेथ वैली के लिए हैं.
इस अनुरोध में, JSON output फ़्लैग का इस्तेमाल दिखाया गया है:
URL
https://maps.googleapis.com/maps/api/elevation/json
?locations=39.7391536%2C-104.9847034%7C36.455556%2C-116.866667
&key=YOUR_API_KEY
cURL
curl -L -X GET 'https://maps.googleapis.com/maps/api/elevation/json?locations=39.7391536%2C-104.9847034%7C36.455556%2C-116.866667&key=YOUR_API_KEY'
इस अनुरोध में, एक्सएमएल output फ़्लैग का इस्तेमाल दिखाया गया है:
https://maps.googleapis.com/maps/api/elevation/xml?locations=39.7391536,-104.9847034|36.455556,-116.866667&key=YOUR_API_KEY
JSON और एक्सएमएल के जवाब के नमूने देखने के लिए, नीचे दिए गए टैब चुनें.
JSON
{ "results": [ { "elevation": 1608.637939453125, "location": { "lat": 39.7391536, "lng": -104.9847034 }, "resolution": 4.771975994110107, }, { "elevation": -52.79492568969727, "location": { "lat": 36.455556, "lng": -116.866667 }, "resolution": 19.08790397644043, }, ], "status": "OK", }
XML
<ElevationResponse> <status>OK</status> <result> <location> <lat>39.7391536</lat> <lng>-104.9847034</lng> </location> <elevation>1608.6379395</elevation> <resolution>4.7719760</resolution> </result> <result> <location> <lat>36.4555560</lat> <lng>-116.8666670</lng> </location> <elevation>-52.7949257</elevation> <resolution>19.0879040</resolution> </result> </ElevationResponse>
इन उदाहरणों में, कैलिफ़ोर्निया के माउंट व्हिटनी से कैलिफ़ोर्निया के बैडवॉटर तक, सीधी लाइन वाले path के साथ-साथ, ऊंचाई के डेटा का अनुरोध किया गया है. ये दोनों पॉइंट, अमेरिका में सबसे ऊंचे और सबसे निचले पॉइंट हैं. हमने तीन samples का अनुरोध किया है, ताकि इसमें दोनों एंडपॉइंट और बीच का पॉइंट शामिल हो.
URL
https://maps.googleapis.com/maps/api/elevation/json ?path=36.578581%2C-118.291994%7C36.23998%2C-116.83171 &samples=3 &key=YOUR_API_KEY
cURL
curl -L -X GET 'https://maps.googleapis.com/maps/api/elevation/json?path=36.578581%2C-118.291994%7C36.23998%2C-116.83171&samples=3&key=YOUR_API_KEY'
JSON
{ "results": [ { "elevation": 4411.94189453125, "location": { "lat": 36.578581, "lng": -118.291994 }, "resolution": 19.08790397644043, }, { "elevation": 1372.8359375, "location": { "lat": 36.41150289067028, "lng": -117.5602607523847 }, "resolution": 9.543951988220215, }, { "elevation": -84.51690673828125, "location": { "lat": 36.23998, "lng": -116.83171 }, "resolution": 9.543951988220215, }, ], "status": "OK", }
XML
<ElevationResponse> <status>OK</status> <result> <location> <lat>36.5785810</lat> <lng>-118.2919940</lng> </location> <elevation>4411.9418945</elevation> <resolution>19.0879040</resolution> </result> <result> <location> <lat>36.4115029</lat> <lng>-117.5602608</lng> </location> <elevation>1372.8359375</elevation> <resolution>9.5439520</resolution> </result> <result> <location> <lat>36.2399800</lat> <lng>-116.8317100</lng> </location> <elevation>-84.5169067</elevation> <resolution>9.5439520</resolution> </result> </ElevationResponse>