Geocoding API v3 की इन सुविधाओं को, Geocoding API v4 के SearchDestinations एंडपॉइंट से बदला जा रहा है:
- एंट्रेंस
- नेविगेशन पॉइंट
- बिल्डिंग की आउटलाइन
- मैदान
अगर ऊपर दी गई सुविधाओं के लिए Geocoding API v3 का इस्तेमाल किया जा रहा था, तो इन सुविधाओं को पाने के लिए, SearchDestinations एंडपॉइंट का इस्तेमाल करने के लिए यह दस्तावेज़ पढ़ें. इस दस्तावेज़ में बताया गया है कि SearchDestinations API के रिस्पॉन्स में इन सुविधाओं को कहां ढूंढें. साथ ही, Geocoding API v3 और Geocoding API v4 के SearchDestinations एंडपॉइंट के बीच, API रिस्पॉन्स में इन सुविधाओं को दिखाने के तरीके में अंतर के बारे में भी बताया गया है.
एंट्रेंस
destination से जुड़े एंट्री पॉइंट पाने के लिए, destination.entrances फ़ील्ड का इस्तेमाल करें.
ध्यान दें कि entrance का फ़ॉर्मैट, Geocoding API v3 में मौजूद entrance फ़ॉर्मैट से थोड़ा अलग होता है.
destination.entrances में मौजूद हर एंट्री में ये फ़ील्ड होते हैं:
displayName- यह एक नया वैकल्पिक फ़ील्ड है. इसमें प्रवेश द्वार का नाम होगा, ताकि लोग उसे आसानी से समझ सकें. उदाहरण के लिए, "गेट बी".location- यहLatLngटाइप की जगह है. यह Geocoding API v3 में इस्तेमाल किए गए फ़ॉर्मैट से अलग है.tags- यह Geocoding API v3 के प्रवेश द्वारों केtagsफ़ील्ड के जैसा ही है.place- यह Geocoding API v3 केbuildingPlaceIdफ़ील्ड के जैसा ही है. हालांकि, इस फ़ील्ड में मौजूद जगह का आईडी, किसी भी तरह की जगह का हो सकता है. यह ज़रूरी नहीं कि वह सिर्फ़ किसी इमारत का हो.
नेविगेशन पॉइंट
किसी destination से जुड़े नेविगेशन पॉइंट पाने के लिए, destination.navigationPoints फ़ील्ड का इस्तेमाल करें.
ध्यान दें कि navigationPoint का फ़ॉर्मैट, Geocoding API v3 में नेविगेशन पॉइंट के फ़ॉर्मैट से थोड़ा अलग है.
destination.navigationPoints में मौजूद हर नेविगेशन पॉइंट में ये फ़ील्ड होते हैं:
displayName- यह एक नया वैकल्पिक फ़ील्ड है. इसमें नेविगेशन पॉइंट का ऐसा नाम होगा जिसे आसानी से पढ़ा जा सकता है. उदाहरण के लिए, "पांचवीं एवेन्यू".location- यहLatLngटाइप की जगह है. यह Geocoding API v3 में इस्तेमाल किए गए फ़ॉर्मैट से अलग है.travelModes- यह Geocoding API v3 के नेविगेशन पॉइंट केrestrictedTravelModesफ़ील्ड जैसा ही है. इनकी एनम वैल्यू एक जैसी हैं. सिर्फ़ इतना अंतर है कि यह फ़ील्ड अब नेविगेशन पॉइंट के लिए, यात्रा के स्वीकार किए गए तरीकों को दिखाता है. पहले यह यात्रा के प्रतिबंधित तरीकों को दिखाता था.usage- यह एक नया फ़ील्ड है. इसमें नेविगेशन पॉइंट के साथ काम करने वाले इस्तेमाल के उदाहरण शामिल होते हैं. ध्यान दें कि ज़्यादातर नेविगेशन पॉइंट मेंUNKNOWNका इस्तेमाल किया जाएगा. हालांकि, इसका यह मतलब नहीं है कि नेविगेशन पॉइंट के इस्तेमाल पर किसी भी तरह की पाबंदी है.
बिल्डिंग की आउटलाइन
destination से जुड़ी बिल्डिंग की आउटलाइन पाने के लिए, आपको destination में मौजूद placeView ऑब्जेक्ट के displayPolygon फ़ील्ड का इस्तेमाल करना चाहिए. ये ऑब्जेक्ट, बिल्डिंग को दिखाते हैं. हर placeView के लिए, यह देखा जा सकता है कि वह placeView.structureType फ़ील्ड वाली बिल्डिंग है या नहीं. अगर स्ट्रक्चर टाइप BUILDING है, तो आपको आउटलाइन placeView.displayPolygon फ़ील्ड से मिल सकती है. placeView में बिल्डिंग के लिए अतिरिक्त फ़ील्ड भी होंगे, जो Geocoding API v3 में नहीं थे.
destination में placeView ऑब्जेक्ट हो सकता है. यह ऑब्जेक्ट, इन फ़ील्ड में मौजूद किसी बिल्डिंग को दिखाता है:
destination.primary- यह डेस्टिनेशन की मुख्य जगह है.destination.containingPlaces- यह दोहराया गया फ़ील्ड है. इसमें ऐसी बड़ी जगहों की जानकारी शामिल की जा सकती है जिनमें मुख्य जगह "शामिल" है. उदाहरण के लिए, अगर मुख्य जगहsubpremiseहै, तोcontainingPlacesमें आम तौर परplaceViewहोगा, जो इमारत को दिखाता है.destination.subDestinations- यह दोहराया गया फ़ील्ड है, जिसमें मुख्य जगह के सब-डेस्टिनेशन शामिल किए जा सकते हैं. उदाहरण के लिए, किसी बिल्डिंग के अलग-अलग अपार्टमेंट यूनिट. इस फ़ील्ड में आम तौर पर,placeViewनहीं होता. यह किसी इमारत को दिखाता है.
ध्यान दें कि placeView.displayPolygon का फ़ॉर्मैट, Geocoding API v3 में मौजूद बिल्डिंग के आउटलाइन फ़ॉर्मैट से मेल खाता है. यह GeoJSON फ़ॉर्मैट है, जो RFC 7946 फ़ॉर्मैट का इस्तेमाल करता है.
मैदान
आउटलाइन बनाने की तरह ही, destination से जुड़े ग्राउंड पाने के लिए, आपको destination में मौजूद placeView ऑब्जेक्ट के displayPolygon फ़ील्ड का इस्तेमाल करना चाहिए. ये ऑब्जेक्ट, ग्राउंड को दिखाते हैं. हर placeView के लिए, यह देखा जा सकता है कि यह placeView.structureType फ़ील्ड के हिसाब से सही है या नहीं. अगर स्ट्रक्चर टाइप GROUNDS है, तो आपको आउटलाइन placeView.displayPolygon फ़ील्ड से मिल सकती है. placeView में ऐसे अतिरिक्त फ़ील्ड भी होंगे जो Geocoding API v3 में नहीं थे.
destination में placeView ऑब्जेक्ट हो सकता है. यह ऑब्जेक्ट, इन फ़ील्ड में किसी आधार को दिखाता है:
destination.primarydestination.containingPlacesdestination.subDestinations
ध्यान दें कि placeView.displayPolygon का फ़ॉर्मैट, Geocoding API v3 में मौजूद ग्राउंड आउटलाइन फ़ॉर्मैट से मेल खाता है. यह GeoJSON फ़ॉर्मैट है, जिसमें RFC 7946 फ़ॉर्मैट का इस्तेमाल किया जाता है.
इन सुविधाओं का अनुरोध करने के लिए, फ़ील्ड मास्क का इस्तेमाल करना
SearchDestinations एंडपॉइंट के लिए फ़ील्ड मास्क की ज़रूरत होती है. इसके बारे में जवाब में दिखाने के लिए फ़ील्ड चुनना लेख में बताया गया है. सभी फ़ील्ड वापस पाने के लिए, फ़ील्ड मास्क को * पर सेट किया जा सकता है. इसके अलावा, इसे उन फ़ील्ड पर सेट किया जा सकता है जिन्हें आपको वापस पाना है. उदाहरण के लिए, यहां दिए गए एपीआई अनुरोध में फ़ील्ड मास्क को सेट किया गया है. इससे किसी डेस्टिनेशन के सभी ज़रूरी फ़ील्ड की जानकारी मिलती है. जैसे, प्रवेश द्वार, नेविगेशन पॉइंट, बिल्डिंग की आउटलाइन, और ग्राउंड:
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,destinations.containingPlaces,destinations.subDestinations" \
https://geocode.googleapis.com/v4alpha/geocode/destinations