किसी जगह का जियोकोड पता करना

यूरोपियन इकनॉमिक एरिया (ईईए) के डेवलपर

जगह की जियोकोडिंग की मदद से, जगह के आईडी से पता वापस पाया जा सकता है.

जगह के आईडी, Google Places के डेटाबेस और Google Maps पर मौजूद किसी जगह की खास तौर पर पहचान करते हैं. किसी पते की जियोकोडिंग करने पर, जगह के आईडी वापस पाएं. जगह का आईडी, Place Details (नया), Text Search (नया), और Nearby Search (नया) जैसे कई अन्य एपीआई से भी वापस पाया जा सकता है.

जगह की जियोकोडिंग के अनुरोध

जगह की जियोकोडिंग का अनुरोध, इस फ़ॉर्मैट में एचटीटीपी GET अनुरोध होता है:

https://geocode.googleapis.com/v4/geocode/places/PLACE_ID

यहां PLACE_ID में, दिलचस्पी वाली जगह का आईडी शामिल होता है.

अन्य सभी पैरामीटर को यूआरएल पैरामीटर के तौर पर पास करें. वहीं, एपीआई कुंजी या फ़ील्ड मास्क जैसे पैरामीटर को, GET अनुरोध के हिस्से के तौर पर हेडर में पास करें. उदाहरण के लिए:

https://geocode.googleapis.com/v4/geocode/places/ChIJj61dQgK6j4AR4GeTYWZsKWw?key=API_KEY

या curl कमांड में:

curl -X GET -H 'Content-Type: application/json' \
-H "X-Goog-Api-Key: API_KEY" \
"https://geocode.googleapis.com/v4/geocode/places/ChIJj61dQgK6j4AR4GeTYWZsKWw"

अनुरोध करने के लिए OAuth का इस्तेमाल करना

Geocoding API का चौथा वर्शन, पुष्टि करने के लिए OAuth 2.0 का इस्तेमाल करता है. Geocoding API के साथ OAuth का इस्तेमाल करने के लिए, OAuth टोकन को सही स्कोप असाइन किया जाना चाहिए. Geocoding API, जगह की जियोकोडिंग के लिए इन स्कोप का इस्तेमाल करता है:

  • https://www.googleapis.com/auth/maps-platform.geocode — इसका इस्तेमाल, Geocoding API के सभी तरीकों के साथ किया जा सकता है.
  • https://www.googleapis.com/auth/maps-platform.geocode.place — इसका इस्तेमाल, जगह की जियोकोडिंग के लिए सिर्फ़ GeocodePlace के साथ किया जा सकता है.

इसके अलावा, Geocoding API के सभी तरीकों के लिए, सामान्य https://www.googleapis.com/auth/cloud-platform स्कोप का इस्तेमाल किया जा सकता है. यह स्कोप, डेवलपमेंट के दौरान काम का होता है. हालांकि, प्रोडक्शन के दौरान नहीं, क्योंकि यह एक सामान्य स्कोप है. इससे सभी तरीकों का ऐक्सेस मिलता है.

ज़्यादा जानकारी और उदाहरणों के लिए, OAuth का इस्तेमाल करना लेख पढ़ें.

जगह की जियोकोडिंग के जवाब

जगह की जियोकोडिंग, GeocodeResult ऑब्जेक्ट दिखाता है. यह ऑब्जेक्ट, जगह के आईडी से जुड़ी जगह को दिखाता है.

Geocoding API के जवाबों में, types कलेक्शन GeocodeResult में दो मुख्य जगहों पर शामिल होते हैं:

  1. GeocodeResult.types: यह कलेक्शन, नतीजे के कुल टाइप(टाइपों) के बारे में बताता है. संभावित वैल्यू, Places API में इस्तेमाल किए जाने वाले जगह के टाइप से ली जाती हैं. ज़्यादा जानकारी के लिए, जगह के टाइप की टेबल A और B देखें.
  2. GeocodeResult.addressComponents[].types: हर पते के कॉम्पोनेंट में एक types कलेक्शन होता है. यह कलेक्शन, पते के उस खास हिस्से के टाइप के बारे में बताता है. ये वैल्यू, Places API में इस्तेमाल किए जाने वाले पते के टाइप और पते के कॉम्पोनेंट के टाइप की टेबल से ली जाती हैं.

पूरा JSON ऑब्जेक्ट, इस फ़ॉर्मैट में होता है:

{
  "place": "//places.googleapis.com/places/ChIJj61dQgK6j4AR4GeTYWZsKWw",
  "placeId": "ChIJj61dQgK6j4AR4GeTYWZsKWw",
  "location": {
    "latitude": 37.4220541,
    "longitude": -122.08532419999999
  },
  "granularity": "ROOFTOP",
  "viewport": {
    "low": {
      "latitude": 37.4209489697085,
      "longitude": -122.08846930000001
    },
    "high": {
      "latitude": 37.4236469302915,
      "longitude": -122.0829156
    }
  },
  "formattedAddress": "1600 Amphitheatre Pkwy, Mountain View, CA 94043, USA",
  "postalAddress": {
    "regionCode": "US",
    "languageCode": "en",
    "postalCode": "94043",
    "administrativeArea": "CA",
    "locality": "Mountain View",
    "addressLines": [
      "1600 Amphitheatre Pkwy"
    ]
  },
  "addressComponents": [
    {
      "longText": "1600",
      "shortText": "1600",
      "types": [
        "street_number"
      ]
    },
    {
      "longText": "Amphitheatre Parkway",
      "shortText": "Amphitheatre Pkwy",
      "types": [
        "route"
      ],
      "languageCode": "en"
    },
    {
      "longText": "Mountain View",
      "shortText": "Mountain View",
      "types": [
        "locality",
        "political"
      ],
      "languageCode": "en"
    },
    {
      "longText": "Santa Clara County",
      "shortText": "Santa Clara County",
      "types": [
        "administrative_area_level_2",
        "political"
      ],
      "languageCode": "en"
    },
    {
      "longText": "California",
      "shortText": "CA",
      "types": [
        "administrative_area_level_1",
        "political"
      ],
      "languageCode": "en"
    },
    {
      "longText": "United States",
      "shortText": "US",
      "types": [
        "country",
        "political"
      ],
      "languageCode": "en"
    },
    {
      "longText": "94043",
      "shortText": "94043",
      "types": [
        "postal_code"
      ]
    }
  ],
  "types": [
    "establishment",
    "point_of_interest"
  ]
}

ज़रूरी पैरामीटर

  • place — उस जगह का आईडी जिसके लिए आपको ऐसा पता चाहिए जिसे आसानी से पढ़ा जा सके. जगह का आईडी, एक यूनीक आइडेंटिफ़ायर होता है. इसका इस्तेमाल, Google APIs के साथ किया जा सकता है. उदाहरण के लिए, Roads API से मिले placeID का इस्तेमाल करके, स्नैप किए गए पॉइंट का पता पाया जा सकता है. जगह के आईडी के बारे में ज़्यादा जानकारी के लिए, जगह के आईडी लेख पढ़ें.

ज़रूरी नहीं पैरामीटर

  • languageCode

    वह भाषा जिसमें नतीजे दिखाने हैं.

    • उपलब्ध भाषाओं की सूची देखें . Google, उपलब्ध भाषाओं की सूची को अक्सर अपडेट करता है . इसलिए, हो सकता है कि इस सूची में पूरी जानकारी न हो.
    • अगर languageCode नहीं दिया जाता है, तो एपीआई डिफ़ॉल्ट रूप से, जगह की स्थानीय भाषा और स्क्रिप्ट का इस्तेमाल करता है. अगर आपने भाषा का कोई अमान्य कोड तय किया है, तो एपीआई INVALID_ARGUMENT गड़बड़ी दिखाता है.
    • एपीआई, मोहल्ले का ऐसा पता उपलब्ध कराने की पूरी कोशिश करता है जिसे उपयोगकर्ता और स्थानीय लोग, दोनों आसानी से पढ़ सकें. इस लक्ष्य को पूरा करने के लिए, यह मोहल्ले के पते स्थानीय भाषा में दिखाता है. साथ ही, ज़रूरत पड़ने पर, पसंदीदा भाषा के हिसाब से, पते को ऐसी स्क्रिप्ट में ट्रांसलिटरेट करता है जिसे उपयोगकर्ता आसानी से पढ़ सके. अन्य सभी पते, पसंदीदा भाषा में दिखाए जाते हैं. पते के सभी कॉम्पोनेंट, एक ही भाषा में दिखाए जाते हैं. यह भाषा, पहले कॉम्पोनेंट से चुनी जाती है.
    • अगर कोई नाम, पसंदीदा भाषा में उपलब्ध नहीं है, तो एपीआई, सबसे मिलते-जुलते नाम का इस्तेमाल करता है.
    • पसंदीदा भाषा का, नतीजों के उस सेट पर थोड़ा असर पड़ता है जिसे एपीआई दिखाता है. साथ ही, इस पर भी असर पड़ता है कि नतीजे किस क्रम में दिखाए जाते हैं. जियोकोडर, भाषा के हिसाब से शॉर्ट फ़ॉर्म का अलग-अलग मतलब निकालता है. जैसे, सड़कों के टाइप के लिए इस्तेमाल किए जाने वाले शॉर्ट फ़ॉर्म या ऐसे समानार्थी शब्द जो एक भाषा में मान्य हो सकते हैं, लेकिन दूसरी भाषा में नहीं.
  • regionCode

    देश/इलाके का कोड, दो वर्णों वाली CLDR कोड वैल्यू के तौर पर. कोई डिफ़ॉल्ट वैल्यू नहीं है. ज़्यादातर CLDR कोड, ISO 3166-1 कोड के जैसे ही होते हैं.

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

  • FieldMask

    जवाब में दिखाए जाने वाले फ़ील्ड तय करने के लिए, जवाब का फ़ील्ड मास्क बनाएं. यूआरएल पैरामीटर $fields या fields का इस्तेमाल करके या एचटीटीपी हेडर X-Goog-FieldMask का इस्तेमाल करके, जवाब का फ़ील्ड मास्क, तरीके में पास करें. उदाहरण के लिए, नीचे दिए गए अनुरोध के जवाब में सिर्फ़ formattedAddress फ़ील्ड दिखेगा.

    curl -X GET -H 'Content-Type: application/json' \
    -H 'X-Goog-FieldMask: formattedAddress' \
    -H "X-Goog-Api-Key: API_KEY" \
    "https://geocode.googleapis.com/v4/geocode/places/ChIJj61dQgK6j4AR4GeTYWZsKWw"
    
    यह जवाब मिला:
    {
      "formattedAddress": "1600 Amphitheatre Pkwy, Mountain View, CA 94043, USA"
    }

    ज़्यादा जानकारी के लिए, जवाब में दिखाए जाने वाले फ़ील्ड चुनना लेख पढ़ें.