পাঠ্য অনুসন্ধান (নতুন)

একটি পাঠ্য অনুসন্ধান (নতুন) একটি স্ট্রিংয়ের উপর ভিত্তি করে স্থানগুলির একটি সেট সম্পর্কে তথ্য প্রদান করে — উদাহরণস্বরূপ "নিউ ইয়র্কের পিজা" বা "অটোয়ার কাছে জুতার দোকান" বা "123 প্রধান রাস্তা"। পরিষেবাটি পাঠ্য স্ট্রিংয়ের সাথে মেলে এমন স্থানগুলির একটি তালিকা এবং সেট করা যেকোন অবস্থানের পক্ষপাতের সাথে প্রতিক্রিয়া জানায়৷

পরিষেবাটি একটি স্বয়ংক্রিয় সিস্টেমে অস্পষ্ট ঠিকানা প্রশ্ন করার জন্য বিশেষভাবে উপযোগী, এবং স্ট্রিংয়ের অ-ঠিকানা উপাদানগুলি ব্যবসার পাশাপাশি ঠিকানাগুলির সাথে মেলে। অস্পষ্ট ঠিকানা প্রশ্নের উদাহরণ হল খারাপভাবে ফর্ম্যাট করা ঠিকানা বা অনুরোধ যাতে ব্যবসার নামগুলির মতো নন-অ্যাড্রেস উপাদান অন্তর্ভুক্ত থাকে। নিম্নলিখিত সারণীতে প্রথম দুটি উদাহরণের মতো অনুরোধগুলি শূন্য ফলাফল দিতে পারে যদি না কোনো অবস্থান — যেমন অঞ্চল, অবস্থানের সীমাবদ্ধতা, বা অবস্থানের পক্ষপাত — সেট করা না থাকে।

"10 হাই স্ট্রিট, ইউকে" বা "123 মেইন স্ট্রিট, ইউএস" ইউকেতে একাধিক "হাই স্ট্রিট"; মার্কিন যুক্তরাষ্ট্রে একাধিক "মেইন স্ট্রিট"। একটি অবস্থান সীমাবদ্ধতা সেট না করা পর্যন্ত কোয়েরি পছন্দসই ফলাফল দেয় না।
"চেইন রেস্তোরাঁ নিউ ইয়র্ক" নিউ ইয়র্কের একাধিক "চেইন রেস্তোরাঁ" অবস্থান; কোন রাস্তার ঠিকানা এমনকি রাস্তার নামও নেই।
"10 হাই স্ট্রিট, এসচার ইউকে" বা "123 মেইন স্ট্রিট, প্লেস্যান্টন ইউএস" যুক্তরাজ্যের এসচার শহরে একটি মাত্র "হাই স্ট্রিট"; শুধুমাত্র একটি "মেইন স্ট্রীট" মার্কিন শহর প্লেস্যান্টন CA.
"অনন্য রেস্তোরাঁর নাম নিউ ইয়র্ক" নিউইয়র্কে এই নামের একটি মাত্র স্থাপনা; কোন রাস্তার ঠিকানা পার্থক্য প্রয়োজন.
"নিউ ইয়র্কের পিৎজা রেস্টুরেন্ট" এই ক্যোয়ারীতে এর অবস্থান সীমাবদ্ধতা রয়েছে এবং "পিৎজা রেস্তোরাঁ" হল একটি সুনির্দিষ্ট স্থানের ধরন৷ এটি একাধিক ফলাফল প্রদান করে।
"+1 + 514-670-8700" এই প্রশ্নটিতে একটি ফোন নম্বর রয়েছে৷ গুগল সার্চের গুণমান উন্নত করতে সার্চ স্ট্রিং-এ দেশের কোড অন্তর্ভুক্ত করার পরামর্শ দেয়। এটি সেই ফোন নম্বরের সাথে যুক্ত স্থানগুলির জন্য একাধিক ফলাফল প্রদান করে৷

API এক্সপ্লোরার আপনাকে লাইভ অনুরোধ করতে দেয় যাতে আপনি API এবং API বিকল্পগুলির সাথে পরিচিত হতে পারেন:

এটা চেষ্টা করুন!

পাঠ্য অনুসন্ধান অনুরোধ

একটি পাঠ্য অনুসন্ধান অনুরোধ হল নিম্নলিখিত ফর্মের একটি HTTP POST অনুরোধ:

https://places.googleapis.com/v1/places:searchText

JSON অনুরোধের বডিতে বা POST অনুরোধের অংশ হিসাবে হেডারে সমস্ত প্যারামিটার পাস করুন। উদাহরণ স্বরূপ:

curl -X POST -d '{
  "textQuery" : "Spicy Vegetarian Food in Sydney, Australia"
}' \
-H 'Content-Type: application/json' -H 'X-Goog-Api-Key: API_KEY' \
-H 'X-Goog-FieldMask: places.displayName,places.formattedAddress,places.priceLevel' \
'https://places.googleapis.com/v1/places:searchText'

পাঠ্য অনুসন্ধান (নতুন) প্রতিক্রিয়া

পাঠ্য অনুসন্ধান (নতুন) প্রতিক্রিয়া হিসাবে একটি JSON অবজেক্ট প্রদান করে। প্রতিক্রিয়ায়:

  • places অ্যারেতে সমস্ত মিলিত স্থান রয়েছে।
  • অ্যারের প্রতিটি স্থান একটি Place বস্তু দ্বারা প্রতিনিধিত্ব করা হয়। Place অবজেক্টে একটি একক স্থান সম্পর্কে বিস্তারিত তথ্য রয়েছে।
  • অনুরোধে পাস করা FieldMask Place অবজেক্টে ফিরে আসা ক্ষেত্রগুলির তালিকা নির্দিষ্ট করে।

সম্পূর্ণ JSON অবজেক্টটি ফর্মে রয়েছে:

{
  "places": [
    {
      object (Place)
    }
  ]
}

প্রয়োজনীয় পরামিতি

  • ফিল্ডমাস্ক

    একটি প্রতিক্রিয়া ক্ষেত্র মাস্ক তৈরি করে প্রতিক্রিয়াতে ফিরে আসার জন্য ক্ষেত্রগুলির তালিকা নির্দিষ্ট করুন। URL প্যারামিটার $fields বা fields ব্যবহার করে বা HTTP শিরোনাম X-Goog-FieldMask ব্যবহার করে পদ্ধতিতে প্রতিক্রিয়া ক্ষেত্র মাস্ক পাস করুন। প্রতিক্রিয়ায় প্রত্যাবর্তিত ক্ষেত্রগুলির কোনও ডিফল্ট তালিকা নেই। আপনি যদি ফিল্ড মাস্ক বাদ দেন, তবে পদ্ধতিটি একটি ত্রুটি প্রদান করে।

    আপনি অপ্রয়োজনীয় ডেটার অনুরোধ করবেন না তা নিশ্চিত করার জন্য ফিল্ড মাস্কিং একটি ভাল ডিজাইন অনুশীলন, যা অপ্রয়োজনীয় প্রক্রিয়াকরণের সময় এবং বিলিং চার্জ এড়াতে সহায়তা করে।

    প্রত্যাবর্তনের জন্য স্থান ডেটা প্রকারের একটি কমা-বিভক্ত তালিকা নির্দিষ্ট করুন৷ উদাহরণস্বরূপ, প্রদর্শনের নাম এবং স্থানের ঠিকানা পুনরুদ্ধার করতে।

    X-Goog-FieldMask: places.displayName,places.formattedAddress

    সমস্ত ক্ষেত্র পুনরুদ্ধার করতে * ব্যবহার করুন।

    X-Goog-FieldMask: *

    নিম্নলিখিত ক্ষেত্রগুলির মধ্যে এক বা একাধিক নির্দিষ্ট করুন:

    • নিম্নলিখিত ক্ষেত্রগুলি পাঠ্য অনুসন্ধানকে ট্রিগার করে (শুধুমাত্র ID) SKU :

      places.id , places.name *

      * places.name ক্ষেত্রের ফর্মে জায়গার সম্পদের নাম রয়েছে: places/ PLACE_ID । জায়গার টেক্সট নাম অ্যাক্সেস করতে places.displayName ব্যবহার করুন।
    • নিম্নলিখিত ক্ষেত্রগুলি পাঠ্য অনুসন্ধান (বেসিক) SKU ট্রিগার করে:

      places.accessibilityOptions , places.addressComponents , places.adrFormatAddress , places.businessStatus , places.displayName , places.formattedAddress , places.googleMapsUri , places.iconBackgroundColor places.photos places.iconMaskBaseUri , places.location , places.plusCode , places.primaryType , places.primaryTypeDisplayName , places.shortFormattedAddress , places.subDestinations , places.types , places.utcOffsetMinutes , places.viewport
    • নিম্নলিখিত ক্ষেত্রগুলি পাঠ্য অনুসন্ধান (উন্নত) SKU ট্রিগার করে:

      places.currentOpeningHours , places.currentSecondaryOpeningHours , places.internationalPhoneNumber , places.nationalPhoneNumber , places.priceLevel , places.rating , places.regularOpeningHours , places.regularSecondaryOpeningHours places.userRatingCount , places.websiteUri
    • নিম্নলিখিত ক্ষেত্রগুলি পাঠ্য অনুসন্ধান (পছন্দের) SKU ট্রিগার করে:

      places.allowsDogs , places.curbsidePickup places.liveMusic places.delivery , places.dineIn , places.editorialSummary , places.evChargeOptions places.goodForWatchingSports places.fuelOptions , places.goodForChildren , places.goodForGroups , places.menuForChildren , places.parkingOptions , places.paymentOptions , places.outdoorSeating , places.reservable , places.restroom , places.reviews , places.servesBeer , places.servesBreakfast প্রাতঃরাশ , places.servesBrunch , places.servesCocktails , places.servesCoffee places.servesDinner places.servesDesserts places.servesLunch , places.servesVegetarianFood , places.servesWine , places.takeout
  • textQuery

    টেক্সট স্ট্রিং যার উপর অনুসন্ধান করতে হবে, উদাহরণস্বরূপ: "রেস্তোরাঁ", "123 প্রধান রাস্তা", বা "সান ফ্রান্সিসকোতে দেখার সেরা জায়গা"। API এই স্ট্রিং এর উপর ভিত্তি করে প্রার্থীর মিল ফেরত দেয় এবং তাদের অনুভূত প্রাসঙ্গিকতার উপর ভিত্তি করে ফলাফল অর্ডার করে।

ঐচ্ছিক পরামিতি

  • অন্তর্ভুক্ত প্রকার

    সারণি A দ্বারা সংজ্ঞায়িত নির্দিষ্ট প্রকারের সাথে মেলে এমন জায়গায় ফলাফলগুলিকে সীমাবদ্ধ করে৷ শুধুমাত্র একটি প্রকার নির্দিষ্ট করা যেতে পারে। উদাহরণ স্বরূপ:

    • "includedType":"bar"
    • "includedType":"pharmacy"
  • ভাষা কোড

    যে ভাষায় ফলাফল দিতে হবে।

    • সমর্থিত ভাষার তালিকা দেখুন। Google প্রায়ই সমর্থিত ভাষা আপডেট করে, তাই এই তালিকাটি সম্পূর্ণ নাও হতে পারে।
    • languageCode সরবরাহ করা না হলে, API ডিফল্ট en তে। আপনি যদি একটি অবৈধ ভাষা কোড নির্দিষ্ট করেন, API একটি INVALID_ARGUMENT ত্রুটি প্রদান করে৷
    • API একটি রাস্তার ঠিকানা প্রদান করার জন্য যথাসাধ্য চেষ্টা করে যা ব্যবহারকারী এবং স্থানীয় উভয়ের জন্যই পাঠযোগ্য। সেই লক্ষ্য অর্জনের জন্য, এটি স্থানীয় ভাষায় রাস্তার ঠিকানা ফেরত দেয়, পছন্দের ভাষা পর্যবেক্ষণ করে প্রয়োজনে ব্যবহারকারীর দ্বারা পাঠযোগ্য একটি স্ক্রিপ্টে প্রতিলিপি করা হয়। অন্য সব ঠিকানা পছন্দের ভাষায় ফেরত দেওয়া হয়। ঠিকানার উপাদানগুলি একই ভাষায় ফেরত দেওয়া হয়, যা প্রথম উপাদান থেকে বেছে নেওয়া হয়।
    • পছন্দের ভাষায় একটি নাম উপলব্ধ না হলে, API সবচেয়ে কাছের মিল ব্যবহার করে।
    • পছন্দের ভাষাটির ফলাফলের সেটের উপর একটি ছোট প্রভাব রয়েছে যা API ফেরত দিতে বেছে নেয় এবং যে ক্রমে সেগুলি ফেরত দেওয়া হয়। জিওকোডার ভাষার উপর নির্ভর করে সংক্ষেপণগুলিকে ভিন্নভাবে ব্যাখ্যা করে, যেমন রাস্তার প্রকারের সংক্ষিপ্ত রূপ, বা সমার্থক শব্দ যা এক ভাষায় বৈধ হতে পারে কিন্তু অন্য ভাষায় নয়।
  • অবস্থান পক্ষপাত

    অনুসন্ধান করার জন্য একটি এলাকা নির্দিষ্ট করে। এই অবস্থানটি একটি পক্ষপাত হিসাবে কাজ করে যার অর্থ নির্দিষ্ট স্থানের আশেপাশের ফলাফলগুলি নির্দিষ্ট এলাকার বাইরের ফলাফল সহ ফেরত দেওয়া যেতে পারে৷

    আপনি locationRestriction বা locationBias নির্দিষ্ট করতে পারেন, কিন্তু উভয়ই নয়। ফলাফলগুলি যে অঞ্চলের মধ্যে হতে হবে সেটিকে নির্দিষ্ট করে locationRestriction এবং locationBias সেই অঞ্চলটি নির্দিষ্ট করে যে ফলাফলগুলি অবশ্যই কাছাকাছি হতে হবে তবে এলাকার বাইরে হতে পারে বলে মনে করুন৷

    একটি আয়তক্ষেত্রাকার ভিউপোর্ট বা একটি বৃত্ত হিসাবে অঞ্চলটি নির্দিষ্ট করুন।

    • একটি বৃত্তকে কেন্দ্র বিন্দু এবং মিটারে ব্যাসার্ধ দ্বারা সংজ্ঞায়িত করা হয়। ব্যাসার্ধ অবশ্যই 0.0 এবং 50000.0 এর মধ্যে হতে হবে। ডিফল্ট ব্যাসার্ধ হল 0.0। উদাহরণ স্বরূপ:

      "locationBias": {
        "circle": {
          "center": {
            "latitude": 37.7937,
            "longitude": -122.3965
          },
          "radius": 500.0
        }
      }
    • একটি আয়তক্ষেত্র হল একটি অক্ষাংশ-দ্রাঘিমাংশের ভিউপোর্ট, যা দুটি তির্যকভাবে বিপরীত নিম্ন এবং উচ্চ বিন্দু হিসাবে উপস্থাপিত হয়। নিম্ন বিন্দুটি আয়তক্ষেত্রের দক্ষিণ-পশ্চিম কোণটিকে চিহ্নিত করে এবং উচ্চ বিন্দুটি আয়তক্ষেত্রের উত্তর-পূর্ব কোণকে প্রতিনিধিত্ব করে।

      একটি ভিউপোর্ট একটি বন্ধ অঞ্চল হিসাবে বিবেচিত হয়, যার অর্থ এটি এর সীমানা অন্তর্ভুক্ত করে। অক্ষাংশের সীমাগুলি অবশ্যই -90 থেকে 90 ডিগ্রী সহ, এবং দ্রাঘিমাংশের সীমাগুলি অবশ্যই -180 থেকে 180 ডিগ্রীর মধ্যে অন্তর্ভুক্ত থাকতে হবে:

      • low = high হলে, ভিউপোর্টটি সেই একক বিন্দু নিয়ে গঠিত।
      • low.longitude > high.longitude হলে, দ্রাঘিমাংশের সীমাটি উল্টানো হয় (ভিউপোর্টটি 180 ডিগ্রি দ্রাঘিমাংশের রেখা অতিক্রম করে)।
      • low.longitude = -180 ডিগ্রি এবং high.longitude = 180 ডিগ্রি হলে, ভিউপোর্টে সমস্ত দ্রাঘিমাংশ অন্তর্ভুক্ত থাকে।
      • low.longitude = 180 ডিগ্রি এবং high.longitude = -180 ডিগ্রি হলে, দ্রাঘিমাংশের পরিসর খালি।
      • low.latitude > high.latitude হলে, অক্ষাংশ পরিসর খালি থাকে।

      নিম্ন এবং উচ্চ উভয়ই জনবসতিপূর্ণ হতে হবে এবং প্রতিনিধিত্ব করা বাক্সটি খালি হতে পারে না। একটি খালি ভিউপোর্ট একটি ত্রুটির ফলাফল.

      উদাহরণস্বরূপ, এই ভিউপোর্টটি সম্পূর্ণরূপে নিউ ইয়র্ক সিটিকে ঘিরে রেখেছে:

      "locationBias": {
        "rectangle": {
          "low": {
            "latitude": 40.477398,
            "longitude": -74.259087
          },
          "high": {
            "latitude": 40.91618,
            "longitude": -73.70018
          }
        }
      }
  • অবস্থান সীমাবদ্ধতা

    অনুসন্ধান করার জন্য একটি এলাকা নির্দিষ্ট করে। নির্দিষ্ট এলাকার বাইরে ফলাফল ফেরত দেওয়া হয় না. একটি আয়তক্ষেত্রাকার ভিউপোর্ট হিসাবে অঞ্চলটি নির্দিষ্ট করুন। ভিউপোর্ট সংজ্ঞায়িত করার তথ্যের জন্য locationBias বিবরণ দেখুন।

    আপনি locationRestriction বা locationBias নির্দিষ্ট করতে পারেন, কিন্তু উভয়ই নয়। ফলাফলগুলি যে অঞ্চলের মধ্যে হতে হবে সেটিকে নির্দিষ্ট করে locationRestriction এবং locationBias সেই অঞ্চলটি নির্দিষ্ট করে যে ফলাফলগুলি অবশ্যই কাছাকাছি হতে হবে তবে এলাকার বাইরে হতে পারে বলে মনে করুন৷

  • maxResultCount

    ফেরত দেওয়ার জন্য সর্বাধিক সংখ্যক স্থানের ফলাফল নির্দিষ্ট করে। 1 এবং 20 এর মধ্যে হতে হবে (ডিফল্ট) অন্তর্ভুক্ত।

  • বিকল্প

    উপলব্ধ বৈদ্যুতিক যান (EV) চার্জিং সংযোগকারী এবং চার্জিং হার সনাক্ত করার জন্য পরামিতি নির্দিষ্ট করে।

    • সংযোগকারী প্রকার

      একটি জায়গায় উপলব্ধ EV চার্জিং সংযোগকারীর ধরন অনুসারে ফিল্টার। একটি স্থান যা সংযোগকারী প্রকারের কোনো সমর্থন করে না ফিল্টার আউট করা হবে. সমর্থিত EV চার্জিং সংযোগকারী প্রকারের মধ্যে রয়েছে সম্মিলিত (AC এবং DC) চার্জার, Tesla চার্জার, GB/T- কমপ্লায়েন্ট চার্জার (চীনে EV দ্রুত চার্জ করার জন্য), এবং ওয়াল আউটলেট চার্জার। আরও তথ্যের জন্য, রেফারেন্স ডকুমেন্টেশন দেখুন।

    • সর্বনিম্ন চার্জিং রেটKw

      কিলোওয়াট (কিলোওয়াট) ন্যূনতম EV চার্জিং হার দ্বারা স্থানগুলি ফিল্টার করে৷ ন্যূনতম চার্জিং হারের চেয়ে কম হারে চার্জ করা যে কোনও জায়গা ফিল্টার আউট করা হয়। উদাহরণস্বরূপ, কমপক্ষে 10 কিলোওয়াট চার্জিং রেট সহ EV চার্জারগুলি খুঁজে পেতে, আপনি এই প্যারামিটারটিকে "10" এ সেট করতে পারেন৷

  • মিন রেটিং

    ফলাফল শুধুমাত্র তাদের জন্য সীমাবদ্ধ করে যাদের গড় ব্যবহারকারী রেটিং এই সীমার চেয়ে বেশি বা সমান। 0.5 এর বৃদ্ধিতে মান অবশ্যই 0.0 এবং 5.0 (অন্তর্ভুক্ত) এর মধ্যে হতে হবে। উদাহরণস্বরূপ: 0, 0.5, 1.0, ... , 5.0 সহ। মানগুলি নিকটতম 0.5 পর্যন্ত রাউন্ড করা হয়েছে৷ উদাহরণস্বরূপ, 0.6 এর মান 1.0 এর কম রেটিং সহ সমস্ত ফলাফলকে সরিয়ে দেয়।

  • এখন খুলুন

    true হলে, ক্যোয়ারী পাঠানোর সময় ব্যবসার জন্য উন্মুক্ত শুধুমাত্র সেই জায়গাগুলি ফেরত দিন। false হলে, খোলা অবস্থা নির্বিশেষে সমস্ত ব্যবসা ফেরত দিন। Google Places ডাটাবেসে খোলার সময় নির্দিষ্ট করে না এমন জায়গাগুলি ফেরত দেওয়া হবে যদি আপনি এই প্যারামিটারটিকে false সেট করেন।

  • মূল্যস্তর

    নির্দিষ্ট মূল্য স্তরে চিহ্নিত স্থানগুলিতে অনুসন্ধান সীমাবদ্ধ করুন৷ ডিফল্ট হল সমস্ত মূল্য স্তর নির্বাচন করা।

    PriceLevel দ্বারা সংজ্ঞায়িত এক বা একাধিক মানগুলির একটি অ্যারে নির্দিষ্ট করুন৷

    উদাহরণ স্বরূপ:

    "priceLevels":["PRICE_LEVEL_INEXPENSIVE", "PRICE_LEVEL_MODERATE"]
  • র‍্যাঙ্ক পছন্দ

    প্রতিক্রিয়ায় ফলাফলগুলি কীভাবে র‌্যাঙ্ক করা হয় তা নির্দিষ্ট করে। API যখন প্রযোজ্য তখন ডিফল্টরূপে RELEVANCE ব্যবহার করে। উদাহরণস্বরূপ, "নিউ ইয়র্ক সিটির রেস্তোরাঁ" এর মতো একটি প্রশ্নের জন্য RELEVANCE ডিফল্ট। ভৌগোলিক প্রশ্নগুলির জন্য, যেমন "মাউন্টেন ভিউ, CA", বা অন্যান্য ধরণের প্রশ্নগুলির জন্য তখন কোনও ডিফল্ট প্রয়োগ করা হয় না এবং ফলাফলগুলি সেই ক্রমে প্রদর্শিত হয় যাতে সেগুলি পিছনের প্রান্তে ফেরত দেওয়া হয়৷

    মান অন্তর্ভুক্ত:

    • DISTANCE : দূরত্ব অনুসারে ফলাফল ক্রম করুন।
    • RELEVANCE : প্রাসঙ্গিকতা অনুসারে র্যাঙ্ক ফলাফল।
  • অঞ্চল কোড

    উত্তর ফর্ম্যাট করতে ব্যবহৃত অঞ্চল কোড, একটি দুই-অক্ষরের CLDR কোড মান হিসাবে নির্দিষ্ট করা হয়েছে। এই পরামিতি অনুসন্ধান ফলাফলের উপর একটি পক্ষপাতী প্রভাব থাকতে পারে। এর কোন পূর্ব মূল্য নেই।

    উত্তরে formattedAddress ক্ষেত্রের দেশের নাম যদি regionCode সাথে মেলে, তাহলে দেশের কোডটি formattedAddress থেকে বাদ দেওয়া হয়। এই প্যারামিটারটি adrFormatAddress এর উপর কোন প্রভাব ফেলে না, যা সর্বদা উপলব্ধ হলে দেশের নাম অন্তর্ভুক্ত করে, অথবা shortFormattedAddress এ, যা এটিকে অন্তর্ভুক্ত করে না।

    কিছু উল্লেখযোগ্য ব্যতিক্রম সহ বেশিরভাগ CLDR কোডগুলি ISO 3166-1 কোডগুলির সাথে অভিন্ন৷ উদাহরণস্বরূপ, ইউনাইটেড কিংডমের ccTLD হল "uk" (.co.uk) যেখানে এর ISO 3166-1 কোড হল "gb" (প্রযুক্তিগতভাবে "The United Kingdom of Great Britain and Northern Ireland" এর সত্তার জন্য)। প্যারামিটার প্রযোজ্য আইনের উপর ভিত্তি করে ফলাফলকে প্রভাবিত করতে পারে।

  • কঠোর টাইপ ফিল্টারিং

    includeType প্যারামিটারের সাথে ব্যবহৃত হয়। true সেট করা হলে, শুধুমাত্র includeType দ্বারা নির্দিষ্ট করা নির্দিষ্ট প্রকারের সাথে মেলে এমন স্থানগুলি ফেরত দেওয়া হয়। মিথ্যা হলে, ডিফল্ট, প্রতিক্রিয়াতে এমন স্থান থাকতে পারে যা নির্দিষ্ট প্রকারের সাথে মেলে না।

পাঠ্য অনুসন্ধানের উদাহরণ

ক্যোয়ারী স্ট্রিং দ্বারা একটি স্থান খুঁজুন

নিম্নলিখিত উদাহরণটি "সিডনি, অস্ট্রেলিয়ায় মসলাযুক্ত নিরামিষ খাবার" এর জন্য একটি পাঠ্য অনুসন্ধানের অনুরোধ দেখায়:

curl -X POST -d '{
  "textQuery" : "Spicy Vegetarian Food in Sydney, Australia"
}' \
-H 'Content-Type: application/json' -H 'X-Goog-Api-Key: API_KEY' \
-H 'X-Goog-FieldMask: places.displayName,places.formattedAddress' \
'https://places.googleapis.com/v1/places:searchText'

মনে রাখবেন যে X-Goog-FieldMask শিরোনামটি নির্দিষ্ট করে যে প্রতিক্রিয়াটিতে নিম্নলিখিত ডেটা ক্ষেত্রগুলি রয়েছে: places.displayName,places.formattedAddress । প্রতিক্রিয়াটি তখন ফর্মটিতে রয়েছে:

{
  "places": [
    {
      "formattedAddress": "367 Pitt St, Sydney NSW 2000, Australia",
      "displayName": {
        "text": "Mother Chu's Vegetarian Kitchen",
        "languageCode": "en"
      }
    },
    {
      "formattedAddress": "175 First Ave, Five Dock NSW 2046, Australia",
      "displayName": {
        "text": "Veggo Sizzle - Vegan & Vegetarian Restaurant, Five Dock, Sydney",
        "languageCode": "en"
      }
    },
    {
      "formattedAddress": "29 King St, Sydney NSW 2000, Australia",
      "displayName": {
        "text": "Peace Harmony",
        "languageCode": "en"
      }
    },
    ...
  ]
}

অতিরিক্ত তথ্য ফেরত দিতে ফিল্ড মাস্কে আরও ডেটা প্রকার যোগ করুন। উদাহরণস্বরূপ, রেস্তোরাঁর ধরন এবং প্রতিক্রিয়াতে ওয়েব ঠিকানা অন্তর্ভুক্ত করতে places.types,places.websiteUri যোগ করুন:

curl -X POST -d '{
  "textQuery" : "Spicy Vegetarian Food in Sydney, Australia"
}' \
-H 'Content-Type: application/json' -H 'X-Goog-Api-Key: API_KEY' \
-H 'X-Goog-FieldMask: places.displayName,places.formattedAddress,places.types,places.websiteUri' \
'https://places.googleapis.com/v1/places:searchText'

প্রতিক্রিয়া এখন ফর্মে আছে:

{
  "places": [
    {
      "types": [
        "vegetarian_restaurant",
        "vegan_restaurant",
        "chinese_restaurant",
        "restaurant",
        "food",
        "point_of_interest",
        "establishment"
      ],
      "formattedAddress": "367 Pitt St, Sydney NSW 2000, Australia",
      "websiteUri": "http://www.motherchusvegetarian.com.au/",
      "displayName": {
        "text": "Mother Chu's Vegetarian Kitchen",
        "languageCode": "en"
      }
    },
    {
      "types": [
        "vegan_restaurant",
        "thai_restaurant",
        "vegetarian_restaurant",
        "indian_restaurant",
        "italian_restaurant",
        "american_restaurant",
        "restaurant",
        "food",
        "point_of_interest",
        "establishment"
      ],
      "formattedAddress": "175 First Ave, Five Dock NSW 2046, Australia",
      "websiteUri": "http://www.veggosizzle.com.au/",
      "displayName": {
        "text": "Veggo Sizzle - Vegan & Vegetarian Restaurant, Five Dock, Sydney",
        "languageCode": "en"
      }
    },
    ...
  ]
}

মূল্য স্তর অনুসারে স্থানগুলি ফিল্টার করুন

রেস্তোরাঁগুলিতে ফলাফলগুলি ফিল্টার করতে priceLevel বিকল্পটি ব্যবহার করুন যা সস্তা বা মাঝারিভাবে ব্যয়বহুল হিসাবে সংজ্ঞায়িত করুন:

curl -X POST -d '{
  "textQuery" : "Spicy Vegetarian Food in Sydney, Australia",
  "priceLevels":["PRICE_LEVEL_INEXPENSIVE", "PRICE_LEVEL_MODERATE"]
}' \
-H 'Content-Type: application/json' -H 'X-Goog-Api-Key: API_KEY' \
-H 'X-Goog-FieldMask: places.displayName,places.formattedAddress,places.priceLevel' \
'https://places.googleapis.com/v1/places:searchText'

এই উদাহরণটি X-Goog-FieldMask শিরোনামটিও ব্যবহার করে প্রতিক্রিয়াতে places.priceLevel ডেটা ফিল্ড যোগ করতে তাই এটি আকারে:

{
  "places": [
    {
      "formattedAddress": "367 Pitt St, Sydney NSW 2000, Australia",
      "priceLevel": "PRICE_LEVEL_MODERATE",
      "displayName": {
        "text": "Mother Chu's Vegetarian Kitchen",
        "languageCode": "en"
      }
    },
    {
      "formattedAddress": "115 King St, Newtown NSW 2042, Australia",
      "priceLevel": "PRICE_LEVEL_MODERATE",
      "displayName": {
        "text": "Green Mushroom",
        "languageCode": "en"
      }
    },
    ...
  ]
}

আপনার অনুসন্ধানকে পরিমার্জিত করতে অতিরিক্ত বিকল্প যোগ করুন, যেমন includedType , minRating , rankPreference , openNow , এবং ঐচ্ছিক প্যারামিটারে বর্ণিত অন্যান্য পরামিতি।

একটি এলাকায় স্থান অনুসন্ধান করুন

একটি এলাকায় একটি অনুসন্ধান সীমাবদ্ধ করতে locationRestriction বা locationBias ব্যবহার করুন, কিন্তু উভয়ই নয়। ফলাফলগুলি যে অঞ্চলের মধ্যে হতে হবে সেটিকে নির্দিষ্ট করে locationRestriction এবং locationBias সেই অঞ্চলটি নির্দিষ্ট করে যে ফলাফলগুলি অবশ্যই কাছাকাছি হতে হবে তবে এলাকার বাইরে হতে পারে বলে মনে করুন৷

নীচের উদাহরণটি সান ফ্রান্সিসকো শহরের কেন্দ্রস্থলে একটি বিন্দুর 500 মিটারের মধ্যে "স্পাইসি ভেজিটেরিয়ান ফুড" এর জন্য একটি পাঠ্য অনুসন্ধানের অনুরোধ দেখায়। এই অনুরোধটি খোলা জায়গাগুলির জন্য শুধুমাত্র প্রথম 10টি ফলাফল প্রদান করে৷

curl -X POST -d '{
  "textQuery" : "Spicy Vegetarian Food",
  "openNow": true,
  "maxResultCount": 10,
  "locationBias": {
    "circle": {
      "center": {"latitude": 37.7937, "longitude": -122.3965},
      "radius": 500.0
    }
  },
}' \
-H 'Content-Type: application/json' -H 'X-Goog-Api-Key: API_KEY' \
-H 'X-Goog-FieldMask: places.displayName,places.formattedAddress' \
'https://places.googleapis.com/v1/places:searchText'

ন্যূনতম চার্জিং রেট সহ EV চার্জারগুলির জন্য অনুসন্ধান করুন৷

আপনার ইভির সাথে সামঞ্জস্যপূর্ণ উপলব্ধ চার্জার সহ স্থানগুলি অনুসন্ধান করতে minimumChargingRateKw এবং connectorTypes ব্যবহার করুন৷

নিম্নলিখিত উদাহরণটি মাউন্টেন ভিউ, CA-তে ন্যূনতম 10 কিলোওয়াট চার্জিং রেট সহ Tesla এবং J1772 টাইপ 1 EV চার্জিং সংযোগকারীগুলির জন্য একটি অনুরোধ দেখায়৷ মাত্র চারটি ফলাফল ফিরে আসে।

curl -X POST -d '{
    "textQuery": "EV Charging Station Mountain View",
    "maxResultCount": 4,
    "evOptions": {
      "minimumChargingRateKw": 10,
      "connectorTypes": ["EV_CONNECTOR_TYPE_J1772","EV_CONNECTOR_TYPE_TESLA"]
    }
  }' \
-H 'Content-Type: application/json' -H 'X-Goog-Api-Key: API_KEY' \
-H "X-Goog-FieldMask: places.displayName,places.evChargeOptions" \
'https://places.googleapis.com/v1/places:searchText'

অনুরোধ নিম্নলিখিত প্রতিক্রিয়া প্রদান করে:

{
  "places": [
    {
      "displayName": {
        "text": "EVgo Charging Station",
        "languageCode": "en"
      },
      "evChargeOptions": {
        "connectorCount": 16,
        "connectorAggregation": [
          {
            "type": "EV_CONNECTOR_TYPE_CHADEMO",
            "maxChargeRateKw": 100,
            "count": 8,
            "availableCount": 5,
            "outOfServiceCount": 0,
            "availabilityLastUpdateTime": "2024-01-10T19:10:00Z"
          },
          {
            "type": "EV_CONNECTOR_TYPE_CCS_COMBO_1",
            "maxChargeRateKw": 100,
            "count": 2,
            "availableCount": 2,
            "outOfServiceCount": 0,
            "availabilityLastUpdateTime": "2024-01-10T19:10:00Z"
          },
          {
            "type": "EV_CONNECTOR_TYPE_CCS_COMBO_1",
            "maxChargeRateKw": 350,
            "count": 6,
            "availableCount": 3,
            "outOfServiceCount": 0,
            "availabilityLastUpdateTime": "2024-01-10T19:10:00Z"
          }
        ]
      }
    },
    {
      "displayName": {
        "text": "EVgo Charging Station",
        "languageCode": "en"
      },
      "evChargeOptions": {
        "connectorCount": 6,
        "connectorAggregation": [
          {
            "type": "EV_CONNECTOR_TYPE_CCS_COMBO_1",
            "maxChargeRateKw": 100,
            "count": 4,
            "availableCount": 3,
            "outOfServiceCount": 0,
            "availabilityLastUpdateTime": "2024-01-10T19:10:00Z"
          },
          {
            "type": "EV_CONNECTOR_TYPE_CCS_COMBO_1",
            "maxChargeRateKw": 350,
            "count": 2,
            "availableCount": 0,
            "outOfServiceCount": 2,
            "availabilityLastUpdateTime": "2024-01-10T19:10:00Z"
          }
        ]
      }
    },
    {
      "displayName": {
        "text": "EVgo Charging Station",
        "languageCode": "en"
      },
      "evChargeOptions": {
        "connectorCount": 5,
        "connectorAggregation": [
          {
            "type": "EV_CONNECTOR_TYPE_J1772",
            "maxChargeRateKw": 3.5999999046325684,
            "count": 1,
            "availableCount": 0,
            "outOfServiceCount": 1,
            "availabilityLastUpdateTime": "2024-01-10T19:10:00Z"
          },
          {
            "type": "EV_CONNECTOR_TYPE_CHADEMO",
            "maxChargeRateKw": 50,
            "count": 2,
            "availableCount": 0,
            "outOfServiceCount": 0,
            "availabilityLastUpdateTime": "2024-01-10T19:10:00Z"
          },
          {
            "type": "EV_CONNECTOR_TYPE_CCS_COMBO_1",
            "maxChargeRateKw": 50,
            "count": 2,
            "availableCount": 0,
            "outOfServiceCount": 0,
            "availabilityLastUpdateTime": "2024-01-10T19:10:00Z"
          }
        ]
      }
    },
    {
      "displayName": {
        "text": "Electric Vehicle Charging Station",
        "languageCode": "en"
      },
      "evChargeOptions": {
        "connectorCount": 10,
        "connectorAggregation": [
          {
            "type": "EV_CONNECTOR_TYPE_OTHER",
            "maxChargeRateKw": 210,
            "count": 10
          }
        ]
      }
    }
  ]
}

এটা চেষ্টা করুন!

API এক্সপ্লোরার আপনাকে নমুনা অনুরোধ করতে দেয় যাতে আপনি API এবং API বিকল্পগুলির সাথে পরিচিত হতে পারেন।

  1. ঐচ্ছিকভাবে প্রসারিত করুন স্ট্যান্ডার্ড প্যারামিটার দেখান এবং ফিল্ড মাস্কে fields প্যারামিটার সেট করুন।

  2. ঐচ্ছিকভাবে রিকোয়েস্ট বডি এডিট করুন।

  3. এক্সিকিউট বোতাম নির্বাচন করুন। পপ-আপ ডায়ালগ বক্সে, আপনি অনুরোধ করতে যে অ্যাকাউন্টটি ব্যবহার করতে চান সেটি বেছে নিন।