स्थान आईडी

प्लैटफ़ॉर्म चुनें: Android iOS JavaScript वेब सेवा

जगह के आईडी, Google Places के डेटाबेस और Google Maps पर किसी जगह की खास तौर पर पहचान करते हैं. जगह के आईडी इन Maps API के अनुरोधों में स्वीकार किए जाते हैं:

  • जियोकोडिंग एपीआई वेब सेवा और जियोकोडिंग सेवा, Maps JavaScript API में जगह आईडी के लिए पता लेना.
  • Routes API और निर्देशों एपीआई की वेब सेवा और निर्देश सेवा, Maps JavaScript API में ऑरिजिन, डेस्टिनेशन, और इंटरमीडिएट वेपॉइंट की जानकारी देना.
  • Routes API और डिस्टेंस मैट्रिक्स एपीआई वेब सेवा और डिस्टेंस मैट्रिक्स सेवा, Maps JavaScript API में ऑरिजिन और डेस्टिनेशन की जानकारी देना.
  • Places API वेब सेवा, Android के लिए Places SDK, iOS के लिए Places SDK, और Places लाइब्रेरी में जगह की जानकारी वापस पाई जा रही है.
  • Maps Embed एपीआई में जगह के आईडी के पैरामीटर का इस्तेमाल किया जा रहा है.
  • Maps के यूआरएल से खोज क्वेरी फ़ेच की जा रही हैं.
  • Roads API में, रफ़्तार की सीमाएं दिखाई जा रही हैं.
  • सीमाओं के लिए डेटा-ड्रिवन स्टाइल में सीमा पॉलीगॉन ढूंढना और उन्हें बेहतर बनाना.

किसी खास जगह का आईडी ढूंढना

क्या आपको किसी खास जगह का जगह आईडी चाहिए? किसी जगह को खोजने और उसका आईडी पाने के लिए, नीचे दिए गए जगह का आईडी ढूंढने वाले टूल का इस्तेमाल करें:

इसके अलावा, Maps JavaScript API दस्तावेज़ में कोड के साथ प्लेस आईडी फ़ाइंडर देखें.

खास जानकारी

जगह का आईडी, टेक्स्ट के तौर पर एक आइडेंटिफ़ायर होता है. यह किसी जगह की खास तौर पर पहचान करता है. आइडेंटिफ़ायर की लंबाई अलग-अलग हो सकती है (प्लेस आईडी के लिए ज़्यादा से ज़्यादा लंबाई नहीं तय की गई है). उदाहरण:

  • ChIJgUbEo8cfqokR5lP9_Wh_DaM
  • GhIJQWDl0CIeQUARxks3icF8U8A
  • EicxMyBNYXJrZXQgU3QsIFdpbG1pbmd0b24sIE5DIDI4NDAxLCBVU0EiGhIYChQKEgnRTo6ixx-qiRHo_bbmkCm7ZRAN
  • EicxMyBNYXJrZXQgU3QsIFdpbG1pbmd0b24sIE5DIDI4NDAxLCBVU0E
  • IhoSGAoUChIJ0U6OoscfqokR6P225pApu2UQDQ

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

Places API और कई Google Maps Platform API में एक ही जगह का आईडी इस्तेमाल किया जा सकता है. उदाहरण के लिए, जगहों के एपीआई, Maps JavaScript API, जियोकोडिंग एपीआई, Maps Embed API, और Roads API में किसी जगह की जानकारी देने के लिए, एक ही जगह के आईडी का इस्तेमाल किया जा सकता है.

जगह का आईडी इस्तेमाल करके जगह की जानकारी वापस पाएं

जगह के आईडी का इस्तेमाल करने का एक सामान्य तरीका यह है कि आप किसी जगह को खोजें (उदाहरण के लिए, Maps JavaScript API में जगहें एपीआई या जगहों की जानकारी वाली लाइब्रेरी का इस्तेमाल करके) फिर जगह की जानकारी पाने के लिए दिए गए प्लेस आईडी का इस्तेमाल करें. आप जगह का आईडी सेव कर सकते हैं और इसका इस्तेमाल बाद में उसी जगह की जानकारी को फिर से पाने के लिए कर सकते हैं. प्लेस आईडी सेव करने के बारे में नीचे पढ़ें.

iOS के लिए Places SDK टूल का इस्तेमाल करने का उदाहरण

जगह का आईडी, टेक्स्ट के तौर पर एक आइडेंटिफ़ायर होता है. यह किसी जगह की खास तौर पर पहचान करता है. iOS के लिए, Places SDK टूल में, किसी GMSPlace ऑब्जेक्ट से किसी जगह का आईडी वापस पाया जा सकता है. आपके पास जगह का आईडी सेव करने और उसका इस्तेमाल करके, GMSPlace ऑब्जेक्ट को बाद में फिर से पाने का विकल्प है.

आईडी के हिसाब से जगह पाने के लिए, GMSPlacesClient fetchPlaceFromPlaceID: को कॉल करें और ये पैरामीटर पास करें:

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

एपीआई, बताए गए कॉलबैक के तरीके को GMSPlace ऑब्जेक्ट में पास करता हुआ शुरू करता है. अगर जगह नहीं मिलती है, तो जगह से जुड़ा ऑब्जेक्ट शून्य है.

Swift

// A hotel in Saigon with an attribution.
let placeID = "ChIJV4k8_9UodTERU5KXbkYpSYs"

// Specify the place data types to return.
let fields: GMSPlaceField = GMSPlaceField(rawValue: UInt(GMSPlaceField.name.rawValue) |
  UInt(GMSPlaceField.placeID.rawValue))!

placesClient?.fetchPlace(fromPlaceID: placeID, placeFields: fields, sessionToken: nil, callback: {
  (place: GMSPlace?, error: Error?) in
  if let error = error {
    print("An error occurred: \(error.localizedDescription)")
    return
  }
  if let place = place {
    self.lblName?.text = place.name
    print("The selected place is: \(place.name)")
  }
})

Objective-C

// A hotel in Saigon with an attribution.
NSString *placeID = @"ChIJV4k8_9UodTERU5KXbkYpSYs";

// Specify the place data types to return.
GMSPlaceField fields = (GMSPlaceFieldName | GMSPlaceFieldPlaceID);

[_placesClient fetchPlaceFromPlaceID:placeID placeFields:fields sessionToken:nil callback:^(GMSPlace * _Nullable place, NSError * _Nullable error) {
  if (error != nil) {
    NSLog(@"An error occurred %@", [error localizedDescription]);
    return;
  }
  if (place != nil) {
    NSLog(@"The selected place is: %@", [place name]);
  }
}];

बाद में इस्तेमाल करने के लिए जगह के आईडी सेव करें

जगह के आईडी को Google Maps Platform की सेवा की शर्तों के सेक्शन 3.2.3(b) में बताए गए, कैश मेमोरी में सेव करने की पाबंदियों से छूट मिलती है. इसलिए, बाद में इस्तेमाल करने के लिए, जगह के आईडी की वैल्यू सेव की जा सकती हैं.

सेव की गई जगह के आईडी को रीफ़्रेश करना

अगर 12 महीने से ज़्यादा पुराने प्लेस आईडी हैं, तो हमारा सुझाव है कि आप उन्हें रीफ़्रेश करें. आपके पास बिना किसी शुल्क के जगह के आईडी को रीफ़्रेश करने का विकल्प है. जगह की जानकारी का अनुरोध करके, fields पैरामीटर में सिर्फ़ GMSPlaceFieldPlaceID फ़ील्ड की जानकारी दें. इस कॉल से जगह की जानकारी - आईडी रीफ़्रेश SKU ट्रिगर होती है.

इस अनुरोध से, NOT_FOUND स्टेटस कोड भी दिख सकता है. एक रणनीति यह है कि उस मूल अनुरोध को सेव किया जाए जो हर जगह का आईडी देता है. अगर कोई जगह का आईडी अमान्य हो जाता है, तो नए नतीजे पाने के लिए, अनुरोध को फिर से जारी किया जा सकता है. इन नतीजों में आपकी मूल जगह की जानकारी शामिल हो भी सकती है और नहीं भी. हालांकि, इस अनुरोध के लिए शुल्क लिया जा सकता है.

स्थान आईडी का उपयोग करते समय गड़बड़ी कोड

INVALID_REQUEST स्टेटस कोड से पता चलता है कि जगह का दिया गया आईडी मान्य नहीं है. अगर जगह के आईडी में काट-छांट की गई है या उसमें कोई बदलाव किया गया है और यह सही नहीं है, तो INVALID_REQUEST दिखाया जा सकता है.

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