Method: places.autocomplete

दिए गए इनपुट के लिए अनुमान दिखाता है.

एचटीटीपी अनुरोध

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

यह यूआरएल, gRPC ट्रांसकोडिंग सिंटैक्स का इस्तेमाल करता है.

अनुरोध का मुख्य भाग

अनुरोध के मुख्य हिस्से में, इस स्ट्रक्चर का डेटा शामिल होता है:

JSON के काेड में दिखाना
{
  "input": string,
  "locationBias": {
    object (LocationBias)
  },
  "locationRestriction": {
    object (LocationRestriction)
  },
  "includedPrimaryTypes": [
    string
  ],
  "includedRegionCodes": [
    string
  ],
  "languageCode": string,
  "regionCode": string,
  "origin": {
    object (LatLng)
  },
  "inputOffset": integer,
  "includeQueryPredictions": boolean,
  "sessionToken": string,
  "includePureServiceAreaBusinesses": boolean,
  "includeFutureOpeningBusinesses": boolean
}
फ़ील्ड
input

string

ज़रूरी है. वह टेक्स्ट स्ट्रिंग जिसमें खोजना है.

locationBias

object (LocationBias)

ज़रूरी नहीं. नतीजों को किसी खास जगह के हिसाब से दिखाता है.

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

locationRestriction

object (LocationRestriction)

ज़रूरी नहीं. नतीजों को किसी खास जगह तक सीमित करें.

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

includedPrimaryTypes[]

string

ज़रूरी नहीं. जगह के टाइप (https://developers.google.com/maps/documentation/places/web-service/place-types) में शामिल प्राइमरी जगह का टाइप (उदाहरण के लिए, "restaurant" या "gas_station"), सिर्फ़ (regions) या सिर्फ़ (cities). किसी जगह की जानकारी सिर्फ़ तब दिखाई जाती है, जब उसका मुख्य टाइप इस सूची में शामिल हो. ज़्यादा से ज़्यादा पांच वैल्यू दी जा सकती हैं. अगर कोई टाइप नहीं दिया गया है, तो सभी Place टाइप दिखाए जाते हैं.

includedRegionCodes[]

string

ज़रूरी नहीं. सिर्फ़ उन क्षेत्रों के नतीजे शामिल करें जिनके लिए, ज़्यादा से ज़्यादा 15 CLDR दो-वर्ण वाले क्षेत्र के कोड दिए गए हैं. खाली सेट होने पर, नतीजों पर कोई पाबंदी नहीं लगेगी. अगर locationRestriction और includedRegionCodes, दोनों सेट हैं, तो नतीजे इंटरसेक्शन वाले इलाके में दिखेंगे.

languageCode

string

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

regionCode

string

ज़रूरी नहीं. देश/इलाके का कोड. इसे CLDR के दो वर्णों वाले देश/इलाके के कोड के तौर पर दिखाया जाता है. इससे पते के फ़ॉर्मैट, खोज नतीजों की रैंकिंग, और खोज नतीजों पर असर पड़ सकता है. इससे नतीजे, चुने गए इलाके तक सीमित नहीं होते. किसी क्षेत्र के हिसाब से खोज के नतीजे पाने के लिए, region_code_restriction का इस्तेमाल करें.

origin

object (LatLng)

ज़रूरी नहीं. यह मूल जगह है, जहां से डेस्टिनेशन (distanceMeters के तौर पर दिखाई गई) तक की जियोडेसिक दूरी का हिसाब लगाया जाता है. अगर इस वैल्यू को शामिल नहीं किया जाता है, तो जियोडेसिक दूरी नहीं दिखाई जाएगी.

inputOffset

integer

ज़रूरी नहीं. यह input का ज़ीरो-आधारित यूनिकोड वर्ण ऑफ़सेट है. यह input में कर्सर की जगह दिखाता है. कर्सर की पोज़िशन से, इस बात पर असर पड़ सकता है कि कौनसे सुझाव दिखाए जाएंगे.

अगर यह फ़ील्ड खाली है, तो इसकी डिफ़ॉल्ट वैल्यू input की लंबाई के बराबर होती है.

includeQueryPredictions

boolean

ज़रूरी नहीं. अगर यह वैल्यू सही है, तो जवाब में जगह और क्वेरी, दोनों के अनुमान शामिल होंगे. ऐसा न करने पर, जवाब में सिर्फ़ जगहों के सुझाव दिखेंगे.

sessionToken

string

ज़रूरी नहीं. यह एक स्ट्रिंग है, जो बिलिंग के मकसद से Autocomplete सेशन की पहचान करती है. यह यूआरएल और फ़ाइल के नाम के लिए सुरक्षित base64 स्ट्रिंग होनी चाहिए. साथ ही, इसकी लंबाई ज़्यादा से ज़्यादा 36 ASCII वर्णों की होनी चाहिए. ऐसा न होने पर, INVALID_ARGUMENT गड़बड़ी का मैसेज दिखता है.

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

हमारा सुझाव है कि आप इन दिशा-निर्देशों का पालन करें:

  • जगह के नाम अपने-आप भरने की सुविधा के लिए किए गए सभी कॉल के लिए, सेशन टोकन का इस्तेमाल करें.
  • हर सेशन के लिए नया टोकन जनरेट करें. हमारा सुझाव है कि आप वर्शन 4 के यूयूआईडी का इस्तेमाल करें.
  • पक्का करें कि किसी सेशन में, जगह की जानकारी अपने-आप भरने, जगह की जानकारी, और पते की पुष्टि करने के सभी अनुरोधों के लिए इस्तेमाल किए गए क्रेडेंशियल, एक ही Cloud Console प्रोजेक्ट से जुड़े हों.
  • पक्का करें कि हर नए सेशन के लिए, एक यूनीक सेशन टोकन पास किया गया हो. एक से ज़्यादा सेशन के लिए एक ही टोकन का इस्तेमाल करने पर, हर अनुरोध के लिए अलग-अलग बिल भेजा जाएगा.
includePureServiceAreaBusinesses

boolean

ज़रूरी नहीं. अगर फ़ील्ड को 'सही है' पर सेट किया गया है, तो घर या दुकान पर सेवा देने वाले कारोबारों को शामिल करें. घर या दुकान पर सेवा देने वाला कारोबार, ग्राहकों के पते पर जाकर सेवा देता है या डिलीवरी करता है. वह अपने कारोबार के पते पर ग्राहकों को सेवा नहीं देता. उदाहरण के लिए, प्लंबर या सफ़ाई की सेवाएं देने वाले कारोबार. उन कारोबारों का Google Maps पर कोई पता या जगह नहीं होती. Places API, इन कारोबारों के लिए location, plusCode, और जगह से जुड़े अन्य फ़ील्ड नहीं दिखाएगा.

includeFutureOpeningBusinesses

boolean

ज़रूरी नहीं. अगर ऐसा है, तो उन कारोबारों को भी शामिल करें जो अभी खुले नहीं हैं, लेकिन आने वाले समय में खुलेंगे.

जवाब का मुख्य भाग

places.autocomplete के लिए रिस्पॉन्स प्रोटो.

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

JSON फ़ॉर्मैट में दिखाया गया है
{
  "suggestions": [
    {
      object (Suggestion)
    }
  ]
}
फ़ील्ड
suggestions[]

object (Suggestion)

इसमें सुझावों की सूची होती है. सुझावों को काम के हिसाब से घटते क्रम में लगाया जाता है.

अनुमति पाने के लिंक

नीचे दिए गए OAuth के लिंक की ज़रूरत हाेती है:

  • https://www.googleapis.com/auth/cloud-platform

LocationBias

वह क्षेत्र जिसमें खोजना है. नतीजे, बताए गए इलाके के हिसाब से पक्षपाती हो सकते हैं.

JSON के काेड में दिखाना
{

  // Union field type can be only one of the following:
  "rectangle": {
    object (Viewport)
  },
  "circle": {
    object (Circle)
  }
  // End of list of possible types for union field type.
}
फ़ील्ड

यूनियन फ़ील्ड type.

type इनमें से सिर्फ़ एक हो सकता है:

rectangle

object (Viewport)

पूर्वोत्तर और दक्षिण-पश्चिम कोने से तय किया गया व्यूपोर्ट.

circle

object (Circle)

केंद्र बिंदु और त्रिज्या से तय किया गया वृत्त.

LocationRestriction

वह क्षेत्र जिसमें खोजना है. नतीजे, चुनी गई जगह के हिसाब से दिखाए जाएंगे.

JSON के काेड में दिखाना
{

  // Union field type can be only one of the following:
  "rectangle": {
    object (Viewport)
  },
  "circle": {
    object (Circle)
  }
  // End of list of possible types for union field type.
}
फ़ील्ड

यूनियन फ़ील्ड type.

type इनमें से सिर्फ़ एक हो सकता है:

rectangle

object (Viewport)

पूर्वोत्तर और दक्षिण-पश्चिम कोने से तय किया गया व्यूपोर्ट.

circle

object (Circle)

केंद्र बिंदु और त्रिज्या से तय किया गया वृत्त.

सुझाव

ऑटोकंप्लीट करने के लिए सुझाया गया नतीजा.

JSON के काेड में दिखाना
{

  // Union field kind can be only one of the following:
  "placePrediction": {
    object (PlacePrediction)
  },
  "queryPrediction": {
    object (QueryPrediction)
  }
  // End of list of possible types for union field kind.
}
फ़ील्ड

यूनियन फ़ील्ड kind.

kind इनमें से सिर्फ़ एक हो सकता है:

placePrediction

object (PlacePrediction)

किसी जगह के लिए पूर्वानुमान.

queryPrediction

object (QueryPrediction)

किसी क्वेरी के लिए अनुमान.

PlacePrediction

जगह के नाम अपने-आप पूरे होने की सुविधा से मिले सुझाव के लिए अनुमानित नतीजे.

JSON के काेड में दिखाना
{
  "place": string,
  "placeId": string,
  "text": {
    object (FormattableText)
  },
  "structuredFormat": {
    object (StructuredFormat)
  },
  "types": [
    string
  ],
  "distanceMeters": integer
}
फ़ील्ड
place

string

सुझाई गई जगह का संसाधन नाम. इस नाम का इस्तेमाल उन अन्य एपीआई में किया जा सकता है जो जगह के नाम स्वीकार करते हैं.

placeId

string

सुझाए गए प्लेस का यूनीक आइडेंटिफ़ायर. इस आइडेंटिफ़ायर का इस्तेमाल उन अन्य एपीआई में किया जा सकता है जो जगह के आईडी स्वीकार करते हैं.

text

object (FormattableText)

इसमें, दिखाए गए नतीजे का ऐसा नाम होता है जिसे आसानी से पढ़ा जा सकता है. कारोबार के नतीजों के लिए, यह आम तौर पर कारोबार का नाम और पता होता है.

text का सुझाव उन डेवलपर के लिए दिया जाता है जिन्हें एक यूज़र इंटरफ़ेस (यूआई) एलिमेंट दिखाना है. जिन डेवलपर को दो अलग-अलग, लेकिन मिलते-जुलते यूज़र इंटरफ़ेस (यूआई) एलिमेंट दिखाने हैं वे structuredFormat का इस्तेमाल कर सकते हैं. ये जगह के अनुमान को दिखाने के दो अलग-अलग तरीके हैं. उपयोगकर्ताओं को structuredFormat को text में या इसके उलट पार्स करने की कोशिश नहीं करनी चाहिए.

यह टेक्स्ट, places.get से मिले displayName से अलग हो सकता है.

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

structuredFormat

object (StructuredFormat)

जगह के नाम का अनुमान लगाने की सुविधा को दो हिस्सों में बांटा गया है. मुख्य टेक्स्ट में जगह का नाम और सेकंडरी टेक्स्ट में जगह की पहचान करने वाली अन्य सुविधाएं (जैसे कि शहर या इलाका) शामिल हैं.

structuredFormat का सुझाव उन डेवलपर के लिए दिया जाता है जो दो अलग-अलग, लेकिन मिलते-जुलते यूज़र इंटरफ़ेस (यूआई) एलिमेंट दिखाना चाहते हैं. जिन डेवलपर को सिर्फ़ एक यूज़र इंटरफ़ेस (यूआई) एलिमेंट दिखाना है वे text का इस्तेमाल कर सकते हैं. ये जगह के अनुमान को दिखाने के दो अलग-अलग तरीके हैं. उपयोगकर्ताओं को structuredFormat को text में या इसके उलट पार्स करने की कोशिश नहीं करनी चाहिए.

types[]

string

https://developers.google.com/maps/documentation/places/web-service/place-types में मौजूद टेबल A या टेबल B में दिए गए टाइप की सूची, जो इस जगह पर लागू होती है.

टाइप, किसी जगह को कैटगरी में बांटने का तरीका है. जिन जगहों के टाइप शेयर किए जाते हैं उनमें एक जैसी विशेषताएं होती हैं.

distanceMeters

integer

अगर origin की वैल्यू दी गई है, तो origin से जियोडेसिक की लंबाई मीटर में. ऐसा हो सकता है कि कुछ अनुमानों, जैसे कि रास्तों की जानकारी इस फ़ील्ड में न दिखे.

FormattableText

यह टेक्स्ट, किसी जगह या क्वेरी के सुझाव को दिखाता है. टेक्स्ट का इस्तेमाल उसी तरह किया जा सकता है या उसे फ़ॉर्मैट किया जा सकता है.

JSON के काेड में दिखाना
{
  "text": string,
  "matches": [
    {
      object (StringRange)
    }
  ]
}
फ़ील्ड
text

string

ऐसा टेक्स्ट जिसका इस्तेमाल उसी रूप में किया जा सकता है या जिसे matches के साथ फ़ॉर्मैट किया जा सकता है.

matches[]

object (StringRange)

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

ये वैल्यू, text के यूनिकोड वर्ण ऑफ़सेट हैं. रेंज को ऑफ़सेट वैल्यू के बढ़ते क्रम में व्यवस्थित किया जाता है.

StringRange

यह फ़ंक्शन, दिए गए टेक्स्ट में मौजूद सबस्ट्रिंग की पहचान करता है.

JSON के काेड में दिखाना
{
  "startOffset": integer,
  "endOffset": integer
}
फ़ील्ड
startOffset

integer

स्ट्रिंग के पहले यूनिकोड वर्ण का ज़ीरो-आधारित ऑफ़सेट (शामिल है).

endOffset

integer

आखिरी यूनिकोड वर्ण का ज़ीरो-आधारित ऑफ़सेट (शामिल नहीं).

StructuredFormat

इसमें किसी जगह या क्वेरी के अनुमान को मुख्य टेक्स्ट और सेकंडरी टेक्स्ट में बांटा गया है.

जगह के बारे में अनुमान लगाने की सुविधा के लिए, मुख्य टेक्स्ट में जगह का नाम होता है. क्वेरी के अनुमानों के लिए, मुख्य टेक्स्ट में क्वेरी शामिल होती है.

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

JSON के काेड में दिखाना
{
  "mainText": {
    object (FormattableText)
  },
  "secondaryText": {
    object (FormattableText)
  }
}
फ़ील्ड
mainText

object (FormattableText)

यह जगह या क्वेरी के नाम को दिखाता है.

secondaryText

object (FormattableText)

यह जगह की पहचान करने या क्वेरी को बेहतर बनाने के लिए, अतिरिक्त जानकारी देने वाली सुविधाओं (जैसे, शहर या इलाका) को दिखाता है.

QueryPrediction

क्वेरी ऑटोकंप्लीट की सुविधा से मिले सुझावों के नतीजे.

JSON के काेड में दिखाना
{
  "text": {
    object (FormattableText)
  },
  "structuredFormat": {
    object (StructuredFormat)
  }
}
फ़ील्ड
text

object (FormattableText)

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

text का सुझाव उन डेवलपर के लिए दिया जाता है जिन्हें एक यूज़र इंटरफ़ेस (यूआई) एलिमेंट दिखाना है. जिन डेवलपर को दो अलग-अलग, लेकिन मिलते-जुलते यूज़र इंटरफ़ेस (यूआई) एलिमेंट दिखाने हैं वे structuredFormat का इस्तेमाल कर सकते हैं. ये क्वेरी के अनुमान को दिखाने के दो अलग-अलग तरीके हैं. उपयोगकर्ताओं को structuredFormat को text में या इसके उलट पार्स करने की कोशिश नहीं करनी चाहिए.

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

structuredFormat

object (StructuredFormat)

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

structuredFormat का सुझाव उन डेवलपर के लिए दिया जाता है जो दो अलग-अलग, लेकिन मिलते-जुलते यूज़र इंटरफ़ेस (यूआई) एलिमेंट दिखाना चाहते हैं. जिन डेवलपर को सिर्फ़ एक यूज़र इंटरफ़ेस (यूआई) एलिमेंट दिखाना है वे text का इस्तेमाल कर सकते हैं. ये क्वेरी के अनुमान को दिखाने के दो अलग-अलग तरीके हैं. उपयोगकर्ताओं को structuredFormat को text में या इसके उलट पार्स करने की कोशिश नहीं करनी चाहिए.