ऑटोकंप्लीट (नया)

ऑटोकंप्लीट (नई) सेवा ऐसी वेब सेवा है जो किसी एचटीटीपी अनुरोध के जवाब में, जगह के बारे में अनुमान और क्वेरी के अनुमान दिखाती है. अनुरोध में, ऐसी टेक्स्ट खोज स्ट्रिंग और भौगोलिक सीमाएं तय करें जो खोज की जगह को कंट्रोल करती हैं.

ऑटोकंप्लीट (नई) सेवा, इनपुट के पूरे शब्दों और सबस्ट्रिंग से मेल खा सकती है. इससे जगहों के नामों, पतों, और प्लस कोड को ठीक किया जा सकता है. इसलिए, ऐप्लिकेशन किसी भी उपयोगकर्ता के टाइप के हिसाब से क्वेरी भेज सकते हैं, ताकि उन्हें तुरंत जगह उपलब्ध कराने और क्वेरी का अनुमान लगाने के लिए क्वेरी भेजी जा सकें.

ऑटोकंप्लीट (नया) एपीआई से मिलने वाले रिस्पॉन्स में दो तरह के अनुमान हो सकते हैं:

  • जगह के सुझाव: बताई गई इनपुट टेक्स्ट स्ट्रिंग और खोज की जगह पर आधारित जगहें, जैसे कि कारोबार, पते, और लोकप्रिय जगहें. जगह का अनुमान लगाने वाली सुविधा डिफ़ॉल्ट रूप से दिखती है.
  • क्वेरी के लिए सुझाव: इनपुट टेक्स्ट स्ट्रिंग और खोज के लिए दिखाई जाने वाली जगह से मेल खाने वाली क्वेरी स्ट्रिंग. डिफ़ॉल्ट रूप से, क्वेरी के लिए सुझाव नहीं दिखाए जाते. रिस्पॉन्स में क्वेरी का अनुमान जोड़ने के लिए, includeQueryPredictions अनुरोध पैरामीटर का इस्तेमाल करें.

उदाहरण के लिए, एपीआई को एक ऐसी स्ट्रिंग के तौर पर कॉल किया जाता है जिसमें उपयोगकर्ता का सीमित इनपुट होता है "Sicilian piz" होता है. इसकी खोज करने की जगह सिर्फ़ सैन फ़्रांसिस्को, कनाडा तक सीमित है. इसके बाद के जवाब में उन जगहों के सुझावों की सूची दिखती है जो खोज स्ट्रिंग और खोज की जगह से मेल खाते हैं. जैसे, "Sicilian Pizza Kitchen" नाम का रेस्टोरेंट. साथ ही, जगह के बारे में जानकारी भी दिखती है.

दिखाई गई जगह के अनुमान इस तरह से डिज़ाइन किए गए हैं कि लोगों को उनकी पसंद की जगह चुनने में मदद मिल सके. दिखाई गई जगहों के किसी भी अनुमान के बारे में ज़्यादा जानकारी पाने के लिए, जगह की जानकारी (नया) का अनुरोध करें.

इस जवाब में क्वेरी के लिए मिलने वाले सुझावों की सूची भी शामिल हो सकती है. यह सूची, खोज स्ट्रिंग और खोज की जगह से मैच करती है, जैसे कि "Sicilian Pizza & Pasta". रिस्पॉन्स में हर क्वेरी के अनुमान में text फ़ील्ड शामिल होता है. इसमें सुझाई गई टेक्स्ट खोज स्ट्रिंग होती है. इस स्ट्रिंग का इस्तेमाल, Text Search (नया) में इनपुट के तौर पर करें. इससे, आपको ज़्यादा जानकारी के साथ खोज करने में मदद मिलेगी.

ऑटोकंप्लीट (नए) अनुरोध

ऑटोकंप्लीट (नया) अनुरोध, किसी यूआरएल के लिए एचटीटीपी पोस्ट अनुरोध होता है, जो इस फ़ॉर्म में होता है:

https://places.googleapis.com/v1/places:autocomplete

सभी पैरामीटर को POST अनुरोध के हिस्से के रूप में, JSON अनुरोध के मुख्य भाग या हेडर में पास करें. उदाहरण के लिए:

curl -X POST -d '{
  "input": "pizza",
  "locationBias": {
    "circle": {
      "center": {
        "latitude": 37.7937,
        "longitude": -122.3965
      },
      "radius": 500.0
    }
  }
}' \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \
https://places.googleapis.com/v1/places:autocomplete

ऑटोकंप्लीट की सुविधा का इस्तेमाल करके अनुरोध करना (नया)

Places API, मौजूदा ऑटोकंप्लीट और क्वेरी ऑटोकंप्लीट एपीआई के साथ काम करता है. अगर आपको इन एपीआई के बारे में पता है, तो ऑटोकंप्लीट (नया) के प्रीव्यू वर्शन में ये बदलाव किए गए हैं:

  • नया ऑटोकंप्लीट, एचटीटीपी पोस्ट अनुरोधों का इस्तेमाल करता है. एचटीटीपी पोस्ट अनुरोध के हिस्से के तौर पर, अनुरोध के मुख्य हिस्से या हेडर में पैरामीटर पास करें. वहीं, मौजूदा एपीआई के साथ, एचटीटीपी जीईटी अनुरोध का इस्तेमाल करके यूआरएल पैरामीटर पास किए जाते हैं.
  • ऑटोकंप्लीट की नई सुविधा, पुष्टि करने के तरीके के तौर पर एपीआई पासकोड और OAuth, दोनों टोकन के साथ काम करती है.
  • अपने-आप पूरा होने की नई सुविधा में, रिस्पॉन्स फ़ॉर्मैट के तौर पर सिर्फ़ JSON काम करता है.

नीचे दी गई टेबल में मौजूदा ऑटोकंप्लीट और क्वेरी ऑटोकंप्लीट एपीआई में मौजूद उन पैरामीटर की सूची दी गई है जिनका नाम बदला गया है या जिनमें नए ऑटोकंप्लीट की सुविधा के लिए बदलाव किया गया है. इसके अलावा, ऐसे पैरामीटर की सूची भी दी गई है जो अब काम नहीं करते.

मौजूदा पैरामीटर नया पैरामीटर ज़रूरी जानकारी
components includedRegionCodes
language languageCode
location locationBias
ipbias अगर locationBias और locationRestriction, दोनों को छोड़ दिया जाता है, तो एपीआई डिफ़ॉल्ट रूप से आईपी बायिंग का इस्तेमाल करता है.
offset inputOffset
radius locationBias या locationRestriction
region regionCode
stricbounds locationRestriction
sessiontoken sessionToken
types includedPrimaryTypes

इस्तेमाल करने की सीमा

प्रीव्यू रिलीज़ के दौरान, हर प्रोजेक्ट के लिए ज़्यादा से ज़्यादा 600 क्वेरी बनाई जा सकती हैं.

प्रीव्यू रिलीज़ के लिए सहायता विकल्प

हालांकि, झलक वर्शन, सुविधाओं या सेवाओं के काम करने के तरीके के लिए सहायता देने के लिए Google बाध्य नहीं है, फिर भी हम अलग-अलग मामलों के हिसाब से इन डेवलपमेंट के चरणों पर अनुरोधों पर विचार करेंगे.

  • रिलीज़ से पहले वाले वर्शन, Google Maps Platform एसएलए में शामिल नहीं होते हैं.
  • फ़ॉलबैक प्रोसेस का इस्तेमाल करने का सुझाव दिया जाता है. खास तौर पर तब, जब किसी प्रोडक्शन एनवायरमेंट में, रिलीज़ से पहले वाले वर्शन का इस्तेमाल किया जा रहा हो. फ़ॉलबैक की स्थितियों के कुछ उदाहरण: कोटा की सीमा से ज़्यादा हो गए हैं, अपने-आप पूरे होने की मौजूदा स्थिति से तुलना करते समय, अनचाहे रिस्पॉन्स कोड और इंतज़ार का समय या अनचाहे रिस्पॉन्स मिलेंगे.

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

सुविधाओं के बारे में किसी अन्य सवाल के लिए, कृपया newplacesapi@google.com पर ईमेल भेजें.

जवाब के बारे में जानकारी

ऑटोकंप्लीट (नया) करने पर, रिस्पॉन्स के तौर पर JSON ऑब्जेक्ट दिखता है. इस जवाब में:

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

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

{
  "suggestions": [
    {
      "placePrediction": {
        "place": "places/ChIJ5YQQf1GHhYARPKG7WLIaOko",
        "placeId": "ChIJ5YQQf1GHhYARPKG7WLIaOko",
        "text": {
          "text": "Amoeba Music, Haight Street, San Francisco, CA, USA",
          "matches": [
            {
              "endOffset": 6
            }]
        },
      ...
    },
    {
      "queryPrediction": {
        "text": {
          "text": "Amoeba Music",
          "matches": [
            {
              "endOffset": 6
            }]
        },
        ...
    }
  ...]
}

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

  • इनपुट

    वह टेक्स्ट स्ट्रिंग जिस पर खोज करनी है. पूरे शब्द और सबस्ट्रिंग, जगह के नाम, पते, और प्लस कोड की जानकारी दें. ऑटोकंप्लीट (नई) सेवा इस स्ट्रिंग के आधार पर उम्मीदवारों की जानकारी दिखाती है और उनकी ज़रूरत के हिसाब से खोज के नतीजे दिखाती है.

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

  • includedPrimaryTypes

    किसी जगह के साथ टेबल A या टेबल B टाइप में से सिर्फ़ एक एक प्राइमरी टाइप हो सकता है. उदाहरण के लिए, मुख्य टाइप "mexican_restaurant" या "steak_house" हो सकता है.

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

    इस पैरामीटर का इस्तेमाल करके, टेबल A या टेबल B से ज़्यादा से ज़्यादा पांच टाइप वैल्यू तय करें. जवाब में शामिल करने के लिए, जगह की जानकारी दिए गए मुख्य टाइप की वैल्यू में से किसी एक से मेल खानी चाहिए.

    INVALID_REQUEST गड़बड़ी के साथ अनुरोध को अस्वीकार कर दिया गया है, अगर:

    • पांच से ज़्यादा प्रकार दिए गए हैं.
    • ऐसे सभी एट्रिब्यूट के बारे में बताया गया है जिनकी पहचान नहीं हो पाई है.
  • includeQueryPredictions

    अगर true है, तो जवाब में जगह और क्वेरी के अनुमान, दोनों शामिल होते हैं. इसकी डिफ़ॉल्ट वैल्यू false है. इसका मतलब है कि रिस्पॉन्स में सिर्फ़ जगहों के अनुमान शामिल होते हैं.

  • includedRegionCodes

    सिर्फ़ तय किए गए इलाकों की सूची से नतीजे शामिल करें. इन्हें दो वर्णों की वैल्यू के तौर पर, ज़्यादा से ज़्यादा 15 ccTLD ("टॉप-लेवल डोमेन") के तौर पर तय किया गया है. अगर इन्हें हटाया जाता है, तो जवाब पर कोई पाबंदी लागू नहीं होती. उदाहरण के लिए, इन क्षेत्रों को जर्मनी और फ़्रांस तक सीमित करने के लिए:

        "includedRegionCodes": ["de", "fr"]

    अगर locationRestriction और includedRegionCodes, दोनों के बारे में बताया जाता है, तो नतीजे दोनों सेटिंग के मेल खाने वाली जगह में ही दिखेंगे.

  • inputOffset

    शून्य पर आधारित यूनिकोड वर्ण ऑफ़सेट, जो input में कर्सर की स्थिति को दिखाता है. कर्सर की जगह से, खोज के नतीजों पर असर पड़ सकता है. अगर कोई फ़ील्ड खाली है, तो डिफ़ॉल्ट रूप से input की लंबाई होती है.

  • languageCode

    वह पसंदीदा भाषा जिसमें नतीजे देने हैं. अगर input में इस्तेमाल की गई भाषा, languageCode में दी गई वैल्यू से अलग है या दिखाई गई जगह का स्थानीय भाषा से languageCode में अनुवाद नहीं है, तो नतीजे अलग-अलग भाषाओं में हो सकते हैं.

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

    खोज की जगह तय करने के लिए, locationBias या locationRestriction के बारे में बताया जा सकता है, लेकिन दोनों को नहीं. locationRestriction उस क्षेत्र के बारे में बताएं जिसमें नतीजे होने चाहिए. साथ ही, locationBias उस क्षेत्र के बारे में बताएं जिसके आस-पास नतीजे होने चाहिए, लेकिन वे उस जगह के बाहर भी हो सकते हैं.

    • locationBias

      खोजने के लिए जगह तय करता है. इस जगह से जुड़ी जानकारी को मापदंड से बाहर रखा गया है. इसका मतलब है कि तय की गई जगह के आस-पास के नतीजे दिखाए जा सकते हैं. इनमें, तय की गई जगह से बाहर के नतीजे भी शामिल हैं.

    • locationRestriction

      खोजने के लिए जगह तय करता है. चुने गए इलाके से बाहर के नतीजे नहीं दिखाए जाते.

    locationBias या locationRestriction क्षेत्र को आयताकार व्यूपोर्ट या सर्कल के रूप में तय करें.

    • एक वृत्त को केंद्र बिंदु और मीटर में त्रिज्या के आधार पर परिभाषित किया जाता है. दायरा 0.0 और 50000.0 के बीच होना चाहिए. डिफ़ॉल्ट वैल्यू 0.0 है. locationRestriction के लिए, आपको दायरा 0.0 से ज़्यादा पर सेट करना होगा. हालांकि, अनुरोध करने पर कोई नतीजा नहीं मिलता.

      उदाहरण के लिए:

      "locationBias": {
        "circle": {
          "center": {
            "latitude": 37.7937,
            "longitude": -122.3965
          },
          "radius": 500.0
        }
      }
    • रेक्टैंगल, अक्षांश-देशांतर व्यूपोर्ट होता है, जिसे low और हाई पॉइंट के सामने दो कोणों से दिखाया जाता है. व्यूपोर्ट को बंद क्षेत्र माना जाता है, यानी इसमें उसकी सीमा शामिल होती है. अक्षांश की सीमाएं -90 से 90 डिग्री के बीच होनी चाहिए और देशांतर की सीमाएं -180 से 180 डिग्री के बीच होनी चाहिए:

      • अगर low = high है, तो व्यूपोर्ट में वह एक पॉइंट शामिल होता है.
      • अगर low.longitude > high.longitude है, तो देशांतर की सीमा उलटी होती है (व्यूपोर्ट 180 डिग्री देशांतर लाइन को पार करता है).
      • अगर low.longitude = -180 डिग्री और high.longitude = 180 डिग्री है, तो व्यूपोर्ट में सभी देशांतर शामिल होते हैं.
      • अगर low.longitude = 180 डिग्री और high.longitude = -180 डिग्री है, तो देशांतर की सीमा खाली होगी.

      low और high, दोनों में जानकारी भरी जानी चाहिए. साथ ही, दिखाया गया बॉक्स खाली नहीं छोड़ा जा सकता. व्यूपोर्ट खाली होने पर, गड़बड़ी हो सकती है.

      उदाहरण के लिए, यह व्यूपोर्ट न्यूयॉर्क शहर को पूरी तरह से घेरता है:

      "locationBias": {
        "rectangle": {
          "low": {
            "latitude": 40.477398,
            "longitude": -74.259087
          },
          "high": {
            "latitude": 40.91618,
            "longitude": -73.70018
          }
        }
      }
  • origin

    वह ऑरिजिन पॉइंट जहां से सीधे मंज़िल तक की दूरी को कैलकुलेट करना है (distanceMeters के तौर पर दिखाया गया है). अगर इस वैल्यू को शामिल नहीं किया जाता है, तो सीधी लाइन की दूरी नहीं दिखाई जाएगी. अक्षांश और देशांतर निर्देशांक के तौर पर तय किए जाने चाहिए:

    "origin": {
        "latitude": 40.477398,
        "longitude": -74.259087
    }
  • regionCode

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

    अमान्य क्षेत्र का कोड देने पर एपीआई, INVALID_ARGUMENT गड़बड़ी दिखाता है. पैरामीटर, लागू कानून के आधार पर नतीजों पर असर डाल सकता है.

  • sessionToken

    सेशन टोकन, उपयोगकर्ता की जनरेट की गई ऐसी स्ट्रिंग होती हैं जो अपने-आप पूरे होने वाले (नए) कॉल को "सेशन" के तौर पर ट्रैक करती हैं. ऑटोकंप्लीट की सुविधा (नया) सेशन टोकन का इस्तेमाल करता है. इसकी मदद से, बिलिंग के मकसद से, उपयोगकर्ता के लिए ऑटोकंप्लीट की सुविधा की मदद से की जाने वाली क्वेरी और चुने गए चरणों को अलग-अलग सेशन में ग्रुप किया जा सकता है. ज़्यादा जानकारी के लिए, सेशन टोकन देखें.

ऑटोकंप्लीट (नए) के उदाहरण

जगह की पाबंदी और locationBias का इस्तेमाल करें

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

locationRestriction खोजे जाने वाले इलाके के बारे में बताता है. चुने गए इलाके से बाहर के नतीजे नहीं दिखाए जाते. नीचे दिए गए उदाहरण में, आपने अनुरोध को सैन फ़्रांसिस्को से जुड़े 5000 मीटर के दायरे में सीमित करने के लिए, locationRestriction का इस्तेमाल किया है:

curl -X POST -d '{
  "input": "Amoeba",
  "locationRestriction": {
    "circle": {
      "center": {
        "latitude": 37.7749,
        "longitude": -122.4194
      },
      "radius": 5000.0
    }
  }
}' \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \
https://places.googleapis.com/v1/places:autocomplete

तय की गई जगहों के सभी नतीजे suggestions कलेक्शन में शामिल होते हैं:

{
  "suggestions": [
    {
      "placePrediction": {
        "place": "places/ChIJ5YQQf1GHhYARPKG7WLIaOko",
        "placeId": "ChIJ5YQQf1GHhYARPKG7WLIaOko",
        "text": {
          "text": "Amoeba Music, Haight Street, San Francisco, CA, USA",
          "matches": [
            {
              "endOffset": 6
            }
          ]
        },
        "structuredFormat": {
          "mainText": {
            "text": "Amoeba Music",
            "matches": [
              {
                "endOffset": 6
              }
            ]
          },
          "secondaryText": {
            "text": "Haight Street, San Francisco, CA, USA"
          }
        },
        "types": [
          "home_goods_store",
          "establishment",
          "store",
          "point_of_interest",
          "electronics_store"
        ]
      }
    }
  ]
}

locationBias का इस्तेमाल करने पर, जगह की जानकारी में झुकाव होता है. इसका मतलब है कि बताई गई जगह के आस-पास के नतीजे दिखाए जा सकते हैं. इनमें उस जगह से बाहर के नतीजे भी शामिल हैं. अगले उदाहरण में, आपने locationBias का इस्तेमाल करने के अनुरोध को बदला है:

curl -X POST -d '{
  "input": "Amoeba",
  "locationBias": {
    "circle": {
      "center": {
        "latitude": 37.7749,
        "longitude": -122.4194
      },
      "radius": 5000.0
    }
  }
}' \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \
https://places.googleapis.com/v1/places:autocomplete

नतीजों में अब 5000 मीटर के दायरे से बाहर के नतीजों के साथ-साथ कई और आइटम भी शामिल हैं:

{
  "suggestions": [
    {
      "placePrediction": {
        "place": "places/ChIJ5YQQf1GHhYARPKG7WLIaOko",
        "placeId": "ChIJ5YQQf1GHhYARPKG7WLIaOko",
        "text": {
          "text": "Amoeba Music, Haight Street, San Francisco, CA, USA",
          "matches": [
            {
              "endOffset": 6
            }
          ]
        },
        "structuredFormat": {
          "mainText": {
            "text": "Amoeba Music",
            "matches": [
              {
                "endOffset": 6
              }
            ]
          },
          "secondaryText": {
            "text": "Haight Street, San Francisco, CA, USA"
          }
        },
        "types": [
          "electronics_store",
          "point_of_interest",
          "store",
          "establishment",
          "home_goods_store"
        ]
      }
    },
    {
      "placePrediction": {
        "place": "places/ChIJr7uwwy58hYARBY-e7-QVwqw",
        "placeId": "ChIJr7uwwy58hYARBY-e7-QVwqw",
        "text": {
          "text": "Amoeba Music, Telegraph Avenue, Berkeley, CA, USA",
          "matches": [
            {
              "endOffset": 6
            }
          ]
        },
        "structuredFormat": {
          "mainText": {
            "text": "Amoeba Music",
            "matches": [
              {
                "endOffset": 6
              }
            ]
          },
          "secondaryText": {
            "text": "Telegraph Avenue, Berkeley, CA, USA"
          }
        },
        "types": [
          "electronics_store",
          "point_of_interest",
          "establishment",
          "home_goods_store",
          "store"
        ]
      }
    },
    ...
  ]
}

शामिल मुख्य टाइप की सुविधा का इस्तेमाल करें

किसी खास तरह के अनुरोध के नतीजों को सीमित करने के लिए, includedPrimaryTypes पैरामीटर का इस्तेमाल करें. इस तरह के नतीजों की सूची टेबल A और टेबल B में दी गई है. आपके पास पांच वैल्यू तक का कलेक्शन बनाने का विकल्प है. अगर इसे हटाया जाता है, तो सभी टाइप दिखाए जाते हैं.

यहां दिए गए उदाहरण में, आपने "सॉकर" के लिए input स्ट्रिंग तय की है. साथ ही, includedPrimaryTypes पैरामीटर का इस्तेमाल करके, नतीजों को "sporting_goods_store" टाइप के सेशन तक सीमित रखा है:

curl -X POST -d '{
  "input": "Soccer",
  "includedPrimaryTypes": ["sporting_goods_store"],
  "locationBias": {
    "circle": {
      "center": {
        "latitude": 37.7749,
        "longitude": -122.4194
      },
      "radius": 500.0
    }
  }
}' \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \
https://places.googleapis.com/v1/places:autocomplete

अगर includedPrimaryTypes पैरामीटर को छोड़ दिया जाता है, तो नतीजों में उस टाइप के ऐसे इंस्टॉलेशन शामिल हो सकते हैं जिन्हें आपको नहीं दिखाना है, जैसे कि "athletic_field".

क्वेरी के अनुमानों का अनुरोध करें

डिफ़ॉल्ट रूप से, क्वेरी के लिए सुझाव नहीं दिखाए जाते. रिस्पॉन्स में क्वेरी के अनुमान जोड़ने के लिए, includeQueryPredictions अनुरोध पैरामीटर का इस्तेमाल करें. उदाहरण के लिए:

curl -X POST -d '{
  "input": "Amoeba",
  "includeQueryPredictions": true,
  "locationBias": {
    "circle": {
      "center": {
        "latitude": 37.7749,
        "longitude": -122.4194
      },
      "radius": 5000.0
    }
  }
}' \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \
https://places.googleapis.com/v1/places:autocomplete

suggestions कलेक्शन में अब जगह के अनुमान और क्वेरी के अनुमान, दोनों शामिल हैं. जैसा कि ऊपर रिस्पॉन्स के बारे में जानकारी में दिखाया गया है. क्वेरी के हर सुझाव में text फ़ील्ड शामिल होता है. इसमें सुझाई गई टेक्स्ट खोज स्ट्रिंग होती है. किसी भी नतीजे के लिए क्वेरी के अनुमान के बारे में ज़्यादा जानकारी पाने के लिए, Text Search (नया) का अनुरोध किया जा सकता है.

ऑरिजिन का इस्तेमाल करें

इस उदाहरण में, अनुरोध में origin को अक्षांश और देशांतर निर्देशांक के तौर पर शामिल करें. जब origin को शामिल किया जाता है, तो एपीआई रिस्पॉन्स में distanceMeters फ़ील्ड शामिल करता है. इसमें origin से डेस्टिनेशन तक सीधी दूरी होती है. यह उदाहरण, ऑरिजिन को सैन फ़्रांसिस्को के सेंटर में सेट करता है:

curl -X POST -d '{
  "input": "Amoeba",
  "origin": {
    "latitude": 37.7749,
    "longitude": -122.4194
  },
  "locationRestriction": {
    "circle": {
      "center": {
        "latitude": 37.7749,
        "longitude": -122.4194
      },
      "radius": 5000.0
    }
  }
}' \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \
https://places.googleapis.com/v1/places:autocomplete

जवाब में अब distanceMeters शामिल है:

{
  "suggestions": [
    {
      "placePrediction": {
        "place": "places/ChIJ5YQQf1GHhYARPKG7WLIaOko",
        "placeId": "ChIJ5YQQf1GHhYARPKG7WLIaOko",
        "text": {
          "text": "Amoeba Music, Haight Street, San Francisco, CA, USA",
          "matches": [
            {
              "endOffset": 6
            }
          ]
        },
        "structuredFormat": {
          "mainText": {
            "text": "Amoeba Music",
            "matches": [
              {
                "endOffset": 6
              }
            ]
          },
          "secondaryText": {
            "text": "Haight Street, San Francisco, CA, USA"
          }
        },
        "types": [
          "home_goods_store",
          "establishment",
          "point_of_interest",
          "store",
          "electronics_store"
        ],
        "distanceMeters": 3012
      }
    }
  ]
}