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" |
| एक ही क्वेरी में बहुत ज़्यादा कॉन्सेप्ट या शर्तें शामिल हों. जैसे, कई जगहों, सड़कों या शहरों के नाम | "सैन फ़्रांसिस्को की मार्केट स्ट्रीट से सैन होज़े हवाई अड्डे तक" |
| Google Maps पर डाक पते के एलिमेंट नहीं दिखाए गए हैं |
"C/O John Smith 123 Main Street" "P.O. Box 13 San Francisco" |
| कारोबारों, चेन या कैटगरी के नाम के साथ उन जगहों के नाम जहां ये इकाइयां उपलब्ध नहीं हैं | "डैलस, टेक्सस के पास मौजूद टेस्को स्टोर" |
| एक से ज़्यादा मतलब वाली क्वेरी | "Charger drop-off" |
| इतिहास में शामिल नामों का अब इस्तेमाल नहीं किया जा रहा है | "Middlesex United Kingdom" |
| जियोस्पेशल जानकारी न होना या जियोस्पेशल जानकारी के बारे में न बताना | "वेंचुरा हार्बर में कितनी नावें हैं?" |
| गैर-आधिकारिक या बनावटी नाम |
"द जेंगा" "द हेल्टर स्केल्टर" |
| बड़ी राजनैतिक इकाइयां (शहर, राज्य, देश) |
"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
इन प्लेस आईडी के साथ काम करता है
'मंज़िलें खोजें' तरीका, उन जगहों के आईडी के साथ सबसे अच्छी तरह काम करता है जो किसी खास जगह के बारे में बताते हैं. आम तौर पर, establishment, point_of_interest, premise, street_address, और subpremise जैसे टाइप के लिए प्लेस आईडी इस्तेमाल किए जा सकते हैं. ऐसे प्लेस आईडी इस्तेमाल नहीं किए जा सकते जो अलग-अलग जगहों के बारे में नहीं बताते. जैसे, पते की रेंज से अनुमानित प्लेस आईडी (उदाहरण के लिए, "10-20 मेन स्ट्रीट"), किसी रूट के ऐसे सेक्शन जिनका कोई खास नंबर नहीं है या प्लस कोड. इसके अलावा, बहुत बड़े इलाके (उदाहरण के लिए, "प्रशांत महासागर") के नतीजों के लिए प्लेस आईडी भी काम नहीं करते.
Search Destinations के साथ Places API Autocomplete (नया) का इस्तेमाल करना
यह पक्का करने के लिए कि Search Destinations के साथ काम करने वाले Place ID मिलें, Places API ऑटोकंप्लीट (नया) का इस्तेमाल करें. ऑटोकंप्लीट सुविधा का इस्तेमाल करते समय, आपको includedPrimaryTypes पैरामीटर का इस्तेमाल करके, टाइप के हिसाब से नतीजों को फ़िल्टर करना चाहिए. किसी जगह के शुरुआती अक्षर लिखने पर पूरा नाम सुझाने की सुविधा के ज़रिए मिले इन प्लेस आईडी को Search Destinations के साथ इस्तेमाल किया जा सकता है. इसके लिए, सुझाए गए फ़िल्टर का इस्तेमाल करें:
"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 API से मिले जवाब में, जगह के बारे में ज़्यादा जानकारी और आस-पास की जगहों के बारे में कॉन्टेक्स्ट मिलता है.
'डेस्टिनेशन खोजें' रिस्पॉन्स में मौजूद PlaceView ऑब्जेक्ट (जैसे कि primary, containingPlaces में मौजूद आइटम, और landmarks) में फ़ील्ड का इस्तेमाल करके, जगह के टाइप के बारे में बताया जाता है:
types: यह स्ट्रिंग का एक कलेक्शन होता है. इससे जगह के टाइप के बारे में पता चलता है.primaryType: यह स्ट्रिंग, जगह के मुख्य टाइप के बारे में बताती है.
types और primaryType, दोनों के लिए स्ट्रिंग वैल्यू, 'जगह के टाइप (नया पेज)' पेज पर मौजूद टेबल A और टेबल B से ली गई हैं.
इस सेक्शन में, जवाब के मुख्य फ़ील्ड के बारे में बताया गया है. सभी रिस्पॉन्स फ़ील्ड के बारे में पूरी जानकारी के लिए, एपीआई का रेफ़रंस देखें.
primary
अनुरोध में मौजूद क्वेरी से पता चलने वाली मुख्य जगह.
containingPlaces
बड़ी इकाइयां, जिनमें मुख्य डेस्टिनेशन शामिल होता है. उदाहरण के लिए, कोई मॉल, जिसमें कोई स्टोर मौजूद है.
subDestinations
मुख्य जगह के अंदर मौजूद ज़्यादा सटीक जगहें. उदाहरण के लिए, किसी बिल्डिंग में मौजूद अपार्टमेंट.
entrances
entrances[] कलेक्शन में मौजूद ऑब्जेक्ट में ये फ़ील्ड होते हैं:
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
आस-पास की मशहूर जगहों की जानकारी, ताकि लोगों को डेस्टिनेशन के आस-पास की जगहों के बारे में पता चल सके.
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": [ { "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नहीं दिया गया है, तो एपीआई डिफ़ॉल्ट रूप सेenको चुनता है. अगर आपने अमान्य भाषा कोड डाला है, तो एपीआईINVALID_ARGUMENTगड़बड़ी का मैसेज दिखाता है. - एपीआई, मोहल्ले का ऐसा पता देने की पूरी कोशिश करता है जिसे उपयोगकर्ता और स्थानीय लोग, दोनों पढ़ सकें. इस लक्ष्य को पूरा करने के लिए, यह स्थानीय भाषा में सड़क के पते दिखाता है. अगर ज़रूरी हो, तो यह उपयोगकर्ता की पसंदीदा भाषा में पते को लिप्यंतरित करके दिखाता है. अन्य सभी पते, पसंदीदा भाषा में दिखाए जाते हैं. पते के सभी कॉम्पोनेंट, एक ही भाषा में दिखाए जाते हैं. यह भाषा, पहले कॉम्पोनेंट से चुनी जाती है.
- अगर नाम आपकी पसंदीदा भाषा में उपलब्ध नहीं है, तो एपीआई सबसे मिलते-जुलते नाम का इस्तेमाल करता है.
- पसंदीदा भाषा का असर, एपीआई से मिले नतीजों के सेट और उनके क्रम पर पड़ता है. जियोकोडर, भाषा के हिसाब से संक्षिप्त शब्दों का अलग-अलग मतलब निकालता है. जैसे, सड़क के टाइप के लिए इस्तेमाल किए गए संक्षिप्त शब्द या ऐसे समानार्थी शब्द जो एक भाषा में मान्य हो सकते हैं, लेकिन दूसरी भाषा में नहीं.
regionCode
देश/इलाके का कोड, दो वर्णों वाले CLDR कोड की वैल्यू के तौर पर. इसकी कोई डिफ़ॉल्ट वैल्यू नहीं होती. ज़्यादातर CLDR कोड, आईएसओ 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 - बिल्डिंग की जानकारी अलग से दिखाना: मैप पर बिल्डिंग की आउटलाइन दिखाने या किसी स्ट्रक्चर के बारे में जानकारी पाने के लिए,