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"), बिना किसी खास नंबर वाले रास्ते के सेक्शन या प्लस कोड. ऐसे नतीजों के लिए जगह के आईडी भी काम नहीं करते जो बहुत बड़े इलाके की जानकारी देते हैं (उदाहरण के लिए, "प्रशांत महासागर").
डेस्टिनेशन खोजने के लिए, 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
अनुरोध में मौजूद क्वेरी से पहचानी गई मुख्य जगह.
addressComponents
एक कलेक्शन, जिसमें इस पते पर लागू होने वाले अलग-अलग कॉम्पोनेंट शामिल होते हैं.
आम तौर पर, पते के हर कॉम्पोनेंट में ये फ़ील्ड शामिल होते हैं:
types[]एक कलेक्शन है, जो पते के कॉम्पोनेंट के टाइप की जानकारी देता है. इस्तेमाल किए जा सकने वाले टाइप की सूची देखें.longTextपते के कॉम्पोनेंट की पूरी जानकारी या नाम होता है. यह जानकारी, जियोकोडर से मिलती है.shortTextपते के कॉम्पोनेंट का संक्षिप्त नाम होता है. यह नाम, टेक्स्ट के तौर पर उपलब्ध होता है. उदाहरण के लिए, अलास्का राज्य के लिए पते के कॉम्पोनेंट में, दो अक्षरों वाले पोस्टल शॉर्ट फ़ॉर्म का इस्तेमाल करके,longText"Alaska" औरshortText"AK" हो सकता है.languageCodeवह भाषा है जिसका इस्तेमाल, CLDR नोटेशन में इस कॉम्पोनेंट को फ़ॉर्मैट करने के लिए किया जाता है.
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और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 - बिल्डिंग को अलग करना: मैप पर बिल्डिंग की आउटलाइन दिखाने या किसी खास स्ट्रक्चर की जानकारी पाने के लिए,