Destination
का मतलब किसी ऐसी जगह से है जहां उपयोगकर्ता पहुंचना चाहता है या जिसके लिए वह नेविगेट करना चाहता है. Destination में जगह या इलाके से जुड़ी जानकारी का कलेक्शन भी शामिल होता है. जैसे, नेविगेशन पॉइंट, लैंडमार्क, एंट्री पॉइंट, और इमारत की आउटलाइन.
Geocoding API के
SearchDestinations
तरीके का इस्तेमाल करके, अलग-अलग इनपुट के आधार पर कई जगहों की जानकारी हासिल की जा सकती है. जैसे, पता, जगह का आईडी या अक्षांश और देशांतर के निर्देशांक.
डेस्टिनेशन खोजने का अनुरोध
डेस्टिनेशन खोजने का अनुरोध, इस तरह के यूआरएल के लिए किया गया एचटीटीपी पोस्ट अनुरोध होता है:
https://geocode.googleapis.com/v4/geocode/destinations
सभी पैरामीटर को JSON अनुरोध के मुख्य हिस्से में या POST अनुरोध के हिस्से के तौर पर हेडर में पास करें. उदाहरण के लिए:
curl -X POST -d '{
"place": "places/ChIJY8sv5-i2j4AR_S6BlDDR42w"
}' \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \
-H "X-Goog-FieldMask: *" \
https://geocode.googleapis.com/v4/geocode/destinations
किसी डेस्टिनेशन को खोजने के लिए, जगह की जानकारी इन तीन में से किसी एक तरीके से दी जा सकती है:
- पता
- जगह का आईडी
- अक्षांश और देशांतर निर्देशांक
पते की मदद से कोई जगह खोजना
पते को अनस्ट्रक्चर्ड स्ट्रिंग के तौर पर तय किया जा सकता है. पते की जियोकोडिंग, अक्षांश और देशांतर के निर्देशांक या अन्य अनस्ट्रक्चर्ड स्ट्रिंग को रिज़ॉल्व नहीं करती है. ये स्ट्रिंग, किसी पते को नहीं दिखाती हैं. इस तरह की स्ट्रिंग का इस्तेमाल करने वाले अनुरोधों को प्रोसेस नहीं किया जा सकता. साथ ही, इनसे गड़बड़ी वाले जवाब मिल सकते हैं या कोई गड़बड़ी हो सकती है. इस्तेमाल न की जा सकने वाली क्वेरी के उदाहरणों में ये शामिल हैं:
| क्वेरी का टाइप | उदाहरण |
|---|---|
| अक्षांश और देशांतर निर्देशांक. इसके बजाय, जगह की जानकारी वाली क्वेरी का इस्तेमाल करें. | "37.422131,-122.084801" |
| एक ही क्वेरी में कई जगहों, सड़कों या शहरों के नाम जैसे कई कॉन्सेप्ट या पाबंदियां शामिल हों | "Market Street San Francisco San Jose Airport" |
| डाक पते के एलिमेंट, Google Maps पर नहीं दिखाए गए हैं |
"C/O जॉन स्मिथ 123 मेन स्ट्रीट" "पी॰ओ॰ बॉक्स 13 सैन फ़्रांसिस्को" |
| कारोबारों, कई आउटलेट वाले कारोबारी ग्रुप या कैटगरी के नाम के साथ उन जगहों के नाम जोड़ना जहां ये इकाइयां उपलब्ध नहीं हैं | "डैलस, टेक्सस के पास टेस्को" |
| ऐसी क्वेरी जिनके कई मतलब निकल सकते हैं | "चार्जर ड्रॉप-ऑफ़" |
| ऐतिहासिक नाम, जो अब इस्तेमाल नहीं किए जाते | "मिडलसेक्स यूनाइटेड किंगडम" |
| नॉन-जियोस्पेशल एलिमेंट या इंटेंट | "वेंचुरा हार्बर में कितनी नावें हैं?" |
| गैर-आधिकारिक या वैनिटी नेम |
"The Jenga" "The Helter Skelter" |
| बड़ी राजनैतिक इकाइयां (शहर, राज्य, देश) |
"New York City" "California" "USA" |
| बिना किसी खास पते के रूट |
"1st Ave., NYC, NY" "I-95" |
curl -X POST -d '{
"addressQuery": {
"addressQuery": "601 S Bernardo Ave, Sunnyvale, CA 94087, USA"
}
}' \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \
-H "X-Goog-FieldMask: *" \
https://geocode.googleapis.com/v4/geocode/destinations
या
postalAddress के तौर पर:
curl -X POST -d '{
"addressQuery": {
"address": {
"addressLines": ["601 S Bernardo Ave"],
"locality": "Sunnyvale",
"postalCode": "94087",
"administrativeArea": "CA",
"regionCode": "US"
}
}
}' \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \
-H "X-Goog-FieldMask: *" \
https://geocode.googleapis.com/v4/geocode/destinations
आम तौर पर, एचटीएमएल फ़ॉर्म में कैप्चर किए गए पते के कॉम्पोनेंट को प्रोसेस करते समय, postalAddress फ़ॉर्मैट का इस्तेमाल किया जाता है.
जगह के आईडी के हिसाब से डेस्टिनेशन खोजना
जगह का आईडी देकर, किसी डेस्टिनेशन की जानकारी वापस पाई जा सकती है:
curl -X POST -d '{
"place": "places/ChIJY8sv5-i2j4AR_S6BlDDR42w"
}' \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \
-H "X-Goog-FieldMask: *" \
https://geocode.googleapis.com/v4/geocode/destinations
जगह के आईडी, जो इस्तेमाल किए जा सकते हैं
Search Destinations का तरीका, उन जगह के आईडी के साथ सबसे अच्छा काम करता है जो खास और नेविगेट की जा सकने वाली जगहों को दिखाते हैं. आम तौर पर, establishment, point_of_interest, premise, street_address, और subpremise जैसी जगहों के आईडी इस्तेमाल किए जा सकते हैं. जगह के ऐसे आईडी जो अलग-अलग जगहों को नहीं दिखाते, वे काम नहीं करते. जैसे, पते की रेंज से अनुमानित आईडी (उदाहरण के लिए, "10-20 मेन स्ट्रीट"), किसी रास्ते के ऐसे सेक्शन जिनका कोई खास नंबर नहीं है या प्लस कोड. बहुत बड़े इलाकों (जैसे, "प्रशांत महासागर") के नतीजों के लिए, जगह के आईडी भी इस्तेमाल नहीं किए जा सकते.
Search Destinations के साथ Autocomplete (New) का इस्तेमाल करना
यह पक्का करने के लिए कि जगह का आईडी, Search Destinations के साथ काम करे, ऑटोकंप्लीट (नया) का इस्तेमाल करके जगह के आईडी ढूंढें. ऑटोकंप्लीट (नया) का इस्तेमाल करते समय, आपको includedPrimaryTypes पैरामीटर का इस्तेमाल करके, नतीजों को टाइप के हिसाब से फ़िल्टर करना चाहिए. खोज के लिए डेस्टिनेशन, अपने-आप पूरा होने की सुविधा (नई) से मिले उन जगह के आईडी के साथ काम करता है जो यहां सुझाए गए फ़िल्टर का इस्तेमाल करके मिले हैं:
"includedPrimaryTypes": [ "establishment", "point_of_interest", "premise", "street_address", "subpremise" ]
इसके अलावा, आपको ऑटोकंप्लीट (नया) के अनुरोध में, include_pure_service_area_businesses फ़्लैग को true पर सेट नहीं करना चाहिए.
जगह के हिसाब से कोई डेस्टिनेशन खोजना
अक्षांश और देशांतर निर्देशांक डालकर, किसी डेस्टिनेशन को खोजा जा सकता है:
curl -X POST -d '{
"locationQuery": {
"location": {
"latitude": 37.37348780,
"longitude": -122.05678064
}
}
}' \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \
-H "X-Goog-FieldMask: *" \
https://geocode.googleapis.com/v4/geocode/destinations
अनुरोध करने के लिए OAuth का इस्तेमाल करना
Geocoding API v4, पुष्टि करने के लिए OAuth 2.0 के साथ काम करता है. Geocoding API के साथ OAuth का इस्तेमाल करने के लिए, OAuth टोकन को सही स्कोप असाइन किया जाना चाहिए. Geocoding API, Destinations तरीके के साथ इस्तेमाल करने के लिए, इन स्कोप के साथ काम करता है:
https://www.googleapis.com/auth/maps-platform.geocode— Geocoding API के सभी तरीकों के साथ इस्तेमाल करें.
इसके अलावा, Geocoding API के सभी तरीकों के लिए, सामान्य https://www.googleapis.com/auth/cloud-platform स्कोप का इस्तेमाल किया जा सकता है. यह स्कोप, डेवलपमेंट के दौरान काम आता है, लेकिन प्रोडक्शन के दौरान नहीं. इसकी वजह यह है कि यह एक सामान्य स्कोप है, जो सभी तरीकों को ऐक्सेस करने की अनुमति देता है.
ज़्यादा जानकारी और उदाहरणों के लिए, OAuth का इस्तेमाल करना लेख पढ़ें.
डेस्टिनेशन खोजने के लिए अनुरोध का जवाब
Search Destinations के जवाब में, जगह की जानकारी के बारे में ज़्यादा और हाइपरलोकल कॉन्टेक्स्ट मिलता है.
Search Destinations के रिस्पॉन्स में मौजूद PlaceView ऑब्जेक्ट (जैसे, primary, containingPlaces में मौजूद आइटम, और landmarks), जगह के टाइप के बारे में बताने के लिए फ़ील्ड का इस्तेमाल करते हैं:
types: स्ट्रिंग का कलेक्शन, जो जगह के टाइप के बारे में बताता है.primaryType: यह स्ट्रिंग, जगह के मुख्य टाइप के बारे में बताती है.
types और primaryType, दोनों के लिए संभावित स्ट्रिंग वैल्यू, जगह के टाइप (नया) पेज पर मौजूद टेबल A और टेबल B से ली जाती हैं.
इस सेक्शन में, रिस्पॉन्स के मुख्य फ़ील्ड के बारे में बताया गया है. रिस्पॉन्स के सभी फ़ील्ड के बारे में पूरी जानकारी पाने के लिए, एपीआई का संदर्भ देखें.
primary
अनुरोध में मौजूद क्वेरी से पहचानी गई मुख्य जगह.
addressComponents
इस पते पर लागू होने वाले अलग-अलग कॉम्पोनेंट वाली कैटगरी.
पते के हर कॉम्पोनेंट में आम तौर पर ये फ़ील्ड होते हैं:
types[]एक ऐरे है, जो पते के कॉम्पोनेंट का टाइप बताता है. इस्तेमाल किए जा सकने वाले टाइप की सूची देखें.longText, पते के कॉम्पोनेंट का पूरा टेक्स्ट ब्यौरा या नाम है, जैसा कि Geocoder ने दिखाया है.shortText, पते के कॉम्पोनेंट का छोटा नाम है. यह नाम तब दिखता है, जब यह उपलब्ध हो. उदाहरण के लिए, अलास्का राज्य के पते के कॉम्पोनेंट में,longText"अलास्का" औरshortText"AK" हो सकता है. इसमें दो अक्षरों वाले डाक पते के संक्षिप्त नाम का इस्तेमाल किया जाता है.languageCodeवह भाषा है जिसका इस्तेमाल, इस कॉम्पोनेंट को CLDR नोटेशन में फ़ॉर्मैट करने के लिए किया जाता है.
containingPlaces
ऐसी बड़ी इकाइयां जिनका मुख्य डेस्टिनेशन हिस्सा है. उदाहरण के लिए, कोई मॉल जिसमें स्टोर मौजूद है.
subDestinations
मुख्य डेस्टिनेशन के अंदर मौजूद ज़्यादा सटीक जगहें. उदाहरण के लिए, किसी इमारत में मौजूद अपार्टमेंट.
entrances
entrances[] कलेक्शन में मौजूद ऑब्जेक्ट में ये फ़ील्ड होते हैं:
displayNameएक
LocalizedTextऑब्जेक्ट, जिसमें एंट्री पॉइंट का ऐसा नाम शामिल हो जिसे आसानी से पढ़ा जा सके. जैसे,"South Bernardo Avenue"या"5th Avenue". हालांकि, ऐसा तब ही होगा, जब यह जानकारी उपलब्ध हो.locationअक्षांश/देशांतर निर्देशांक का एक जोड़ा, जो किसी जगह में एंट्री और एग्ज़िट पॉइंट की जगह की जानकारी देता है.
entrance_tags[]एंट्रेंस टैग का कलेक्शन, जिसमें एंट्रेंस की विशेषताओं के बारे में बताया गया है. इस वैल्यू का इस्तेमाल किया जा सकता है:
"PREFERRED"
इससे पता चलता है कि इस एंट्री पॉइंट से, खोजे गए नतीजे में मौजूद जगह पर पहुंचा जा सकता है. किसी जगह में जाने के लिए कई पसंदीदा रास्ते हो सकते हैं. अगर किसी एंट्री पॉइंट में यह टैग नहीं है, तो इसका मतलब है कि वह एंट्री पॉइंट उसी इमारत में है, लेकिन ज़रूरी नहीं है कि उससे उस जगह तक पहुंचा जा सके.
उदाहरण के लिए, अगर खोज के नतीजे में मिली जगह, स्ट्रिप मॉल में मौजूद कोई रेस्टोरेंट है, तो
"PREFERRED"एंट्री पॉइंट वे होंगे जो सीधे रेस्टोरेंट तक ले जाते हैं. वहीं, खोज के नतीजे में मिले अन्य एंट्री पॉइंट, इमारत के अन्य एंट्री पॉइंट होंगे. जैसे, स्ट्रिप मॉल में मौजूद अन्य रेस्टोरेंट के एंट्री पॉइंट.अगर खोज के नतीजे में मिली जगह कोई इमारत है, तो
"PREFERRED"एंट्री पॉइंट वे होंगे जो इमारत के "मुख्य" हिस्से तक ले जाते हैं. उदाहरण के लिए, किसी शॉपिंग सेंटर में"PREFERRED"एंट्री पॉइंट वे होंगे जिनसे मुख्य फ़ोयर एरिया को ऐक्सेस किया जा सकता है. हालांकि, अगर कोई एंट्री पॉइंट सिर्फ़ बिल्डिंग के किनारे मौजूद किसी स्टोर को ऐक्सेस करने की अनुमति देता है, तो वह"PREFERRED"एंट्री पॉइंट नहीं होगा.streetViewThumbnailऔरstreetViewAnnotationStreet View Static API के लिए पैरामीटर, जिनकी मदद से इन जगहों की काम की तस्वीरें दिखाई जा सकती हैं. इन फ़ील्ड के बारे में ज़्यादा जानें.
structureType
यह जगह किस तरह की है.
POINTएक पॉइंट लोकेशन.
SECTIONकिसी इमारत का सब-सेक्शन.
BUILDINGएक इमारत.
GROUNDSएक बड़ा इलाका, जिसमें आम तौर पर कई इमारतें होती हैं. जैसे, कोई यूनिवर्सिटी कैंपस, अपार्टमेंट कॉम्प्लेक्स या शॉपिंग मॉल.
navigationPoints
जियोकोडिंग के जवाब में मौजूद navigationPoints फ़ील्ड में, उन पॉइंट की सूची होती है जो जगह पर जाने के लिए काम के होते हैं. खास तौर पर, किसी जगह से या उस जगह तक जाने के लिए, रोड नेटवर्क पर रूट तय करते समय, इन्हें शुरुआती या आखिरी पॉइंट के तौर पर इस्तेमाल किया जाना चाहिए.
हर नेविगेशन पॉइंट में ये वैल्यू शामिल होती हैं:
navigationPointTokenएक टोकन है, जिसमेंnavigationPointsफ़ील्ड में कॉन्टेक्स्ट के हिसाब से जानकारी होती है. इस टोकन को रूटिंग और नेविगेशन एपीआई पर भेजा जा सकता है, ताकि आपके ऐप्लिकेशन में रूटिंग और रिवर के अनुभव को बेहतर बनाया जा सके. ज़्यादा जानकारी के लिए, नेविगेशन पॉइंट टोकन का इस्तेमाल करके रूट करें देखें.locationमें नेविगेशन पॉइंट के अक्षांश और देशांतर की वैल्यू शामिल होती है. यह जगह हमेशा सड़क नेटवर्क के बहुत करीब होगी. साथ ही, यह किसी जगह पर जाने और वहां से वापस आने के लिए, रुकने या यात्रा शुरू करने की सबसे सही जगह होगी. पॉइंट को जान-बूझकर सड़क की सेंटरलाइन से थोड़ा दूर रखा जाता है, ताकि सड़क के उस हिस्से को साफ़ तौर पर मार्क किया जा सके जहां जगह मौजूद है.travelModes, यात्रा के उन मोड की सूची है जिनसे नेविगेशन पॉइंट को ऐक्सेस किया जा सकता है:"DRIVE", ड्राइविंग के लिए रास्ते के निर्देशों के हिसाब से यात्रा का मोड है."WALK", पैदल रास्ते की जानकारी के लिए यात्रा का मोड है.
usages, नेविगेशन पॉइंट के साथ इस्तेमाल किए जा सकने वाले तरीकों की सूची है. इस्तेमाल के ये तरीके हो सकते हैं:"DROPOFF""PICKUP""PARKING"
पिकअप और ड्रॉप-ऑफ़ के लिए, उस नेविगेशन पॉइंट का इस्तेमाल करें जहां यात्रा का मोड DRIVE हो और इस्तेमाल PICKUP या DROPOFF हो. अगर पिकअप या ड्रॉपऑफ़ पॉइंट उपलब्ध नहीं हैं, तो सबसे ऊपर मौजूद ड्राइविंग नेविगेशन पॉइंट का इस्तेमाल करें.
streetViewThumbnailऔरentranceAnnotation, Street View Static API के लिए पैरामीटर उपलब्ध कराते हैं. इससे आपको इन जगहों की काम की तस्वीरें दिखाने में मदद मिलती है. इन फ़ील्ड के बारे में ज़्यादा जानें.
altitude_metersमें, WGS-84 एलिप्सॉइड के हिसाब से, नेविगेशन पॉइंट की ऊंचाई मीटर में होती है. अगर सड़क के सेगमेंट वर्टिकल तौर पर स्टैक किए गए हैं, तोaltitude_metersफ़ील्ड का इस्तेमाल करके, अपने सिस्टम के लिए सबसे सही सड़क सेगमेंट चुनें, ताकि वह नेविगेट कर सके.
landmarks
आस-पास की मशहूर जगहों की जानकारी, ताकि उपयोगकर्ताओं को डेस्टिनेशन के आस-पास की जगहों के बारे में पता चल सके.
हर लैंडमार्क में ये फ़ील्ड शामिल होते हैं:
place,PlaceViewऑब्जेक्ट है, जो इस लैंडमार्क को दिखाता है.relationalDescription, किसी व्यक्ति के लिए आसानी से पढ़ा जा सकने वाला ब्यौरा है. इससे पता चलता है कि मंज़िल, लैंडमार्क से कैसे जुड़ी है. जैसे, "एंपायर स्टेट बिल्डिंग के पास" या "व्हाइट हाउस के सामने".tags[], टैग का एक कलेक्शन है. इससे पता चलता है कि डेस्टिनेशन के संदर्भ में, लैंडमार्क का इस्तेमाल कैसे किया जा सकता है:"ADDRESS": स्थानीय तौर पर मशहूर कोई जगह, जिसका इस्तेमाल करके डेस्टिनेशन की जगह की अनुमानित जानकारी का पता लगाया जा सकता है."ARRIVAL": ऐसी जगह जिसका इस्तेमाल मंज़िल तक पहुंचने में मदद पाने के लिए किया जा सकता है. यह मंज़िल के करीब पहुंचने पर नेविगेशन के लिए मददगार होती है.
straightLineDistanceMeters, इस लैंडमार्क से डेस्टिनेशन तक की सीधी दूरी है. यह दूरी मीटर में होती है.travelDistanceMeters, इस लैंडमार्क से मंज़िल तक की पैदल दूरी है. यह दूरी मीटर में है.
arrivalSummary
एआई की मदद से मिलने वाली अहम जानकारी, ताकि आपको मंज़िल तक पहुंचने में मदद मिल सके. एआई की मदद से खास जानकारी देखें.
parkingOptions
पार्किंग की ज़्यादा जानकारी.
जवाब का फ़ॉर्मैट
SearchDestinations, यहां दिए गए JSON फ़ॉर्म का
SearchDestinationsResponse
दिखाता है:
{ "destinations": [ { "primary": { "place": "places/ChIJY8sv5-i2j4AR_S6BlDDR42w", "displayName": { "text": "Arby's", "languageCode": "en" }, "primaryType": "fast_food_restaurant", "types": [ "fast_food_restaurant", "sandwich_shop", "deli", "meal_takeaway", "food_delivery", "american_restaurant", "restaurant", "food_store", "store", "food", "point_of_interest", "establishment" ], "formattedAddress": "Arby's, 601 S Bernardo Ave, Sunnyvale, CA 94087, USA", "postalAddress": { "regionCode": "US", "languageCode": "en", "postalCode": "94087", "administrativeArea": "CA", "locality": "Sunnyvale", "addressLines": [ "601 S Bernardo Ave" ] }, "structureType": "BUILDING", "location": { "latitude": 37.3734545, "longitude": -122.05693269999998 }, "displayPolygon": { "type": "Polygon", "coordinates": [ [ [ -122.056930138027, 37.3735253692531 ], [ -122.056960139391, 37.3735372663597 ], [ -122.056994129366, 37.3734828786847 ], [ -122.056969677395, 37.3734731161089 ], [ -122.057061762447, 37.3733261309656 ], [ -122.056979388817, 37.3732935577128 ], [ -122.056798860285, 37.3735818838642 ], [ -122.056875858081, 37.3736121235316 ], [ -122.056930138027, 37.3735253692531 ] ] ] } }, "containingPlaces": [ { "place": "places/ChIJYfdAFum2j4ARIcL2tjME3Sw", "displayName": { "text": "Cherry Chase Shopping Center", "languageCode": "en" }, "primaryType": "shopping_mall", "types": [ "shopping_mall", "point_of_interest", "establishment" ], "formattedAddress": "Cherry Chase Shopping Center, 663 S Bernardo Ave, Sunnyvale, CA 94087, USA", "postalAddress": { "regionCode": "US", "languageCode": "en", "postalCode": "94087-1020", "administrativeArea": "CA", "locality": "Sunnyvale", "addressLines": [ "663 S Bernardo Ave" ] }, "structureType": "GROUNDS", "location": { "latitude": 37.3731231, "longitude": -122.0578211 }, "displayPolygon": { "type": "Polygon", "coordinates": [ [ [ -122.057112227103, 37.3714618008523 ], [ -122.057076849821, 37.3715743611411 ], [ -122.056963607756, 37.3719081793948 ], [ -122.056865279559, 37.3722026053835 ], [ -122.056687872374, 37.3727258358476 ], [ -122.056580005889, 37.3730511370747 ], [ -122.056498845827, 37.3732994782583 ], [ -122.056338259713, 37.3737878663325 ], [ -122.056618678291, 37.373887693582 ], [ -122.056912102521, 37.3740010327191 ], [ -122.057532418159, 37.3742476426462 ], [ -122.057673926626, 37.3742441740031 ], [ -122.057735663106, 37.3742328516943 ], [ -122.057766531332, 37.3742220604378 ], [ -122.057797572967, 37.37420520725 ], [ -122.057828267759, 37.3741852342085 ], [ -122.058060299297, 37.3740060842535 ], [ -122.058199726081, 37.3737861673422 ], [ -122.05836707267, 37.373524542556 ], [ -122.058569622393, 37.3732018598683 ], [ -122.0587638478, 37.3728890198039 ], [ -122.058934661823, 37.3726036257774 ], [ -122.059164956851, 37.3722498383629 ], [ -122.058997784906, 37.3721804442035 ], [ -122.057936479838, 37.3717605636234 ], [ -122.057495827092, 37.3715860151634 ], [ -122.057112227103, 37.3714618008523 ] ] ] } } ], "landmarks": [ { "place": { "place": "places/ChIJXXTe7Oi2j4ARoMTA-D6Hjpg", "displayName": { "text": "Chase Bank", "languageCode": "en" }, "primaryType": "bank", "types": [ "bank", "atm", "finance", "point_of_interest", "establishment" ], "formattedAddress": "Chase Bank, 1234 W El Camino Real, Sunnyvale, CA 94087, USA", "postalAddress": { "regionCode": "US", "languageCode": "en", "postalCode": "94087", "administrativeArea": "CA", "locality": "Sunnyvale", "addressLines": [ "1234 W El Camino Real" ] }, "structureType": "POINT", "location": { "latitude": 37.373579, "longitude": -122.05752700000001 } }, "relationalDescription": { "text": "Near Chase Bank", "languageCode": "en" }, "tags": [ "ARRIVAL", "ADDRESS" ], "straightLineDistanceMeters": 61.182193756103516, "travelDistanceMeters": 63.075645446777344 }, { "place": { "place": "places/ChIJteQ0Fum2j4ARGi3tqK4Zm14", "displayName": { "text": "Safeway", "languageCode": "en" }, "primaryType": "grocery_store", "types": [ "grocery_store", "butcher_shop", "florist", "deli", "supermarket", "bakery", "food_delivery", "market", "manufacturer", "food_store", "store", "food", "service", "point_of_interest", "establishment" ], "formattedAddress": "Safeway, 639 S Bernardo Ave, Sunnyvale, CA 94087, USA", "postalAddress": { "regionCode": "US", "languageCode": "en", "postalCode": "94087", "administrativeArea": "CA", "locality": "Sunnyvale", "addressLines": [ "639 S Bernardo Ave" ] }, "structureType": "POINT", "location": { "latitude": 37.3727912, "longitude": -122.0581172 } }, "relationalDescription": { "text": "Around the corner from Safeway", "languageCode": "en" }, "tags": [ "ARRIVAL", "ADDRESS" ], "straightLineDistanceMeters": 158.65606689453125, "travelDistanceMeters": 131.1669921875 }, { "place": { "place": "places/ChIJu-PSYui2j4ARNiwOwBApGqk", "displayName": { "text": "Oil Changers", "languageCode": "en" }, "types": [ "car_repair", "service", "point_of_interest", "establishment" ], "formattedAddress": "Oil Changers, 1240 W El Camino Real, Sunnyvale, CA 94087, USA", "postalAddress": { "regionCode": "US", "languageCode": "en", "postalCode": "94087", "administrativeArea": "CA", "locality": "Sunnyvale", "addressLines": [ "1240 W El Camino Real" ] }, "structureType": "POINT", "location": { "latitude": 37.3743054, "longitude": -122.0584272 } }, "relationalDescription": { "text": "Down the road from Oil Changers", "languageCode": "en" }, "tags": [ "ARRIVAL" ], "straightLineDistanceMeters": 140.52459716796875, "travelDistanceMeters": 143.24220275878906 }, { "place": { "place": "places/ChIJKRbl5oG3j4ARwuvPGUmtCj0", "displayName": { "text": "Apni Mandi Farmers Market Sunnyvale", "languageCode": "en" }, "primaryType": "grocery_store", "types": [ "grocery_store", "cake_shop", "supermarket", "asian_grocery_store", "indian_restaurant", "meal_takeaway", "bakery", "manufacturer", "wholesaler", "restaurant", "food_store", "store", "food", "point_of_interest", "establishment" ], "formattedAddress": "Apni Mandi Farmers Market Sunnyvale, 1111 W El Camino Real, Sunnyvale, CA 94087, USA", "postalAddress": { "regionCode": "US", "languageCode": "en", "postalCode": "94087-1056", "administrativeArea": "CA", "locality": "Sunnyvale", "addressLines": [ "1111 W El Camino Real" ] }, "structureType": "POINT", "location": { "latitude": 37.3737199, "longitude": -122.0522958 } }, "relationalDescription": { "text": "Near Apni Mandi Farmers Market Sunnyvale", "languageCode": "en" }, "tags": [ "ADDRESS" ], "straightLineDistanceMeters": 410.37435913085938, "travelDistanceMeters": 479.49893188476562 }, { "place": { "place": "places/ChIJ8enMlui2j4AR2xXK5EHDhBs", "displayName": { "text": "Starbird Chicken", "languageCode": "en" }, "primaryType": "chicken_restaurant", "types": [ "chicken_restaurant", "fast_food_restaurant", "restaurant", "food", "point_of_interest", "establishment" ], "formattedAddress": "Starbird Chicken, 1241 W El Camino Real, Sunnyvale, CA 94087, USA", "postalAddress": { "regionCode": "US", "languageCode": "en", "postalCode": "94087-1028", "administrativeArea": "CA", "locality": "Sunnyvale", "addressLines": [ "1241 W El Camino Real" ] }, "structureType": "BUILDING", "location": { "latitude": 37.3746764, "longitude": -122.05708860000001 }, "displayPolygon": { "coordinates": [ [ [ -122.057003840785, 37.3747648209809 ], [ -122.057136852459, 37.3747919153144 ], [ -122.057205005705, 37.3745815131859 ], [ -122.057071994114, 37.3745544186944 ], [ -122.057003840785, 37.3747648209809 ] ] ], "type": "Polygon" } }, "relationalDescription": { "text": "Near Starbird Chicken", "languageCode": "en" }, "tags": [ "ADDRESS" ], "straightLineDistanceMeters": 87.348007202148438, "travelDistanceMeters": 214.08084106445312 } ], "entrances": [ { "displayName": { "text": "South Bernardo Avenue", "languageCode": "en" }, "location": { "latitude": 37.3735328, "longitude": -122.05694879999999 }, "tags": [ "PREFERRED" ], "place": "places/ChIJY8sv5-i2j4AR_S6BlDDR42w" } ], "navigationPoints": [ { "navigationPointToken": "ChIJeMt61tqvQkARWT2716SDXsASEgljyy_n6LaPgBH9LoGUMNHjbBoSCWPLL-foto-AEf0ugZQw0eNsIhIJhf5y6ei2j4ARz7yBW5KAPI4", "location": { "latitude": 37.3738659, "longitude": -122.05693620000001 }, "travelModes": [ "DRIVE", "WALK" ], "usages": [ "PARKING" ] } ] } ] }
ज़रूरी पैरामीटर
- एपीआई अनुरोध में, इनमें से कोई एक पैरामीटर होना चाहिए. इससे मंज़िल खोजने के लिए, पते, जगह या जगह की जानकारी मिलती है:
addressQuery- वह पता जिसे खोजना है.place- जिस जगह को खोजना है उसका आईडी.locationQuery- जिस जगह को खोजना है उसके अक्षांश और देशांतर निर्देशांक.
FieldMask
रिस्पॉन्स फ़ील्ड मास्क बनाकर, रिस्पॉन्स में दिखाए जाने वाले फ़ील्ड की सूची तय करें. यूआरएल पैरामीटर
$fieldsयाfieldsका इस्तेमाल करके या एचटीटीपी हेडरX-Goog-FieldMaskका इस्तेमाल करके, रिस्पॉन्स फ़ील्ड मास्क को तरीके में पास करें. उदाहरण के लिए, नीचे दिए गए अनुरोध से सिर्फ़ मुख्य डेस्टिनेशन के एंट्री पॉइंट, नेविगेशन पॉइंट, और जगह का आईडी दिखेगा.curl -X POST -d '{"place": "places/ChIJG3kh4hq6j4AR_XuFQnV0_t8"}' \ -H "X-Goog-Api-Key: API_KEY" \ -H "Content-Type: application/json" \ -H "X-Goog-FieldMask: destinations.entrances,destinations.navigationPoints,destinations.primary.place" \ https://geocode.googleapis.com/v4/geocode/destinationsजवाब में, दिखाए जाने वाले फ़ील्ड की कोई डिफ़ॉल्ट सूची नहीं होती. अगर फ़ील्ड मास्क को शामिल नहीं किया जाता है, तो यह तरीका गड़बड़ी दिखाता है. सभी फ़ील्ड वापस पाने के लिए, फ़ील्ड मास्क को
*पर सेट करें. ज़्यादा जानकारी के लिए, वापस किए जाने वाले फ़ील्ड चुनें देखें.
ज़रूरी नहीं पैरामीटर
-
travelModes
इससे पता चलता है कि किस तरह के
navigationPointsदिखाए जाएंगे. यात्रा के अन्य तरीकों के लिए, नेविगेशन पॉइंट फ़िल्टर कर दिए जाएंगे. अगरtravelModesको सेट नहीं किया जाता है, तो यात्रा के सभी मोड के लिए नेविगेशन पॉइंट दिखाए जा सकते हैं. languageCode
वह भाषा जिसमें नतीजे दिखाए जाएंगे.
- उपलब्ध भाषाओं की सूची देखें. Google अक्सर उन भाषाओं को अपडेट करता है जिनमें यह सुविधा उपलब्ध है. इसलिए, हो सकता है कि इस सूची में सभी भाषाएं शामिल न हों.
-
अगर
languageCodeनहीं दिया जाता है, तो एपीआई डिफ़ॉल्ट रूप से जगह की स्थानीय भाषा और स्क्रिप्ट का इस्तेमाल करता है. अगर आपने अमान्य भाषा कोड डाला है, तो एपीआईINVALID_ARGUMENTगड़बड़ी का मैसेज दिखाता है. - एपीआई, मोहल्ले का ऐसा पता उपलब्ध कराने की पूरी कोशिश करता है जिसे उपयोगकर्ता और स्थानीय लोग, दोनों पढ़ सकें. इस लक्ष्य को हासिल करने के लिए, यह स्थानीय भाषा में मोहल्ले के पते दिखाता है. साथ ही, अगर ज़रूरी हो, तो उपयोगकर्ता की पसंदीदा भाषा को ध्यान में रखते हुए, उसे ऐसी लिपि में ट्रांसलिट्रेट करता है जिसे उपयोगकर्ता पढ़ सके. अन्य सभी पते, आपकी पसंदीदा भाषा में दिखाए जाते हैं. पते के सभी कॉम्पोनेंट उसी भाषा में दिखाए जाते हैं जो पहले कॉम्पोनेंट के लिए चुनी गई है.
- अगर पसंदीदा भाषा में कोई नाम उपलब्ध नहीं है, तो एपीआई सबसे मिलते-जुलते नाम का इस्तेमाल करता है.
- पसंदीदा भाषा का असर, एपीआई से मिलने वाले नतीजों के सेट और उनके क्रम पर थोड़ा पड़ता है. जियोकोडर, भाषा के हिसाब से शॉर्ट फ़ॉर्म का अलग-अलग मतलब निकालता है. जैसे, सड़क के टाइप के लिए इस्तेमाल किए जाने वाले शॉर्ट फ़ॉर्म या समानार्थी शब्द, जो एक भाषा में मान्य हो सकते हैं, लेकिन दूसरी भाषा में नहीं.
regionCode
देश/इलाके का कोड, दो वर्णों वाले CLDR कोड की वैल्यू के तौर पर. इसकी कोई डिफ़ॉल्ट वैल्यू नहीं होती. ज़्यादातर CLDR कोड, ISO 3166-1 कोड से मिलते-जुलते होते हैं.
किसी पते को जियोकोड करते समय, फ़ॉरवर्ड जियोकोडिंग, यह पैरामीटर सेवा से मिलने वाले नतीजों को तय किए गए इलाके तक सीमित कर सकता है. हालांकि, यह नतीजों को पूरी तरह से सीमित नहीं कर सकता. किसी जगह या जगह की जानकारी को जियोकोड करते समय, रिवर्स जियोकोडिंग या जगह की जानकारी की जियोकोडिंग के लिए, इस पैरामीटर का इस्तेमाल करके पते को फ़ॉर्मैट किया जा सकता है. सभी मामलों में, यह पैरामीटर लागू कानून के आधार पर नतीजों पर असर डाल सकता है.
-
placeFilter
इसकी मदद से,
locationQueryखोज के नतीजों को अपनी ज़रूरत के हिसाब से फ़िल्टर किया जा सकता है. जैसे, सिर्फ़ ऐसी जगहों के नतीजे दिखाना जो इमारतें हैं या सिर्फ़ ऐसी जगहों के नतीजे दिखाना जिनके पते साफ़ तौर पर दिए गए हैं.स्ट्रक्चरल ग्रैन्युलैरिटी के हिसाब से फ़िल्टर करना
structureTypeफ़िल्टर की मदद से, यह तय किया जा सकता है कि क्वेरी से किस तरह के स्ट्रक्चर दिखाए जाएं:- बिल्डिंग को अलग करना: मैप पर बिल्डिंग की आउटलाइन दिखाने या किसी खास स्ट्रक्चर की जानकारी पाने के लिए,
"structureType": "BUILDING"का इस्तेमाल करें. - कॉम्प्लेक्स को समझना:
"structureType": "GROUNDS"का इस्तेमाल करके पक्का करें कि मुख्य नतीजा, पूरे ग्राउंड को दिखाता हो. यह सुविधा, यूनिवर्सिटी कैंपस या शॉपिंग मॉल जैसी बड़ी जगहों के बारे में क्वेरी करते समय काम आती है. - यूनिट/सेक्शन पर फ़ोकस करना: किसी इमारत के अंदर मौजूद सेक्शन की पहचान करने के लिए,
"structureType": "SECTION"का इस्तेमाल करें.
काम के पते पक्का करना
सभी जगहों के पते साफ़ तौर पर नहीं लिखे होते.
addressabilityफ़िल्टर की मदद से, नतीजों में दिखने वाले पतों की क्वालिटी को कंट्रोल किया जा सकता है:- मुख्य पते की साफ़ तौर पर जानकारी देना ज़रूरी है: यह पक्का करने के लिए कि मुख्य डेस्टिनेशन के नतीजे में हमेशा मोहल्ले के लेवल का पता या नाम शामिल हो,
"addressability": "PRIMARY"का इस्तेमाल करें. यह नेविगेशन या डिसप्ले के लिए मददगार होता है, जहां साफ़ तौर पर पता होना ज़रूरी है. - सब-डेस्टिनेशन में पते की अनुमति दें: ऐसा हो सकता है कि मुख्य जगह का कोई पता न हो, लेकिन उसके अंदर मौजूद यूनिट का पता हो. जैसे, किसी इमारत में मौजूद अपार्टमेंट. ऐसे मामलों में,
"addressability": "WEAK"यह पक्का करता है कि कम से कम मुख्य जगह या उसके किसी सब-डेस्टिनेशन का पता हो. - कोई भी नतीजा: अगर पते की मौजूदगी आपके इस्तेमाल के उदाहरण के लिए काम की नहीं है, तो
"addressability": "ANY"का इस्तेमाल करें. हमारा सुझाव है कि जब आपको सिर्फ़ ज्यामितीय एट्रिब्यूट की ज़रूरत हो, तब इस पैरामीटर का इस्तेमाल करें. जैसे, बिल्डिंग की आउटलाइन और नेविगेशन पॉइंट. इससे इन नतीजों की सटीक जानकारी मिलती है.
उदाहरण: ऐसी इमारतों को फ़िल्टर करना जिनके पते मौजूद हैं
curl -X POST -d '{ "locationQuery": { "location": { "latitude": 37.37348780, "longitude": -122.05678064 }, "placeFilter": { "structureType": "BUILDING", "addressability": "PRIMARY" } }, "languageCode": "en" }' \\ -H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \\ -H "X-Goog-FieldMask: place" \\ https://geocode.googleapis.com/v4/geocode/destinations - बिल्डिंग को अलग करना: मैप पर बिल्डिंग की आउटलाइन दिखाने या किसी खास स्ट्रक्चर की जानकारी पाने के लिए,