A
Destination
से हमारा मतलब किसी ऐसी जगह या पते से है जहां उपयोगकर्ता जाना चाहता है या जिसके लिए नेविगेट
करना चाहता है. Destination में, जगह या पते से जुड़ी जानकारी का कलेक्शन भी शामिल होता है. जैसे, नेविगेशन पॉइंट, लैंडमार्क, एंट्री पॉइंट, और
बिल्डिंग की आउटलाइन.
Geocoding API के
SearchDestinations
तरीके से, अलग-अलग इनपुट शर्तों के आधार पर, कई
डेस्टिनेशन के बारे में पूरी जानकारी पाई जा सकती है. जैसे, पता, जगह का आईडी या
अक्षांश और देशांतर के कोऑर्डिनेट.
डेस्टिनेशन खोजने का अनुरोध
डेस्टिनेशन खोजने का अनुरोध, इस फ़ॉर्मैट में मौजूद यूआरएल के लिए एचटीटीपी पीओएसटी अनुरोध होता है:
https://geocode.googleapis.com/v4/geocode/destinations
पीओएसटी अनुरोध के हिस्से के तौर पर, JSON अनुरोध के मुख्य हिस्से या हेडर में सभी पैरामीटर पास करें. उदाहरण के लिए:
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 John Smith 123 Main Street" "P.O. Box 13 San Francisco" |
| कारोबारों, चेन या कैटगरी के नाम के साथ उन जगहों की जानकारी देना जहां ये इकाइयां मौजूद नहीं हैं | "Tesco near Dallas, Texas" |
| एक से ज़्यादा मतलब वाली क्वेरी | "Charger drop-off" |
| ऐसे नाम जो अब इस्तेमाल में नहीं हैं | "Middlesex United Kingdom" |
| गैर-जियोस्पेशल एलिमेंट या मकसद | "How many boats are in Ventura Harbor?" |
| गैर-आधिकारिक या फ़ैंसी नाम |
"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
जगह के आईडी के साथ काम करने वाली सुविधाएं
डेस्टिनेशन खोजने का तरीका, उन जगह के आईडी के साथ सबसे अच्छी तरह काम करता है जो खास और नेविगेट किए जा सकने वाले डेस्टिनेशन की जानकारी देते हैं. आम तौर पर, establishment,
point_of_interest, premise, street_address, और subpremise जैसे टाइप के लिए, जगह के आईडी के साथ काम किया जा सकता है. ऐसे जगह के आईडी के साथ काम नहीं किया जा सकता जो अलग-अलग जगहों की जानकारी नहीं देते. जैसे, पते की रेंज से अनुमान लगाए गए आईडी (उदाहरण के लिए, "10-20 Main St"), बिना किसी खास नंबर वाले रास्ते के सेक्शन या प्लस कोड. ऐसे नतीजों के लिए भी जगह के आईडी के साथ काम नहीं किया जा सकता जो बहुत बड़े इलाके के लिए हैं (उदाहरण के लिए, "Pacific Ocean").
डेस्टिनेशन खोजने के लिए, Places API Autocomplete (नया) का इस्तेमाल करना
Places API Autocomplete
(नया) का इस्तेमाल करके, डेस्टिनेशन खोजने के लिए जगह
के आईडी ढूंढें, ताकि यह पक्का किया जा सके कि दोनों सुविधाएं एक साथ काम करें. ऑटोकंप्लीट का इस्तेमाल करते समय, नतीजों को टाइप के हिसाब से फ़िल्टर करने के लिए
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 के चौथे वर्शन में, पुष्टि करने के लिए OAuth 2.0 का इस्तेमाल किया जा सकता है. Geocoding API के साथ OAuth का इस्तेमाल करने के लिए, OAuth टोकन को सही स्कोप असाइन करना ज़रूरी है. Geocoding API, डेस्टिनेशन खोजने के तरीके के साथ इस्तेमाल करने के लिए, इन स्कोप के साथ काम करता है:
https://www.googleapis.com/auth/maps-platform.geocode— Geocoding API के सभी तरीकों के साथ इस्तेमाल करें.
इसके अलावा, Geocoding API के सभी तरीकों के लिए, सामान्य https://www.googleapis.com/auth/cloud-platform स्कोप का इस्तेमाल किया जा सकता है. यह स्कोप डेवलपमेंट के दौरान काम का होता है, लेकिन प्रोडक्शन के दौरान नहीं, क्योंकि यह एक सामान्य स्कोप है. इससे सभी तरीकों को ऐक्सेस किया जा सकता है.
ज़्यादा जानकारी और उदाहरणों के लिए, OAuth का इस्तेमाल करना लेख पढ़ें.
डेस्टिनेशन खोजने के अनुरोध का जवाब
डेस्टिनेशन खोजने के अनुरोध के जवाब में, जगह की जानकारी के बारे में ज़्यादा और सटीक जानकारी मिलती है.
डेस्टिनेशन खोजने के अनुरोध के जवाब में मौजूद 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
Geocoding के जवाब में मौजूद navigationPoints फ़ील्ड में, उन पॉइंट की सूची होती है जो किसी जगह पर नेविगेट करने के लिए काम के होते हैं. खास तौर पर, इनका इस्तेमाल, सड़क नेटवर्क पर किसी जगह से या उस जगह तक रूटिंग करते समय, शुरुआती या आखिरी पॉइंट के तौर पर किया जाना चाहिए.
हर नेविगेशन पॉइंट में ये वैल्यू शामिल होती हैं:
navigationPointTokenएक टोकन है, जिसमेंnavigationPointsफ़ील्ड में कॉन्टेक्स्ट के हिसाब से जानकारी होती है. इस टोकन को रूटिंग और नेविगेशन एपीआई को भेजकर, अपने ऐप्लिकेशन में रूटिंग और नदी के रास्ते के अनुभव को बेहतर बनाया जा सकता है. ज़्यादा जानकारी के लिए, नेविगेशन पॉइंट टोकन का इस्तेमाल करके रूटिंग करना लेख पढ़ें.locationमें, नेविगेशन पॉइंट का अक्षांश और देशांतर की वैल्यू शामिल होती है. यह जगह हमेशा सड़क नेटवर्क के बहुत करीब होगी. साथ ही, किसी जगह पर आने-जाने के लिए, यह एक सही स्टॉपिंग या शुरुआती पॉइंट की जानकारी देती है. जगह किस तरफ़ है, यह साफ़ तौर पर दिखाने के लिए, पॉइंट को सड़क की सेंटरलाइन से थोड़ा ऑफ़सेट किया जाता है.travelModesयात्रा के उन मोड की सूची है जिनसे नेविगेशन पॉइंट को ऐक्सेस किया जा सकता है:"DRIVE"यात्रा का वह मोड है जो ड्राइविंग के दिशा-निर्देशों से जुड़ा है."WALK"यात्रा का वह मोड है जो पैदल चलने के निर्देशों से जुड़ा है.
usagesउन इस्तेमाल की सूची है जिनके लिए नेविगेशन पॉइंट की सुविधा उपलब्ध है. इस्तेमाल के ये विकल्प हो सकते हैं:"DROPOFF""PICKUP""PARKING"
पिकअप और ड्रॉप-ऑफ़ के लिए, उस नेविगेशन पॉइंट का इस्तेमाल करें जहां यात्रा का मोड DRIVE हो और इस्तेमाल का विकल्प PICKUP या DROPOFF हो. अगर पिकअप या ड्रॉप-ऑफ़ पॉइंट उपलब्ध नहीं हैं, तो ड्राइविंग नेविगेशन के लिए सबसे ऊपर मौजूद पॉइंट का इस्तेमाल करें.
streetViewThumbnailऔरentranceAnnotationStreet 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 - बिल्डिंग को अलग करना: मैप पर बिल्डिंग की आउटलाइन दिखाने या किसी खास स्ट्रक्चर की जानकारी पाने के लिए,