Method: places.autocomplete

প্রদত্ত ইনপুটের জন্য পূর্বাভাস ফেরত দেয়।

HTTP অনুরোধ

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

URL-টিতে 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) -এ অন্তর্ভুক্ত প্রাথমিক স্থানের ধরণ (উদাহরণস্বরূপ, "রেস্তোরাঁ" বা "গ্যাস স্টেশন"), অথবা শুধুমাত্র (regions) , অথবা শুধুমাত্র (cities) । একটি স্থান তখনই ফেরত দেওয়া হবে যদি তার প্রাথমিক ধরণ এই তালিকায় অন্তর্ভুক্ত থাকে। সর্বোচ্চ ৫টি মান নির্দিষ্ট করা যেতে পারে। যদি কোনো ধরণ নির্দিষ্ট না করা হয়, তাহলে সমস্ত স্থানের ধরণ ফেরত দেওয়া হবে।

includedRegionCodes[]

string

ঐচ্ছিক। শুধুমাত্র নির্দিষ্ট অঞ্চলগুলির ফলাফল অন্তর্ভুক্ত করুন, যা সর্বোচ্চ ১৫টি 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

ঐচ্ছিক। যদি 'true' হয়, তাহলে রেসপন্সে স্থান (Place) এবং কোয়েরি (query) উভয় প্রেডিকশনই অন্তর্ভুক্ত থাকবে। অন্যথায় রেসপন্সে শুধুমাত্র স্থানের প্রেডিকশন ফেরত দেওয়া হবে।

sessionToken

string

ঐচ্ছিক। একটি স্ট্রিং যা বিলিংয়ের উদ্দেশ্যে একটি অটোকমপ্লিট সেশন শনাক্ত করে। এটি অবশ্যই একটি URL এবং ফাইলের নাম-সুরক্ষিত বেস৬৪ স্ট্রিং হতে হবে, যার দৈর্ঘ্য সর্বাধিক ৩৬টি ASCII অক্ষর। অন্যথায় একটি INVALID_ARGUMENT ত্রুটি ফেরত দেওয়া হয়।

ব্যবহারকারী যখন কোনো কোয়েরি টাইপ করা শুরু করেন, তখন সেশনটি শুরু হয় এবং যখন তিনি একটি স্থান নির্বাচন করেন ও স্থানের বিবরণ (Place Details) বা ঠিকানা যাচাইকরণ (Address Validation)-এর জন্য কল করা হয়, তখন এটি শেষ হয়। প্রতিটি সেশনে একাধিক কোয়েরি থাকতে পারে, যার পরে একটি স্থানের বিবরণ বা ঠিকানা যাচাইকরণের অনুরোধ করা হয়। একটি সেশনের মধ্যে প্রতিটি অনুরোধের জন্য ব্যবহৃত ক্রেডেনশিয়াল অবশ্যই একই গুগল ক্লাউড কনসোল (Google Cloud Console) প্রজেক্টের অন্তর্গত হতে হবে। একবার একটি সেশন শেষ হয়ে গেলে, টোকেনটি আর বৈধ থাকে না; আপনার অ্যাপকে প্রতিটি সেশনের জন্য একটি নতুন টোকেন তৈরি করতে হবে। যদি sessionToken প্যারামিটারটি বাদ দেওয়া হয়, অথবা যদি আপনি একটি সেশন টোকেন পুনরায় ব্যবহার করেন, তাহলে সেশনটির জন্য এমনভাবে চার্জ করা হবে যেন কোনো সেশন টোকেন প্রদান করা হয়নি (প্রতিটি অনুরোধের জন্য আলাদাভাবে বিল করা হয়)।

আমরা নিম্নলিখিত নির্দেশিকাগুলো সুপারিশ করছি:

  • সমস্ত প্লেস অটোকমপ্লিট কলের জন্য সেশন টোকেন ব্যবহার করুন।
  • প্রতিটি সেশনের জন্য একটি নতুন টোকেন তৈরি করুন। ভার্সন ৪ UUID ব্যবহার করার পরামর্শ দেওয়া হয়।
  • নিশ্চিত করুন যে একটি সেশনের মধ্যে সমস্ত প্লেস অটোকমপ্লিট, প্লেস ডিটেইলস এবং অ্যাড্রেস ভ্যালিডেশন অনুরোধের জন্য ব্যবহৃত ক্রেডেনশিয়ালগুলো একই ক্লাউড কনসোল প্রজেক্টের অন্তর্গত।
  • প্রতিটি নতুন সেশনের জন্য একটি অনন্য সেশন টোকেন প্রদান করতে ভুলবেন না। একাধিক সেশনের জন্য একই টোকেন ব্যবহার করলে প্রতিটি অনুরোধের জন্য আলাদাভাবে বিল করা হবে।
includePureServiceAreaBusinesses

boolean

ঐচ্ছিক। যদি ফিল্ডটি 'true' সেট করা থাকে, তাহলে বিশুদ্ধ পরিষেবা এলাকার ব্যবসাগুলো অন্তর্ভুক্ত করুন। বিশুদ্ধ পরিষেবা এলাকার ব্যবসা হলো এমন একটি ব্যবসা যা সরাসরি গ্রাহকদের কাছে যায় বা পণ্য সরবরাহ করে, কিন্তু গ্রাহকদের ব্যবসায়িক ঠিকানায় পরিষেবা দেয় না। উদাহরণস্বরূপ, পরিচ্ছন্নতা পরিষেবা বা প্লাম্বারের মতো ব্যবসা। এই ব্যবসাগুলোর গুগল ম্যাপসে কোনো ভৌত ঠিকানা বা অবস্থান নেই। এই ব্যবসাগুলোর জন্য 'Places' ' location , plusCode ' এবং অবস্থান সম্পর্কিত অন্যান্য ফিল্ডগুলো ফেরত দেবে না।

includeFutureOpeningBusinesses

boolean

ঐচ্ছিক। যদি সত্য হয়, তবে সেই ব্যবসাগুলোও অন্তর্ভুক্ত করুন যেগুলো এখনও চালু হয়নি কিন্তু ভবিষ্যতে চালু হবে।

প্রতিক্রিয়া মূল অংশ

places.autocomplete-এর জন্য প্রতিক্রিয়া প্রোটো।

যদি সফল হয়, তাহলে রেসপন্স বডিতে নিম্নলিখিত কাঠামো সহ ডেটা থাকবে:

JSON উপস্থাপনা
{
  "suggestions": [
    {
      object (Suggestion)
    }
  ]
}
ক্ষেত্র
suggestions[]

object ( Suggestion )

এতে প্রাসঙ্গিকতার ক্রমানুসারে সাজানো পরামর্শের একটি তালিকা রয়েছে।

অনুমোদনের সুযোগ

নিম্নলিখিত OAuth স্কোপ প্রয়োজন:

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

অবস্থানগত পক্ষপাত

অনুসন্ধানের অঞ্চল। ফলাফল নির্দিষ্ট অঞ্চলের আশেপাশে পক্ষপাতদুষ্ট হতে পারে।

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 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 )

একটি কোয়েরির জন্য পূর্বাভাস।

স্থান ভবিষ্যদ্বাণী

একটি স্থান স্বয়ংসম্পূর্ণ ভবিষ্যদ্বাণীর ফলাফল।

JSON উপস্থাপনা
{
  "place": string,
  "placeId": string,
  "text": {
    object (FormattableText)
  },
  "structuredFormat": {
    object (StructuredFormat)
  },
  "types": [
    string
  ],
  "distanceMeters": integer
}
ক্ষেত্র
place

string

প্রস্তাবিত স্থানটির রিসোর্স নাম। এই নামটি অন্যান্য এপিআই-তে ব্যবহার করা যেতে পারে, যেগুলো স্থানের নাম গ্রহণ করে।

placeId

string

প্রস্তাবিত স্থানটির অনন্য শনাক্তকারী। এই শনাক্তকারীটি অন্যান্য এপিআই-তে ব্যবহার করা যেতে পারে, যেগুলো স্থান আইডি গ্রহণ করে।

text

object ( FormattableText )

ফেরত আসা ফলাফলের পাঠযোগ্য নাম এতে থাকে। প্রতিষ্ঠানের ফলাফলের ক্ষেত্রে, এটি সাধারণত ব্যবসার নাম এবং ঠিকানা হয়ে থাকে।

যেসব ডেভেলপার একটিমাত্র UI এলিমেন্ট দেখাতে চান, তাদের জন্য text ব্যবহার করার পরামর্শ দেওয়া হয়। যেসব ডেভেলপার দুটি পৃথক কিন্তু সম্পর্কিত UI এলিমেন্ট দেখাতে চান, তারা এর পরিবর্তে structuredFormat ব্যবহার করতে পারেন। এগুলি একটি 'Place' প্রেডিকশন উপস্থাপন করার দুটি ভিন্ন উপায়। ব্যবহারকারীদের structuredFormat text এ বা 'text'-কে 'structuredFormat'-এ পার্স করার চেষ্টা করা উচিত নয়।

এই লেখাটি places.get দ্বারা ফেরত আসা displayName থেকে ভিন্ন হতে পারে।

অনুরোধের input এবং languageCode ভিন্ন ভাষায় হলে অথবা স্থানটিতে স্থানীয় ভাষা থেকে languageCode কোনো অনুবাদ না থাকলে, এটি মিশ্র ভাষায় হতে পারে।

structuredFormat

object ( StructuredFormat )

স্থান সম্পর্কিত ভবিষ্যদ্বাণীর একটি বিভাজন, যেখানে মূল পাঠ্যে স্থানটির নাম এবং দ্বিতীয় পাঠ্যে অতিরিক্ত দ্ব্যর্থহীনকারী বৈশিষ্ট্য (যেমন শহর বা অঞ্চল) অন্তর্ভুক্ত থাকে।

যেসব ডেভেলপার দুটি পৃথক কিন্তু সম্পর্কিত UI এলিমেন্ট দেখাতে চান, তাদের জন্য structuredFormat ব্যবহার করার পরামর্শ দেওয়া হয়। যেসব ডেভেলপার একটিমাত্র UI এলিমেন্ট দেখাতে চান, তারা এর পরিবর্তে text ব্যবহার করতে পারেন। এগুলি একটি প্লেস প্রেডিকশন উপস্থাপন করার দুটি ভিন্ন উপায়। ব্যবহারকারীদের structuredFormat text বা টেক্সটকে structuredFormat-এ পার্স করার চেষ্টা করা উচিত নয়।

types[]

string

https://developers.google.com/maps/documentation/places/web-service/place-types -এর টেবিল A ​​অথবা টেবিল B থেকে এই স্থানের জন্য প্রযোজ্য প্রকারের তালিকা।

প্রকার হলো কোনো স্থানের একটি শ্রেণিবিন্যাস। একই প্রকারের স্থানগুলোর মধ্যে অনুরূপ বৈশিষ্ট্য থাকবে।

distanceMeters

integer

origin নির্দিষ্ট করা থাকলে, origin থেকে জিওডেসিকের দৈর্ঘ্য মিটারে পরিমাপ করতে হবে। রুটের মতো কিছু পূর্বাভাস এই ফিল্ডে নাও আসতে পারে।

ফরম্যাটযোগ্য টেক্সট

স্থান বা অনুসন্ধানের পূর্বাভাস উপস্থাপনকারী পাঠ্য। পাঠ্যটি সরাসরি বা বিন্যাস করে ব্যবহার করা যেতে পারে।

JSON উপস্থাপনা
{
  "text": string,
  "matches": [
    {
      object (StringRange)
    }
  ]
}
ক্ষেত্র
text

string

যে টেক্সট সরাসরি ব্যবহার করা যেতে পারে অথবা matches সহ ফরম্যাট করা যেতে পারে।

matches[]

object ( StringRange )

text মধ্যে ইনপুট অনুরোধটি কোথায় মিলেছে তা চিহ্নিতকারী স্ট্রিং রেঞ্জের একটি তালিকা। এই রেঞ্জগুলো text নির্দিষ্ট অংশ ফরম্যাট করতে ব্যবহার করা যেতে পারে। যদি স্ট্রিং মেলানো ছাড়া অন্য কোনো মানদণ্ডের (যেমন, বানান সংশোধন বা প্রতিবর্ণীকরণ) ভিত্তিতে মিল নির্ধারণ করা হয়, তাহলে সাবস্ট্রিংগুলো input হুবহু মিল নাও হতে পারে।

এই মানগুলি হলো text ইউনিকোড ক্যারেক্টার অফসেট। রেঞ্জগুলি ক্রমবর্ধমান অফসেট মান অনুসারে সাজানো থাকবে বলে নিশ্চিত করা হয়েছে।

স্ট্রিংরেঞ্জ

প্রদত্ত পাঠ্যের মধ্যে একটি উপ-স্ট্রিং শনাক্ত করে।

JSON উপস্থাপনা
{
  "startOffset": integer,
  "endOffset": integer
}
ক্ষেত্র
startOffset

integer

স্ট্রিংটির প্রথম ইউনিকোড অক্ষরের (অন্তর্ভুক্ত) শূন্য-ভিত্তিক অফসেট।

endOffset

integer

সর্বশেষ ইউনিকোড অক্ষরের (বর্জনীয়) শূন্য-ভিত্তিক অফসেট।

কাঠামোগত বিন্যাস

কোনো স্থান বা কোয়েরি প্রেডিকশনের মূল টেক্সট এবং সেকেন্ডারি টেক্সটের একটি ব্রেকডাউন অন্তর্ভুক্ত থাকে।

স্থান পূর্বাভাসের ক্ষেত্রে, মূল লেখায় স্থানটির নির্দিষ্ট নাম থাকে। কোয়েরি পূর্বাভাসের ক্ষেত্রে, মূল লেখায় কোয়েরিটি থাকে।

স্থানটিকে আরও শনাক্ত করতে বা অনুসন্ধানকে পরিমার্জন করতে সহায়ক পাঠ্যটিতে অতিরিক্ত দ্ব্যর্থক বৈশিষ্ট্য (যেমন শহর বা অঞ্চল) থাকে।

JSON উপস্থাপনা
{
  "mainText": {
    object (FormattableText)
  },
  "secondaryText": {
    object (FormattableText)
  }
}
ক্ষেত্র
mainText

object ( FormattableText )

স্থান বা অনুসন্ধানের নাম নির্দেশ করে।

secondaryText

object ( FormattableText )

স্থানটিকে আরও শনাক্ত করতে বা অনুসন্ধানকে পরিমার্জন করতে অতিরিক্ত দ্ব্যর্থতা নিরসনকারী বৈশিষ্ট্য (যেমন শহর বা অঞ্চল) উপস্থাপন করে।

কোয়েরিপ্রেডিকশন

একটি কোয়েরি অটোকমপ্লিট প্রেডিকশনের ফলাফল।

JSON উপস্থাপনা
{
  "text": {
    object (FormattableText)
  },
  "structuredFormat": {
    object (StructuredFormat)
  }
}
ক্ষেত্র
text

object ( FormattableText )

পূর্বাভাসিত টেক্সট। এই টেক্সটটি কোনো স্থানকে নির্দেশ করে না, বরং এটি একটি টেক্সট কোয়েরি যা কোনো সার্চ এন্ডপয়েন্টে (যেমন, টেক্সট সার্চ) ব্যবহার করা যেতে পারে।

যেসব ডেভেলপার একটিমাত্র UI এলিমেন্ট দেখাতে চান, তাদের জন্য text ব্যবহার করার পরামর্শ দেওয়া হয়। যেসব ডেভেলপার দুটি পৃথক কিন্তু সম্পর্কিত UI এলিমেন্ট দেখাতে চান, তারা এর পরিবর্তে structuredFormat ' ব্যবহার করতে পারেন। এগুলি কোয়েরি প্রেডিকশন উপস্থাপনের দুটি ভিন্ন উপায়। ব্যবহারকারীদের structuredFormat text এ বা 'text'-কে 'structuredFormat'-এ পার্স করার চেষ্টা করা উচিত নয়।

অনুরোধের input এবং languageCode ভিন্ন ভাষায় হলে অথবা কোয়েরির কোনো অংশের স্থানীয় ভাষা থেকে languageCode কোনো অনুবাদ না থাকলে, এটি মিশ্র ভাষায় হতে পারে।

structuredFormat

object ( StructuredFormat )

কোয়েরি প্রেডিকশনের একটি বিভাজন, যেখানে কোয়েরি সম্বলিত মূল টেক্সট এবং অতিরিক্ত দ্ব্যর্থক বৈশিষ্ট্য (যেমন কোনো শহর বা অঞ্চল) সম্বলিত সেকেন্ডারি টেক্সট থাকে।

যেসব ডেভেলপার দুটি পৃথক কিন্তু সম্পর্কিত UI এলিমেন্ট দেখাতে চান, তাদের জন্য structuredFormat ব্যবহার করার পরামর্শ দেওয়া হয়। যেসব ডেভেলপার একটিমাত্র UI এলিমেন্ট দেখাতে চান, তারা এর পরিবর্তে text ব্যবহার করতে পারেন। এগুলো কোয়েরি প্রেডিকশন উপস্থাপনের দুটি ভিন্ন উপায়। ব্যবহারকারীদের structuredFormat text বা টেক্সটকে structuredFormat-এ পার্স করার চেষ্টা করা উচিত নয়।