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_ARGUMENT गड़बड़ी का मैसेज दिखता है.

सेशन तब शुरू होता है, जब उपयोगकर्ता कोई क्वेरी टाइप करना शुरू करता है. यह तब खत्म होता है, जब वह कोई जगह चुनता है और जगह की जानकारी या पते की पुष्टि करने के लिए कॉल करता है. हर सेशन में कई क्वेरी हो सकती हैं. इसके बाद, जगह की जानकारी या पते की पुष्टि का एक अनुरोध किया जा सकता है. किसी सेशन में हर अनुरोध के लिए इस्तेमाल किए गए क्रेडेंशियल, एक ही 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 में या text को structuredFormat में बदलने की कोशिश नहीं करनी चाहिए.

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