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" |
| कारोबारों, चेन या कैटगरी के नाम के साथ उन जगहों के नाम जहां ये इकाइयां उपलब्ध नहीं हैं | "डैलस, टेक्सस के पास मौजूद टेस्को स्टोर" |
| एक से ज़्यादा मतलब वाली क्वेरी | "चार्जर ड्रॉप-ऑफ़" |
| इतिहास में मौजूद नामों का अब इस्तेमाल नहीं किया जा रहा है | "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
इन प्लेस आईडी के साथ काम करता है
Search 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 - बिल्डिंग की जानकारी अलग से दिखाना: मैप पर बिल्डिंग की आउटलाइन दिखाने या किसी स्ट्रक्चर के बारे में जानकारी पाने के लिए,