নিয়ারবাই সার্চ (লিগ্যাসি)

ইউরোপীয় অর্থনৈতিক অঞ্চল (EEA)-এর ডেভেলপার

নিয়ারবাই Search (Legacy) আপনাকে নির্দিষ্ট এলাকার মধ্যে জায়গা সার্চ করতে দেয়। আপনি কীওয়ার্ড প্রদান করে অথবা আপনি যে ধরনের জায়গা খুঁজছেন তা নির্দিষ্ট করে আপনার সার্চের অনুরোধ পরিশোধন করতে পারেন।

Nearby Search (Legacy) সংক্রান্ত অনুরোধ

নিয়ারবাই Search (Legacy) অনুরোধ হল নিম্নলিখিত ফর্মের একটি HTTP URL:

https://maps.googleapis.com/maps/api/place/nearbysearch/output?parameters

যেখানে output নিম্নলিখিত মানগুলির মধ্যে যেকোনও একটি হতে পারে:

  • json (সাজেস্ট করা হয়েছে) জাভাস্ক্রিপ্ট অবজেক্ট নোটেশনে (JSON) আউটপুট দেখায়
  • xml XML হিসেবে আউটপুট দেখায়

নিয়ারবাই Search (Legacy) অনুরোধ শুরু করার জন্য নির্দিষ্ট কিছু প্যারামিটার প্রয়োজন। URL-এর স্ট্যান্ডার্ড অনুযায়ী, সব প্যারামিটারকে অ্যামপারস্যান্ড (&) অক্ষর ব্যবহার করে আলাদা করা হয়।

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

  • লোকেশন

    যে পয়েন্টের আশেপাশে জায়গার তথ্য পাওয়া যাবে। এটি অবশ্যই latitude,longitude হিসেবে উল্লেখ করতে হবে।

  • যতটা অঞ্চল জুড়ে টার্গেট করা যাবে

    দূরত্ব (মিটারে) নির্ধারণ করে যার মধ্যে জায়গার ফলাফল দেখাতে হবে। আপনি location এবং radius প্যারামিটার পাস করে নির্দিষ্ট সার্কেলের জন্য ফলাফল পক্ষপাতদুষ্ট করতে পারেন। এটি করলে Places পরিষেবাকে সেই বৃত্তের মধ্যে ফলাফল দেখানোর জন্য অগ্রাধিকার দেওয়ার নির্দেশ দেওয়া হয়; তবে নির্দিষ্ট করা এলাকার বাইরের ফলাফলও দেখানো হতে পারে।

    সার্চের ধরন ও অন্যান্য প্যারামিটারের উপর নির্ভর করে ব্যাসার্ধ অটোমেটিক সর্বাধিক মানে ক্ল্যাম্প করা হবে।

    • অটো-কমপ্লিট: ৫০,০০০ মিটার
    • নিয়ারবাই Search:
      • keyword বা name-এর সাথে: ৫০,০০০ মিটার
      • keyword বা name ছাড়া
        • ৫০,০০০ মিটার পর্যন্ত, এলাকার ঘনত্বের উপর ভিত্তি করে ডায়নামিকভাবে অ্যাডজাস্ট করা হয়, rankby প্যারামিটার থেকে স্বাধীন।
        • rankby=distance ব্যবহার করার সময়, ব্যাসার্ধ প্যারামিটার গ্রহণ করা হবে না এবং এর ফলে INVALID_REQUEST হবে।
    • কোয়েরি অটোকমপ্লিট: ৫০,০০০ মিটার
    • টেক্সট সার্চ: ৫০,০০০ মিটার

ঐচ্ছিক প্যারামিটার

  • কীওয়ার্ড

    যে টেক্সট স্ট্রিং সার্চ করতে হবে, যেমন: "রেস্তোরাঁ" বা "১২৩ মেইন স্ট্রিট"। এটি অবশ্যই কোনও জায়গার নাম, ঠিকানা বা প্রতিষ্ঠানের বিভাগ হতে হবে। অন্য যেকোনও ধরনের ইনপুট দিলে সমস্যা হতে পারে এবং সঠিক ফলাফল পাওয়ার কোনও গ্যারেন্টি নেই। Google Places পরিষেবা এই স্ট্রিংয়ের ভিত্তিতে সম্ভাব্য ম্যাচ দেখাবে এবং তাদের অনুভূত প্রাসঙ্গিকতার ভিত্তিতে ফলাফলগুলি ক্রমবিন্যাস করবে।

    এই প্যারামিটার ব্যবহার করে স্পষ্টভাবে লোকেশন সংক্রান্ত তথ্য অন্তর্ভুক্ত করলে, লোকেশন, ব্যাসার্ধ এবং rankby প্যারামিটারের সাথে বিরোধ হতে পারে, যার ফলে প্রত্যাশিত ফলাফল পাওয়া যাবে না।

    এই প্যারামিটার বাদ দেওয়া হলে, business_status-এ CLOSED_TEMPORARILY বা CLOSED_PERMANENTLY উল্লেখ করা জায়গাগুলি দেখানো হবে না।

  • ভাষা

    যে ভাষায় ফলাফল দেখানো হবে।

    • অনুমোদিত ভাষার তালিকা দেখুন। Google প্রায়ই কাজ করে এমন ভাষার তালিকা আপডেট করে, তাই এই তালিকা সম্পূর্ণ নাও হতে পারে।
    • language প্রদান করা না হলে, API Accept-Language হেডারে উল্লেখ করা পছন্দের ভাষা ব্যবহার করার চেষ্টা করে।
    • API এমন রাস্তার ঠিকানা প্রদান করার যথাসাধ্য চেষ্টা করে যা ব্যবহারকারী ও স্থানীয় লোকজন উভয়ের জন্যই বোধগম্য হয়। এই লক্ষ্য পূরণ করতে, এটি স্থানীয় ভাষায় রাস্তার ঠিকানা ফেরত পাঠায়, যা ব্যবহারকারীর পছন্দের ভাষা অনুযায়ী, প্রয়োজনে ব্যবহারকারীর পড়ার উপযোগী স্ক্রিপ্টে লিপ্যন্তর করা হয়। অন্যান্য সব ঠিকানা পছন্দের ভাষায় দেখানো হয়। ঠিকানার সব কম্পোনেন্ট একই ভাষায় দেখানো হয়, যা প্রথম কম্পোনেন্ট থেকে বেছে নেওয়া হয়।
    • পছন্দের ভাষায় কোনও নাম উপলভ্য না থাকলে, API সবচেয়ে কাছাকাছি ম্যাচ ব্যবহার করে।
    • API যে ফলাফল দেখায় এবং যে ক্রমে দেখায়, তার উপর পছন্দের ভাষার সামান্য প্রভাব থাকে। জিওকোডার ভাষার উপর নির্ভর করে সংক্ষিপ্ত রূপকে আলাদাভাবে ব্যাখ্যা করে, যেমন রাস্তার প্রকারের সংক্ষিপ্ত রূপ বা সমার্থক শব্দ যা একটি ভাষায় বৈধ হতে পারে কিন্তু অন্য ভাষায় নয়। যেমন, হাঙ্গেরিয়ান ভাষায় utca এবং tér হল রাস্তার সমার্থক শব্দ।
  • সর্বাধিকদাম

    নির্দিষ্ট রেঞ্জের মধ্যে থাকা জায়গাগুলিই শুধু ফলাফল হিসেবে দেখায়। সঠিক ভ্যালুর রেঞ্জ ০ (সবচেয়ে সস্তা) থেকে ৪ (সবচেয়ে দামি) পর্যন্ত হয়। নির্দিষ্ট ভ্যালু দ্বারা নির্দেশিত সঠিক পরিমাণ অঞ্চল থেকে অঞ্চলে পরিবর্তিত হবে।

  • minprice

    নির্দিষ্ট রেঞ্জের মধ্যে থাকা জায়গাগুলিই শুধু ফলাফল হিসেবে দেখায়। সঠিক ভ্যালুর রেঞ্জ ০ (সবচেয়ে সস্তা) থেকে ৪ (সবচেয়ে দামি) পর্যন্ত হয়। নির্দিষ্ট ভ্যালু দ্বারা নির্দেশিত সঠিক পরিমাণ অঞ্চল থেকে অঞ্চলে পরিবর্তিত হবে।

  • নাম

    keyword-এর সমতুল্য। এই ফিল্ডের মান keyword ফিল্ডের মানের সাথে একত্রিত করা হয় এবং একই সার্চ স্ট্রিংয়ের অংশ হিসেবে পাস করা হয়।

  • এখনই খুলুন

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

  • pagetoken

    আগে রান করা সার্চ থেকে ২০টি পর্যন্ত ফলাফল দেখায়। pagetoken প্যারামিটার সেট করলে, আগে ব্যবহার করা একই প্যারামিটার দিয়ে সার্চ করা হয়— pagetoken ছাড়া অন্য সব প্যারামিটার উপেক্ষা করা হয়।

  • rankby

    ফলাফল যে ক্রমে তালিকাভুক্ত করা হয়েছে তা নির্দিষ্ট করে। সম্ভাব্য ভ্যালুগুলি হল:

    • prominence (ডিফল্ট)। এই বিকল্পটি গুরুত্বের ভিত্তিতে ফলাফল সাজায়। সেট করা ব্যাসার্ধের মধ্যে থাকা বিশিষ্ট জায়গাগুলিকে র‍্যাঙ্কিংয়ে অগ্রাধিকার দেওয়া হবে, আশেপাশের জায়গাগুলি মিললেও সেগুলি কম বিশিষ্ট হলে অগ্রাধিকার পাবে না। Google-এর ইন্ডেক্সে কোনও জায়গার র‍্যাঙ্কিং, বিশ্বব্যাপী জনপ্রিয়তা এবং অন্যান্য ফ্যাক্টরের মাধ্যমে প্রাধান্য প্রভাবিত হতে পারে। প্রমিনেন্স নির্দিষ্ট করা থাকলে, radius প্যারামিটারটি প্রয়োজন।
    • distance। এই বিকল্পটি নির্দিষ্ট লোকেশন থেকে দূরত্বের ভিত্তিতে সার্চ ফলাফলকে ঊর্ধ্বক্রমে দেখায়। distance নির্দিষ্ট করা হলে, keyword, name বা type-এর মধ্যে এক বা একাধিক প্রয়োজন এবং radius অনুমোদিত নয়।
  • ধরন

    নির্দিষ্ট ধরনের সাথে ম্যাচ করা জায়গার মধ্যে ফলাফল সীমাবদ্ধ করে। আপনি শুধুমাত্র এক ধরনের উল্লেখ করতে পারবেন। আপনি একাধিক ধরন প্রদান করলে, API প্রথম এন্ট্রির পরে সব ধরন উপেক্ষা করে।

    • type=hospital|pharmacy|doctor-এর দাম type=hospital হয়েছে
    • type=hospital,pharmacy,doctor সম্পূর্ণভাবে উপেক্ষা করা হয়েছে

    কাজ করে এমন ধরনের তালিকা দেখুন।

    মনে রাখবেন: একই ভ্যালু (keyword=cafe&type=cafe বা keyword=parking&type=parking) সহ keyword এবং type উভয় যোগ করলে ZERO_RESULTS হতে পারে।

নিয়ারবাই Search (লিগ্যাসি) সংক্রান্ত উদাহরণ

কার্ল

curl -L -X GET 'https://maps.googleapis.com/maps/api/place/nearbysearch/json?location=-33.8670522%2C151.1957362&radius=1500&type=restaurant&keyword=cruise&key=YOUR_API_KEY'

HTTP

https://maps.googleapis.com/maps/api/place/nearbysearch/json
  ?keyword=cruise
  &location=-33.8670522%2C151.1957362
  &radius=1500
  &type=restaurant
  &key=YOUR_API_KEY

মনে রাখবেন: এই উদাহরণে, আপনার অ্যাপ্লিকেশনে অনুরোধটি কাজ করার জন্য আপনাকে key আপনার নিজস্ব API কী দিয়ে প্রতিস্থাপন করতে হবে।

নিয়ারবাই Search (লিগ্যাসি) রেসপন্স

নিচের উদাহরণে নিয়ারবাই Search (Legacy) সংক্রান্ত উত্তর দেখানো হয়েছে।

JSON

{
  "html_attributions": [],
  "results":
    [
      {
        "business_status": "OPERATIONAL",
        "geometry":
          {
            "location": { "lat": -33.8587323, "lng": 151.2100055 },
            "viewport":
              {
                "northeast":
                  { "lat": -33.85739847010727, "lng": 151.2112436298927 },
                "southwest":
                  { "lat": -33.86009812989271, "lng": 151.2085439701072 },
              },
          },
        "icon": "https://maps.gstatic.com/mapfiles/place_api/icons/v1/png_71/bar-71.png",
        "icon_background_color": "#FF9E67",
        "icon_mask_base_uri": "https://maps.gstatic.com/mapfiles/place_api/icons/v2/bar_pinlet",
        "name": "Cruise Bar",
        "opening_hours": { "open_now": false },
        "photos":
          [
            {
              "height": 608,
              "html_attributions":
                [
                  'A Google User',
                ],
              "photo_reference": "Aap_uECvJIZuXT-uLDYm4DPbrV7gXVPeplbTWUgcOJ6rnfc4bUYCEAwPU_AmXGIaj0PDhWPbmrjQC8hhuXRJQjnA1-iREGEn7I0ZneHg5OP1mDT7lYVpa1hUPoz7cn8iCGBN9MynjOPSUe-UooRrFw2XEXOLgRJ-uKr6tGQUp77CWVocpcoG",
              "width": 1080,
            },
          ],
        "place_id": "ChIJi6C1MxquEmsR9-c-3O48ykI",
        "plus_code":
          {
            "compound_code": "46R6+G2 The Rocks, New South Wales",
            "global_code": "4RRH46R6+G2",
          },
        "price_level": 2,
        "rating": 4,
        "reference": "ChIJi6C1MxquEmsR9-c-3O48ykI",
        "scope": "GOOGLE",
        "types":
          ["bar", "restaurant", "food", "point_of_interest", "establishment"],
        "user_ratings_total": 1269,
        "vicinity": "Level 1, 2 and 3, Overseas Passenger Terminal, Circular Quay W, The Rocks",
      },
      {
        "business_status": "OPERATIONAL",
        "geometry":
          {
            "location": { "lat": -33.8675219, "lng": 151.2016502 },
            "viewport":
              {
                "northeast":
                  { "lat": -33.86614532010728, "lng": 151.2031259298927 },
                "southwest":
                  { "lat": -33.86884497989272, "lng": 151.2004262701072 },
              },
          },
        "icon": "https://maps.gstatic.com/mapfiles/place_api/icons/v1/png_71/generic_business-71.png",
        "icon_background_color": "#7B9EB0",
        "icon_mask_base_uri": "https://maps.gstatic.com/mapfiles/place_api/icons/v2/generic_pinlet",
        "name": "Sydney Harbour Dinner Cruises",
        "opening_hours": { "open_now": true },
        "photos":
          [
            {
              "height": 835,
              "html_attributions":
                [
                  'A Google User',
                ],
              "photo_reference": "Aap_uEBVsYnNcrpRixtrlHBztigZh70CwYkNWZzQnqJ39SjeBo_wvgKf-kXc6tgaMLBdQrRKmxmSKjOezoZrv-sHKVbTX0OI48HBqYYVnQiZQ-WGeuQDsLEPwX7LaVPa68nUAxX114Zpqt7bryoO9wL4qXdgEnopbOp5WWLALhKEHoIEH7f7",
              "width": 1200,
            },
          ],
        "place_id": "ChIJM1mOVTS6EmsRKaDzrTsgids",
        "plus_code":
          {
            "compound_code": "46J2+XM Sydney, New South Wales",
            "global_code": "4RRH46J2+XM",
          },
        "rating": 4.8,
        "reference": "ChIJM1mOVTS6EmsRKaDzrTsgids",
        "scope": "GOOGLE",
        "types":
          [
            "tourist_attraction",
            "travel_agency",
            "restaurant",
            "food",
            "point_of_interest",
            "establishment",
          ],
        "user_ratings_total": 9,
        "vicinity": "32 The Promenade, Sydney",
      },
      // ...
    ],
  "status": "OK",
}
    

XML

<?xml version="1.0" encoding="UTF-8"?>
<PlaceSearchResponse>
 <status>OK</status>
 <result>
  <name>Cruise Bar</name>
  <vicinity>Level 1, 2 and 3, Overseas Passenger Terminal, Circular Quay W, The Rocks</vicinity>
  <type>bar</type>
  <type>restaurant</type>
  <type>food</type>
  <type>point_of_interest</type>
  <type>establishment</type>
  <geometry>
   <location>
    <lat>-33.8587323</lat>
    <lng>151.2100055</lng>
   </location>
   <viewport>
    <southwest>
     <lat>-33.8600981</lat>
     <lng>151.2085440</lng>
    </southwest>
    <northeast>
     <lat>-33.8573985</lat>
     <lng>151.2112436</lng>
    </northeast>
   </viewport>
  </geometry>
  <rating>4.0</rating>
  <icon>https://maps.gstatic.com/mapfiles/place_api/icons/v1/png_71/bar-71.png</icon>
  <reference>ChIJi6C1MxquEmsR9-c-3O48ykI</reference>
  <opening_hours>
   <open_now>false</open_now>
  </opening_hours>
  <photo>
   <photo_reference>Aap_uEALIq4sgBHhIYWWapOH2NV1T2I7YdOiLzEH7z-483I764cId1sZkbzSq-hVYTk1PQeaHuZzlRfA7-ilwJ3QWon4b37ePd-PBwZbOwFZHxhYs0Cs7jRSgMHWfOzGivp6ZFG4iupyz50qS5pBZT1WbA2ufacTq_U21TtgffQD31wKRPQk</photo_reference>
   <width>1080</width>
   <height>608</height>
   <html_attribution>&lt;a href=&quot;https://maps.google.com/maps/contrib/112582655193348962755&quot;&gt;A Google User&lt;/a&gt;</html_attribution>
  </photo>
  <price_level>2</price_level>
  <user_ratings_total>1269</user_ratings_total>
  <place_id>ChIJi6C1MxquEmsR9-c-3O48ykI</place_id>
  <scope>GOOGLE</scope>
  <plus_code>
   <global_code>4RRH46R6+G2</global_code>
   <compound_code>46R6+G2 The Rocks, New South Wales</compound_code>
  </plus_code>
  <icon_background_color>#FF9E67</icon_background_color>
  <business_status>OPERATIONAL</business_status>
  <icon_mask_base_uri>https://maps.gstatic.com/mapfiles/place_api/icons/v2/bar_pinlet</icon_mask_base_uri>
 </result>
 <result>
  <name>Sydney Harbour Dinner Cruises</name>
  <vicinity>32 The Promenade, Sydney</vicinity>
  <type>tourist_attraction</type>
  <type>restaurant</type>
  <type>food</type>
  <type>travel_agency</type>
  <type>point_of_interest</type>
  <type>establishment</type>
  <geometry>
   <location>
    <lat>-33.8675219</lat>
    <lng>151.2016502</lng>
   </location>
   <viewport>
    <southwest>
     <lat>-33.8688450</lat>
     <lng>151.2004263</lng>
    </southwest>
    <northeast>
     <lat>-33.8661453</lat>
     <lng>151.2031259</lng>
    </northeast>
   </viewport>
  </geometry>
  <rating>4.8</rating>
  <icon>https://maps.gstatic.com/mapfiles/place_api/icons/v1/png_71/generic_business-71.png</icon>
  <reference>ChIJM1mOVTS6EmsRKaDzrTsgids</reference>
  <opening_hours>
   <open_now>true</open_now>
  </opening_hours>
  <photo>
   <photo_reference>Aap_uEB5jH7GXdcozv1Y5HX18syo4f128S58NVUnqBbLJMpWbC39K49wp-wzsLOsUT8QKDaag6ISFL8hl1vVuig4jkc5fMMkWKiqw5PY-ebcWZ5tI3gEXEYGGoG_mDAulaMLudUpSwgBx2_RLnA0SSiugqqQUTYlkGyCZSe8HSyngVczy6XN</photo_reference>
   <width>1200</width>
   <height>835</height>
   <html_attribution>&lt;a href=&quot;https://maps.google.com/maps/contrib/109764923610545394994&quot;&gt;A Google User&lt;/a&gt;</html_attribution>
  </photo>
  <user_ratings_total>9</user_ratings_total>
  <place_id>ChIJM1mOVTS6EmsRKaDzrTsgids</place_id>
  <scope>GOOGLE</scope>
  <plus_code>
   <global_code>4RRH46J2+XM</global_code>
   <compound_code>46J2+XM Sydney, New South Wales</compound_code>
  </plus_code>
  <icon_background_color>#7B9EB0</icon_background_color>
  <business_status>OPERATIONAL</business_status>
  <icon_mask_base_uri>https://maps.gstatic.com/mapfiles/place_api/icons/v2/generic_pinlet</icon_mask_base_uri>
 </result>
 <!-- ... -->
</PlaceSearchResponse>

    

PlacesNearbySearchResponse

ফিল্ড প্রয়োজনীয় ধরন বিবরণ
প্রয়োজনীয় Array<string>

এই তালিকায় অ্যাট্রিবিউশনের সেট থাকতে পারে যা ব্যবহারকারীকে অবশ্যই দেখাতে হবে (কিছু তালিকায় অ্যাট্রিবিউশন নাও থাকতে পারে)।

প্রয়োজনীয় Array<Place>

জায়গার অ্যারে রয়েছে।

জায়গা সার্চ করার অনুরোধ, জায়গা সংক্রান্ত বিবরণ সংক্রান্ত অনুরোধের মাধ্যমে ফেরত পাওয়া ফিল্ডের সাবসেট ফেরত দেয়। আপনি যে ফিল্ডটি চান সেটি যদি জায়গা সার্চ করার মাধ্যমে না পাওয়া যায়, তাহলে আপনি জায়গা সার্চ করার মাধ্যমে place_id পেতে পারেন, তারপর সেই প্লেস আইডি ব্যবহার করে জায়গার বিবরণ অনুরোধ করতে পারেন।

আরও তথ্যের জন্য জায়গা দেখুন।

প্রয়োজনীয় PlacesSearchStatus

অনুরোধের স্ট্যাটাস থাকে এবং অনুরোধ কেন ব্যর্থ হয়েছে তা ট্র্যাক করতে সাহায্য করার জন্য ডিবাগিং তথ্য থাকতে পারে।

আরও তথ্যের জন্য PlacesSearchStatus দেখুন।

ঐচ্ছিক স্ট্রিং

পরিষেবাটি OK< ছাড়া অন্য কোনও স্ট্যাটাস কোড রিটার্ন করলে, রেসপন্স অবজেক্টের মধ্যে একটি অতিরিক্ত error_message ফিল্ড থাকতে পারে। এই ফিল্ডে স্ট্যাটাস কোড দেওয়ার কারণ সম্পর্কে আরও বিস্তারিত তথ্য থাকে। এই ফিল্ড সবসময় ফেরত দেওয়া হয় না এবং এর কন্টেন্ট পরিবর্তন করা হতে পারে।

ঐচ্ছিক Array<string>

পরিষেবাটি অনুরোধের স্পেসিফিকেশন সম্পর্কে অতিরিক্ত তথ্য প্রদান করলে, রেসপন্স অবজেক্টের মধ্যে একটি অতিরিক্ত info_messages ফিল্ড থাকতে পারে। এই ফিল্ডটি শুধুমাত্র সফল অনুরোধের জন্য ফেরত দেওয়া হয়। এটি সবসময় ফেরত নাও আসতে পারে এবং এর কন্টেন্ট পরিবর্তন হতে পারে।

ঐচ্ছিক স্ট্রিং

এতে একটি টোকেন আছে যা সর্বাধিক ২০টি অতিরিক্ত ফলাফল দেখাতে ব্যবহার করা যেতে পারে। দেখানোর মতো অতিরিক্ত ফলাফল না থাকলে, next_page_token ফেরত পাঠানো হবে না। সর্বাধিক ৬০টি ফলাফল ফেরত পাঠানো যেতে পারে। next_page_token ইস্যু করা এবং সেটি বৈধ হওয়ার মধ্যে সামান্য বিলম্ব হয়।

PlacesSearchStatus

পরিষেবা থেকে স্ট্যাটাস কোড পাঠানো হয়েছে।

  • OK API অনুরোধ সফল হয়েছে তা নির্দেশ করছে।
  • ZERO_RESULTS ইঙ্গিত করে যে সার্চ সফল হয়েছে কিন্তু কোনও ফলাফল পাওয়া যায়নি। এটি হতে পারে যদি সার্চটি দূরবর্তী লোকেশনে latlng পাস করা হয়।
  • INVALID_REQUEST থেকে বোঝা যায় যে API অনুরোধটি ভুলভাবে ফর্ম্যাট করা হয়েছে, সাধারণত প্রয়োজনীয় কোয়েরি প্যারামিটার (location বা radius) না থাকার কারণে এটি হয়।
  • OVER_QUERY_LIMIT নিম্নলিখিত যেকোনও একটি নির্দেশ করে:
    • আপনি QPS-এর সীমা পেরিয়ে গেছেন।
    • আপনার অ্যাকাউন্টে বিলিং চালু করা হয়নি।
    • মাসিক $২০০ ক্রেডিট বা নিজের উপর আরোপ করা ব্যবহারের সীমা অতিক্রম করা হয়েছে।
    • প্রদান করা পেমেন্ট পদ্ধতি আর বৈধ নয় (যেমন, ক্রেডিট কার্ডের মেয়াদ শেষ হয়ে গেছে)।
    এই সমস্যার সমাধান কীভাবে করবেন সেই সম্পর্কে আরও তথ্য পেতে Maps-এর প্রায়শই জিজ্ঞাসিত প্রশ্ন দেখুন।
  • REQUEST_DENIED, যা থেকে বোঝা যায় যে আপনার অনুরোধ প্রত্যাখ্যান করা হয়েছে, সাধারণত এই কারণে:
    • অনুরোধে API key নেই।
    • key প্যারামিটারটি সঠিক নয়।
  • UNKNOWN_ERROR অজানা সমস্যার কথা জানাচ্ছে।

জায়গা

জায়গা সার্চ করার উত্তর জায়গা ফিল্ডের নিম্নলিখিত সাবসেট ফিরিয়ে দেয়। সব ধরনের জায়গার জন্য সব অ্যাট্রিবিউট উপলভ্য নয়। জায়গা সার্চ করার মাধ্যমে পাওয়া যায় না এমন ফিল্ড, যেমন address_components, formatted_phone_number, reviews বা website, place_id-এর মাধ্যমে পাওয়া তথ্য জায়গার বিবরণ (লিগ্যাসি) অনুরোধে পাস করুন। এন্ডপয়েন্ট জুড়ে ফিল্ডের উপলভ্যতা ও দামের টিয়ার সম্পর্কে জানতে, জায়গা ডেটা ফিল্ড (পুরনো) দেখুন।

ফিল্ড ধরন বিবরণ
business_status string জায়গাটি কোনও ব্যবসা হলে, তার অপারেশনাল স্ট্যাটাস দেখায়: OPERATIONAL, CLOSED_TEMPORARILY, অথবা CLOSED_PERMANENTLY. স্ট্যাটাস ডেটা না থাকলে বাদ দেওয়া হয়।
formatted_address string এই জায়গার মানুষের-পঠনযোগ্য ঠিকানা। Text Search (Legacy) এবং Find Place (Legacy) দ্বারা রিটার্ন করা হয়। ফর্ম্যাট করা ঠিকানা প্রোগ্রাম্যাটিক্যালি পার্স করবেন না; পরিবর্তে জায়গার বিবরণ (লিগ্যাসি) থেকে address_components অনুরোধ করুন।
geometry Geometry এতে lat ও lng স্থানাঙ্ক সহ জিওকোড করা location এবং northeast ও southwest বাউন্ড সহ পছন্দের viewport আছে।
icon string ম্যাপে এই ফলাফল দেখানোর সময় আপনি যে সাজেস্ট করা আইকন দেখাতে পারেন, সেটির URL।
icon_background_color string জায়গার বিভাগের জন্য ডিফল্ট হেক্সাডেসিমেল রঙের কোড।
icon_mask_base_uri string সাজেস্ট করা আইকনের বেস URL, SVG বা PNG ফাইলের ধরনের এক্সটেনশন ছাড়া।
name string ফিরে আসা ফলাফলের জন্য মানুষের-পঠনযোগ্য নাম। establishment ফলাফলের জন্য, এই ভ্যালু সাধারণত ক্যানোনিক্যালাইজ করা ব্যবসার নাম হয়।
opening_hours PlaceOpeningHours খোলা থাকার সময় সংক্রান্ত তথ্য। 'জায়গা সার্চ' এন্ডপয়েন্ট শুধু open_now বুলিয়ান সাবফিল্ড ফিরিয়ে দেয়; periods এবং weekday_text-এর জন্য 'জায়গার বিবরণ (লিগ্যাসি)' থেকে opening_hours অনুরোধ করুন।
permanently_closed boolean বাতিল করা হয়েছে: কোনও ব্যবসার অপারেশনাল স্ট্যাটাস চেক করতে business_status ব্যবহার করুন।
photos Array<PlacePhoto> PlacePhoto অবজেক্টের একটি অ্যারে, যার প্রতিটিতে একটি করে photo_reference, height, width এবং html_attributions আছে। ব্যবহার সংক্রান্ত বিবরণের জন্য, জায়গার ফটো (লিগ্যাসি) দেখুন।
place_id string একটি টেক্সচুয়াল শনাক্তকারী যা অনন্যভাবে একটি স্থানকে শনাক্ত করে। জায়গার বিবরণ (পুরনো) অনুরোধের place_id প্যারামিটারে এই আইডি পাস করুন। প্লেস আইডি এক নজরে দেখুন।
plus_code PlusCode অক্ষাংশ ও দ্রাঘিমাংশ স্থানাঙ্ক থেকে প্রাপ্ত একটি এনকোড করা লোকেশন রেফারেন্স, যার মধ্যে একটি global_code এবং একটি ঐচ্ছিক compound_code থাকে।
price_level integer 0 থেকে 4 স্কেলে জায়গার দামের লেভেল, সবচেয়ে কম দাম থেকে সবচেয়ে বেশি দাম। price_level দেখুন।
rating number ব্যবহারকারীদের দেওয়া রিভিউয়ের ভিত্তিতে, জায়গার রেটিং 1.0 থেকে 5.0 পর্যন্ত।
reference string বন্ধ করা হয়েছে: পরিবর্তে place_id ব্যবহার করুন।
scope string ডেপ্রিকেট করা হয়েছে: place_id-এর স্কোপ নির্দেশ করে, যা সবসময় GOOGLE হয়। নিয়ারবাই Search (লিগ্যাসি) দ্বারা রিটার্ন করা হয়েছে।
types Array<string> প্রদত্ত ফলাফল বর্ণনা করে এমন ফিচার ধরনের অ্যারে। জায়গার ধরন (পুরনো) দেখুন।
user_ratings_total integer এই জায়গার জন্য রিভিউ টেক্সট সহ বা ছাড়া মোট রেটিংয়ের সংখ্যা।
vicinity string জায়গার সহজ ঠিকানা, যার মধ্যে রাস্তার নাম, রাস্তার নম্বর ও এলাকা অন্তর্ভুক্ত, তবে রাজ্য বা প্রদেশ, পিন কোড বা দেশের নাম অন্তর্ভুক্ত নয়। নিয়ারবাই Search (লিগ্যাসি) দ্বারা রিটার্ন করা হয়েছে।

অতিরিক্ত ফলাফল অ্যাক্সেস করা

ডিফল্ট হিসেবে, প্রতিটি উত্তরে কোয়েরি পিছু সর্বাধিক ২০টি establishment ফলাফল দেখানো হয়; তবে, প্রতিটি সার্চে সর্বাধিক ৬০টি ফলাফল দেখানো হতে পারে, যা তিনটি পৃষ্ঠায় ভাগ করা থাকে। আপনার সার্চের ফলাফল ২০টির বেশি হলে, সার্চের উত্তরে একটি অতিরিক্ত ভ্যালু অন্তর্ভুক্ত থাকবে — next_page_token। পরবর্তী ফলাফলের সেট দেখতে, নতুন অনুরোধের pagetoken প্যারামিটারে next_page_token-এর ভ্যালু পাস করুন।

  • next_page_token নাল হলে বা ফেরত না এলে, আর কোনও ফলাফল নেই।
  • একই next_page_token-এর সাথে অনুরোধটি আবার করলে ফলাফলের পরবর্তী পৃষ্ঠাটি দেখাবে।
  • pagetoken সেট করলে অন্য প্যারামিটার উপেক্ষা করা হবে।
  • আপনি আসল কোয়েরির পরে দুবার পর্যন্ত নতুন পৃষ্ঠার জন্য অনুরোধ করতে পারেন।
  • next_page_token ব্যবহার করে করা অনুরোধ সহ প্রতিটি অনুরোধ, আপনার ব্যবহারের সীমার বিপরীতে একটি অনুরোধ হিসেবে গণনা করা হয় এবং আলাদাভাবে চার্জ করা হয়।
  • next_page_token ইস্যু করা এবং সেটি বৈধ হওয়ার মধ্যে কয়েক সেকেন্ডের বিলম্ব হয়। পরবর্তী পৃষ্ঠা উপলভ্য হওয়ার আগে সেটির জন্য অনুরোধ করলে, INVALID_REQUEST উত্তর পাওয়া যাবে। next_page_token-এর সাথে করা অনুরোধের জন্য সবসময় চার্জ করা হয়।

যেমন, নিচের কোয়েরিতে, আমরা সিডনি, অস্ট্রেলিয়ার ডার্লিং হারবারের আশেপাশের রেস্তোরাঁ সার্চ করি এবং দূরত্ব অনুযায়ী ফলাফল র‍্যাঙ্ক করি। আপনি দেখতে পাবেন যে উত্তরে একটি next_page_token প্রপার্টি আছে।

{
   "html_attributions" : [],
   "next_page_token" : "CpQCAgEAAFxg8o-eU7_uKn7Yqjana-HQIx1hr5BrT4zBaEko29ANsXtp9mrqN0yrKWhf-y2PUpHRLQb1GT-mtxNcXou8TwkXhi1Jbk-ReY7oulyuvKSQrw1lgJElggGlo0d6indiH1U-tDwquw4tU_UXoQ_sj8OBo8XBUuWjuuFShqmLMP-0W59Vr6CaXdLrF8M3wFR4dUUhSf5UC4QCLaOMVP92lyh0OdtF_m_9Dt7lz-Wniod9zDrHeDsz_by570K3jL1VuDKTl_U1cJ0mzz_zDHGfOUf7VU1kVIs1WnM9SGvnm8YZURLTtMLMWx8-doGUE56Af_VfKjGDYW361OOIj9GmkyCFtaoCmTMIr5kgyeUSnB-IEhDlzujVrV6O9Mt7N4DagR6RGhT3g1viYLS4kO5YindU6dm3GIof1Q",
   "results" : [...]
   "status" : "OK"
}

পরবর্তী ফলাফলের সেট দেখতে, আপনি একটি নতুন কোয়েরি জমা দিতে পারেন, next_page_token-এর ফলাফল pagetoken প্যারামিটারে পাস করে। যেমন:

https://maps.googleapis.com/maps/api/place/nearbysearch/json?pagetoken=CpQCAgEAAFxg8o-eU7_uKn7Yqjana-HQIx1hr5BrT4zBaEko29ANsXtp9mrqN0yrKWhf-y2PUpHRLQb1GT-mtxNcXou8TwkXhi1Jbk-ReY7oulyuvKSQrw1lgJElggGlo0d6indiH1U-tDwquw4tU_UXoQ_sj8OBo8XBUuWjuuFShqmLMP-0W59Vr6CaXdLrF8M3wFR4dUUhSf5UC4QCLaOMVP92lyh0OdtF_m_9Dt7lz-Wniod9zDrHeDsz_by570K3jL1VuDKTl_U1cJ0mzz_zDHGfOUf7VU1kVIs1WnM9SGvnm8YZURLTtMLMWx8-doGUE56Af_VfKjGDYW361OOIj9GmkyCFtaoCmTMIr5kgyeUSnB-IEhDlzujVrV6O9Mt7N4DagR6RGhT3g1viYLS4kO5YindU6dm3GIof1Q&key=YOUR_API_KEY