जब रूट एपीआई किसी रूट को कैलकुलेट करता है, तो यह आपके दिए गए वेपॉइंट और कॉन्फ़िगरेशन पैरामीटर का इस्तेमाल करता है. इसके बाद, एपीआई एक रिस्पॉन्स दिखाता है, जिसमें डिफ़ॉल्ट रूट और एक या एक से ज़्यादा वैकल्पिक रूट शामिल होते हैं.
आपके अनुरोध किए गए फ़ील्ड के आधार पर, आपके जवाब में अलग-अलग तरह के रूट और अन्य डेटा शामिल हो सकता है:
जवाब में इसे शामिल करने के लिए | यह दस्तावेज़ देखें |
---|---|
वाहन के इंजन टाइप के हिसाब से, ईंधन या ऊर्जा की सबसे ज़्यादा बचत वाला रास्ता. | ईको-फ़्रेंडली रास्ते बनाने का तरीका कॉन्फ़िगर करना |
ज़्यादा से ज़्यादा तीन वैकल्पिक रास्ते | दूसरे रास्तों के लिए अनुरोध करना |
पूरे रास्ते, रास्ते के हर पैर, और पैर के हर कदम के लिए पॉलीलाइन. | रास्ते की पॉलीलाइन का अनुरोध करना |
अनुमानित टोल, जो टोल की कीमत पर मिलने वाली छूट या ड्राइवर या वाहन के लिए उपलब्ध पास को ध्यान में रखते हुए दिए जाते हैं. | टोल शुल्क का हिसाब लगाना |
भाषा कोड और मेज़रमेंट यूनिट (इंपीरियल या मेट्रिक) के हिसाब से स्थानीय भाषा में दिए गए जवाब. | स्थानीय भाषा में वैल्यू का अनुरोध करना |
नेविगेशन के निर्देशों को एचटीएमएल टेक्स्ट स्ट्रिंग के तौर पर फ़ॉर्मैट करने के लिए, extraComputations में HTML_FORMATTED_NAVIGATION_INSTRUCTIONS जोड़ें. |
ज़्यादा कैलकुलेशन |
इनपुट के विकल्पों की पूरी सूची के लिए, रास्ते के उपलब्ध विकल्प और अनुरोध का मुख्य हिस्सा देखें.
इस जवाब का इस्तेमाल करके, अपने ग्राहकों को ज़रूरी जानकारी दी जा सकती है, ताकि वे अपनी ज़रूरतों के हिसाब से सही रास्ता चुन सकें.
फ़ील्ड मास्क के बारे में जानकारी
किसी रूट का हिसाब लगाने के लिए कोई तरीका इस्तेमाल करते समय, आपको एक फ़ील्ड मास्क तय करना होगा. इससे यह तय होता है कि आपको रिस्पॉन्स में कौनसे फ़ील्ड चाहिए. दिखाए गए फ़ील्ड की कोई डिफ़ॉल्ट सूची नहीं है. अगर इस सूची को छोड़ दिया जाता है, तो इन तरीकों से गड़बड़ी दिखेगी.
इस दस्तावेज़ में दिए गए उदाहरणों में, फ़ील्ड मास्क को ध्यान में रखे बिना पूरा रिस्पॉन्स ऑब्जेक्ट दिखाया गया है. प्रोडक्शन एनवायरमेंट में, आपके जवाब में सिर्फ़ वे फ़ील्ड शामिल होंगे जिन्हें आपने फ़ील्ड मास्क में साफ़ तौर पर बताया है.
ज़्यादा जानकारी के लिए, चुनें कि कौनसी जानकारी दिखानी है लेख पढ़ें.
कॉपीराइट दिखाने के बारे में जानकारी
उपयोगकर्ताओं को नतीजे दिखाते समय, आपको कॉपीराइट का यह स्टेटमेंट शामिल करना होगा:
Powered by Google, ©YEAR Google
उदाहरण के लिए:
Powered by Google, ©2023 Google
रास्तों, लेग, और चरणों के बारे में जानकारी
रूट एपीआई से मिले रिस्पॉन्स को देखने से पहले, आपको रूट बनाने वाले कॉम्पोनेंट की समझ होनी चाहिए:
आपके जवाब में, रास्ते के इन हर कॉम्पोनेंट के बारे में जानकारी हो सकती है:
रास्ता: ऑरिजिन वेपॉइंट से, किसी भी इंटरमीडिएट वेपॉइंट के ज़रिए, डेस्टिनेशन वेपॉइंट तक की पूरी यात्रा. रास्ते में एक या उससे ज़्यादा पैर होते हैं.
लेग: किसी रास्ते में एक वेपॉइंट से रास्ते में अगले वेपॉइंट तक का रास्ता. हर पैर में एक या उससे ज़्यादा अलग-अलग कदम होते हैं.
एक रास्ते में हर वेपॉइंट से अगले तक के रास्ते के लिए एक अलग पैर होता है. उदाहरण के लिए, अगर रास्ते में एक ऑरिजिन और एक डेस्टिनेशन वॉइसपॉइंट है, तो रास्ते में एक लेग है. शुरुआत की जगह और मंज़िल के बाद, रूट में जोड़े जाने वाले हर दूसरे वेपॉइंट के लिए, एपीआई एक अलग पैर जोड़ता है. इसे इंटरमीडिएट वेपॉइंट कहा जाता है.
एपीआई, बीच में मौजूद पास-थ्रू वेपॉइंट के लिए कोई लेग नहीं जोड़ता. उदाहरण के लिए, किसी रास्ते में ऑरिजिन वॉयपॉइंट, पास-थ्रू इंटरमीडिएट वॉयपॉइंट, और डेस्टिनेशन वॉयपॉइंट शामिल है. इसमें ऑरिजिन से डेस्टिनेशन तक सिर्फ़ एक लेग है, जो वॉयपॉइंट से होकर गुज़रता है. पास-थ्रू व्यूपॉइंट के बारे में ज़्यादा जानकारी के लिए, पास-थ्रू व्यूपॉइंट तय करना लेख पढ़ें.
चरण: किसी रास्ते पर चलने के लिए एक निर्देश. चरण, किसी रास्ते की सबसे छोटी इकाई होती है. उदाहरण के लिए, किसी चरण में "Main Street पर बाईं ओर मुड़ें'' लिखा हो सकता है.
जवाब में क्या शामिल है
एपीआई के जवाब को दिखाने वाले JSON ऑब्जेक्ट में ये टॉप-लेवल प्रॉपर्टी शामिल होती हैं:
routes
, रूट टाइप के एलिमेंट का कलेक्शन.routes
कलेक्शन में, एपीआई से मिले हर रूट के लिए एक एलिमेंट होता है. कैटगरी में ज़्यादा से ज़्यादा पांच एलिमेंट शामिल हो सकते हैं: डिफ़ॉल्ट रूट, ईको-फ़्रेंडली रूट, और तीन वैकल्पिक रास्ते.geocodingResults
, GeocodingResults टाइप के एलिमेंट का कलेक्शन. अनुरोध में मौजूद हर उस जगह (ऑरिजिन, डेस्टिनेशन या इंटरमीडिएट वेपॉइंट) के लिए जिसे आपने पता स्ट्रिंग या प्लस कोड के तौर पर बताया है, एपीआई एक जगह का आईडी लुकअप करता है. इस कलेक्शन के हर एलिमेंट में, किसी जगह से जुड़ा प्लेस आईडी होता है. अनुरोध में बताई गई ऐसी जगहों को शामिल नहीं किया जाता जिन्हें जगह का आईडी या अक्षांश/देशांतर के निर्देशांक के तौर पर दिखाया गया हो. अगर आपने प्लेस आईडी या अक्षांश और देशांतर निर्देशांक का इस्तेमाल करके सभी जगहों की जानकारी दे दी है, तो यह कलेक्शन नहीं दिया जाएगा.fallbackInfo
, जिसका टाइप FallbackInfo है. अगर एपीआई सभी इनपुट प्रॉपर्टी से किसी रूट का हिसाब नहीं लगा पा रहा है, तो हो सकता है कि वह हिसाब लगाने के लिए किसी दूसरे तरीके का इस्तेमाल करे. फ़ॉलबैक मोड का इस्तेमाल करने पर, इस फ़ील्ड में फ़ॉलबैक रिस्पॉन्स के बारे में पूरी जानकारी होती है. अगर ऐसा नहीं है, तो यह फ़ील्ड सेट नहीं किया जाता.
जवाब का फ़ॉर्मैट यह है:
{ // The routes array. "routes": [ { object (Route) } ], // The place ID lookup results. "geocodingResults": [ { object (GeocodedWaypoint) } ], // The fallback property. "fallbackInfo": { object (FallbackInfo) } }
रास्तों के कलेक्शन को समझना
जवाब में routes
कलेक्शन शामिल होता है, जिसमें हर कलेक्शन एलिमेंट Route टाइप का होता है.
अरे का हर एलिमेंट, ऑरिजिन से डेस्टिनेशन तक के पूरे रूट को दिखाता है. एपीआई हमेशा कम से कम एक रूट दिखाता है, जिसे डिफ़ॉल्ट रूट कहा जाता है.
आपके पास दूसरे रास्तों के लिए अनुरोध करने का विकल्प है. अगर आपने ईको-फ़्रेंडली रास्ते का अनुरोध किया है, तो ऐरे में दो एलिमेंट हो सकते हैं: डिफ़ॉल्ट रास्ता और ईको-फ़्रेंडली रास्ता. इसके अलावा, जवाब में तीन वैकल्पिक रास्ते जोड़ने के लिए, अनुरोध में computeAlternativeRoutes
को true
पर सेट करें.
कैटगरी में मौजूद हर रूट की पहचान, routeLabels
कलेक्शन प्रॉपर्टी की मदद से की जाती है:
मान | ब्यौरा |
---|---|
DEFAULT_ROUTE |
डिफ़ॉल्ट रूट की पहचान करता है. |
FUEL_EFFICIENT |
ईको-फ़्रेंडली रास्ते की पहचान करता है. |
DEFAULT_ROUTE_ALTERNATE |
I, किसी दूसरे रास्ते की जानकारी देता है. |
legs
कलेक्शन में, रूट के हर चरण की जानकारी होती है. बाकी बची प्रॉपर्टी, जैसे कि distanceMeters
, duration
, और polyline,
में पूरे रास्ते की जानकारी होती है:
{ "routeLabels": [ enum (RouteLabel) ], "legs": [ { object (RouteLeg) } ], "distanceMeters": integer, "duration": string, "routeLabels": [string], "staticDuration": string, "polyline": { object (Polyline) }, "description": string, "warnings": [ string ], "viewport": { object (Viewport) }, "travelAdvisory": { object (RouteTravelAdvisory) } "routeToken": string }
ड्राइविंग की मौजूदा स्थितियों और अन्य वजहों से, डिफ़ॉल्ट रास्ता और ईको-फ़्रेंडली रास्ता एक ही हो सकता है. इस मामले में, routeLabels
कलेक्शन में दोनों लेबल शामिल हैं: DEFAULT_ROUTE
और FUEL_EFFICIENT
.
{ "routes": [ { "routeLabels": [ "DEFAULT_ROUTE", "FUEL_EFFICIENT" ], … } ] }
लेग अरे को समझें
जवाब में मौजूद हर route
में एक legs
कलेक्शन होता है. इसमें मौजूद हर legs
कलेक्शन एलिमेंट, RouteLeg टाइप का होता है.
कलेक्शन का हर पैर, रास्ते के एक वेपॉइंट से अगले वेपॉइंट तक
रास्ता तय करता है. किसी रास्ते में हमेशा कम से कम एक पैर होता है.
legs
प्रॉपर्टी में, steps
कलेक्शन में पैर के साथ-साथ हर चरण की परिभाषा होती है. distanceMeters
, duration
, और polyline
जैसी बाकी प्रॉपर्टी में पैर के बारे में जानकारी होती है.
{ "distanceMeters": integer, "duration": string, "staticDuration": string, "polyline": { object (Polyline) }, "startLocation": { object (Location) }, "endLocation": { object (Location) }, "steps": [ { object (RouteLegStep) } ], "travelAdvisory": { object (RouteLegTravelAdvisory) } }
चरणों के कलेक्शन को समझना
रिस्पॉन्स के हर लेग में एक steps
कलेक्शन होता है, जिसमें हर steps
अरे एलिमेंट का टाइप RouteLegStep होता है.
चरण में पैर पर मौजूद एक निर्देश से मेल खाता है. किसी लेग में हमेशा कम से कम एक चरण होता है.
steps
कलेक्शन के हर एलिमेंट में, NavigationInstruction टाइप की navigationInstruction
प्रॉपर्टी शामिल होती है. इसमें चरण के निर्देश होते हैं. उदाहरण के लिए:
"navigationInstruction": { "maneuver": "TURN_LEFT", "instructions": "Turn left toward Frontage Rd" }
instructions
में, चरण के बारे में ज़्यादा जानकारी हो सकती है. जैसे:
"navigationInstruction": { "maneuver": "TURN_SLIGHT_LEFT", "instructions": "Slight left (signs for I-90 W/Worcester)nParts of this road may be closed at certain times or days" }
इस चरण की बाकी प्रॉपर्टी, चरण के बारे में जानकारी देती हैं, जैसे कि distanceMeters
, duration
, और polyline
:
{ "distanceMeters": integer, "staticDuration": string, "polyline": { object (Polyline) }, "startLocation": { object (Location) }, "endLocation": { object (Location) }, "navigationInstruction": { object (NavigationInstruction) } }
चरण वाले निर्देशों की भाषा तय करें
एपीआई, रास्ते की जानकारी स्थानीय भाषा में दिखाता है. अगर ज़रूरी हो, तो उपयोगकर्ता के लिए पढ़ने लायक स्क्रिप्ट में बदल दिया जाता है. ऐसा, उपयोगकर्ता की पसंदीदा भाषा को ध्यान में रखकर किया जाता है. पते के सभी कॉम्पोनेंट एक ही भाषा में दिखाए जाते हैं.
रूट की भाषा को इस्तेमाल की जा सकने वाली भाषाओं की सूची से साफ़ तौर पर सेट करने के लिए, अनुरोध के
languageCode
पैरामीटर का इस्तेमाल करें. Google अक्सर इस्तेमाल की जा सकने वाली भाषाओं को अपडेट करता है. इसलिए, हो सकता है कि यह पूरी सूची न हो.अगर कोई नाम बताई गई भाषा में उपलब्ध नहीं है, तो एपीआई सबसे मिलते-जुलते नाम का इस्तेमाल करता है.
बताई गई भाषा, नतीजों के उस सेट पर असर डाल सकती है जिसे एपीआई चुनता है और यह किस क्रम में होता है. जियोकोडर, भाषा के हिसाब से शॉर्ट फ़ॉर्म को अलग-अलग तरीके से समझता है. उदाहरण के लिए, सड़कों के छोटे रूप या समानार्थी शब्द, जो एक भाषा में मान्य हो सकते हैं, लेकिन दूसरी भाषा में नहीं. उदाहरण के लिए, हंगेरियन भाषा में सड़क के लिए utca और tér समानार्थी शब्द हैं.
geocodingResults कलेक्शन को समझना
अनुरोध में मौजूद हर उस जगह (ऑरिजिन, डेस्टिनेशन या इंटरमीडिएट वेपॉइंट) के लिए जिसे पता स्ट्रिंग या प्लस कोड के तौर पर दिया गया था, एपीआई सबसे काम की ऐसी जगह ढूंढने की कोशिश करता है जिसका उससे जुड़ा जगह का आईडी हो. geocodingResults
ऐरे के हर एलिमेंट में placeID
फ़ील्ड होता है. इसमें जगह की जानकारी, प्लेस आईडी के तौर पर होती है. साथ ही, type
फ़ील्ड में जगह के टाइप की जानकारी होती है, जैसे कि street_address
, premise
या airport
.
geocodingResults
कलेक्शन में तीन फ़ील्ड होते हैं:
origin
: अगर इसे पते की स्ट्रिंग या Plus कोड के तौर पर बताया गया था, तो ऑरिजिन की जगह का आईडी. ऐसा न करने पर, इस फ़ील्ड को रिस्पॉन्स से हटा दिया जाता है.destination
: अगर इसे पते की स्ट्रिंग या प्लस कोड के तौर पर बताया गया था, तो डेस्टिनेशन का जगह का आईडी. अगर ऐसा नहीं है, तो इस फ़ील्ड को जवाब में शामिल नहीं किया जाता.intermediates
: एक कलेक्शन, जिसमें पता स्ट्रिंग या Plus कोड के तौर पर दर्ज किसी भी इंटरमीडिएट वेपॉइंट का जगह आईडी शामिल होता है. अगर आपने प्लेस आईडी या अक्षांश और देशांतर के निर्देशांक का इस्तेमाल करके, किसी बीच के रास्ते के वेपॉइंट की जानकारी दी है, तो उसे जवाब में शामिल नहीं किया जाएगा. रिस्पॉन्स मेंintermediateWaypointRequestIndex
प्रॉपर्टी का इस्तेमाल करके पता लगाएं कि अनुरोध का कौनसा इंटरमीडिएट वेपॉइंट, रिस्पॉन्स में मौजूद प्लेस आईडी से मेल खाता है.
"geocodingResults": { "origin": { "geocoderStatus": {}, "type": [ enum (Type) ], "placeId": string }, "destination": { "geocoderStatus": {}, "type": [ enum (Type) ], "placeId": string }, "intermediates": [ { "geocoderStatus": {}, "intermediateWaypointRequestIndex": integer, "type": [ enum (Type) ], "placeId": string }, { "geocoderStatus": {}, "intermediateWaypointRequestIndex": integer, "type": [ enum (Type) ], "placeId": string } ] }
स्थानीय भाषा के हिसाब से जवाब की वैल्यू को समझना
स्थानीय भाषा में जवाब की वैल्यू, जवाब का एक अतिरिक्त फ़ील्ड होता है. यह रिटर्न की गई पैरामीटर वैल्यू के लिए, स्थानीय भाषा में टेक्स्ट उपलब्ध कराता है. सफ़र की अवधि, दूरी, और यूनिट सिस्टम (मेट्रिक या इंपीरियल) के लिए, स्थानीय भाषा में टेक्स्ट दिया जाता है. फ़ील्ड मास्क का इस्तेमाल करके, स्थानीय भाषा में वैल्यू का अनुरोध किया जाता है. इसके लिए, भाषा और यूनिट सिस्टम तय किया जा सकता है या एपीआई से मिली वैल्यू का इस्तेमाल किया जा सकता है. ज़्यादा जानकारी के लिए, LocalizedValues देखें.
उदाहरण के लिए, अगर जर्मन (de) और इंपीरियल यूनिट के लिए भाषा कोड तय किया जाता है, तो आपको distanceMeters
के लिए 49889.7 वैल्यू मिलेगी. हालांकि, स्थानीय भाषा में ऐसा टेक्स्ट भी मिलेगा जो जर्मन और इंपीरियल यूनिट में उस दूरी को मापता है, जैसे "31 मील."
स्थानीय भाषा में दिखाई जाने वाली वैल्यू का उदाहरण यहां दिया गया है:
{ "localized_values": { "distance": { "text": "31,0 Meile/n" }, "duration": { "text": 38 Minuten}. "static_duration": { "text": 36 Minuten}. } }
अगर आपने भाषा या यूनिट सिस्टम की जानकारी नहीं दी है, तो एपीआई भाषा और यूनिट का पता इस तरह लगाता है:
ComputeRoutes
तरीका, ऑरिजिन वेपॉइंट से जगह और दूरी की इकाइयों का अनुमान लगाता है. इसलिए, अमेरिका में रूटिंग के अनुरोध के लिए, एपीआईen-US
भाषा औरIMPERIAL
इकाइयों का अनुमान लगाता है.ComputeRouteMatrix
तरीका, डिफ़ॉल्ट रूप से 'en-US' भाषा और METRIC यूनिट पर सेट होता है.