স্বয়ংসম্পূর্ণ (নতুন) পরিষেবা হল একটি ওয়েব পরিষেবা যা একটি HTTP অনুরোধের প্রতিক্রিয়া হিসাবে স্থানের পূর্বাভাস এবং প্রশ্নের পূর্বাভাস প্রদান করে৷ অনুরোধে, একটি পাঠ্য অনুসন্ধান স্ট্রিং এবং ভৌগলিক সীমা নির্দিষ্ট করুন যা অনুসন্ধান এলাকা নিয়ন্ত্রণ করে।
স্বয়ংসম্পূর্ণ (নতুন) পরিষেবাটি ইনপুটের সম্পূর্ণ শব্দ এবং সাবস্ট্রিংগুলির সাথে মিলতে পারে, স্থানের নাম, ঠিকানা এবং প্লাস কোডগুলি সমাধান করতে পারে৷ তাই অ্যাপ্লিকেশনগুলি ব্যবহারকারীর প্রকার হিসাবে প্রশ্ন পাঠাতে পারে, উড়তে থাকা স্থান এবং ক্যোয়ারী পূর্বাভাস প্রদান করতে।
স্বয়ংসম্পূর্ণ (নতুন) API এর প্রতিক্রিয়াতে দুটি ধরণের ভবিষ্যদ্বাণী থাকতে পারে:
- স্থানের পূর্বাভাস : নির্দিষ্ট ইনপুট টেক্সট স্ট্রিং এবং অনুসন্ধান এলাকার উপর ভিত্তি করে স্থান, যেমন ব্যবসা, ঠিকানা এবং আগ্রহের পয়েন্ট। স্থান পূর্বাভাস ডিফল্টরূপে ফেরত দেওয়া হয়.
- ক্যোয়ারী ভবিষ্যদ্বাণী : ইনপুট টেক্সট স্ট্রিং এবং অনুসন্ধান এলাকার সাথে মেলে কোয়েরি স্ট্রিং। ক্যোয়ারী পূর্বাভাস ডিফল্টরূপে ফেরত দেওয়া হয় না. প্রতিক্রিয়াতে ক্যোয়ারী পূর্বাভাস যোগ করতে
includeQueryPredictions
অনুরোধ প্যারামিটার ব্যবহার করুন।
উদাহরণ স্বরূপ, আপনি API-কে ইনপুট হিসাবে ব্যবহার করে একটি স্ট্রিং কল করেন যাতে একটি আংশিক ব্যবহারকারী ইনপুট থাকে, "সিসিলিয়ান পিজ", অনুসন্ধান এলাকাটি সান ফ্রান্সিসকো, CA-তে সীমাবদ্ধ। তারপরে প্রতিক্রিয়াটিতে স্থানের পূর্বাভাসগুলির একটি তালিকা রয়েছে যা অনুসন্ধান স্ট্রিং এবং অনুসন্ধান এলাকার সাথে মেলে, যেমন "সিসিলিয়ান পিজা কিচেন" নামক রেস্তোরাঁর সাথে জায়গার বিবরণ সহ।
প্রত্যাবর্তিত স্থানের ভবিষ্যদ্বাণীগুলি ব্যবহারকারীদের পছন্দসই স্থান নির্বাচন করতে সহায়তা করার জন্য তাদের কাছে উপস্থাপন করার জন্য ডিজাইন করা হয়েছে। আপনি একটি স্থান বিবরণ (নতুন) অনুরোধ করতে পারেন প্রত্যাবর্তিত স্থান ভবিষ্যদ্বাণীগুলির যেকোনো সম্পর্কে আরও তথ্য পেতে।
প্রতিক্রিয়াটিতে অনুসন্ধান স্ট্রিং এবং অনুসন্ধান এলাকার সাথে মেলে এমন প্রশ্নের পূর্বাভাসের একটি তালিকাও থাকতে পারে, যেমন "সিসিলিয়ান পিজা এবং পাস্তা"। প্রতিক্রিয়ার প্রতিটি প্রশ্নের পূর্বাভাস একটি প্রস্তাবিত পাঠ্য অনুসন্ধান স্ট্রিং ধারণকারী text
ক্ষেত্র অন্তর্ভুক্ত করে। আরও বিস্তারিত অনুসন্ধান করতে পাঠ্য অনুসন্ধানে (নতুন) ইনপুট হিসাবে সেই স্ট্রিংটি ব্যবহার করুন।
API এক্সপ্লোরার আপনাকে লাইভ অনুরোধ করতে দেয় যাতে আপনি API এবং API বিকল্পগুলির সাথে পরিচিত হতে পারেন:
এটা চেষ্টা করুন!স্বয়ংসম্পূর্ণ (নতুন) অনুরোধ
একটি স্বয়ংসম্পূর্ণ (নতুন) অনুরোধ হল ফর্মের একটি URL-এর জন্য একটি HTTP POST অনুরোধ:
https://places.googleapis.com/v1/places:autocomplete
JSON অনুরোধের বডিতে বা POST অনুরোধের অংশ হিসাবে হেডারে সমস্ত প্যারামিটার পাস করুন। যেমন:
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
প্রতিক্রিয়া সম্পর্কে
স্বয়ংসম্পূর্ণ (নতুন) প্রতিক্রিয়া হিসাবে একটি 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 }] }, ... } ...] }
প্রয়োজনীয় পরামিতি
ইনপুট
যে টেক্সট স্ট্রিংটিতে সার্চ করতে হবে। সম্পূর্ণ শব্দ এবং সাবস্ট্রিং, স্থানের নাম, ঠিকানা এবং প্লাস কোড নির্দিষ্ট করুন। স্বয়ংসম্পূর্ণ (নতুন) পরিষেবা এই স্ট্রিংয়ের উপর ভিত্তি করে প্রার্থীর মিল ফেরত দেয় এবং তাদের অনুভূত প্রাসঙ্গিকতার উপর ভিত্তি করে ফলাফল অর্ডার করে।
ঐচ্ছিক পরামিতি
ফিল্ডমাস্ক
একটি প্রতিক্রিয়া ক্ষেত্র মাস্ক তৈরি করে প্রতিক্রিয়াতে ফিরে আসার জন্য ক্ষেত্রগুলির তালিকা নির্দিষ্ট করুন। HTTP হেডার
X-Goog-FieldMask
ব্যবহার করে পদ্ধতিতে প্রতিক্রিয়া ক্ষেত্র মাস্ক পাস করুন।প্রত্যাবর্তনের জন্য পরামর্শ ক্ষেত্রগুলির একটি কমা দ্বারা পৃথক তালিকা নির্দিষ্ট করুন৷ উদাহরণস্বরূপ, সাজেশনের
suggestions.placePrediction.place
এবংsuggestions.placePrediction.text
পুনরুদ্ধার করতে।X-Goog-FieldMask: places.displayName,places.formattedAddress
সমস্ত ক্ষেত্র পুনরুদ্ধার করতে
*
ব্যবহার করুন।X-Goog-FieldMask: *
প্রাইমারি টাইপস অন্তর্ভুক্ত
সারণি A বা সারণি B- তে তালিকাভুক্ত প্রকারগুলি থেকে একটি স্থানের শুধুমাত্র একটি প্রাথমিক প্রকার থাকতে পারে। উদাহরণস্বরূপ, প্রাথমিক প্রকার হতে পারে
"mexican_restaurant"
বা"steak_house"
।ডিফল্টরূপে, এপিআই
input
প্যারামিটারের উপর ভিত্তি করে সমস্ত স্থান প্রদান করে, স্থানের সাথে সম্পর্কিত প্রাথমিক প্রকারের মান নির্বিশেষে।includedPrimaryTypes
প্যারামিটার পাস করে একটি নির্দিষ্ট প্রাথমিক প্রকার বা প্রাথমিক প্রকারের ফলাফলগুলিকে সীমাবদ্ধ করুন।সারণি A বা টেবিল B থেকে পাঁচটি পর্যন্ত মান নির্দিষ্ট করতে এই প্যারামিটারটি ব্যবহার করুন। প্রতিক্রিয়াতে অন্তর্ভুক্ত করার জন্য নির্দিষ্ট প্রাথমিক প্রকারের মানগুলির একটির সাথে একটি স্থান অবশ্যই মিলবে৷
এই প্যারামিটারটি এর পরিবর্তে,
(regions)
বা(cities)
এর মধ্যে একটি অন্তর্ভুক্ত করতে পারে। এলাকা বা বিভাগের জন্য(regions)
ধরনের সংগ্রহ ফিল্টার, যেমন আশেপাশের এলাকা এবং পোস্টাল কোড।(cities)
টাইপ সংগ্রহের ফিল্টার জায়গাগুলির জন্য যা Google একটি শহর হিসাবে চিহ্নিত করে৷অনুরোধটি একটি
INVALID_REQUEST
ত্রুটির সাথে প্রত্যাখ্যান করা হয় যদি:- পাঁচটিরও বেশি প্রকার নির্দিষ্ট করা হয়েছে।
- যেকোনো প্রকার
(cities)
বা(regions)
ছাড়াও নির্দিষ্ট করা হয়েছে। - কোনো অচেনা ধরনের নির্দিষ্ট করা হয়.
Query Predictions অন্তর্ভুক্ত করুন
true
হলে, উত্তরে স্থান এবং ক্যোয়ারী উভয় ভবিষ্যদ্বাণী অন্তর্ভুক্ত থাকে। ডিফল্ট মানfalse
, যার অর্থ প্রতিক্রিয়া শুধুমাত্র স্থান পূর্বাভাস অন্তর্ভুক্ত.অঞ্চল কোড অন্তর্ভুক্ত
শুধুমাত্র 15 ccTLD ("শীর্ষ-স্তরের ডোমেন") দুই-অক্ষরের মানগুলির একটি অ্যারে হিসাবে নির্দিষ্ট করা নির্দিষ্ট অঞ্চলের তালিকা থেকে ফলাফলগুলি অন্তর্ভুক্ত করুন৷ যদি বাদ দেওয়া হয়, তবে প্রতিক্রিয়াতে কোনো বিধিনিষেধ প্রয়োগ করা হয় না। উদাহরণস্বরূপ, অঞ্চলগুলিকে জার্মানি এবং ফ্রান্সের মধ্যে সীমাবদ্ধ করতে:
"includedRegionCodes": ["de", "fr"]
আপনি যদি উভয়
locationRestriction
এবংincludedRegionCodes
নির্দিষ্ট করেন, ফলাফল দুটি সেটিংসের ছেদ এলাকায় অবস্থিত।ইনপুটঅফসেট
শূন্য-ভিত্তিক ইউনিকোড অক্ষর অফসেট
input
কার্সার অবস্থান নির্দেশ করে। ভবিষ্যদ্বাণীগুলি কী ফেরত দেওয়া হয় তা কার্সারের অবস্থান প্রভাবিত করতে পারে। খালি থাকলে, এটিinput
দৈর্ঘ্যে ডিফল্ট হয়।ভাষা কোড
পছন্দের ভাষা যেটিতে ফলাফল দিতে হবে। ফলাফলগুলি মিশ্র ভাষায় হতে পারে যদি
input
ব্যবহৃত ভাষাlanguageCode
দ্বারা নির্দিষ্ট করা মান থেকে আলাদা হয়, অথবা যদি প্রত্যাবর্তিত স্থানটির স্থানীয় ভাষা থেকেlanguageCode
অনুবাদ না থাকে।- পছন্দের ভাষা নির্দিষ্ট করতে আপনাকে অবশ্যই IETF BCP-47 ভাষার কোড ব্যবহার করতে হবে।
-
languageCode
সরবরাহ করা না হলে, APIAccept-Language
শিরোনামে নির্দিষ্ট মান ব্যবহার করে। যদি কোনটিই নির্দিষ্ট করা না থাকে, ডিফল্ট হলen
. আপনি যদি একটি অবৈধ ভাষা কোড নির্দিষ্ট করেন, API একটিINVALID_ARGUMENT
ত্রুটি প্রদান করে৷ - পছন্দের ভাষাটির ফলাফলের সেটের উপর একটি ছোট প্রভাব রয়েছে যা API ফেরত দিতে বেছে নেয় এবং যে ক্রমে সেগুলি ফেরত দেওয়া হয়। এটি বানান ত্রুটি সংশোধন করার জন্য API এর ক্ষমতাকেও প্রভাবিত করে।
- API একটি রাস্তার ঠিকানা প্রদান করার চেষ্টা করে যা ব্যবহারকারী এবং স্থানীয় জনসংখ্যা উভয়ের জন্যই পাঠযোগ্য, একই সময়ে ব্যবহারকারীর ইনপুট প্রতিফলিত করে। প্রতিটি অনুরোধে ব্যবহারকারীর ইনপুটের উপর নির্ভর করে স্থানের পূর্বাভাসগুলি ভিন্নভাবে ফর্ম্যাট করা হয়।
-
input
প্যারামিটারে মিলিত পদগুলি প্রথমে বেছে নেওয়া হয়, যখন উপলব্ধlanguageCode
প্যারামিটার দ্বারা নির্দেশিত ভাষা পছন্দের সাথে সারিবদ্ধ নামগুলি ব্যবহার করে, অন্যথায় ব্যবহারকারীর ইনপুটের সাথে সবচেয়ে ভাল মেলে এমন নামগুলি ব্যবহার করে৷ - রাস্তার ঠিকানাগুলি স্থানীয় ভাষায় ফর্ম্যাট করা হয়, একটি স্ক্রিপ্টে যখন সম্ভব ব্যবহারকারী দ্বারা পাঠযোগ্য, শুধুমাত্র
input
প্যারামিটারের শর্তাবলীর সাথে মিলিত হওয়ার জন্য বাছাই করা হয়। -
input
প্যারামিটারে থাকা শর্তের সাথে মিলিত পদগুলি বেছে নেওয়ার পরে, অন্যান্য সমস্ত ঠিকানা পছন্দের ভাষায় ফেরত দেওয়া হয়। পছন্দের ভাষায় একটি নাম উপলব্ধ না হলে, API সবচেয়ে কাছের মিল ব্যবহার করে।
-
অবস্থানবিয়াস বা অবস্থান সীমাবদ্ধতা
অনুসন্ধান এলাকা নির্ধারণ করতে আপনি
locationBias
বাlocationRestriction
উল্লেখ করতে পারেন, কিন্তু উভয়ই নয়। ফলাফলগুলি যে অঞ্চলের মধ্যে হতে হবে সেটিকে নির্দিষ্ট করেlocationRestriction
এবংlocationBias
সেই অঞ্চলটি নির্দিষ্ট করে যে ফলাফলগুলি অবশ্যই কাছাকাছি হতে হবে তবে এলাকার বাইরে হতে পারে বলে মনে করুন৷অবস্থান পক্ষপাত
অনুসন্ধান করার জন্য একটি এলাকা নির্দিষ্ট করে। এই অবস্থানটি একটি পক্ষপাত হিসাবে কাজ করে যার অর্থ নির্দিষ্ট স্থানের আশেপাশের ফলাফলগুলি নির্দিষ্ট এলাকার বাইরের ফলাফল সহ ফেরত দেওয়া যেতে পারে৷
অবস্থান সীমাবদ্ধতা
অনুসন্ধান করার জন্য একটি এলাকা নির্দিষ্ট করে। নির্দিষ্ট এলাকার বাইরে ফলাফল ফেরত দেওয়া হয় না.
একটি আয়তক্ষেত্রাকার ভিউপোর্ট বা একটি বৃত্ত হিসাবে
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 } } }
-
মূল
মূল বিন্দু যেখান থেকে গন্তব্যে সরলরেখার দূরত্ব গণনা করতে হবে (
distanceMeters
হিসাবে ফিরে এসেছে)। যদি এই মানটি বাদ দেওয়া হয়, সরল-রেখার দূরত্ব ফেরত দেওয়া হবে না। অক্ষাংশ এবং দ্রাঘিমাংশ স্থানাঙ্ক হিসাবে নির্দিষ্ট করা আবশ্যক:"origin": { "latitude": 40.477398, "longitude": -74.259087 }
অঞ্চল কোড
প্রতিক্রিয়া ফর্ম্যাট করতে ব্যবহৃত অঞ্চল কোড, একটি ccTLD ("টপ-লেভেল ডোমেন") দুই-অক্ষরের মান হিসাবে নির্দিষ্ট করা হয়েছে। কিছু উল্লেখযোগ্য ব্যতিক্রম সহ বেশিরভাগ ccTLD কোডগুলি ISO 3166-1 কোডগুলির সাথে অভিন্ন। উদাহরণস্বরূপ, ইউনাইটেড কিংডমের ccTLD হল "uk" (.co.uk) যেখানে এর ISO 3166-1 কোড হল "gb" (প্রযুক্তিগতভাবে "The United Kingdom of Great Britain and Northern Ireland" এর সত্তার জন্য)।
আপনি যদি একটি অবৈধ অঞ্চল কোড নির্দিষ্ট করেন, API একটি
INVALID_ARGUMENT
ত্রুটি প্রদান করে৷ প্যারামিটার প্রযোজ্য আইনের উপর ভিত্তি করে ফলাফলকে প্রভাবিত করতে পারে।সেশন টোকেন
সেশন টোকেন হল ব্যবহারকারী-উত্পাদিত স্ট্রিং যা স্বয়ংসম্পূর্ণ (নতুন) কলগুলিকে "সেশন" হিসাবে ট্র্যাক করে। স্বয়ংসম্পূর্ণ (নতুন) বিলিং উদ্দেশ্যে একটি পৃথক সেশনে ব্যবহারকারী স্বয়ংসম্পূর্ণ অনুসন্ধানের প্রশ্ন এবং নির্বাচনের পর্যায়গুলিকে গ্রুপ করতে সেশন টোকেন ব্যবহার করে। আরও তথ্যের জন্য, সেশন টোকেন দেখুন।
স্বয়ংসম্পূর্ণ (নতুন) উদাহরণ
অবস্থান সীমাবদ্ধতা এবং অবস্থানবিয়াস ব্যবহার করুন
অনুসন্ধান এলাকা নিয়ন্ত্রণ করতে API ডিফল্টরূপে আইপি বায়াসিং ব্যবহার করে। আইপি বায়াসিংয়ের সাথে, API ফলাফলের পক্ষপাতিত্ব করতে ডিভাইসের IP ঠিকানা ব্যবহার করে। অনুসন্ধান করার জন্য একটি এলাকা নির্দিষ্ট করতে আপনি ঐচ্ছিকভাবে 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" ] } }, ... ] }
অন্তর্ভুক্ত প্রাইমারি টাইপ ব্যবহার করুন
সারণি A , সারণি B , অথবা শুধুমাত্র (regions)
, অথবা শুধুমাত্র (cities)
থেকে পাঁচটি পর্যন্ত মান নির্দিষ্ট করতে includedPrimaryTypes
প্যারামিটার ব্যবহার করুন। প্রতিক্রিয়াতে অন্তর্ভুক্ত করার জন্য নির্দিষ্ট প্রাথমিক প্রকারের মানগুলির একটির সাথে একটি স্থান অবশ্যই মিলবে৷
নিম্নলিখিত উদাহরণে, আপনি "সকার" এর একটি input
স্ট্রিং নির্দিষ্ট করুন এবং "sporting_goods_store"
ধরনের প্রতিষ্ঠানের ফলাফলগুলিকে সীমাবদ্ধ করতে includedPrimaryTypes
প্যারামিটার ব্যবহার করুন:
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
ক্ষেত্র অন্তর্ভুক্ত করে। প্রত্যাবর্তিত ক্যোয়ারী ভবিষ্যদ্বাণীগুলির যেকোনো একটি সম্পর্কে আরও তথ্য পেতে আপনি একটি পাঠ্য অনুসন্ধান (নতুন) অনুরোধ করতে পারেন৷
মূল ব্যবহার করুন
এই উদাহরণে, অক্ষাংশ এবং দ্রাঘিমাংশ স্থানাঙ্ক হিসাবে অনুরোধে 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 } } ] }
এটা চেষ্টা করুন!
API এক্সপ্লোরার আপনাকে নমুনা অনুরোধ করতে দেয় যাতে আপনি API এবং API বিকল্পগুলির সাথে পরিচিত হতে পারেন।
- API আইকন নির্বাচন করুন, , পৃষ্ঠার ডানদিকে।
- ঐচ্ছিকভাবে প্রসারিত করুন স্ট্যান্ডার্ড প্যারামিটার দেখান এবং ফিল্ড মাস্কে
fields
প্যারামিটার সেট করুন। - ঐচ্ছিকভাবে রিকোয়েস্ট বডি এডিট করুন।
- এক্সিকিউট বোতাম নির্বাচন করুন। পপ-আপে, আপনি অনুরোধ করতে যে অ্যাকাউন্টটি ব্যবহার করতে চান সেটি বেছে নিন।
API এক্সপ্লোরার প্যানেলে, প্রসারিত আইকন নির্বাচন করুন, , API এক্সপ্লোরার উইন্ডো প্রসারিত করতে।
স্বয়ংসম্পূর্ণ (নতুন) পরিষেবা হল একটি ওয়েব পরিষেবা যা একটি HTTP অনুরোধের প্রতিক্রিয়া হিসাবে স্থানের পূর্বাভাস এবং প্রশ্নের পূর্বাভাস প্রদান করে৷ অনুরোধে, একটি পাঠ্য অনুসন্ধান স্ট্রিং এবং ভৌগলিক সীমা নির্দিষ্ট করুন যা অনুসন্ধান এলাকা নিয়ন্ত্রণ করে।
স্বয়ংসম্পূর্ণ (নতুন) পরিষেবাটি ইনপুটের সম্পূর্ণ শব্দ এবং সাবস্ট্রিংগুলির সাথে মিলতে পারে, স্থানের নাম, ঠিকানা এবং প্লাস কোডগুলি সমাধান করতে পারে৷ তাই অ্যাপ্লিকেশনগুলি ব্যবহারকারীর প্রকার হিসাবে প্রশ্ন পাঠাতে পারে, উড়তে থাকা স্থান এবং ক্যোয়ারী পূর্বাভাস প্রদান করতে।
স্বয়ংসম্পূর্ণ (নতুন) API এর প্রতিক্রিয়াতে দুটি ধরণের ভবিষ্যদ্বাণী থাকতে পারে:
- স্থানের পূর্বাভাস : নির্দিষ্ট ইনপুট টেক্সট স্ট্রিং এবং অনুসন্ধান এলাকার উপর ভিত্তি করে স্থান, যেমন ব্যবসা, ঠিকানা এবং আগ্রহের পয়েন্ট। স্থান পূর্বাভাস ডিফল্টরূপে ফেরত দেওয়া হয়.
- ক্যোয়ারী ভবিষ্যদ্বাণী : ইনপুট টেক্সট স্ট্রিং এবং অনুসন্ধান এলাকার সাথে মেলে কোয়েরি স্ট্রিং। ক্যোয়ারী পূর্বাভাস ডিফল্টরূপে ফেরত দেওয়া হয় না. প্রতিক্রিয়াতে ক্যোয়ারী পূর্বাভাস যোগ করতে
includeQueryPredictions
অনুরোধ প্যারামিটার ব্যবহার করুন।
উদাহরণ স্বরূপ, আপনি API-কে ইনপুট হিসাবে ব্যবহার করে একটি স্ট্রিং কল করেন যাতে একটি আংশিক ব্যবহারকারী ইনপুট থাকে, "সিসিলিয়ান পিজ", অনুসন্ধান এলাকাটি সান ফ্রান্সিসকো, CA-তে সীমাবদ্ধ। তারপরে প্রতিক্রিয়াটিতে স্থানের পূর্বাভাসগুলির একটি তালিকা রয়েছে যা অনুসন্ধান স্ট্রিং এবং অনুসন্ধান এলাকার সাথে মেলে, যেমন "সিসিলিয়ান পিজা কিচেন" নামক রেস্তোরাঁর সাথে জায়গার বিবরণ সহ।
প্রত্যাবর্তিত স্থানের ভবিষ্যদ্বাণীগুলি ব্যবহারকারীদের পছন্দসই স্থান নির্বাচন করতে সহায়তা করার জন্য তাদের কাছে উপস্থাপন করার জন্য ডিজাইন করা হয়েছে। আপনি একটি স্থান বিবরণ (নতুন) অনুরোধ করতে পারেন প্রত্যাবর্তিত স্থান ভবিষ্যদ্বাণীগুলির যেকোনো সম্পর্কে আরও তথ্য পেতে।
প্রতিক্রিয়াটিতে অনুসন্ধান স্ট্রিং এবং অনুসন্ধান এলাকার সাথে মেলে এমন প্রশ্নের পূর্বাভাসের একটি তালিকাও থাকতে পারে, যেমন "সিসিলিয়ান পিজা এবং পাস্তা"। প্রতিক্রিয়ার প্রতিটি প্রশ্নের পূর্বাভাস একটি প্রস্তাবিত পাঠ্য অনুসন্ধান স্ট্রিং ধারণকারী text
ক্ষেত্র অন্তর্ভুক্ত করে। আরও বিস্তারিত অনুসন্ধান করতে পাঠ্য অনুসন্ধানে (নতুন) ইনপুট হিসাবে সেই স্ট্রিংটি ব্যবহার করুন।
API এক্সপ্লোরার আপনাকে লাইভ অনুরোধ করতে দেয় যাতে আপনি API এবং API বিকল্পগুলির সাথে পরিচিত হতে পারেন:
এটা চেষ্টা করুন!স্বয়ংসম্পূর্ণ (নতুন) অনুরোধ
একটি স্বয়ংসম্পূর্ণ (নতুন) অনুরোধ হল ফর্মের একটি URL-এর জন্য একটি HTTP POST অনুরোধ:
https://places.googleapis.com/v1/places:autocomplete
JSON অনুরোধের বডিতে বা POST অনুরোধের অংশ হিসাবে হেডারে সমস্ত প্যারামিটার পাস করুন। যেমন:
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
প্রতিক্রিয়া সম্পর্কে
স্বয়ংসম্পূর্ণ (নতুন) প্রতিক্রিয়া হিসাবে একটি 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 }] }, ... } ...] }
প্রয়োজনীয় পরামিতি
ইনপুট
যে টেক্সট স্ট্রিংটিতে সার্চ করতে হবে। সম্পূর্ণ শব্দ এবং সাবস্ট্রিং, স্থানের নাম, ঠিকানা এবং প্লাস কোড নির্দিষ্ট করুন। স্বয়ংসম্পূর্ণ (নতুন) পরিষেবা এই স্ট্রিংয়ের উপর ভিত্তি করে প্রার্থীর মিল ফেরত দেয় এবং তাদের অনুভূত প্রাসঙ্গিকতার উপর ভিত্তি করে ফলাফল অর্ডার করে।
ঐচ্ছিক পরামিতি
ফিল্ডমাস্ক
একটি প্রতিক্রিয়া ক্ষেত্র মাস্ক তৈরি করে প্রতিক্রিয়াতে ফিরে আসার জন্য ক্ষেত্রগুলির তালিকা নির্দিষ্ট করুন। HTTP হেডার
X-Goog-FieldMask
ব্যবহার করে পদ্ধতিতে প্রতিক্রিয়া ক্ষেত্র মাস্ক পাস করুন।প্রত্যাবর্তনের জন্য পরামর্শ ক্ষেত্রগুলির একটি কমা দ্বারা পৃথক তালিকা নির্দিষ্ট করুন৷ উদাহরণস্বরূপ, সাজেশনের
suggestions.placePrediction.place
এবংsuggestions.placePrediction.text
পুনরুদ্ধার করতে।X-Goog-FieldMask: places.displayName,places.formattedAddress
সমস্ত ক্ষেত্র পুনরুদ্ধার করতে
*
ব্যবহার করুন।X-Goog-FieldMask: *
প্রাইমারি টাইপস অন্তর্ভুক্ত
সারণি A বা সারণি B- তে তালিকাভুক্ত প্রকারগুলি থেকে একটি স্থানের শুধুমাত্র একটি প্রাথমিক প্রকার থাকতে পারে। উদাহরণস্বরূপ, প্রাথমিক প্রকার হতে পারে
"mexican_restaurant"
বা"steak_house"
।ডিফল্টরূপে, এপিআই
input
প্যারামিটারের উপর ভিত্তি করে সমস্ত স্থান প্রদান করে, স্থানের সাথে সম্পর্কিত প্রাথমিক প্রকারের মান নির্বিশেষে।includedPrimaryTypes
প্যারামিটার পাস করে একটি নির্দিষ্ট প্রাথমিক প্রকার বা প্রাথমিক প্রকারের ফলাফলগুলিকে সীমাবদ্ধ করুন।সারণি A বা টেবিল B থেকে পাঁচটি পর্যন্ত মান নির্দিষ্ট করতে এই প্যারামিটারটি ব্যবহার করুন। প্রতিক্রিয়াতে অন্তর্ভুক্ত করার জন্য নির্দিষ্ট প্রাথমিক প্রকারের মানগুলির একটির সাথে একটি স্থান অবশ্যই মিলবে৷
এই প্যারামিটারটি এর পরিবর্তে,
(regions)
বা(cities)
এর মধ্যে একটি অন্তর্ভুক্ত করতে পারে। এলাকা বা বিভাগের জন্য(regions)
ধরনের সংগ্রহ ফিল্টার, যেমন আশেপাশের এলাকা এবং পোস্টাল কোড।(cities)
টাইপ সংগ্রহের ফিল্টার জায়গাগুলির জন্য যা Google একটি শহর হিসাবে চিহ্নিত করে৷অনুরোধটি একটি
INVALID_REQUEST
ত্রুটির সাথে প্রত্যাখ্যান করা হয় যদি:- পাঁচটিরও বেশি প্রকার নির্দিষ্ট করা হয়েছে।
- যেকোনো প্রকার
(cities)
বা(regions)
ছাড়াও নির্দিষ্ট করা হয়েছে। - কোনো অচেনা ধরনের নির্দিষ্ট করা হয়.
Query Predictions অন্তর্ভুক্ত করুন
true
হলে, উত্তরে স্থান এবং ক্যোয়ারী উভয় ভবিষ্যদ্বাণী অন্তর্ভুক্ত থাকে। ডিফল্ট মানfalse
, যার অর্থ প্রতিক্রিয়া শুধুমাত্র স্থান পূর্বাভাস অন্তর্ভুক্ত.অঞ্চল কোড অন্তর্ভুক্ত
শুধুমাত্র 15 ccTLD ("শীর্ষ-স্তরের ডোমেন") দুই-অক্ষরের মানগুলির একটি অ্যারে হিসাবে নির্দিষ্ট করা নির্দিষ্ট অঞ্চলের তালিকা থেকে ফলাফলগুলি অন্তর্ভুক্ত করুন৷ যদি বাদ দেওয়া হয়, তবে প্রতিক্রিয়াতে কোনো বিধিনিষেধ প্রয়োগ করা হয় না। উদাহরণস্বরূপ, অঞ্চলগুলিকে জার্মানি এবং ফ্রান্সের মধ্যে সীমাবদ্ধ করতে:
"includedRegionCodes": ["de", "fr"]
আপনি যদি উভয়
locationRestriction
এবংincludedRegionCodes
নির্দিষ্ট করেন, ফলাফল দুটি সেটিংসের ছেদ এলাকায় অবস্থিত।ইনপুটঅফসেট
শূন্য-ভিত্তিক ইউনিকোড অক্ষর অফসেট
input
কার্সার অবস্থান নির্দেশ করে। ভবিষ্যদ্বাণীগুলি কী ফেরত দেওয়া হয় তা কার্সারের অবস্থান প্রভাবিত করতে পারে। খালি থাকলে, এটিinput
দৈর্ঘ্যে ডিফল্ট হয়।ভাষা কোড
পছন্দের ভাষা যেটিতে ফলাফল দিতে হবে। ফলাফলগুলি মিশ্র ভাষায় হতে পারে যদি
input
ব্যবহৃত ভাষাlanguageCode
দ্বারা নির্দিষ্ট করা মান থেকে আলাদা হয়, অথবা যদি প্রত্যাবর্তিত স্থানটির স্থানীয় ভাষা থেকেlanguageCode
অনুবাদ না থাকে।- পছন্দের ভাষা নির্দিষ্ট করতে আপনাকে অবশ্যই IETF BCP-47 ভাষার কোড ব্যবহার করতে হবে।
-
languageCode
সরবরাহ করা না হলে, APIAccept-Language
শিরোনামে নির্দিষ্ট মান ব্যবহার করে। যদি কোনটিই নির্দিষ্ট করা না থাকে, ডিফল্ট হলen
. আপনি যদি একটি অবৈধ ভাষা কোড নির্দিষ্ট করেন, API একটিINVALID_ARGUMENT
ত্রুটি প্রদান করে৷ - পছন্দের ভাষাটির ফলাফলের সেটের উপর একটি ছোট প্রভাব রয়েছে যা API ফেরত দিতে বেছে নেয় এবং যে ক্রমে সেগুলি ফেরত দেওয়া হয়। এটি বানান ত্রুটি সংশোধন করার জন্য API এর ক্ষমতাকেও প্রভাবিত করে।
- API একটি রাস্তার ঠিকানা প্রদান করার চেষ্টা করে যা ব্যবহারকারী এবং স্থানীয় জনসংখ্যা উভয়ের জন্যই পাঠযোগ্য, একই সময়ে ব্যবহারকারীর ইনপুট প্রতিফলিত করে। প্রতিটি অনুরোধে ব্যবহারকারীর ইনপুটের উপর নির্ভর করে স্থানের পূর্বাভাসগুলি ভিন্নভাবে ফর্ম্যাট করা হয়।
-
input
প্যারামিটারে মিলিত পদগুলি প্রথমে বেছে নেওয়া হয়, যখন উপলব্ধlanguageCode
প্যারামিটার দ্বারা নির্দেশিত ভাষা পছন্দের সাথে সারিবদ্ধ নামগুলি ব্যবহার করে, অন্যথায় ব্যবহারকারীর ইনপুটের সাথে সবচেয়ে ভাল মেলে এমন নামগুলি ব্যবহার করে৷ - রাস্তার ঠিকানাগুলি স্থানীয় ভাষায় ফর্ম্যাট করা হয়, একটি স্ক্রিপ্টে যখন সম্ভব ব্যবহারকারী দ্বারা পাঠযোগ্য, শুধুমাত্র
input
প্যারামিটারের শর্তাবলীর সাথে মিলিত হওয়ার জন্য বাছাই করা হয়। -
input
প্যারামিটারে থাকা শর্তের সাথে মিলিত পদগুলি বেছে নেওয়ার পরে, অন্যান্য সমস্ত ঠিকানা পছন্দের ভাষায় ফেরত দেওয়া হয়। পছন্দের ভাষায় একটি নাম উপলব্ধ না হলে, API সবচেয়ে কাছের মিল ব্যবহার করে।
-
অবস্থানবিয়াস বা অবস্থান সীমাবদ্ধতা
অনুসন্ধান এলাকা নির্ধারণ করতে আপনি
locationBias
বাlocationRestriction
উল্লেখ করতে পারেন, কিন্তু উভয়ই নয়। ফলাফলগুলি যে অঞ্চলের মধ্যে হতে হবে সেটিকে নির্দিষ্ট করেlocationRestriction
এবংlocationBias
সেই অঞ্চলটি নির্দিষ্ট করে যে ফলাফলগুলি অবশ্যই কাছাকাছি হতে হবে তবে এলাকার বাইরে হতে পারে বলে মনে করুন৷অবস্থান পক্ষপাত
অনুসন্ধান করার জন্য একটি এলাকা নির্দিষ্ট করে। এই অবস্থানটি একটি পক্ষপাত হিসাবে কাজ করে যার অর্থ নির্দিষ্ট স্থানের আশেপাশের ফলাফলগুলি নির্দিষ্ট এলাকার বাইরের ফলাফল সহ ফেরত দেওয়া যেতে পারে৷
অবস্থান সীমাবদ্ধতা
অনুসন্ধান করার জন্য একটি এলাকা নির্দিষ্ট করে। নির্দিষ্ট এলাকার বাইরে ফলাফল ফেরত দেওয়া হয় না.
একটি আয়তক্ষেত্রাকার ভিউপোর্ট বা একটি বৃত্ত হিসাবে
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 } } }
-
মূল
মূল বিন্দু যেখান থেকে গন্তব্যে সরলরেখার দূরত্ব গণনা করতে হবে (
distanceMeters
হিসাবে ফিরে এসেছে)। যদি এই মানটি বাদ দেওয়া হয়, সরল-রেখার দূরত্ব ফেরত দেওয়া হবে না। অক্ষাংশ এবং দ্রাঘিমাংশ স্থানাঙ্ক হিসাবে নির্দিষ্ট করা আবশ্যক:"origin": { "latitude": 40.477398, "longitude": -74.259087 }
অঞ্চল কোড
প্রতিক্রিয়া ফর্ম্যাট করতে ব্যবহৃত অঞ্চল কোড, একটি ccTLD ("টপ-লেভেল ডোমেন") দুই-অক্ষরের মান হিসাবে নির্দিষ্ট করা হয়েছে। কিছু উল্লেখযোগ্য ব্যতিক্রম সহ বেশিরভাগ ccTLD কোডগুলি ISO 3166-1 কোডগুলির সাথে অভিন্ন। উদাহরণস্বরূপ, ইউনাইটেড কিংডমের ccTLD হল "uk" (.co.uk) যেখানে এর ISO 3166-1 কোড হল "gb" (প্রযুক্তিগতভাবে "The United Kingdom of Great Britain and Northern Ireland" এর সত্তার জন্য)।
আপনি যদি একটি অবৈধ অঞ্চল কোড নির্দিষ্ট করেন, API একটি
INVALID_ARGUMENT
ত্রুটি প্রদান করে৷ প্যারামিটার প্রযোজ্য আইনের উপর ভিত্তি করে ফলাফলকে প্রভাবিত করতে পারে।সেশন টোকেন
সেশন টোকেন হল ব্যবহারকারী-উত্পাদিত স্ট্রিং যা স্বয়ংসম্পূর্ণ (নতুন) কলগুলিকে "সেশন" হিসাবে ট্র্যাক করে। স্বয়ংসম্পূর্ণ (নতুন) বিলিং উদ্দেশ্যে একটি পৃথক সেশনে ব্যবহারকারী স্বয়ংসম্পূর্ণ অনুসন্ধানের প্রশ্ন এবং নির্বাচনের পর্যায়গুলিকে গ্রুপ করতে সেশন টোকেন ব্যবহার করে। আরও তথ্যের জন্য, সেশন টোকেন দেখুন।
স্বয়ংসম্পূর্ণ (নতুন) উদাহরণ
অবস্থান সীমাবদ্ধতা এবং অবস্থানবিয়াস ব্যবহার করুন
অনুসন্ধান এলাকা নিয়ন্ত্রণ করতে API ডিফল্টরূপে আইপি বায়াসিং ব্যবহার করে। আইপি বায়াসিংয়ের সাথে, API ফলাফলের পক্ষপাতিত্ব করতে ডিভাইসের IP ঠিকানা ব্যবহার করে। অনুসন্ধান করার জন্য একটি এলাকা নির্দিষ্ট করতে আপনি ঐচ্ছিকভাবে 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" ] } }, ... ] }
অন্তর্ভুক্ত প্রাইমারি টাইপ ব্যবহার করুন
সারণি A , সারণি B , অথবা শুধুমাত্র (regions)
, অথবা শুধুমাত্র (cities)
থেকে পাঁচটি পর্যন্ত মান নির্দিষ্ট করতে includedPrimaryTypes
প্যারামিটার ব্যবহার করুন। প্রতিক্রিয়াতে অন্তর্ভুক্ত করার জন্য নির্দিষ্ট প্রাথমিক প্রকারের মানগুলির একটির সাথে একটি স্থান অবশ্যই মিলবে৷
নিম্নলিখিত উদাহরণে, আপনি "সকার" এর একটি input
স্ট্রিং নির্দিষ্ট করুন এবং "sporting_goods_store"
ধরনের প্রতিষ্ঠানের ফলাফলগুলিকে সীমাবদ্ধ করতে includedPrimaryTypes
প্যারামিটার ব্যবহার করুন:
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
ক্ষেত্র অন্তর্ভুক্ত করে। প্রত্যাবর্তিত ক্যোয়ারী ভবিষ্যদ্বাণীগুলির যেকোনো একটি সম্পর্কে আরও তথ্য পেতে আপনি একটি পাঠ্য অনুসন্ধান (নতুন) অনুরোধ করতে পারেন৷
মূল ব্যবহার করুন
এই উদাহরণে, অক্ষাংশ এবং দ্রাঘিমাংশ স্থানাঙ্ক হিসাবে অনুরোধে 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 } } ] }
এটা চেষ্টা করুন!
API এক্সপ্লোরার আপনাকে নমুনা অনুরোধ করতে দেয় যাতে আপনি API এবং API বিকল্পগুলির সাথে পরিচিত হতে পারেন।
- API আইকন নির্বাচন করুন, , পৃষ্ঠার ডানদিকে।
- ঐচ্ছিকভাবে প্রসারিত করুন স্ট্যান্ডার্ড প্যারামিটার দেখান এবং ফিল্ড মাস্কে
fields
প্যারামিটার সেট করুন। - ঐচ্ছিকভাবে রিকোয়েস্ট বডি এডিট করুন।
- এক্সিকিউট বোতাম নির্বাচন করুন। পপ-আপে, আপনি অনুরোধ করতে যে অ্যাকাউন্টটি ব্যবহার করতে চান সেটি বেছে নিন।
API এক্সপ্লোরার প্যানেলে, প্রসারিত আইকন নির্বাচন করুন, , API এক্সপ্লোরার উইন্ডো প্রসারিত করতে।