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
}
फ़ील्ड
input

string

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

locationBias

object (LocationBias)

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

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

locationRestriction

object (LocationRestriction)

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

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

includedPrimaryTypes[]

string

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

includedRegionCodes[]

string

ज़रूरी नहीं. सिर्फ़ उन इलाकों के नतीजे शामिल करें जिनके लिए आपने CLDR के दो वर्णों वाले ज़्यादा से ज़्यादा 15 इलाके कोड तय किए हैं. किसी खाली सेट से नतीजों पर पाबंदी नहीं होगी. अगर 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

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

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

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

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

boolean

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

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

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

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

JSON के काेड में दिखाना
{
  "suggestions": [
    {
      object (Suggestion)
    }
  ]
}
फ़ील्ड
suggestions[]

object (Suggestion)

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

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 में या text को structuredFormat में बदलने की कोशिश नहीं करनी चाहिए.

यह टेक्स्ट, 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 में या text को structuredFormat में बदलने की कोशिश नहीं करनी चाहिए.

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

structuredFormat

object (StructuredFormat)

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

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