परिचय
जगह के आईडी, Google के जगहों के डेटाबेस और Google Maps में किसी जगह की अलग पहचान के लिए इस्तेमाल होते हैं. जगह के आईडी, Maps के इन एपीआई के अनुरोधों में स्वीकार किए जाते हैं:
- Geocoding API और Geocoding Service, Maps JavaScript API में किसी जगह के आईडी के लिए पता पाना.
- Routes API और Directions API (लेगसी) और Directions Service, Maps JavaScript API (लेगसी) में शुरुआत की जगह, मंज़िल, और बीच के वेपॉइंट की जानकारी देना.
- Routes API, Distance Matrix API (लेगसी), और Maps JavaScript API (लेगसी) की Distance Matrix सेवा में, शुरुआत और मंज़िल की जगह की जानकारी देना.
- Places API (नया), Android के लिए Places SDK (नया), iOS के लिए Places SDK (नया), और जगहों की लाइब्रेरी में जगह की जानकारी हासिल करना.
- Maps Embed API में, जगह के आईडी के पैरामीटर इस्तेमाल करना.
- Maps के यूआरएल में सर्च क्वेरी वापस पाना.
- Roads API में स्पीड लिमिट दिखाना.
- सीमाओं के लिए डेटा-ड्रिवन स्टाइलिंग की सुविधा में, सीमा के पॉलीगॉन ढूंढना और उन्हें स्टाइल करना.
किसी खास जगह का आईडी ढूंढना
क्या आपको किसी खास जगह का आईडी चाहिए? किसी जगह को खोजने और उसका आईडी पाने के लिए, नीचे दिए गए जगह का आईडी फ़ाइंडर का इस्तेमाल करें:
इसके अलावा, Maps JavaScript API के दस्तावेज़ में, कोड के साथ जगह का आईडी ढूंढने वाला टूल देखा जा सकता है.
कोड या एआई एजेंट की मदद से, जगह के आईडी ढूंढना
जगह का आईडी ढूंढने वाला टूल, ब्राउज़र में एक बार में एक ही जगह का आईडी ढूंढता है. किसी ऐप्लिकेशन, स्क्रिप्ट या एआई एजेंट से जगह के आईडी खोजने के लिए, एपीआई को कॉल करें:
- अपने कोड से:
टेक्स्ट से खोजें (नया)
अनुरोध भेजें. इसमें फ़ील्ड मास्क को
places.idपर सेट करें. सिर्फ़ जगह के आईडी दिखाने वाले अनुरोधों के लिए, Places API Text Search Essentials (IDs Only) SKU के तहत बिलिंग की जाती है. - एआई एजेंट या एलएलएम ऐप्लिकेशन से: Maps Experience एजेंट टूल में Resolution API का इस्तेमाल करें.
resolve_namesऔरresolve_maps_urlsएमसीपी टूल, हर अनुरोध में ज़्यादा से ज़्यादा 20 जगहों के नाम, पते या Google Maps के यूआरएल को जगह के आईडी में बदल सकते हैं. ये तरीके,resolveNamesऔरresolveMapsUrlsREST तरीकों की तरह ही उपलब्ध हैं.
खास जानकारी
जगह का आईडी, टेक्स्ट के तौर पर मौजूद एक आइडेंटिफ़ायर होता है. इससे किसी जगह की खास तौर पर पहचान की जाती है. आइडेंटिफ़ायर की लंबाई अलग-अलग हो सकती है. जगह के आईडी की लंबाई तय नहीं होती. उदाहरण:
-
ChIJgUbEo8cfqokR5lP9_Wh_DaM -
GhIJQWDl0CIeQUARxks3icF8U8A -
EicxMyBNYXJrZXQgU3QsIFdpbG1pbmd0b24sIE5DIDI4NDAxLCBVU0EiGhIYChQKEgnRTo6ixx-qiRHo_bbmkCm7ZRAN -
EicxMyBNYXJrZXQgU3QsIFdpbG1pbmd0b24sIE5DIDI4NDAxLCBVU0E -
IhoSGAoUChIJ0U6OoscfqokR6P225pApu2UQDQ
जगह के आईडी, ज़्यादातर जगहों के लिए उपलब्ध होते हैं. इनमें कारोबार, लैंडमार्क, पार्क, और इंटरसेक्शन शामिल हैं. ऐसा हो सकता है कि एक ही जगह या लोकेशन के लिए, कई अलग-अलग जगह के आईडी हों. जगह के आईडी समय के साथ बदल सकते हैं.
Places API और Google Maps Platform के कई एपीआई में, एक ही जगह के आईडी का इस्तेमाल किया जा सकता है. उदाहरण के लिए, Places API, Maps JavaScript API, Geocoding API, Maps Embed API, और Roads API में किसी जगह का रेफ़रंस देने के लिए, एक ही जगह के आईडी का इस्तेमाल किया जा सकता है.
जगह के आईडी का इस्तेमाल करके, जगह की जानकारी पाना
जगह के आईडी इस्तेमाल करने का एक सामान्य तरीका है, Maps JavaScript API में Places API या Places लाइब्रेरी का इस्तेमाल करके किसी जगह को खोजना. इसके बाद, जगह की जानकारी पाने के लिए, मिले हुए जगह के आईडी का इस्तेमाल करें. जगह के आईडी को सेव किया जा सकता है. साथ ही, बाद में उसी जगह की जानकारी पाने के लिए, इसका इस्तेमाल किया जा सकता है. इस दस्तावेज़ में आगे, जगह के आईडी सेव करने के बारे में पढ़ें.
यहां दिए गए उदाहरणों से पता चलता है कि Places API (नया) और Places API (लेगसी) के लिए, आइकॉन के यूआरएल का अनुरोध कैसे किया जाता है.
Places API (नया प्रॉडक्ट)
Places API का इस्तेमाल करके, जगह का आईडी ढूंढा जा सकता है. इसके लिए, टेक्स्ट से खोजें (नया) अनुरोध करें.
curl -X POST -d '{
"textQuery" : "Spicy Vegetarian Food in Sydney, Australia"
}' \
-H 'Content-Type: application/json' -H 'X-Goog-Api-Key: API_KEY' \
-H 'X-Goog-FieldMask: places.id,places.displayName,places.formattedAddress' \
'https://places.googleapis.com/v1/places:searchText'जवाब में, id फ़ील्ड में जगह का आईडी शामिल होता है, जैसा कि यहां दिखाया गया है:
{
"places": [
{
"id": "ChIJs5ydyTiuEmsR0fRSlU0C7k0",
"formattedAddress": "29 King St, Sydney NSW 2000, Australia",
"displayName": {
"text": "Peace Harmony",
"languageCode": "en"
}
},
...
}अब अनुरोध के यूआरएल में जगह का आईडी शामिल करके, जगह की जानकारी (नया वर्शन) का अनुरोध किया जा सकता है:
https://places.googleapis.com/v1/places/ChIJs5ydyTiuEmsR0fRSlU0C7k0?fields=id,displayName&key=API_KEY
Places API (लेगसी)
Places API का इस्तेमाल करके, Place Search का अनुरोध करके, जगह का आईडी ढूंढा जा सकता है.
यहां दिए गए उदाहरण में, सिडनी, ऑस्ट्रेलिया में किसी जगह से 1,500 मीटर के दायरे में मौजूद 'रेस्टोरेंट' टाइप की जगहों को खोजने का अनुरोध किया गया है. इसमें 'क्रूज़' शब्द शामिल है:
https://maps.googleapis.com/maps/api/place/nearbysearch/json?location=-33.8670522,151.1957362&radius=1500&type=restaurant&keyword=cruise&key=YOUR_API_KEY
जवाब में, place_id फ़ील्ड में जगह का आईडी शामिल होता है. जैसा कि इस स्निपेट में दिखाया गया है:
{
"html_attributions" : [],
"results" : [
{
"geometry" : {
"location" : {
"lat" : -33.870775,
"lng" : 151.199025
}
},
...
"place_id" : "ChIJrTLr-GyuEmsRBfy61i59si0",
...
}
],
"status" : "OK"
}अब जगह के बारे में ज़्यादा जानकारी (लेगसी) का अनुरोध भेजा जा सकता है. इसके लिए, place_id पैरामीटर में जगह का आईडी डालें:
https://maps.googleapis.com/maps/api/place/details/json?place_id=ChIJrTLr-GyuEmsRBfy61i59si0&key=YOUR_API_KEYजगह के आईडी को बाद में इस्तेमाल करने के लिए सेव करना
जगह के आईडी पर, Google Maps Platform की सेवा की शर्तों के सेक्शन 3.2.3(b) में बताई गई, कैश मेमोरी में सेव करने से जुड़ी पाबंदियां लागू नहीं होती हैं. इसलिए, जगह के आईडी की वैल्यू को बाद में इस्तेमाल करने के लिए सेव किया जा सकता है.
सेव किए गए जगह के आईडी रीफ़्रेश करना
Google Maps के डेटाबेस में अपडेट होने की वजह से, जगह के आईडी बदल सकते हैं. इसलिए, Google का सुझाव है कि अगर जगह के आईडी 12 महीने से ज़्यादा पुराने हैं, तो उन्हें रीफ़्रेश करें. बिना किसी शुल्क के जगह के आईडी रीफ़्रेश किए जा सकते हैं. इसके लिए, जगह की जानकारी का अनुरोध करें. साथ ही, fields पैरामीटर में सिर्फ़ जगह के आईडी फ़ील्ड की जानकारी दें.
Places API (नया प्रॉडक्ट)
उदाहरण के लिए, जगह की जानकारी (नया) का इस्तेमाल करना:
https://places.googleapis.com/v1/places/ChIJ05IRjKHxEQ0RJLV_5NLdK2w?fields=id&key=API_KEY
Places API (लेगसी)
उदाहरण के लिए, Places API (लेगसी) का इस्तेमाल करना:
https://maps.googleapis.com/maps/api/place/details/json?place_id=ChIJ05IRjKHxEQ0RJLV_5NLdK2w&fields=place_id&key=API_KEY
इस कॉल से, Place Detail New Essentials IDs Only या Places Details - ID Refresh एसकेयू ट्रिगर होता है.
जगह के आईडी इस्तेमाल करते समय गड़बड़ी के कोड
INVALID_REQUEST
INVALID_REQUEST स्टेटस कोड से पता चलता है कि दिया गया जगह का आईडी मान्य नहीं है. INVALID_REQUEST तब दिख सकता है, जब जगह के आईडी को छोटा किया गया हो या उसमें कोई बदलाव किया गया हो और वह अब सही न हो.
NOT_FOUND
NOT_FOUND स्टेटस कोड से पता चलता है कि जगह का आईडी अब इस्तेमाल में नहीं है. अगर कोई कारोबार बंद हो जाता है या किसी नई जगह पर शिफ़्ट हो जाता है, तो जगह का आईडी पुराना हो सकता है. Google Maps के डेटाबेस में अपडेट होने की वजह से, जगह के आईडी भी बदल सकते हैं. ऐसे मामलों में, किसी जगह को नया जगह का आईडी मिल सकता है. साथ ही, पुराने आईडी से NOT_FOUND रिस्पॉन्स मिलता है.
अगर जगह का आईडी पुराना हो गया है, तो नतीजों को रीफ़्रेश करने के लिए, उस ओरिजनल अनुरोध को सेव करें जिससे जगह का आईडी मिला था. इसके बाद, ज़रूरत के हिसाब से अनुरोध को फिर से जारी करें. ध्यान दें कि फिर से जारी किए गए अनुरोध के लिए, सही एसकेयू के हिसाब से बिल भेजा जाता है.
कभी-कभी, कुछ तरह के जगह के आईडी की वजह से NOT_FOUND रिस्पॉन्स मिल सकता है या एपीआई, रिस्पॉन्स में कोई दूसरा जगह का आईडी दिखा सकता है. जगह के आईडी के टाइप में ये शामिल हैं:
- मोहल्ले के ऐसे पते जो Google Maps पर सटीक पतों के तौर पर मौजूद नहीं हैं, लेकिन पतों की रेंज से उनका अनुमान लगाया जाता है.
- किसी लंबे रास्ते के सेगमेंट, जहां अनुरोध में किसी शहर या इलाके की जानकारी भी दी गई हो.
- चौराहे.
subpremiseटाइप के पते वाले कॉम्पोनेंट वाली जगहें.
ये आईडी अक्सर एक लंबी स्ट्रिंग के तौर पर होते हैं. जगह के आईडी के लिए, ज़्यादा से ज़्यादा लंबाई तय नहीं है. उदाहरण के लिए:
EpID4LC14LC_4LCo4LCv4LGN4LCo4LCX4LCw4LGNIC0g4LC44LGI4LCm4LGN4LCs4LC-4LCm4LGNIOCwsOCxi-CwoeCxjeCwoeCxgSAmIOCwteCwv-CwqOCwr-CxjSDgsKjgsJfgsLDgsY0g4LCu4LGG4LCv4LC_4LCo4LGNIOCwsOCxi-CwoeCxjeCwoeCxgSwg4LC14LC_4LCo4LCv4LGNIOCwqOCwl-CwsOCxjSDgsJXgsL7gsLLgsKjgsYAsIOCwsuCwleCxjeCwt-CxjeCwruCwv-CwqOCwl-CwsOCxjSDgsJXgsL7gsLLgsKjgsYAsIOCwuOCwsOCxguCwsOCxjSDgsKjgsJfgsLDgsY0g4LC14LGG4LC44LGN4LCf4LGNLCDgsLjgsK_gsYDgsKbgsL7gsKzgsL7gsKbgsY0sIOCwueCxiOCwpuCwsOCwvuCwrOCwvuCwpuCxjSwg4LCk4LGG4LCy4LCC4LCX4LC-4LCjIDUwMDA1OSwg4LCt4LC-4LCw4LCk4LCm4LGH4LC24LCCImYiZAoUChIJ31l5uGWYyzsR9zY2qk9lDiASFAoSCd9ZebhlmMs7Efc2NqpPZQ4gGhQKEglDz61OZpjLOxHgDJCFY-o1qBoUChIJi37TW2-YyzsRr_uv50r7tdEiCg1MwFcKFS_dyy4