रिवर्स जियोकोडिंग, मैप पर मौजूद जगह की जानकारी को ऐसे पते में बदलती है जिसे आसानी से पढ़ा जा सकता है. जगह के अक्षांश और देशांतर निर्देशांकों की मदद से, मैप पर जगह की जानकारी दिखाई जाती है.
किसी जगह की रिवर्स जियोकोडिंग करने पर, जवाब में यह जानकारी शामिल होती है:
- पते का जगह का आईडी
- पते के Plus Code
- पते की जानकारी
यह एपीआई अलग-अलग तरह के पते दिखाता है. इनमें सबसे सटीक सड़क का पता और कम सटीक राजनैतिक इकाइयां शामिल हैं. जैसे, आस-पड़ोस, शहर, काउंटी, और राज्य. आम तौर पर, सबसे सटीक पता पहले नतीजे के तौर पर दिखता है. अगर आपको किसी खास तरह के पते से मैच करना है, तो types पैरामीटर का इस्तेमाल करें.
रिवर्स जियोकोडिंग का अनुरोध
रिवर्स जियोकोडिंग का अनुरोध, एचटीटीपी GET अनुरोध होता है. जगह की जानकारी को अनस्ट्रक्चर्ड स्ट्रिंग के तौर पर भी दिया जा सकता है:
https://geocode.googleapis.com/v4beta/geocode/location/LATITUDE,LONGITUDE
इसके अलावा, अक्षांश और देशांतर के स्ट्रक्चर्ड सेट के तौर पर भी क्वेरी पैरामीटर दिखाए जा सकते हैं:
https://geocode.googleapis.com/v4beta/geocode/location?location.latitude=LATITUDE&location.longitude=LONGITUDE
आम तौर पर, एचटीएमएल फ़ॉर्म में कैप्चर किए गए पते के कॉम्पोनेंट को प्रोसेस करने के लिए, स्ट्रक्चर्ड फ़ॉर्मैट का इस्तेमाल किया जाता है.
अन्य सभी पैरामीटर को यूआरएल पैरामीटर के तौर पर पास करें. इसके अलावा, एपीआई कुंजी या फ़ील्ड मास्क जैसे पैरामीटर के लिए, GET अनुरोध के हिस्से के तौर पर हेडर में पास करें. उदाहरण के लिए:
जगह की जानकारी देने वाली स्ट्रिंग को बिना किसी स्ट्रक्चर के पास करना
बिना स्ट्रक्चर वाली जगह की जानकारी, अक्षांश और देशांतर के निर्देशांकों की कॉमा लगाकर अलग की गई स्ट्रिंग के तौर पर फ़ॉर्मैट की जाती है:
https://geocode.googleapis.com/v4beta/geocode/location/37.4225508,-122.0846338?key=API_KEY
या कर्ल कमांड में:
curl -X GET -H 'Content-Type: application/json' \ -H "X-Goog-Api-Key: API_KEY" \ "https://geocode.googleapis.com/v4beta/geocode/location/37.4225508,-122.0846338"
जगह की स्ट्रक्चर्ड जानकारी पास करना
LatLng टाइप के location क्वेरी पैरामीटर का इस्तेमाल करके, स्ट्रक्चर्ड जगह की जानकारी दें.
LatLng ऑब्जेक्ट की मदद से, अक्षांश और देशांतर को अलग-अलग क्वेरी पैरामीटर के तौर पर सेट किया जा सकता है:
https://geocode.googleapis.com/v4beta/geocode/location?location.latitude=37.4225508&location.longitude=-122.0846338 &key=API_KEY
अनुरोध करने के लिए OAuth का इस्तेमाल करना
Geocoding API v4, पुष्टि करने के लिए OAuth 2.0 का इस्तेमाल करता है. Geocoding API के साथ OAuth का इस्तेमाल करने के लिए, OAuth टोकन को सही स्कोप असाइन किया जाना चाहिए. Geocoding API, रिवर्स जियोकोडिंग के साथ इस्तेमाल करने के लिए इन स्कोप के साथ काम करता है:
https://www.googleapis.com/auth/maps-platform.geocode— इसका इस्तेमाल Geocoding API के सभी एंडपॉइंट के साथ किया जाता है.https://www.googleapis.com/auth/maps-platform.geocode.location— इसका इस्तेमाल सिर्फ़GeocodeLocationके साथ रिवर्स जियोकोडिंग के लिए करें.
इसके अलावा, सभी Geocoding API एंडपॉइंट के लिए, सामान्य https://www.googleapis.com/auth/cloud-platform
स्कोप का इस्तेमाल किया जा सकता है. यह स्कोप डेवलपमेंट के दौरान काम आता है, लेकिन प्रोडक्शन के दौरान नहीं. ऐसा इसलिए, क्योंकि यह एक सामान्य स्कोप है, जो सभी एंडपॉइंट को ऐक्सेस करने की अनुमति देता है.
ज़्यादा जानकारी और उदाहरणों के लिए, OAuth का इस्तेमाल करना लेख पढ़ें.
रिवर्स जियोकोडिंग का जवाब
रिवर्स जियोकोडिंग, GeocodeLocationResponse ऑब्जेक्ट दिखाता है. इसमें ये शामिल होते हैं:
results,GeocodeResultऑब्जेक्ट का कलेक्शन है. इससे जगह के बारे में पता चलता है.रिवर्स जियोकोडर,
resultsकलेक्शन में एक से ज़्यादा नतीजे दिखाता है. नतीजे सिर्फ़ पिन कोड के हिसाब से नहीं होते, बल्कि किसी भी जगह का नाम भौगोलिक तौर पर बताया जाता है. उदाहरण के लिए, शिकागो शहर में किसी पॉइंट को जियोकोड करते समय, जियोकोड किए गए पॉइंट को सड़क के पते, शहर (शिकागो), राज्य (इलिनॉय) या देश (अमेरिका) के तौर पर दिखाया जा सकता है. ये सभी जियोकोडर के लिए "पते" हैं. रिवर्स जियोकोडर, इनमें से किसी भी तरह के नतीजे को मान्य नतीजे के तौर पर दिखाता है.PlusCodeटाइप वालेplusCodeफ़ील्ड में, ऐसा Plus Code होता है जो अनुरोध में दिए गए अक्षांश और देशांतर के सबसे करीब होता है. इसके अलावा,resultsकलेक्शन के हर एलिमेंट में एक Plus Code होता है. डिकोड किए गए Plus Code और अनुरोध किए गए पॉइंट के बीच की दूरी 10 मीटर से कम है.
पूरा JSON ऑब्जेक्ट इस फ़ॉर्म में होता है:
{ "results": [ { "place": "//places.googleapis.com/places/ChIJV-FZF7i7j4ARo4ZOUoecZFU", "placeId": "ChIJV-FZF7i7j4ARo4ZOUoecZFU", "location": { "latitude": 37.422588300000008, "longitude": -122.0846489 }, "granularity": "ROOFTOP", "viewport": { "low": { "latitude": 37.421239319708512, "longitude": -122.0859978802915 }, "high": { "latitude": 37.423937280291511, "longitude": -122.08329991970851 } }, "formattedAddress": "1600 Amphitheatre Pkwy, Mountain View, CA 94043, USA", "addressComponents": [ { "longText": "1600", "shortText": "1600", "types": [ "street_number" ] }, { "longText": "Amphitheatre Parkway", "shortText": "Amphitheatre Pkwy", "types": [ "route" ], "languageCode": "en" }, { "longText": "Mountain View", "shortText": "Mountain View", "types": [ "locality", "political" ], "languageCode": "en" }, { "longText": "Santa Clara County", "shortText": "Santa Clara County", "types": [ "administrative_area_level_2", "political" ], "languageCode": "en" }, { "longText": "California", "shortText": "CA", "types": [ "administrative_area_level_1", "political" ], "languageCode": "en" }, { "longText": "United States", "shortText": "US", "types": [ "country", "political" ], "languageCode": "en" }, { "longText": "94043", "shortText": "94043", "types": [ "postal_code" ] } ], "types": [ "street_address" ], "plusCode": { "globalCode": "849VCW83+PM", "compoundCode": "CW83+PM Mountain View, CA, USA" } }, { "place": "//places.googleapis.com/places/ChIJj61dQgK6j4AR4GeTYWZsKWw", "placeId": "ChIJj61dQgK6j4AR4GeTYWZsKWw", "location": { "latitude": 37.4220541, "longitude": -122.08532419999999 }, "granularity": "ROOFTOP", "viewport": { "low": { "latitude": 37.4207051197085, "longitude": -122.08667318029148 }, "high": { "latitude": 37.423403080291493, "longitude": -122.08397521970851 } }, "formattedAddress": "1600 Amphitheatre Pkwy, Mountain View, CA 94043, USA", "addressComponents": [ { "longText": "1600", "shortText": "1600", "types": [ "street_number" ] }, { "longText": "Amphitheatre Parkway", "shortText": "Amphitheatre Pkwy", "types": [ "route" ], "languageCode": "en" }, { "longText": "Mountain View", "shortText": "Mountain View", "types": [ "locality", "political" ], "languageCode": "en" }, { "longText": "Santa Clara County", "shortText": "Santa Clara County", "types": [ "administrative_area_level_2", "political" ], "languageCode": "en" }, { "longText": "California", "shortText": "CA", "types": [ "administrative_area_level_1", "political" ], "languageCode": "en" }, { "longText": "United States", "shortText": "US", "types": [ "country", "political" ], "languageCode": "en" }, { "longText": "94043", "shortText": "94043", "types": [ "postal_code" ] } ], "types": [ "establishment", "point_of_interest" ], "plusCode": { "globalCode": "849VCWC7+RV", "compoundCode": "CWC7+RV Mountain View, CA, USA" } }, ... ], "plusCode": { "globalCode": "849VCWF8+24H", "compoundCode": "CWF8+24H Mountain View, CA, USA" } }
ज़रूरी पैरामीटर
जगह
अक्षांश और देशांतर निर्देशांक, जिनसे यह पता चलता है कि आपको सबसे नज़दीकी और आसानी से पढ़ा जा सकने वाला पता कहां चाहिए.
ज़रूरी नहीं पैरामीटर
languageCode
वह भाषा जिसमें नतीजे दिखाने हैं.
- इस्तेमाल की जा सकने वाली भाषाओं की सूची देखें. Google, अक्सर उन भाषाओं को अपडेट करता है जिनमें Gemini का इस्तेमाल किया जा सकता है. इसलिए, हो सकता है कि इस सूची में पूरी जानकारी शामिल न हो.
-
अगर
languageCodeनहीं दिया गया है, तो एपीआई डिफ़ॉल्ट रूप सेenपर सेट हो जाता है. अगर आपने अमान्य भाषा कोड डाला है, तो एपीआईINVALID_ARGUMENTगड़बड़ी का मैसेज दिखाता है. - एपीआई, मोहल्ले का ऐसा पता देने की पूरी कोशिश करता है जिसे उपयोगकर्ता और स्थानीय लोग, दोनों पढ़ सकें. इस लक्ष्य को पूरा करने के लिए, यह स्थानीय भाषा में सड़क के पते दिखाता है. अगर ज़रूरी हो, तो यह पते को ऐसी स्क्रिप्ट में लिप्यंतरित करता है जिसे उपयोगकर्ता पढ़ सकता है. ऐसा करते समय, यह उपयोगकर्ता की पसंदीदा भाषा का ध्यान रखता है. अन्य सभी पते, चुनी गई भाषा में दिखाए जाते हैं. पते के सभी कॉम्पोनेंट, एक ही भाषा में दिखाए जाते हैं. यह भाषा, पहले कॉम्पोनेंट से चुनी जाती है.
- अगर नाम आपकी पसंदीदा भाषा में उपलब्ध नहीं है, तो एपीआई सबसे मिलते-जुलते नाम का इस्तेमाल करता है.
- पसंदीदा भाषा का असर, एपीआई से मिले नतीजों के सेट और उनके क्रम पर पड़ता है. जियोकोडर, भाषा के हिसाब से शॉर्ट फ़ॉर्म का अलग-अलग मतलब निकालता है. जैसे, सड़क के टाइप के लिए इस्तेमाल किए गए शॉर्ट फ़ॉर्म या ऐसे समानार्थी शब्द जो एक भाषा में मान्य हो सकते हैं, लेकिन दूसरी भाषा में नहीं.
regionCode
देश/इलाके का कोड, दो वर्णों वाले CLDR कोड की वैल्यू के तौर पर. कोई डिफ़ॉल्ट वैल्यू नहीं है. ज़्यादातर CLDR कोड, ISO 3166-1 कोड के जैसे ही होते हैं.
किसी पते को जियोकोड करते समय, फ़ॉरवर्ड जियोकोडिंग, यह पैरामीटर सेवा से मिले नतीजों को किसी खास इलाके के हिसाब से फ़िल्टर कर सकता है. हालांकि, यह पूरी तरह से ऐसा नहीं करता. किसी जगह या जगह की जियोकोडिंग करते समय, रिवर्स जियोकोडिंग या जगह की जियोकोडिंग करते समय, इस पैरामीटर का इस्तेमाल पते को फ़ॉर्मैट करने के लिए किया जा सकता है. सभी मामलों में, लागू कानून के आधार पर इस पैरामीटर का असर नतीजों पर पड़ सकता है.
जानकारी का लेवल
एक या उससे ज़्यादा लोकेशन की जानकारी, जिन्हें अलग-अलग क्वेरी पैरामीटर के तौर पर तय किया गया है. इन्हें
Granularityके हिसाब से तय किया जाता है. अगर आपने एक से ज़्यादाgranularityपैरामीटर तय किए हैं, तो एपीआई उन सभी पतों को दिखाता है जो किसी भी ग्रैन्युलैरिटी से मेल खाते हैं.granularityपैरामीटर, खोज को बताई गई जगह की बारीकियों तक सीमित नहीं करता है. इसके बजाय,granularityखोज के बाद के फ़िल्टर के तौर पर काम करता है. एपीआई, तय किए गएlocationके लिए सभी नतीजे फ़ेच करता है. इसके बाद, उन नतीजों को खारिज कर देता है जो तय की गई जगह की जानकारी के हिसाब से नहीं होते.अगर आपने
typesऔरgranularity, दोनों को चुना है, तो एपीआई सिर्फ़ वे नतीजे दिखाएगा जो दोनों से मेल खाते हों. उदाहरण के लिए:https://geocode.googleapis.com/v4beta/geocode/location/37.4225508,-122.0846338?granularity=ROOFTOP
&granularity=GEOMETRIC_CENTER &key=API_KEY प्रकार
एक या उससे ज़्यादा पते के टाइप, जिन्हें अलग-अलग क्वेरी पैरामीटर के तौर पर तय किया गया है. एक से ज़्यादा
typesपैरामीटर तय करने पर, एपीआई उन सभी पतों को दिखाता है जो किसी भी टाइप से मेल खाते हैं.typesपैरामीटर, खोज को बताए गए पते के टाइप तक सीमित नहीं करता. इसके बजाय,typesखोज के बाद के फ़िल्टर के तौर पर काम करता है. एपीआई, चुनी गई जगह के लिए सभी नतीजे फ़ेच करता है. इसके बाद, उन नतीजों को खारिज कर देता है जो चुने गए पते के टाइप से मेल नहीं खाते.अगर आपने
typesऔरgranularity, दोनों को चुना है, तो एपीआई सिर्फ़ वे नतीजे दिखाएगा जो दोनों से मेल खाते हों. उदाहरण के लिए:https://geocode.googleapis.com/v4beta/geocode/location/37.4225508,-122.0846338?types=administrative_area_level_2
&types=locality &key=API_KEY इन वैल्यू का इस्तेमाल किया जा सकता है:
पते के टाइप और पते के कॉम्पोनेंट के टाइप
जवाब में मौजूद
GeocodeResultबॉडी में मौजूदtypesऐरे, पते का टाइप दिखाता है. पते के टाइप के उदाहरणों में, सड़क का पता, देश या राजनैतिक इकाई शामिल है.GeocodeResultके मुख्य हिस्से में मौजूदAddressComponentsफ़ील्ड में मौजूदtypesकैटगरी, पते के हर हिस्से के टाइप के बारे में बताती है. उदाहरण के लिए, सड़क का नंबर या देश.पते कई तरह के हो सकते हैं. इन टाइप को 'टैग' माना जा सकता है. उदाहरण के लिए, कई शहरों को
politicalऔरlocalityटाइप के हिसाब से टैग किया गया है.ये टाइप इस्तेमाल किए जा सकते हैं और इन्हें पता टाइप और पते के कॉम्पोनेंट टाइप, दोनों ऐरे में दिखाया जाता है:
पते का प्रकार ब्यौरा street_addressमोहल्ले का सटीक पता. routeनाम वाला कोई रास्ता (जैसे, "US 101"). intersectionयह एक बड़ा चौराहा होता है. आम तौर पर, यह दो मुख्य सड़कों का चौराहा होता है. politicalकोई राजनैतिक इकाई. आम तौर पर, इस तरह के टाइप से किसी नागरिक प्रशासन के बहुभुज का पता चलता है. countryयह राष्ट्रीय राजनैतिक इकाई होती है. आम तौर पर, यह Geocoder से मिलने वाला सबसे बड़ा ऑर्डर टाइप होता है. administrative_area_level_1'देश' स्तर से नीचे, पहले क्रम की नागरिक इकाई. अमेरिका में, ये प्रशासनिक लेवल राज्य हैं. सभी देशों में ये प्रशासनिक स्तर नहीं होते. ज़्यादातर मामलों में, administrative_area_level_1छोटे नाम, ISO 3166-2 के सबडिविज़न और अन्य लोकप्रिय सूचियों से मिलते-जुलते होंगे. हालांकि, इसकी कोई गारंटी नहीं है, क्योंकि जियोकोडिंग के हमारे नतीजे कई तरह के सिग्नल और जगह की जानकारी पर आधारित होते हैं.administrative_area_level_2'देश' स्तर से नीचे, दूसरे क्रम की नागरिक इकाई. अमेरिका में, ये प्रशासनिक लेवल काउंटी हैं. सभी देशों में ये प्रशासनिक स्तर नहीं होते. administrative_area_level_3यह 'देश' स्तर से नीचे, तीसरे क्रम की नागरिक इकाई होती है. इस टाइप से, छोटे नागरिक विभाग के बारे में पता चलता है. सभी देशों में ये प्रशासनिक स्तर नहीं होते. administrative_area_level_4यह देश के स्तर से नीचे, चौथे क्रम की नागरिक इकाई होती है. इस टाइप से, छोटे नागरिक विभाग के बारे में पता चलता है. सभी देशों में ये प्रशासनिक स्तर नहीं होते. administrative_area_level_5यह देश के स्तर से नीचे, पांचवें क्रम की नागरिक इकाई होती है. इस टाइप से, छोटे नागरिक विभाग के बारे में पता चलता है. सभी देशों में ये प्रशासनिक स्तर नहीं होते. administrative_area_level_6यह देश के स्तर से नीचे, छठे क्रम की नागरिक इकाई होती है. इस टाइप से, छोटे नागरिक विभाग के बारे में पता चलता है. सभी देशों में ये प्रशासनिक स्तर नहीं होते. administrative_area_level_7यह देश के स्तर से नीचे, सातवें क्रम की नागरिक इकाई है. इस टाइप से, छोटे नागरिक विभाग के बारे में पता चलता है. सभी देशों में ये प्रशासनिक स्तर नहीं होते. colloquial_areaआम तौर पर इस्तेमाल किया जाने वाला, इकाई का दूसरा नाम. localityनिगमित शहर या कस्बे की राजनैतिक इकाई. sublocalityकिसी इलाके से नीचे की पहली क्रम की नागरिक इकाई. कुछ जगहों के लिए, आपको इनमें से कोई एक अतिरिक्त टाइप मिल सकता है: sublocality_level_1सेsublocality_level_5. उप-स्थानीयता का हर लेवल, एक नागरिक इकाई होता है. ज़्यादा संख्या का मतलब है कि भौगोलिक क्षेत्र छोटा है.neighborhoodआस-पास की जगह का नाम. premiseकिसी जगह का नाम, आम तौर पर किसी इमारत या एक ही नाम वाली इमारतों का समूह. subpremiseपरिसर के लेवल से नीचे की ऐसी इकाई जिसका पता दिया जा सकता है. जैसे, अपार्टमेंट, यूनिट या सुइट. plus_codeयह अक्षांश और देशांतर से मिला, जगह की जानकारी का एन्कोड किया गया रेफ़रंस होता है. प्लस कोड का इस्तेमाल, उन जगहों पर मोहल्ले के पतों की जगह किया जा सकता है जहां ये मौजूद नहीं हैं. जैसे, जहां बिल्डिंग के नंबर नहीं हैं या सड़कों के नाम नहीं हैं. ज़्यादा जानकारी के लिए, https://plus.codes पर जाएं. postal_codeदेश में डाक भेजने के लिए इस्तेमाल किया जाने वाला पिन कोड. natural_featureकोई खास प्राकृतिक जगह. airportहवाई अड्डा. parkकिसी पार्क का नाम. point_of_interestकिसी लोकप्रिय जगह का नाम. आम तौर पर, ये "पीओआई" ऐसी स्थानीय इकाइयां होती हैं जिन्हें किसी दूसरी कैटगरी में आसानी से नहीं रखा जा सकता. जैसे, "एम्पायर स्टेट बिल्डिंग" या "एफ़िल टावर". टाइप की खाली सूची से पता चलता है कि पते के किसी कॉम्पोनेंट के लिए कोई टाइप मौजूद नहीं है. उदाहरण के लिए, फ़्रांस में Lieu-dit.