जियोकोडिंग का अनुरोध और जवाब

अनुरोध

Geocoding API का अनुरोध इस फ़ॉर्मैट में होता है:

https://maps.googleapis.com/maps/api/geocode/outputFormat?parameters

जहां outputFormat इनमें से कोई एक वैल्यू हो सकती है:

  • json (सुझाया गया) से JavaScript ऑब्जेक्ट नोटेशन (JSON) में आउटपुट का पता चलता है; या
  • xml, एक्सएमएल में आउटपुट दिखाता है

एचटीटीपीएस ज़रूरी है.

कुछ पैरामीटर ज़रूरी होते हैं, जबकि कुछ ज़रूरी नहीं होते. यूआरएल में पैरामीटर को अलग करने के लिए, एंपरसैंड (&) वर्ण का इस्तेमाल किया जाता है.

इस पेज के बाकी हिस्से में, जियोकोडिंग और रिवर्स जियोकोडिंग के बारे में अलग-अलग बताया गया है. ऐसा इसलिए किया गया है, क्योंकि हर तरह के अनुरोध के लिए अलग-अलग पैरामीटर उपलब्ध होते हैं.

जियोकोडिंग (अक्षांश/देशांतर लुकअप) पैरामीटर

जियोकोडिंग के अनुरोध में ज़रूरी पैरामीटर:

  • key — आपके ऐप्लिकेशन का एपीआई पासकोड. यह कुंजी, कोटा मैनेजमेंट के लिए आपके ऐप्लिकेशन की पहचान करती है. कुंजी पाने का तरीका जानें.
  • आपको अनुरोध में address या components या दोनों की जानकारी देनी होगी:

    • address — वह सड़क पता या प्लस कोड जिसे आपको जियोकोड करना है. पते, उस देश की डाक सेवा के फ़ॉर्मैट के मुताबिक दें जहां आपका कारोबार है. कारोबार के नाम और यूनिट, सुइट या फ़्लोर नंबर जैसे पते के अतिरिक्त एलिमेंट का इस्तेमाल नहीं किया जाना चाहिए. मोहल्ले के पते के एलिमेंट को स्पेस से अलग किया जाना चाहिए (यहां %20 के तौर पर यूआरएल-एस्केप किया गया है):
      address=24%20Sussex%20Drive%20Ottawa%20ON
      प्लस कोड को यहां दिखाए गए तरीके से फ़ॉर्मैट करें (प्लस के निशान को यूआरएल-एस्केप करके %2B में बदला जाता है और स्पेस को यूआरएल-एस्केप करके %20 में बदला जाता है):
      • ग्लोबल कोड, चार वर्णों का एरिया कोड और छह वर्णों या उससे ज़्यादा का लोकल कोड होता है. जैसे, 849VCWC8+R9 को 849VCWC8%2BR9 लिखा जाता है.
      • कंपाउंड कोड, छह वर्णों या उससे ज़्यादा वर्णों का स्थानीय कोड होता है. इसमें जगह की जानकारी साफ़ तौर पर दी होती है. जैसे, CWC8+R9 Mountain View, CA, USA को CWC8%2BR9%20Mountain%20View%20CA%20USA कहा जाता है.
    • components — कॉम्पोनेंट फ़िल्टर, जिसमें एलिमेंट को एक पाइप (|) से अलग किया गया है. अगर address दिया गया है, तो कॉम्पोनेंट फ़िल्टर को वैकल्पिक पैरामीटर के तौर पर भी स्वीकार किया जाता है. कॉम्पोनेंट फ़िल्टर में मौजूद हर एलिमेंट में एक component:value पेयर होता है. साथ ही, यह जियोकोडर से मिले नतीजों पर पूरी तरह से पाबंदी लगाता है. कॉम्पोनेंट फ़िल्टर करने के बारे में ज़्यादा जानकारी यहां देखें.

ज़्यादा जानकारी के लिए, अक्सर पूछे जाने वाले सवाल देखें.

जियोकोडिंग के अनुरोध में इस्तेमाल किए जा सकने वाले पैरामीटर:

  • bounds — व्यूपोर्ट का बाउंडिंग बॉक्स, जिसमें जियोकोड के नतीजों को ज़्यादा प्रमुखता से दिखाया जाता है. इस पैरामीटर का असर, सिर्फ़ जगह की जानकारी देने वाले टूल के नतीजों पर पड़ेगा. यह नतीजों पर पूरी तरह से पाबंदी नहीं लगाएगा. (ज़्यादा जानकारी के लिए, नीचे विंडोपैट में गड़बड़ी देखें.)
  • language — वह भाषा जिसमें नतीजे दिखाने हैं.
    • इस्तेमाल की जा सकने वाली भाषाओं की सूची देखें. Google, इस्तेमाल की जा सकने वाली भाषाओं की सूची को अक्सर अपडेट करता रहता है. इसलिए, हो सकता है कि इस सूची में सभी भाषाएं शामिल न हों.
    • अगर language नहीं दिया गया है, तो जियोकोडर, Accept-Language हेडर में बताई गई पसंदीदा भाषा या उस डोमेन की मूल भाषा का इस्तेमाल करने की कोशिश करता है जिससे अनुरोध भेजा गया है.
    • जियोकोडर, सड़क का ऐसा पता देने की पूरी कोशिश करता है जिसे उपयोगकर्ता और स्थानीय लोग, दोनों पढ़ सकें. इस लक्ष्य को हासिल करने के लिए, यह सेवा, सड़क के पते को स्थानीय भाषा में दिखाती है. साथ ही, ज़रूरत पड़ने पर, उपयोगकर्ता के लिए पढ़ने लायक स्क्रिप्ट में बदल देती है. ऐसा, उपयोगकर्ता की पसंदीदा भाषा के हिसाब से किया जाता है. अन्य सभी पते, आपकी पसंदीदा भाषा में दिखाए जाते हैं. पते के सभी कॉम्पोनेंट उसी भाषा में दिखाए जाते हैं जो पहले कॉम्पोनेंट के लिए चुनी गई है.
    • अगर कोई नाम आपकी पसंदीदा भाषा में उपलब्ध नहीं है, तो जियोकोडर सबसे मिलते-जुलते नाम का इस्तेमाल करता है.
    • पसंदीदा भाषा का असर, उन नतीजों के सेट पर पड़ता है जिन्हें एपीआई दिखाता है. साथ ही, इस बात पर भी असर पड़ता है कि नतीजे किस क्रम में दिखाए जाते हैं. जियोकोडर, भाषा के हिसाब से अंग्रेज़ी के संक्षिप्त शब्दों का अलग-अलग तरीके से मतलब निकालता है. जैसे, सड़क के टाइप के लिए अंग्रेज़ी के संक्षिप्त शब्द या ऐसे समानार्थी शब्द जो एक भाषा में मान्य हो सकते हैं, लेकिन दूसरी भाषा में नहीं. उदाहरण के लिए, हंगेरियन भाषा में utca और tér, क्रमशः सड़क और चौक के लिए एक-दूसरे के समानार्थी शब्द हैं.
  • region — क्षेत्र कोड, जो ccTLD के तौर पर तय किया गया है ("टॉप लेवल डोमेन") दो वर्णों की वैल्यू. यह पैरामीटर, जियोकोडर के नतीजों पर सिर्फ़ असर डालेगा, न कि पूरी तरह से पाबंदी लगाएगा. ज़्यादा जानकारी के लिए, यहां इलाके के हिसाब से रुझान देखें. लागू होने वाले कानून के आधार पर, पैरामीटर से नतीजों पर भी असर पड़ सकता है.
  • components — कॉम्पोनेंट फ़िल्टर, जिसमें एलिमेंट को एक पाइप (|) से अलग किया गया है. अगर अनुरोध में address शामिल नहीं है, तो कॉम्पोनेंट फ़िल्टर ज़रूरी है. कॉम्पोनेंट फ़िल्टर में मौजूद हर एलिमेंट में एक component:value पेयर होता है. साथ ही, यह जियोकोडर से मिले नतीजों पर पूरी तरह से पाबंदी लगाता है. कॉम्पोनेंट फ़िल्टर करने के बारे में ज़्यादा जानकारी यहां देखें.
  • extra_computations — रिस्पॉन्स में इन अतिरिक्त सुविधाओं के बारे में बताने के लिए, इस पैरामीटर का इस्तेमाल करें: एक ही एपीआई अनुरोध के लिए, इनमें से कई सुविधाओं को चालू करने के लिए, हर सुविधा के लिए अनुरोध में extra_computations पैरामीटर शामिल करें. उदाहरण के लिए:
    extra_computations=ADDRESS_DESCRIPTORS&extra_computations=BUILDING_AND_ENTRANCES

जवाब

जियोकोडिंग के रिस्पॉन्स, यूआरएल अनुरोध में output फ़्लैग के ज़रिए दिखाए गए फ़ॉर्मैट में दिखाए जाते हैं. इसके अलावा, ये डिफ़ॉल्ट रूप से JSON फ़ॉर्मैट में भी दिखाए जा सकते हैं.

इस उदाहरण में, Geocoding API, "1600 Amphitheatre Parkway, Mountain View, CA" पते से जुड़ी क्वेरी के लिए json जवाब का अनुरोध करता है.

इस अनुरोध में, JSON output फ़्लैग का इस्तेमाल करने का तरीका बताया गया है:

https://maps.googleapis.com/maps/api/geocode/json?address=1600+Amphitheatre+Parkway,+Mountain+View,+CA&key=YOUR_API_KEY

इस अनुरोध में, एक्सएमएल output फ़्लैग का इस्तेमाल करने का तरीका बताया गया है:

https://maps.googleapis.com/maps/api/geocode/xml?address=1600+Amphitheatre+Parkway,+Mountain+View,+CA&key=YOUR_API_KEY

JSON और एक्सएमएल के जवाबों के सैंपल देखने के लिए, नीचे दिए गए टैब चुनें.

JSON

{
    "results": [
        {
            "address_components": [
                {
                    "long_name": "1600",
                    "short_name": "1600",
                    "types": [
                        "street_number"
                    ]
                },
                {
                    "long_name": "Amphitheatre Parkway",
                    "short_name": "Amphitheatre Pkwy",
                    "types": [
                        "route"
                    ]
                },
                {
                    "long_name": "Mountain View",
                    "short_name": "Mountain View",
                    "types": [
                        "locality",
                        "political"
                    ]
                },
                {
                    "long_name": "Santa Clara County",
                    "short_name": "Santa Clara County",
                    "types": [
                        "administrative_area_level_2",
                        "political"
                    ]
                },
                {
                    "long_name": "California",
                    "short_name": "CA",
                    "types": [
                        "administrative_area_level_1",
                        "political"
                    ]
                },
                {
                    "long_name": "United States",
                    "short_name": "US",
                    "types": [
                        "country",
                        "political"
                    ]
                },
                {
                    "long_name": "94043",
                    "short_name": "94043",
                    "types": [
                        "postal_code"
                    ]
                },
                {
                    "long_name": "1351",
                    "short_name": "1351",
                    "types": [
                        "postal_code_suffix"
                    ]
                }
            ],
            "formatted_address": "1600 Amphitheatre Pkwy, Mountain View, CA 94043, USA",
            "geometry": {
                "location": {
                    "lat": 37.4222804,
                    "lng": -122.0843428
                },
                "location_type": "ROOFTOP",
                "viewport": {
                    "northeast": {
                        "lat": 37.4237349802915,
                        "lng": -122.083183169709
                    },
                    "southwest": {
                        "lat": 37.4210370197085,
                        "lng": -122.085881130292
                    }
                }
            },
            "place_id": "ChIJRxcAvRO7j4AR6hm6tys8yA8",
            "plus_code": {
                "compound_code": "CWC8+W7 Mountain View, CA",
                "global_code": "849VCWC8+W7"
            },
            "types": [
                "street_address"
            ]
        }
    ],
    "status": "OK"
}

ध्यान दें कि JSON रिस्पॉन्स में दो रूट एलिमेंट होते हैं:

  • "status" में अनुरोध का मेटाडेटा होता है. यहां स्थिति कोड देखें.
  • "results" में, पते की जियोकोड की गई जानकारी और ज्यामिति की जानकारी का कलेक्शन होता है.

आम तौर पर, पते के लुकअप के लिए "results" कलेक्शन में सिर्फ़ एक एंट्री दिखती है. हालांकि, अगर पते की क्वेरी में अस्पष्टता है, तो जियोकोडर कई नतीजे दिखा सकता है.

XML

<GeocodeResponse>
    <status>OK</status>
    <result>
        <type>street_address</type>
        <formatted_address>1600 Amphitheatre Pkwy, Mountain View, CA 94043, USA</formatted_address>
        <address_component>
            <long_name>1600</long_name>
            <short_name>1600</short_name>
            <type>street_number</type>
        </address_component>
        <address_component>
            <long_name>Amphitheatre Parkway</long_name>
            <short_name>Amphitheatre Pkwy</short_name>
            <type>route</type>
        </address_component>
        <address_component>
            <long_name>Mountain View</long_name>
            <short_name>Mountain View</short_name>
            <type>locality</type>
            <type>political</type>
        </address_component>
        <address_component>
            <long_name>Santa Clara County</long_name>
            <short_name>Santa Clara County</short_name>
            <type>administrative_area_level_2</type>
            <type>political</type>
        </address_component>
        <address_component>
            <long_name>California</long_name>
            <short_name>CA</short_name>
            <type>administrative_area_level_1</type>
            <type>political</type>
        </address_component>
        <address_component>
            <long_name>United States</long_name>
            <short_name>US</short_name>
            <type>country</type>
            <type>political</type>
        </address_component>
        <address_component>
            <long_name>94043</long_name>
            <short_name>94043</short_name>
            <type>postal_code</type>
        </address_component>
        <geometry>
            <location>
                <lat>37.4224428</lat>
                <lng>-122.0842467</lng>
            </location>
            <location_type>ROOFTOP</location_type>
            <viewport>
                <southwest>
                    <lat>37.4212648</lat>
                    <lng>-122.0856069</lng>
                </southwest>
                <northeast>
                    <lat>37.4239628</lat>
                    <lng>-122.0829089</lng>
                </northeast>
            </viewport>
        </geometry>
        <place_id>ChIJeRpOeF67j4AR9ydy_PIzPuM</place_id>
        <plus_code>
            <global_code>849VCWC8+X8</global_code>
            <compound_code>CWC8+X8 Mountain View, CA</compound_code>
        </plus_code>
    </result>
</GeocodeResponse>

ध्यान दें कि एक्सएमएल जवाब में एक <GeocodeResponse> और दो टॉप-लेवल एलिमेंट होते हैं:

  • <status> में अनुरोध का मेटाडेटा होता है. यहां स्थिति कोड देखें.
  • शून्य या एक से ज़्यादा <result> एलिमेंट, जिनमें से हर एक में, पते की जियोकोड की गई जानकारी और ज्यामिति की जानकारी का एक सेट होता है.

एक्सएमएल रिस्पॉन्स, JSON रिस्पॉन्स से काफ़ी लंबा होता है. इसलिए, हमारा सुझाव है कि आप json को पसंदीदा आउटपुट फ़्लैग के तौर पर इस्तेमाल करें. ऐसा तब तक करें, जब तक आपकी सेवा के लिए किसी वजह से xml की ज़रूरत न हो. इसके अलावा, एक्सएमएल ट्री को प्रोसेस करते समय कुछ सावधानी बरतने की ज़रूरत होती है, ताकि सही नोड और एलिमेंट का रेफ़रंस दिया जा सके. आउटपुट प्रोसेसिंग के लिए सुझाए गए कुछ डिज़ाइन पैटर्न के बारे में जानने के लिए, XPath की मदद से एक्सएमएल को पार्स करना देखें.

  • एक्सएमएल के नतीजों को रूट <GeocodeResponse> एलिमेंट में रैप किया जाता है.
  • JSON, एक से ज़्यादा एलिमेंट वाली एंट्री को कई एरे (types) के ज़रिए दिखाता है, जबकि एक्सएमएल, एक से ज़्यादा सिंगल एलिमेंट (<type>) का इस्तेमाल करके इन एंट्री को दिखाता है.
  • खाली एलिमेंट, JSON में खाली कलेक्शन के ज़रिए दिखाए जाते हैं. हालांकि, एक्सएमएल में ऐसा कोई एलिमेंट नहीं होता. कोई नतीजा न देने वाला रिस्पॉन्स, JSON में खाली results कलेक्शन दिखाएगा. उदाहरण के लिए, एक्सएमएल में कोई <result> एलिमेंट नहीं दिखाएगा.

स्टेटस कोड

जियोकोडिंग के जवाब वाले ऑब्जेक्ट में मौजूद "status" फ़ील्ड में, अनुरोध की स्थिति होती है. साथ ही, इसमें डीबग करने से जुड़ी जानकारी भी हो सकती है, ताकि यह पता लगाया जा सके कि जियोकोडिंग काम क्यों नहीं कर रही है. "status" फ़ील्ड में ये वैल्यू हो सकती हैं:

  • "OK" से पता चलता है कि कोई गड़बड़ी नहीं हुई; पते को सही तरीके से पार्स किया गया और कम से कम एक जियोकोड दिखाया गया.
  • "ZERO_RESULTS" से पता चलता है कि जियोकोड सही है, लेकिन कोई नतीजा नहीं मिला. ऐसा तब हो सकता है, जब जियोकोडर को कोई ऐसा address पास किया गया हो जो मौजूद न हो.
  • OVER_DAILY_LIMIT इनमें से किसी भी चीज़ के बारे में बताता है:
    • एपीआई पासकोड मौजूद नहीं है या अमान्य है.
    • आपके खाते पर बिलिंग की सुविधा चालू नहीं है.
    • आपने खुद से तय की गई सीमा से ज़्यादा बार इस्तेमाल किया है.
    • पेमेंट का दिया गया तरीका अब मान्य नहीं है. उदाहरण के लिए, क्रेडिट कार्ड की समयसीमा खत्म हो गई है.

    इसे ठीक करने का तरीका जानने के लिए, Maps के बारे में अक्सर पूछे जाने वाले सवाल देखें.

  • "OVER_QUERY_LIMIT" से पता चलता है कि आपने कोटा से ज़्यादा स्टोरेज का इस्तेमाल किया है.
  • "REQUEST_DENIED" से पता चलता है कि आपका अनुरोध अस्वीकार कर दिया गया है.
  • आम तौर पर, "INVALID_REQUEST" से पता चलता है कि क्वेरी (address, components या latlng) मौजूद नहीं है.
  • "UNKNOWN_ERROR" से पता चलता है कि सर्वर की गड़बड़ी की वजह से, अनुरोध को प्रोसेस नहीं किया जा सका. फिर से कोशिश करने पर, अनुरोध पूरा हो सकता है.

गड़बड़ी के मैसेज

जब जियोकोडर, OK के अलावा कोई दूसरा स्टेटस कोड दिखाता है, तो जियोकोडिंग के जवाब वाले ऑब्जेक्ट में एक और error_message फ़ील्ड हो सकता है. इस फ़ील्ड में, दिए गए स्टेटस कोड की वजहों के बारे में ज़्यादा जानकारी होती है.

नतीजे

जब जियोकोडर नतीजे दिखाता है, तो वह उन्हें (JSON) results कलेक्शन में डाल देता है. भले ही, जियोकोडर कोई नतीजा न दिखाए (जैसे, अगर पता मौजूद न हो), फिर भी यह एक खाली results कलेक्शन दिखाता है. (एक्सएमएल रिस्पॉन्स में शून्य या एक से ज़्यादा <result> एलिमेंट होते हैं.)

किसी सामान्य नतीजे में ये फ़ील्ड होते हैं:

  • types[] कलेक्शन से, दिखाए गए नतीजे के टाइप के बारे में पता चलता है. इस कलेक्शन में, नतीजे में दिखने वाली सुविधा के टाइप की पहचान करने वाले शून्य या उससे ज़्यादा टैग का सेट होता है. उदाहरण के लिए, "मुंबई" का जियोकोड, "इलाका" दिखाता है. इससे पता चलता है कि "मुंबई" एक शहर है. साथ ही, यह "राजनैतिक" भी दिखाता है. इससे पता चलता है कि यह एक राजनैतिक इकाई है. अगर पते के उस कॉम्पोनेंट के लिए कोई टाइप नहीं है, तो हो सकता है कि कॉम्पोनेंट में टाइप का खाली कलेक्शन हो. ज़रूरत के हिसाब से, एपीआई नई टाइप वैल्यू जोड़ सकता है. ज़्यादा जानकारी के लिए, पते के टाइप और पते के कॉम्पोनेंट देखें.
  • formatted_address एक स्ट्रिंग है, जिसमें इस जगह का ऐसा पता होता है जिसे कोई भी व्यक्ति आसानी से पढ़ सकता है.

    आम तौर पर, यह पता डाक पते के बराबर होता है. ध्यान दें कि लाइसेंस से जुड़ी पाबंदियों की वजह से, कुछ देशों, जैसे कि यूनाइटेड किंगडम में, असली डाक पते शेयर करने की अनुमति नहीं है.

    फ़ॉर्मैट किया गया पता, एक या एक से ज़्यादा पते के कॉम्पोनेंट से बना होता है. उदाहरण के लिए, पते "111 8th Avenue, New York, NY" में ये कॉम्पोनेंट शामिल हैं: "111" (सड़क का नंबर), "8th Avenue" (रास्ता), "New York" (शहर) और "NY" (अमेरिका का राज्य).

    फ़ॉर्मैट किए गए पते को प्रोग्राम के हिसाब से पार्स न करें. इसके बजाय, आपको पते के अलग-अलग कॉम्पोनेंट का इस्तेमाल करना चाहिए. ये कॉम्पोनेंट, एपीआई रिस्पॉन्स में फ़ॉर्मैट किए गए पते के फ़ील्ड के साथ शामिल होते हैं.

  • address_components[] एक कलेक्शन है, जिसमें इस पते पर लागू होने वाले अलग-अलग कॉम्पोनेंट शामिल होते हैं.

    आम तौर पर, पते के हर कॉम्पोनेंट में ये फ़ील्ड होते हैं:

    • types[] एक कलेक्शन है, जो पते के कॉम्पोनेंट के टाइप के बारे में बताता है. इस्तेमाल किए जा सकने वाले टाइप की सूची देखें.
    • long_name, पते के उस कॉम्पोनेंट का पूरा टेक्स्ट ब्यौरा या नाम होता है जो जियोकोडर से मिलता है.
    • short_name, पते के कॉम्पोनेंट का छोटा नाम होता है. हालांकि, यह नाम सिर्फ़ तब दिखता है, जब यह उपलब्ध हो. उदाहरण के लिए, अलास्का राज्य के पते के कॉम्पोनेंट में, "Alaska" के तौर पर long_name और दो अक्षरों वाले डाक संक्षिप्त नाम का इस्तेमाल करके, "AK" के तौर पर short_name हो सकता है.

    address_components[] ऐरे के बारे में इन बातों का ध्यान रखें:

    • पते के कॉम्पोनेंट के कलेक्शन में, formatted_address से ज़्यादा कॉम्पोनेंट हो सकते हैं.
    • formatted_address में शामिल राजनैतिक इकाइयों के अलावा, कैटगरी में उन सभी राजनैतिक इकाइयों को शामिल करना ज़रूरी नहीं है जिनका पता मौजूद है. किसी खास पते वाली सभी राजनैतिक इकाइयों को पाने के लिए, आपको रिवर्स जियोकोडिंग का इस्तेमाल करना चाहिए. इसके लिए, अनुरोध के पैरामीटर के तौर पर पते के अक्षांश/देशांतर को पास करें.
    • यह ज़रूरी नहीं है कि एक अनुरोध के जवाब का फ़ॉर्मैट, दूसरे अनुरोध के जवाब के फ़ॉर्मैट से मेल खाए. खास तौर पर, अनुरोध किए गए पते के आधार पर address_components की संख्या अलग-अलग होती है. साथ ही, एक ही पते के लिए समय के साथ यह संख्या बदल सकती है. कोई कॉम्पोनेंट, कलेक्शन में अपनी जगह बदल सकता है. कॉम्पोनेंट का टाइप बदल सकता है. हो सकता है कि बाद में मिलने वाले जवाब में कोई कॉम्पोनेंट मौजूद न हो.

    कॉम्पोनेंट के कलेक्शन को मैनेज करने के लिए, आपको रिस्पॉन्स को पार्स करना चाहिए और एक्सप्रेशन की मदद से सही वैल्यू चुननी चाहिए. रिस्पॉन्स को पार्स करने के लिए गाइड देखें.

  • postcode_localities[] एक कलेक्शन है, जिसमें किसी पिन कोड में शामिल 100 जगहों की जानकारी होती है. यह सिर्फ़ तब दिखता है, जब नतीजा एक ऐसा पिन कोड हो जिसमें एक से ज़्यादा जगहों की जानकारी हो.
  • geometry में यह जानकारी शामिल होती है:
    • location में, भौगोलिक कोड वाली अक्षांश और देशांतर वैल्यू शामिल होती है. आम तौर पर, <2fr> पते के लुकअप के लिए यह फ़ील्ड सबसे ज़्यादा अहम होता है.
    • location_type, चुनी गई जगह के बारे में अतिरिक्त डेटा सेव करता है. फ़िलहाल, ये वैल्यू इस्तेमाल की जा सकती हैं:

      • "ROOFTOP" से पता चलता है कि मिला हुआ नतीजा सटीक जियोकोड है. इसके लिए, हमारे पास सटीक जगह की जानकारी है, जिसमें सड़क का पता भी शामिल है.
      • "RANGE_INTERPOLATED" से पता चलता है कि मिला हुआ नतीजा, दो सटीक पॉइंट (जैसे, चौराहे) के बीच इंटरपोलेशन (आम तौर पर सड़क पर) किया गया अनुमान है. आम तौर पर, इंटरपोलेशन वाले नतीजे तब दिखाए जाते हैं, जब किसी सड़क के पते के लिए रूफ़टॉप जियोकोड उपलब्ध न हों.
      • "GEOMETRIC_CENTER" से पता चलता है कि मिला नतीजा, किसी नतीजे का ज्यामितीय केंद्र है. जैसे, कोई पॉलीलाइन (उदाहरण के लिए, कोई सड़क) या पॉलीगॉन (इलाका).
      • "APPROXIMATE" से पता चलता है कि मिला नतीजा, अनुमानित है.
    • viewport में, दिखाए गए नतीजे को दिखाने के लिए सुझाया गया व्यूपोर्ट होता है. इसे अक्षांश और देशांतर की दो वैल्यू के तौर पर दिखाया जाता है. ये वैल्यू,व्यूपोर्ट के बाउंडिंग बॉक्स के southwest और northeast कोने की जानकारी देती हैं. आम तौर पर, किसी नतीजे को उपयोगकर्ता को दिखाते समय, उसका फ़्रेम बनाने के लिए, व्यूपोर्ट का इस्तेमाल किया जाता है.
    • bounds (ज़रूरी नहीं कि यह वैल्यू दिखे) बॉउंडिंग बॉक्स को सेव करता है, जिसमें नतीजा पूरी तरह से शामिल हो सकता है. ध्यान दें कि ये सीमाएं, सुझाए गए व्यूपोर्ट से मेल नहीं खा सकतीं. (उदाहरण के लिए, सैन फ़्रांसिस्को में फ़ारैलोन द्वीप शामिल हैं, जो तकनीकी तौर पर शहर का हिस्सा हैं. हालांकि, ऐसा हो सकता है कि उन्हें व्यूपोर्ट में न दिखाया जाए.)
  • plus_code (ओपन लोकेशन कोड और प्लस कोड देखें) एक कोड में बदली गई जगह का रेफ़रंस है. यह अक्षांश और देशांतर के निर्देशांक से मिलता है. यह एक ऐसे इलाके को दिखाता है जिसका क्षेत्रफल 1/8000 डिग्री x 1/8000 डिग्री (भूमध्य रेखा पर करीब 14 मीटर x 14 मीटर) या उससे कम हो. प्लस कोड का इस्तेमाल, उन जगहों पर मोहल्ले के पते के विकल्प के तौर पर किया जा सकता है जहां पते मौजूद नहीं हैं. जैसे, जहां बिल्डिंग का नंबर नहीं है या सड़कों के नाम नहीं हैं. एपीआई हमेशा प्लस कोड नहीं दिखाता.

    जब सेवा कोई प्लस कोड दिखाती है, तो उसे ग्लोबल कोड और कंपाउंड कोड के तौर पर फ़ॉर्मैट किया जाता है:

    • global_code में चार वर्णों का एरिया कोड और छह वर्णों या उससे ज़्यादा का लोकल कोड होता है (849VCWC8+R9).
    • compound_code, छह वर्णों या उससे ज़्यादा वर्णों वाला स्थानीय कोड होता है. इसमें जगह की जानकारी साफ़ तौर पर दी होती है (CWC8+R9, Mountain View, CA, USA). इस कॉन्टेंट को प्रोग्राम के हिसाब से पार्स न करें.
    जहां उपलब्ध हो, वहां एपीआई ग्लोबल कोड और कंपाउंड कोड, दोनों दिखाता है. हालांकि, अगर नतीजा किसी ऐसी जगह पर है जो बहुत दूर है, जैसे कि समुद्र या रेगिस्तान, तो सिर्फ़ ग्लोबल कोड दिखाया जा सकता है.
  • partial_match से पता चलता है कि जियोकोडर ने मूल अनुरोध के लिए, एग्ज़ैक्ट मैच नहीं दिया. हालांकि, वह अनुरोध किए गए पते के कुछ हिस्से से मैच कर सका. आपके पास, मूल अनुरोध की जांच करने का विकल्प है. इससे आपको पता चलेगा कि उसमें वर्तनी की गड़बड़ियां हैं या/और पता अधूरा है.

    आम तौर पर, सड़क के ऐसे पतों के लिए कुछ हद तक मैच मिलते हैं जो अनुरोध में बताई गई जगह में मौजूद नहीं होते. जब कोई अनुरोध, एक ही इलाके में दो या उससे ज़्यादा जगहों से मैच होता है, तो कुछ हद तक मैच होने वाली जगहों की जानकारी भी दी जा सकती है. उदाहरण के लिए, "Hillpar St, Bristol, UK" से, हेनरी स्ट्रीट और हेनरीटा स्ट्रीट, दोनों के लिए कुछ हद तक मैच करने वाले नतीजे मिलेंगे. ध्यान दें कि अगर किसी अनुरोध में पते के किसी कॉम्पोनेंट को गलत लिखा गया है, तो जियोकोडिंग सेवा किसी अन्य पते का सुझाव दे सकती है. इस तरह से ट्रिगर किए गए सुझावों को भी कुछ हद तक मैच करने वाले के तौर पर मार्क किया जाएगा.

  • place_id एक यूनीक आइडेंटिफ़ायर है, जिसका इस्तेमाल Google के अन्य एपीआई के साथ किया जा सकता है. उदाहरण के लिए, किसी स्थानीय कारोबार की जानकारी पाने के लिए, Places API अनुरोध में place_id का इस्तेमाल किया जा सकता है. जैसे, फ़ोन नंबर, खुले होने का समय, उपयोगकर्ता की समीक्षाएं वगैरह. जगह की जानकारी वाले आईडी के बारे में खास जानकारी देखें.

पते के टाइप और पते के कॉम्पोनेंट के टाइप

नतीजे में मौजूद types[] कलेक्शन से, पते का टाइप पता चलता है. पते के टाइप के उदाहरणों में, सड़क का पता, देश या राजनैतिक इकाई शामिल है. address_components[] में एक types[] कलेक्शन भी होता है, जिसमें पते के हर हिस्से के टाइप के बारे में बताया जाता है. उदाहरण के लिए, सड़क का नंबर या देश. (यहां अलग-अलग टाइप की पूरी सूची दी गई है.) पते कई तरह के हो सकते हैं. टाइप को 'टैग' माना जा सकता है. उदाहरण के लिए, कई शहरों को political और locality टाइप के साथ टैग किया गया है.

जियोकोडर, इन टाइप के पतों को पता टाइप और पता कॉम्पोनेंट टाइप, दोनों के ऐरे में दिखाता है और दिखाता है:

  • street_address, सटीक मोहल्ले का पता दिखाता है.
  • route, नाम वाले रास्ते (जैसे, "US 101") के बारे में बताता है.
  • intersection, आम तौर पर दो मुख्य सड़कों के मुख्य चौराहे के बारे में बताता है.
  • political से किसी राजनैतिक इकाई के बारे में पता चलता है. आम तौर पर, इस टाइप से किसी सिविल एडमिनिस्ट्रेशन के पॉलीगॉन का पता चलता है.
  • country से किसी देश की राजनैतिक इकाई का पता चलता है. आम तौर पर, यह जियोकोडर से मिलने वाला सबसे ज़्यादा ऑर्डर टाइप होता है.
  • administrative_area_level_1, देश के लेवल से नीचे की पहली-श्रेणी की सिविल इकाई को दिखाता है. अमेरिका में, ये एडमिनिस्ट्रेशन लेवल राज्य होते हैं. सभी देशों में ये एडमिन लेवल नहीं होते. ज़्यादातर मामलों में, administrative_area_level_1 के छोटे नाम, ISO 3166-2 के उप-डिवीज़न और आम तौर पर इस्तेमाल होने वाली अन्य सूचियों से काफ़ी हद तक मेल खाएंगे. हालांकि, इसकी कोई गारंटी नहीं है, क्योंकि जियोकोडिंग के नतीजे कई तरह के सिग्नल और जगह की जानकारी के डेटा पर आधारित होते हैं.
  • administrative_area_level_2, देश के लेवल के नीचे की दूसरी दर्जे की नागरिक इकाई को दिखाता है. अमेरिका में, ये प्रशासनिक लेवल काउंटी होते हैं. सभी देशों में ये एडमिन लेवल नहीं होते.
  • administrative_area_level_3 से पता चलता है कि यह देश के लेवल से नीचे की तीसरे दर्जे की नागरिक इकाई है. इस टाइप से, छोटे सिविल डिवीज़न के बारे में पता चलता है. सभी देशों में ये एडमिन लेवल नहीं दिखते.
  • administrative_area_level_4 से पता चलता है कि यह देश के लेवल से नीचे की चौथे क्रम की नागरिक इकाई है. इस टाइप से, छोटे सिविल डिवीज़न के बारे में पता चलता है. सभी देशों में ये एडमिन लेवल नहीं दिखते.
  • administrative_area_level_5, देश के लेवल के नीचे पांचवें क्रम की सिविल इकाई को दिखाता है. इस टाइप से, छोटे सिविल डिवीज़न के बारे में पता चलता है. सभी देशों में ये एडमिन लेवल नहीं दिखते.
  • administrative_area_level_6, देश के लेवल के नीचे, छठे क्रम की सिविल इकाई को दिखाता है. इस टाइप से, छोटे सिविल डिवीज़न के बारे में पता चलता है. सभी देशों में ये एडमिन लेवल नहीं दिखते.
  • administrative_area_level_7, देश के लेवल के नीचे सातवें क्रम की सिविल इकाई को दिखाता है. इस टाइप से, छोटे सिविल डिवीज़न के बारे में पता चलता है. सभी देशों में ये एडमिन लेवल नहीं दिखते.
  • colloquial_area से पता चलता है कि इकाई का कोई दूसरा नाम आम तौर पर इस्तेमाल किया जाता है.
  • locality से पता चलता है कि यह किसी शहर या कस्बे की राजनैतिक इकाई है.
  • sublocality से पता चलता है कि यह किसी इलाके के नीचे, पहली श्रेणी की नागरिक इकाई है. कुछ जगहों के लिए, इनमें से कोई एक टाइप दिख सकता है: sublocality_level_1 से sublocality_level_5. हर उप-इलाके का लेवल एक सिविल इकाई होता है. बड़ी संख्याओं का मतलब है कि आपने छोटा भौगोलिक क्षेत्र चुना है.
  • neighborhood से किसी इलाके का नाम पता चलता है.
  • premise से किसी ऐसी जगह का पता चलता है जिसका नाम हो. आम तौर पर, यह किसी इमारत या एक ही नाम वाली कई इमारतों का ग्रुप होता है.
  • subpremise से, प्राइमिस लेवल के नीचे मौजूद ऐसी इकाई के बारे में पता चलता है जिसे डायरेक्ट किया जा सकता है. जैसे, अपार्टमेंट, यूनिट या सुइट.
  • plus_code, कोड में बदली गई जगह के रेफ़रंस को दिखाता है. यह रेफ़रंस, अक्षांश और देशांतर से मिलता है. प्लस कोड का इस्तेमाल, उन जगहों पर सड़क के पते के विकल्प के तौर पर किया जा सकता है जहां वे मौजूद नहीं हैं. जैसे, जहां इमारतों के नंबर नहीं हैं या सड़कों के नाम नहीं हैं. ज़्यादा जानकारी के लिए, https://plus.codes पर जाएं.
  • postal_code, पिन कोड दिखाता है. इसका इस्तेमाल, देश में डाक पाने के लिए किया जाता है.
  • natural_feature से किसी प्रमुख प्राकृतिक चीज़ के बारे में पता चलता है.
  • airport, हवाई अड्डे की जानकारी देता है.
  • park, नाम वाले पार्क को दिखाता है.
  • point_of_interest से, किसी लोकप्रिय जगह का नाम पता चलता है. आम तौर पर, ये "पीओआई" ऐसी लोकप्रिय स्थानीय इकाइयां होती हैं जिन्हें आसानी से किसी दूसरी कैटगरी में नहीं रखा जा सकता. जैसे, "एम्पायर स्टेट बिल्डिंग" या "एफ़िल टावर".

टाइप की खाली सूची से पता चलता है कि पते के किसी खास कॉम्पोनेंट के लिए, कोई टाइप नहीं है. उदाहरण के लिए, फ़्रांस में Lieu-dit.

ऊपर बताए गए कॉम्पोनेंट के अलावा, पते के कॉम्पोनेंट में यहां बताए गए टाइप शामिल हो सकते हैं. यह पूरी सूची नहीं है और इसमें बदलाव हो सकते हैं.

  • floor से किसी इमारत के पते में फ़्लोर की जानकारी मिलती है.
  • आम तौर पर, establishment का मतलब ऐसी जगह से होता है जिसे अब तक किसी कैटगरी में नहीं रखा गया है.
  • landmark, आस-पास मौजूद किसी ऐसी जगह के बारे में बताता है जिसका इस्तेमाल नेविगेशन में मदद करने के लिए, रेफ़रंस के तौर पर किया जाता है.
  • point_of_interest से, किसी लोकप्रिय जगह का नाम पता चलता है.
  • parking, पार्किंग की जगह या पार्किंग की सुविधा वाले स्ट्रक्चर के बारे में बताता है.
  • post_box किसी खास डाक बॉक्स को दिखाता है.
  • postal_town, भौगोलिक इलाकों के ग्रुप के बारे में बताता है. जैसे, locality और sublocality. इनका इस्तेमाल कुछ देशों में मेलिंग पतों के लिए किया जाता है.
  • room, किसी इमारत के पते में मौजूद कमरे की जानकारी देता है.
  • street_number, सड़क का सटीक नंबर दिखाता है.
  • bus_station, train_station, और transit_station, बस, ट्रेन या सार्वजनिक परिवहन के स्टॉप की जगह दिखाते हैं.

व्यूपोर्ट के हिसाब से फ़ोटो का साइज़ तय करना

जियोकोडिंग के अनुरोध में, जियोकोडिंग सेवा को किसी दिए गए व्यूपोर्ट (बॉर्डर बॉक्स के तौर पर दिखाया गया) में मौजूद नतीजों को प्राथमिकता देने का निर्देश दिया जा सकता है. ऐसा करने के लिए, bounds पैरामीटर को सेट करके, अनुरोध यूआरएल में जाएं.

bounds पैरामीटर, इस बाउंडिंग बॉक्स के दक्षिण-पश्चिम और उत्तर-पूर्व कोने के अक्षांश/देशांतर निर्देशांक तय करता है. इसके लिए, निर्देशांकों को अलग करने के लिए, पाइप (|) वर्ण का इस्तेमाल किया जाता है.

उदाहरण के लिए, "दिल्ली" के लिए दिया गया जियोकोड, आम तौर पर भारत के दिल्ली राज्य की जानकारी दिखाता है:

अनुरोध:

https://maps.googleapis.com/maps/api/geocode/json?address=Washington&key=YOUR_API_KEY

जवाब:

{
   "results" : [
      {
         "address_components" : [
            {
               "long_name" : "Washington",
               "short_name" : "WA",
               "types" : [ "administrative_area_level_1", "political" ]
            },
            {
               "long_name" : "United States",
               "short_name" : "US",
               "types" : [ "country", "political" ]
            }
         ],
         "formatted_address" : "Washington, USA",
         "geometry" : {
            "bounds" : {
               "northeast" : {
                  "lat" : 49.0024442,
                  "lng" : -116.91558
               },
               "southwest" : {
                  "lat" : 45.543541,
                  "lng" : -124.8489739
               }
            },
            "location" : {
               "lat" : 47.7510741,
               "lng" : -120.7401385
            },
            "location_type" : "APPROXIMATE",
            "viewport" : {
               "northeast" : {
                  "lat" : 49.0024442,
                  "lng" : -116.91558
               },
               "southwest" : {
                  "lat" : 45.543541,
                  "lng" : -124.8489739
               }
            }
         },
         "place_id" : "ChIJ-bDD5__lhVQRuvNfbGh4QpQ",
         "types" : [ "administrative_area_level_1", "political" ]
      }
   ],
   "status" : "OK"
}

हालांकि, अमेरिका के उत्तर-पूर्वी हिस्से के आस-पास के बाउंडिंग बॉक्स की जानकारी देने वाले bounds आर्ग्युमेंट को जोड़ने पर, यह जियोकोड वॉशिंगटन डीसी शहर का नतीजा दिखाता है:

अनुरोध:

https://maps.googleapis.com/maps/api/geocode/json?address=Washington&bounds=36.47,-84.72%7C43.39,-65.90&key=YOUR_API_KEY

जवाब:

{
   "results" : [
      {
         "address_components" : [
            {
               "long_name" : "Washington",
               "short_name" : "Washington",
               "types" : [ "locality", "political" ]
            },
            {
               "long_name" : "District of Columbia",
               "short_name" : "District of Columbia",
               "types" : [ "administrative_area_level_2", "political" ]
            },
            {
               "long_name" : "District of Columbia",
               "short_name" : "DC",
               "types" : [ "administrative_area_level_1", "political" ]
            },
            {
               "long_name" : "United States",
               "short_name" : "US",
               "types" : [ "country", "political" ]
            }
         ],
         "formatted_address" : "Washington, DC, USA",
         "geometry" : {
            "bounds" : {
               "northeast" : {
                  "lat" : 38.9958641,
                  "lng" : -76.90939299999999
               },
               "southwest" : {
                  "lat" : 38.7916449,
                  "lng" : -77.119759
               }
            },
            "location" : {
               "lat" : 38.9071923,
               "lng" : -77.03687069999999
            },
            "location_type" : "APPROXIMATE",
            "viewport" : {
               "northeast" : {
                  "lat" : 38.9958641,
                  "lng" : -76.90939299999999
               },
               "southwest" : {
                  "lat" : 38.7916449,
                  "lng" : -77.119759
               }
            }
         },
         "place_id" : "ChIJW-T2Wt7Gt4kRKl2I1CJFUsI",
         "types" : [ "locality", "political" ]
      }
   ],
   "status" : "OK"
}

क्षेत्र के हिसाब से बायस

जियोकोडिंग के अनुरोध में, region पैरामीटर का इस्तेमाल करके, जियोकोडिंग सेवा को किसी खास इलाके के हिसाब से नतीजे दिखाने का निर्देश दिया जा सकता है. यह पैरामीटर, ccTLD (देश के कोड के हिसाब से टॉप लेवल डोमेन) आर्ग्युमेंट लेता है, जो इलाके के हिसाब से रुझान बताता है. ज़्यादातर ccTLD कोड, आईएसओ 3166-1 कोड से मिलते-जुलते होते हैं. हालांकि, कुछ कोड अलग होते हैं. उदाहरण के लिए, यूनाइटेड किंगडम का ccTLD "uk" (.co.uk) है, जबकि उसका आईएसओ 3166-1 कोड "gb" है. तकनीकी तौर पर, यह कोड "यूनाइटेड किंगडम ऑफ़ ग्रेट ब्रिटेन ऐंड नॉर्दन आयरलैंड" इकाई के लिए है.

जियोकोडिंग के नतीजे, हर उस डोमेन के लिए पक्षपात वाले हो सकते हैं जहां मुख्य Google Maps ऐप्लिकेशन आधिकारिक तौर पर लॉन्च किया गया है. ध्यान दें कि किसी डोमेन के लिए नतीजों को प्राथमिकता देने का मतलब है कि सिर्फ़ उस डोमेन के नतीजे प्राथमिकता पाएं. अगर इस डोमेन से बाहर के ज़्यादा काम के नतीजे मौजूद हैं, तो उन्हें भी शामिल किया जा सकता है.

उदाहरण के लिए, "टोलेडो" के लिए जियोकोड यह नतीजा दिखाता है, क्योंकि Geocoding API के लिए डिफ़ॉल्ट डोमेन, अमेरिका पर सेट है. अनुरोध:

https://maps.googleapis.com/maps/api/geocode/json?address=Toledo&key=YOUR_API_KEY

जवाब:

{
   "results" : [
      {
         "address_components" : [
            {
               "long_name" : "Toledo",
               "short_name" : "Toledo",
               "types" : [ "locality", "political" ]
            },
            {
               "long_name" : "Lucas County",
               "short_name" : "Lucas County",
               "types" : [ "administrative_area_level_2", "political" ]
            },
            {
               "long_name" : "Ohio",
               "short_name" : "OH",
               "types" : [ "administrative_area_level_1", "political" ]
            },
            {
               "long_name" : "United States",
               "short_name" : "US",
               "types" : [ "country", "political" ]
            }
         ],
         "formatted_address" : "Toledo, OH, USA",
         "geometry" : {
            "bounds" : {
               "northeast" : {
                  "lat" : 41.732844,
                  "lng" : -83.454229
               },
               "southwest" : {
                  "lat" : 41.580266,
                  "lng" : -83.69423700000002
               }
            },
            "location" : {
               "lat" : 41.6639383,
               "lng" : -83.55521200000001
            },
            "location_type" : "APPROXIMATE",
            "viewport" : {
               "northeast" : {
                  "lat" : 41.732844,
                  "lng" : -83.454229
               },
               "southwest" : {
                  "lat" : 41.580266,
                  "lng" : -83.69423700000002
               }
            }
         },
         "place_id" : "ChIJeU4e_C2HO4gRRcM6RZ_IPHw",
         "types" : [ "locality", "political" ]
      }
   ],
   "status" : "OK"
}

region=es (स्पेन) के साथ "टोलेडो" के लिए जियोकोडिंग का अनुरोध करने पर, आपको स्पेन का शहर दिखेगा.

अनुरोध:

https://maps.googleapis.com/maps/api/geocode/json?address=Toledo&region=es&key=YOUR_API_KEY

जवाब:

{
   "results" : [
      {
         "address_components" : [
            {
               "long_name" : "Toledo",
               "short_name" : "Toledo",
               "types" : [ "locality", "political" ]
            },
            {
               "long_name" : "Toledo",
               "short_name" : "TO",
               "types" : [ "administrative_area_level_2", "political" ]
            },
            {
               "long_name" : "Castile-La Mancha",
               "short_name" : "CM",
               "types" : [ "administrative_area_level_1", "political" ]
            },
            {
               "long_name" : "Spain",
               "short_name" : "ES",
               "types" : [ "country", "political" ]
            }
         ],
         "formatted_address" : "Toledo, Spain",
         "geometry" : {
            "bounds" : {
               "northeast" : {
                  "lat" : 39.88605099999999,
                  "lng" : -3.9192423
               },
               "southwest" : {
                  "lat" : 39.8383676,
                  "lng" : -4.0796176
               }
            },
            "location" : {
               "lat" : 39.8628316,
               "lng" : -4.027323099999999
            },
            "location_type" : "APPROXIMATE",
            "viewport" : {
               "northeast" : {
                  "lat" : 39.88605099999999,
                  "lng" : -3.9192423
               },
               "southwest" : {
                  "lat" : 39.8383676,
                  "lng" : -4.0796176
               }
            }
         },
         "place_id" : "ChIJ8f21C60Lag0R_q11auhbf8Y",
         "types" : [ "locality", "political" ]
      }
   ],
   "status" : "OK"
}

कॉम्पोनेंट फ़िल्टर करना

जियोकोडिंग के जवाब में, जियोकोडिंग एपीआई किसी खास इलाके के पते के नतीजे दिखा सकता है. components फ़िल्टर का इस्तेमाल करके, पाबंदी तय की जा सकती है. फ़िल्टर में, पाइप (|) से अलग किए गए component:value पेयर की सूची होती है. फ़िल्टर वैल्यू, भू-कोडिंग के अन्य अनुरोधों की तरह ही, स्पेलिंग सुधारने और कुछ हद तक मैच करने के तरीकों के साथ काम करती हैं. अगर जियोकोडर को किसी कॉम्पोनेंट फ़िल्टर से कुछ हद तक मैच होने वाला पता मिलता है, तो रिस्पॉन्स में partial_match फ़ील्ड शामिल होगा.

इन components को फ़िल्टर किया जा सकता है:

  • postal_code, postal_code और postal_code_prefix से मैच करता है.
  • country, देश के नाम या दो अक्षर वाले ISO 3166-1 देशों के कोड से मैच करता है. एपीआई, देशों की जानकारी देने के लिए आईएसओ स्टैंडर्ड का पालन करता है. साथ ही, देश के आईएसओ कोड का इस्तेमाल करने पर, फ़िल्टर करने की सुविधा सबसे अच्छी तरह से काम करती है.

नतीजों पर असर डालने के लिए, इन components का इस्तेमाल किया जा सकता है. हालांकि, इन्हें लागू नहीं किया जाएगा:

  • route, किसी रास्ते के लंबे या छोटे नाम से मेल खाता है.
  • locality, locality और sublocality टाइप से मैच करता है.
  • administrative_area सभी administrative_area लेवल से मेल खाता है.

कॉम्पोनेंट को फ़िल्टर करने के बारे में अहम जानकारी:

  • अनुरोधों में इन कॉम्पोनेंट फ़िल्टर को दोहराएं नहीं, वरना एपीआई इन वैल्यू को दिखाएगा Invalid_request: country, postal_code, route
  • अगर अनुरोध में कॉम्पोनेंट फ़िल्टर दोहराए गए हैं, तो एपीआई उन फ़िल्टर का आकलन OR के बजाय AND के तौर पर करता है.
  • नतीजे, Google Maps के नतीजों से मेल खाते हैं. कभी-कभी, इनसे ZERO_RESULTS के ऐसे जवाब मिलते हैं जिनकी हमने उम्मीद नहीं की होती. किसी जगह के शुरुआती अक्षर लिखने पर पूरा नाम सुझाने की सुविधा का इस्तेमाल करने पर, कुछ मामलों में बेहतर नतीजे मिल सकते हैं. ज़्यादा जानने के लिए, अक्सर पूछे जाने वाले इस सवाल को देखें.
  • पते के हर कॉम्पोनेंट के लिए, उसे address पैरामीटर या components फ़िल्टर में से किसी एक में डालें. दोनों में नहीं. दोनों में एक ही वैल्यू डालने पर, ZERO_RESULTS दिख सकता है.

components=country:GB के साथ "हाई सेंट, हेस्टिंग्स" का जियोकोड डालने पर, अमेरिका के हेस्टिंग्स-ऑन-हडसन के बजाय, इंग्लैंड के हेस्टिंग्स का नतीजा मिलता है.

अनुरोध:

https://maps.googleapis.com/maps/api/geocode/json?address=high+st+hasting&components=country:GB&key=YOUR_API_KEY

जवाब:

{
   "results" : [
      {
         "address_components" : [
            {
               "long_name" : "High Street",
               "short_name" : "High St",
               "types" : [ "route" ]
            },
            {
               "long_name" : "Hastings",
               "short_name" : "Hastings",
               "types" : [ "postal_town" ]
            },
            {
               "long_name" : "East Sussex",
               "short_name" : "East Sussex",
               "types" : [ "administrative_area_level_2", "political" ]
            },
            {
               "long_name" : "England",
               "short_name" : "England",
               "types" : [ "administrative_area_level_1", "political" ]
            },
            {
               "long_name" : "United Kingdom",
               "short_name" : "GB",
               "types" : [ "country", "political" ]
            },
            {
               "long_name" : "TN34 3EY",
               "short_name" : "TN34 3EY",
               "types" : [ "postal_code" ]
            }
         ],
         "formatted_address" : "High St, Hastings TN34 3EY, UK",
         "geometry" : {
            "bounds" : {
               "northeast" : {
                  "lat" : 50.8601041,
                  "lng" : 0.5957329
               },
               "southwest" : {
                  "lat" : 50.8559061,
                  "lng" : 0.5906163
               }
            },
            "location" : {
               "lat" : 50.85830319999999,
               "lng" : 0.5924594
            },
            "location_type" : "GEOMETRIC_CENTER",
            "viewport" : {
               "northeast" : {
                  "lat" : 50.8601041,
                  "lng" : 0.5957329
               },
               "southwest" : {
                  "lat" : 50.8559061,
                  "lng" : 0.5906163
               }
            }
         },
         "partial_match" : true,
         "place_id" : "ChIJ-Ws929sa30cRKgsMNVkPyws",
         "types" : [ "route" ]
      }
   ],
   "status" : "OK"
}

components=country:ES के साथ "सांता क्रूज़" इलाके के लिए जियोकोड का अनुरोध करने पर, स्पेन के कैनेरी द्वीप समूह में मौजूद सांता क्रूज़ डे टेनेरिफ़ की जानकारी मिलती है.

अनुरोध:

https://maps.googleapis.com/maps/api/geocode/json?components=locality:santa+cruz|country:ES&key=YOUR_API_KEY

जवाब:

{
   "results" : [
      {
         "address_components" : [
            {
               "long_name" : "Santa Cruz de Tenerife",
               "short_name" : "Santa Cruz de Tenerife",
               "types" : [ "locality", "political" ]
            },
            {
               "long_name" : "Santa Cruz de Tenerife",
               "short_name" : "TF",
               "types" : [ "administrative_area_level_2", "political" ]
            },
            {
               "long_name" : "Canary Islands",
               "short_name" : "CN",
               "types" : [ "administrative_area_level_1", "political" ]
            },
            {
               "long_name" : "Spain",
               "short_name" : "ES",
               "types" : [ "country", "political" ]
            }
         ],
         "formatted_address" : "Santa Cruz de Tenerife, Spain",
         "geometry" : {
            "bounds" : {
               "northeast" : {
                  "lat" : 28.487616,
                  "lng" : -16.2356646
               },
               "southwest" : {
                  "lat" : 28.4280248,
                  "lng" : -16.3370045
               }
            },
            "location" : {
               "lat" : 28.4636296,
               "lng" : -16.2518467
            },
            "location_type" : "APPROXIMATE",
            "viewport" : {
               "northeast" : {
                  "lat" : 28.487616,
                  "lng" : -16.2356646
               },
               "southwest" : {
                  "lat" : 28.4280248,
                  "lng" : -16.3370045
               }
            }
         },
         "place_id" : "ChIJcUElzOzMQQwRLuV30nMUEUM",
         "types" : [ "locality", "political" ]
      }
   ],
   "status" : "OK"
}

कॉम्पोनेंट फ़िल्टर करने की सुविधा, ZERO_RESULTS रिस्पॉन्स तब ही दिखाती है, जब आपने ऐसे फ़िल्टर दिए हों जो एक-दूसरे को बाहर रखते हों.

अनुरोध:

https://maps.googleapis.com/maps/api/geocode/json?components=administrative_area:TX|country:FR&key=YOUR_API_KEY

जवाब:

{
   "results" : [],
   "status" : "ZERO_RESULTS"
}

components फ़िल्टर का इस्तेमाल करके, पते के पैरामीटर के बिना मान्य क्वेरी बनाई जा सकती हैं. (पूरे पते को जियोकोड करते समय, अगर अनुरोध में इमारतों के नाम और नंबर शामिल हैं, तो address पैरामीटर ज़रूरी है.)

अनुरोध:

https://maps.googleapis.com/maps/api/geocode/json?components=route:Annankatu|administrative_area:Helsinki|country:Finland&key=YOUR_API_KEY

जवाब:

{
   "results" : [
      {
         "address_components" : [
            {
               "long_name" : "Annankatu",
               "short_name" : "Annankatu",
               "types" : [ "route" ]
            },
            {
               "long_name" : "Helsinki",
               "short_name" : "HKI",
               "types" : [ "locality", "political" ]
            },
            {
               "long_name" : "Finland",
               "short_name" : "FI",
               "types" : [ "country", "political" ]
            },
            {
               "long_name" : "00101",
               "short_name" : "00101",
               "types" : [ "postal_code" ]
            }
         ],
         "formatted_address" : "Annankatu, 00101 Helsinki, Finland",
         "geometry" : {
            "bounds" : {
               "northeast" : {
                  "lat" : 60.168997,
                  "lng" : 24.9433353
               },
               "southwest" : {
                  "lat" : 60.16226160000001,
                  "lng" : 24.9332897
               }
            },
            "location" : {
               "lat" : 60.1657808,
               "lng" : 24.938451
            },
            "location_type" : "GEOMETRIC_CENTER",
            "viewport" : {
               "northeast" : {
                  "lat" : 60.168997,
                  "lng" : 24.9433353
               },
               "southwest" : {
                  "lat" : 60.16226160000001,
                  "lng" : 24.9332897
               }
            }
         },
         "place_id" : "ChIJARW7C8sLkkYRgl4je4-RPUM",
         "types" : [ "route" ]
      }
   ],
   "status" : "OK"
}