নিয়ারবাই সার্চ (নতুন)

প্ল্যাটফর্ম বেছে নিন: Android iOS JavaScript ওয়েব পরিষেবা
ইউরোপীয় অর্থনৈতিক অঞ্চল (EEA)-এর ডেভেলপার

ভূমিকা

আশেপাশের সার্চ (নতুন) অনুরোধে এক বা একাধিক জায়গার ধরন থাকে এবং এর উত্তরে নির্দিষ্ট করা এলাকার মধ্যে ম্যাচ করা জায়গার তালিকা দেখানো হয়। এক বা একাধিক ডেটার ধরন নির্দিষ্ট করে এমন ফিল্ড মাস্ক প্রয়োজন। Nearby Search (New)-এ শুধু POST রিকোয়েস্ট কাজ করে।

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

ম্যাপে দেখানো 'আশেপাশে সার্চ করুন (নতুন)' ফিচার থেকে পাওয়া ফলাফল দেখতে ইন্টার‍্যাক্টিভ ডেমো ব্যবহার করে দেখুন।

নিয়ারবাই সার্চ (নতুন) সংক্রান্ত অনুরোধ

Nearby Search (নতুন) অনুরোধ হল এই ফর্ম্যাটে URL-এ পাঠানো HTTP POST অনুরোধ:

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

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

curl -X POST -d '{
  "includedTypes": ["restaurant"],
  "maxResultCount": 10,
  "locationRestriction": {
    "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" \
https://places.googleapis.com/v1/places:searchNearby

নিয়ারবাই Search (নতুন) উত্তর

Nearby Search (নতুন) একটি JSON অবজেক্টকে উত্তর হিসেবে রিটার্ন করে। উত্তরে:

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

সম্পূর্ণ JSON অবজেক্টটি এই ফর্ম্যাটে আছে:

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

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

  • FieldMask

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

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

    ফেরত পাঠানোর জন্য কমা দিয়ে আলাদা করা প্লেস ডেটা ধরনের তালিকা নির্দিষ্ট করুন। যেমন, জায়গার নাম ও ঠিকানা ফিরিয়ে আনতে।

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

    সব ফিল্ড ফিরিয়ে আনতে * ব্যবহার করুন।

    X-Goog-FieldMask: *

    নিচে উল্লেখ করা ফিল্ডের মধ্যে এক বা একাধিক ফিল্ড নির্দিষ্ট করুন:

    • নিম্নলিখিত ফিল্ডগুলি Nearby Search Pro SKU ট্রিগার করে:

      places.accessibilityOptions
      places.addressComponents
      places.addressDescriptor*
      places.adrFormatAddress
      places.attributions
      places.businessStatus
      places.consumerAlert
      places.containingPlaces
      places.displayName
      places.formattedAddress
      places.googleMapsLinks
      places.googleMapsTypeLabel
      places.googleMapsUri
      places.iconBackgroundColor
      places.iconMaskBaseUri
      places.id
      places.location
      places.name**
      places.movedPlace
      places.movedPlaceId
      places.openingDate
      places.photos
      places.plusCode
      places.postalAddress
      places.primaryType
      places.primaryTypeDisplayName
      places.pureServiceAreaBusiness
      places.shortFormattedAddress
      places.subDestinations
      places.timeZone
      places.types
      places.utcOffsetMinutes
      places.viewport

      * ঠিকানা সংক্রান্ত বিবরণ সাধারণত ভারতের গ্রাহকদের জন্য উপলভ্য এবং অন্যান্য জায়গায় এটি পরীক্ষামূলকভাবে ব্যবহার করা হচ্ছে।

      ** places.name ফিল্ডে রিসোর্স নাম এই ফর্ম্যাটে থাকে: places/PLACE_ID. জায়গার টেক্সট নাম অ্যাক্সেস করতে places.displayName ব্যবহার করুন।

      ফিল্ড ও সংশ্লিষ্ট SKU-এর সম্পূর্ণ তালিকা দেখতে, প্লেস ডেটা ফিল্ড (নতুন) দেখুন।

    • নিম্নলিখিত ফিল্ড Nearby Search Enterprise SKU ট্রিগার করে:

      places.currentOpeningHours
      places.currentSecondaryOpeningHours
      places.internationalPhoneNumber
      places.nationalPhoneNumber
      places.priceLevel
      places.priceRange
      places.rating
      places.regularOpeningHours
      places.regularSecondaryOpeningHours
      places.transitStation
      places.userRatingCount
      places.websiteUri

      ফিল্ড ও সংশ্লিষ্ট SKU-এর সম্পূর্ণ তালিকা দেখতে, প্লেস ডেটা ফিল্ড (নতুন) দেখুন।

    • নিম্নলিখিত ফিল্ডগুলি Nearby Search Enterprise + Atmosphere SKU ট্রিগার করে:

      places.allowsDogs
      places.curbsidePickup
      places.delivery
      places.dineIn
      places.editorialSummary
      places.evChargeAmenitySummary
      places.evChargeOptions
      places.fuelOptions
      places.generativeSummary
      places.goodForChildren
      places.goodForGroups
      places.goodForWatchingSports
      places.liveMusic
      places.menuForChildren
      places.neighborhoodSummary
      places.parkingOptions
      places.paymentOptions
      places.outdoorSeating
      places.reservable
      places.restroom
      places.reviews
      places.reviewSummary
      routingSummaries*
      places.servesBeer
      places.servesBreakfast
      places.servesBrunch
      places.servesCocktails
      places.servesCoffee
      places.servesDessert
      places.servesDinner
      places.servesLunch
      places.servesVegetarianFood
      places.servesWine
      places.takeout

      * শুধুমাত্র টেক্সট সার্চ ও নিয়ারবাই সার্চ

      ফিল্ড ও সংশ্লিষ্ট SKU-এর সম্পূর্ণ তালিকা দেখতে, প্লেস ডেটা ফিল্ড (নতুন) দেখুন।

  • locationRestriction

    সার্কেল হিসেবে নির্দিষ্ট করা সার্চ করার অঞ্চল, যা কেন্দ্রবিন্দু ও মিটারে ব্যাসার্ধের মাধ্যমে সংজ্ঞায়িত করা হয়। ব্যাসার্ধ অবশ্যই ০.০ থেকে ৫০০০০.০-এর মধ্যে হতে হবে, এই দুটি ধরে। ডিফল্ট ব্যাসার্ধ হল ০.০। আপনাকে অবশ্যই ০.০-এর থেকে বেশি ভ্যালু সেট করতে হবে।

    যেমন:

    "locationRestriction": {
      "circle": {
        "center": {
          "latitude": 37.7937,
          "longitude": -122.3965
        },
        "radius": 500.0
      }
    }

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

  • includeFutureOpeningBusinesses

    true হলে, ভবিষ্যতে খোলার সম্ভাবনা আছে এমন ব্যবসা রিটার্ন করে। ডিফল্ট হিসেবে false সেট করা থাকে।

    ব্যবসার স্ট্যাটাস ফিরিয়ে আনতে, আপনার অনুরোধের ফিল্ড মাস্কে places.businessStatus অন্তর্ভুক্ত করুন। ব্যবসা খোলার সম্ভাব্য তারিখ পেতে, আপনার অনুরোধ ফিল্ডে places.openingDate মাস্ক যোগ করুন।

  • includedTypes/excludedTypes, includedPrimaryTypes/excludedPrimaryTypes

    সার্চ ফলাফল ফিল্টার করতে ব্যবহৃত টেবিল A-এর ধরন থেকে ধরনের তালিকা নির্দিষ্ট করতে দেয়। প্রতিটি ধরনের বিধিনিষেধের বিভাগে সর্বাধিক ৫০টি ধরন উল্লেখ করা যেতে পারে।

    কোনও জায়গার সাথে যুক্ত টেবিল ক থেকে কোনও জায়গার শুধুমাত্র একটি প্রাথমিক ধরন থাকতে পারে। যেমন, প্রাথমিক ধরনটি হতে পারে "mexican_restaurant" বা "steak_house". কোনও জায়গার প্রাথমিক ধরন অনুযায়ী ফলাফল ফিল্টার করতে includedPrimaryTypes ও excludedPrimaryTypes ব্যবহার করুন।

    এছাড়াও, কোনও জায়গায় তার সাথে যুক্ত ধরন টেবিল ক থেকে একাধিক ধরনের ভ্যালু থাকতে পারে। যেমন, কোনও রেস্তোরাঁর নিম্নলিখিত ধরন থাকতে পারে: "seafood_restaurant", "restaurant", "food", "point_of_interest", "establishment". কোনও জায়গার সাথে যুক্ত থাকা ধরনের তালিকায় ফলাফল ফিল্টার করতে includedTypes ও excludedTypes ব্যবহার করুন।

    আপনি যখন "restaurant" বা "hotel"-এর মতো সাধারণ প্রাথমিক ধরন নির্দিষ্ট করেন, তখন উত্তরে নির্দিষ্ট করা ধরনের চেয়ে আরও নির্দিষ্ট প্রাথমিক ধরন সহ জায়গা থাকতে পারে। যেমন, আপনি একটি প্রাথমিক ধরন অন্তর্ভুক্ত করার জন্য নির্দিষ্ট করেছেন "restaurant"। উত্তরে "restaurant" প্রাথমিক ধরনের জায়গা থাকতে পারে, তবে উত্তরে আরও নির্দিষ্ট প্রাথমিক ধরনের জায়গাও থাকতে পারে, যেমন "chinese_restaurant" বা "seafood_restaurant"।

    একাধিক ধরনের বিধিনিষেধ সহ কোনও সার্চ নির্দিষ্ট করা হলে, শুধুমাত্র সেইসব জায়গা ফেরানো হয় যেগুলি সব বিধিনিষেধ মেনে চলে। যেমন, আপনি যদি {"includedTypes": ["restaurant"], "excludedPrimaryTypes": ["steak_house"]} নির্দিষ্ট করেন, তাহলে ফেরত আসা জায়গাগুলি "restaurant" সম্পর্কিত পরিষেবা প্রদান করে, কিন্তু মূলত "steak_house" হিসেবে পরিচালিত হয় না।

    includedTypes

    সার্চ করার জন্য টেবিল ক থেকে কমা দিয়ে আলাদা করা জায়গার ধরনের তালিকা। এই প্যারামিটার বাদ দিলে, সব ধরনের জায়গা রিটার্ন করা হয়।

    excludedTypes

    টেবিল ক থেকে কমা দিয়ে আলাদা করা জায়গার ধরনের তালিকা যা সার্চ থেকে বাদ দেওয়া হবে।

    অনুরোধে আপনি includedTypes ( যেমন "school") ও excludedTypes (যেমন "primary_school") দুটিই উল্লেখ করলে, উত্তরে "school" হিসেবে শ্রেণীবদ্ধ করা হয়েছে এমন জায়গা অন্তর্ভুক্ত থাকে, তবে "primary_school" হিসেবে নয়। উত্তরে এমন জায়গা উল্লেখ করা হয়েছে যা includedTypes-এর অন্তত একটি এবং excludedTypes-এর কোনওটির সাথে ম্যাচ করে না।

    যদি কোনও পরস্পরবিরোধী ধরন থাকে, যেমন includedTypes এবং excludedTypes, দুটিতেই কোনও ধরন দেখা গেলে, একটি INVALID_REQUEST সমস্যা রিটার্ন করা হয়।

    includedPrimaryTypes

    টেবিল ক থেকে কমা দিয়ে আলাদা করা প্রাথমিক জায়গার ধরনের তালিকা যা সার্চে অন্তর্ভুক্ত করতে হবে।

    excludedPrimaryTypes

    সার্চ থেকে বাদ দিতে সারণী ক থেকে কমা দিয়ে আলাদা করা প্রাথমিক জায়গার ধরনের তালিকা।

    যদি কোনও পরস্পরবিরোধী প্রাথমিক ধরন থাকে, যেমন কোনও ধরন যা includedPrimaryTypes এবং excludedPrimaryTypes, দুটিতেই দেখা যাচ্ছে, তাহলে একটি INVALID_ARGUMENT সমস্যা দেখানো হবে।

  • languageCode

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

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

    ফেরত পাঠানোর জন্য সর্বাধিক কতগুলি জায়গার ফলাফল নির্দিষ্ট করে। ১ থেকে ২০ (ডিফল্ট) সংখ্যার মধ্যে হতে হবে।

  • rankPreference

    ব্যবহার করার জন্য র‍্যাঙ্কিংয়ের ধরন। এই প্যারামিটার বাদ দেওয়া হলে, ফলাফল জনপ্রিয়তার ভিত্তিতে র‍্যাঙ্ক করা হয়। নিম্নলিখিতগুলির মধ্যে যেকোনও একটি হতে পারে:

    • POPULARITY (ডিফল্ট) ফলাফল জনপ্রিয়তার ভিত্তিতে সাজায়।
    • DISTANCE নির্দিষ্ট লোকেশন থেকে দূরত্বের ভিত্তিতে ছোট থেকে বড় ক্রমে ফলাফল সাজায়।
  • regionCode

    উত্তর ফর্ম্যাট করার জন্য ব্যবহৃত অঞ্চল কোড, যা দুটি অক্ষরের CLDR কোড ভ্যালু হিসেবে নির্দিষ্ট করা আছে। কোনও ডিফল্ট ভ্যালু নেই।

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

    বেশিরভাগ CLDR কোড ISO 3166-1 কোডের মতো, কিছু উল্লেখযোগ্য ব্যতিক্রম সহ। যেমন, যুক্তরাজ্যের ccTLD হল "uk" (.co.uk) এবং এর ISO 3166-1 কোড হল "gb" (টেকনিক্যালি "গ্রেট ব্রিটেন ও উত্তর আয়ারল্যান্ডের যুক্তরাজ্য" এন্টিটির জন্য)। প্রযোজ্য আইনের ভিত্তিতে প্যারামিটার ফলাফলের উপর প্রভাব ফেলতে পারে।

নিয়ারবাই সার্চ (নতুন) সংক্রান্ত উদাহরণ

এক ধরনের জায়গা খোঁজা

নিচে দেওয়া উদাহরণে, circle-এর মাধ্যমে সংজ্ঞায়িত ৫০০-মিটার ব্যাসার্ধের মধ্যে থাকা সমস্ত রেস্তোরাঁর ডিসপ্লে নামের জন্য একটি 'আশেপাশের সার্চ (নতুন)' অনুরোধ দেখানো হয়েছে:

curl -X POST -d '{
  "includedTypes": ["restaurant"],
  "maxResultCount": 10,
  "locationRestriction": {
    "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" \
https://places.googleapis.com/v1/places:searchNearby

মনে রাখবেন, X-Goog-FieldMask হেডার নির্দিষ্ট করে যে উত্তরে নিম্নলিখিত ডেটা ফিল্ড আছে: places.displayName। উত্তর তখন এই ফর্ম্যাটে থাকে:

{
  "places": [
    {
      "displayName": {
        "text": "La Mar Cocina Peruana",
        "languageCode": "en"
      }
    },
    {
      "displayName": {
        "text": "Kokkari Estiatorio",
        "languageCode": "en"
      }
    },
    {
      "displayName": {
        "text": "Harborview Restaurant & Bar",
        "languageCode": "en"
      }
    },
...
}

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

curl -X POST -d '{
  "includedTypes": ["restaurant"],
  "maxResultCount": 10,
  "locationRestriction": {
    "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,places.types,places.websiteUri" \
https://places.googleapis.com/v1/places:searchNearby

উত্তর এখন এই ফর্ম্যাটে আছে:

{
  "places": [
    {
      "types": [
        "seafood_restaurant",
        "restaurant",
        "food",
        "point_of_interest",
        "establishment"
      ],
      "formattedAddress": "PIER 1 1/2 The Embarcadero N, San Francisco, CA 94105, USA",
      "websiteUri": "http://lamarsf.com/",
      "displayName": {
        "text": "La Mar Cocina Peruana",
        "languageCode": "en"
      }
    },
    {
      "types": [
        "greek_restaurant",
        "meal_takeaway",
        "restaurant",
        "food",
        "point_of_interest",
        "establishment"
      ],
      "formattedAddress": "200 Jackson St, San Francisco, CA 94111, USA",
      "websiteUri": "https://kokkari.com/",
      "displayName": {
        "text": "Kokkari Estiatorio",
        "languageCode": "en"
      }
    },
...
}

একাধিক ধরনের জায়গা খোঁজা

নিচের উদাহরণে, নির্দিষ্ট circle থেকে ১০০০ মিটার ব্যাসার্ধের মধ্যে থাকা সমস্ত কনভেনিয়েন্ট স্টোর ও মদের দোকানের ডিসপ্লে নামের জন্য 'আশেপাশের সার্চ (নতুন)' কোয়েরি দেখানো হয়েছে:

curl -X POST -d '{
  "includedTypes": ["liquor_store", "convenience_store"],
  "maxResultCount": 10,
  "locationRestriction": {
    "circle": {
      "center": {
        "latitude": 37.7937,
        "longitude": -122.3965
      },
      "radius": 1000.0
    }
  }
}' \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \
-H "X-Goog-FieldMask: places.displayName,places.primaryType,places.types" \
https://places.googleapis.com/v1/places:searchNearby
এই উদাহরণে ফিল্ড মাস্কে places.primaryType ও places.types যোগ করা হয়েছে যাতে উত্তরে প্রতিটি জায়গা সম্পর্কে তথ্যের ধরন অন্তর্ভুক্ত থাকে। এর ফলে ফলাফল থেকে সঠিক জায়গা বেছে নেওয়া সহজ হয়।

নিচে দেওয়া উদাহরণে, "primary_school" ধরনের সব জায়গা বাদ দিয়ে, "school" ধরনের সব জায়গার জন্য একটি 'আশেপাশের সার্চ (নতুন)' কোয়েরি দেখানো হয়েছে। ফলাফলকে দূরত্ব অনুসারে র‍্যাঙ্ক করা হয়েছে:

curl -X POST -d '{
  "includedTypes": ["school"],
  "excludedTypes": ["primary_school"],
  "maxResultCount": 10,
  "locationRestriction": {
    "circle": {
      "center": {
        "latitude": 37.7937,
        "longitude": -122.3965
      },
      "radius": 1000.0
    }
  },
  "rankPreference": "DISTANCE"
}' \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \
-H "X-Goog-FieldMask: places.displayName" \
https://places.googleapis.com/v1/places:searchNearby

দূরত্ব অনুযায়ী র‍্যাঙ্কিং করে, কোনও এলাকার কাছাকাছি সব জায়গা সার্চ করুন

নিম্নলিখিত উদাহরণে সান ফ্রান্সিসকোর ডাউনটাউনের কাছাকাছি কোনও জায়গার জন্য Nearby Search (New) অনুরোধ দেখানো হয়েছে। এই উদাহরণে, আপনি দূরত্ব অনুযায়ী ফলাফল র‍্যাঙ্ক করতে rankPreference প্যারামিটার যোগ করেছেন:

curl -X POST -d '{
  "maxResultCount": 10,
  "rankPreference": "DISTANCE",
  "locationRestriction": {
    "circle": {
      "center": {
        "latitude": 37.7937,
        "longitude": -122.3965
      },
      "radius": 1000.0
    }
  }
}' \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \
-H "X-Goog-FieldMask: places.displayName" \
https://places.googleapis.com/v1/places:searchNearby

ঠিকানার বিবরণ পান

ঠিকানার বিবরণ কোনও জায়গার লোকেশন সম্পর্কে পারস্পরিক তথ্য প্রদান করে, এর মধ্যে আশেপাশের ল্যান্ডমার্ক ও অন্তর্ভুক্ত এলাকা পড়ে।

নিম্নলিখিত উদাহরণে সান জোসে অবস্থিত একটি মলের কাছাকাছি জায়গার জন্য 'আশেপাশের সার্চ' (নতুন) কোয়েরি দেখানো হয়েছে। এই উদাহরণে, ফিল্ড মাস্কে addressDescriptors অন্তর্ভুক্ত করুন:

curl -X POST -d '{
  "maxResultCount": 5,
  "locationRestriction": {
    "circle": {
      "center": {
        "latitude": 37.321328,
        "longitude": -121.946275
      },"radius": 1000
    }
  },
  "includedTypes": ["restaurant", "cafe"],
  "excludedTypes": [],
  "rankPreference":"POPULARITY"
}' \
-H 'Content-Type: application/json' \
-H "X-Goog-Api-Key: API_KEY" \
-H "X-Goog-FieldMask: places.displayName,places.addressDescriptor" \
https://places.googleapis.com/v1/places:searchNearby

উত্তরে অনুরোধে উল্লেখ করা জায়গা, আশেপাশের ল্যান্ডমার্কের তালিকা ও জায়গা থেকে সেগুলির দূরত্ব এবং এলাকার তালিকা ও জায়গার সাথে সেগুলির কন্টেনমেন্ট সম্পর্ক অন্তর্ভুক্ত থাকে:

  {
    "places": [
      {
        "displayName": {
          "text": "Westfield Valley Fair",
          "languageCode": "en"
        },
        "addressDescriptor": {
          "landmarks": [
            {
              "name": "places/ChIJ62_oCR7Lj4AR_MGWkSPotD4",
              "placeId": "ChIJ62_oCR7Lj4AR_MGWkSPotD4",
              "displayName": {
                "text": "Nordstrom",
                "languageCode": "en"
              },
              "types": [
                "clothing_store",
                "department_store",
                "establishment",
                "point_of_interest",
                "shoe_store",
                "store"
              ],
              "straightLineDistanceMeters": 114.76984,
              "travelDistanceMeters": 114.261856
            },
            {
              "name": "places/ChIJgexMlR_Lj4ARiKCKuhNnjn0",
              "placeId": "ChIJgexMlR_Lj4ARiKCKuhNnjn0",
              "displayName": {
                "text": "Valley Fair Mall Eyexam of CA",
                "languageCode": "en"
              },
              "types": [
                "establishment",
                "health",
                "point_of_interest"
              ],
              "straightLineDistanceMeters": 131.62566,
              "travelDistanceMeters": 237.33253
            },
            {
              "name": "places/ChIJWWIlNx7Lj4ARpe1E0ob-_GI",
              "placeId": "ChIJWWIlNx7Lj4ARpe1E0ob-_GI",
              "displayName": {
                "text": "Din Tai Fung",
                "languageCode": "en"
              },
              "types": [
                "establishment",
                "food",
                "point_of_interest",
                "restaurant"
              ],
              "straightLineDistanceMeters": 110.0775,
              "travelDistanceMeters": 171.41951
            },
            {
              "name": "places/ChIJwyfPQx7Lj4AR7bYI2A2Yc54",
              "placeId": "ChIJwyfPQx7Lj4AR7bYI2A2Yc54",
              "displayName": {
                "text": "Abercrombie & Fitch",
                "languageCode": "en"
              },
              "types": [
                "clothing_store",
                "establishment",
                "point_of_interest",
                "shoe_store",
                "store"
              ],
              "spatialRelationship": "DOWN_THE_ROAD",
              "straightLineDistanceMeters": 53.620117,
              "travelDistanceMeters": 2.4578214
            },
            {
              "name": "places/ChIJpycNQx7Lj4ARjhXw3PrM_kU",
              "placeId": "ChIJpycNQx7Lj4ARjhXw3PrM_kU",
              "displayName": {
                "text": "Hollister Co.",
                "languageCode": "en"
              },
              "types": [
                "clothing_store",
                "establishment",
                "point_of_interest",
                "shoe_store",
                "store"
              ],
              "spatialRelationship": "DOWN_THE_ROAD",
              "straightLineDistanceMeters": 56.53726,
              "travelDistanceMeters": 15.418246
            }
          ],
          "areas": [
            {
              "name": "places/ChIJb3F-EB7Lj4ARnHApQ_Hu1gI",
              "placeId": "ChIJb3F-EB7Lj4ARnHApQ_Hu1gI",
              "displayName": {
                "text": "Westfield Valley Fair",
                "languageCode": "en"
              },
              "containment": "WITHIN"
            },
            {
              "name": "places/ChIJXYuykB_Lj4AR1Ot8nU5q26Q",
              "placeId": "ChIJXYuykB_Lj4AR1Ot8nU5q26Q",
              "displayName": {
                "text": "Valley Fair",
                "languageCode": "en"
              },
              "containment": "WITHIN"
            },
            {
              "name": "places/ChIJtYoUX2DLj4ARKoKOb1G0CpM",
              "placeId": "ChIJtYoUX2DLj4ARKoKOb1G0CpM",
              "displayName": {
                "text": "Central San Jose",
                "languageCode": "en"
              },
              "containment": "OUTSKIRTS"
            }
          ]
        }
      },
  /.../
  }

ভবিষ্যতে খুলবে এমন ব্যবসা খুঁজুন

নিচে দেওয়া উদাহরণে নিউ মিডোজ, আইডাহোতে ভবিষ্যতে খুলতে চলা ব্যবসার জন্য 'আশেপাশের সার্চ (নতুন)' কোয়েরি দেখানো হয়েছে:

curl -X POST \
-H "Content-Type: application/json" \
-H "X-Goog-Api-Key: API_KEY" \
-H "X-Goog-FieldMask: places.id,places.displayName,places.businessStatus,places.openingDate" \
-d '{
  "includeFutureOpeningBusinesses": true,
  "maxResultCount": 20,
  "locationRestriction": {
    "circle": {
      "center": {"latitude": 44.9755100, "longitude": -116.2842180},
      "radius": 20
    }
  },
  "rankPreference": "DISTANCE"
}' \
"https://places.googleapis.com/v1/places:searchNearby"

উত্তরে এমন ব্যবসার তথ্য অন্তর্ভুক্ত থাকে যা ভবিষ্যতে খোলা হবে, সাথে তাদের ব্যবসার স্ট্যাটাস এবং খোলার প্রত্যাশিত তারিখ:

{
  "places": [
    {
      "id": "ChIJp1-VoKWJplQRMz8g-7Wa3Do",
      "businessStatus": "FUTURE_OPENING",
      "displayName": {
        "text": "Roberts Greenhouse and Tree Farm",
        "languageCode": "en"
      },
      "openingDate": {
        "year": 2026,
        "month": 4,
        "day": 15
      }
    }
  ]
}

ট্রানজিট স্টেশন সংক্রান্ত তথ্য পাওয়া

কোনও লোকেশনের নির্দিষ্ট ব্যাসার্ধের মধ্যে থাকা ট্রানজিট স্টেশন সম্পর্কে তথ্য পেতে, আপনি Nearby Search (নতুন) ব্যবহার করতে পারবেন। রেসপন্স বডিতে স্টেশন সম্পর্কিত তথ্য থাকে, যার মধ্যে স্টেশনের নাম, অ্যাফিলিয়েটেড ট্রানজিট এজেন্সি এবং স্টেশনে পরিষেবা প্রদানকারী ট্রানজিট লাইন অন্তর্ভুক্ত। এছাড়াও, উত্তরে একটি গাড়ির আইকন ও রঙ অন্তর্ভুক্ত থাকে যা আপনি ট্রানজিট স্টেশন সংক্রান্ত তথ্য দেখানোর জন্য ব্যবহার করতে পারেন।

নিচের উদাহরণে মিডটাউন ম্যানহাটনের ৫০ মিটারের মধ্যে ট্রানজিট স্টেশনের জন্য করা অনুরোধ দেখানো হয়েছে:

curl -X POST \
-H "Content-Type: application/json" \
-H "X-Goog-Api-Key: API_KEY" \
-H "X-Goog-FieldMask: places.id,places.displayName,places.transitStation" \
-d '{
  "includedTypes": ["transit_station"],
  "locationRestriction": {
    "circle": {
      "center": {"latitude": 40.754851, "longitude": -73.984164},
      "radius": 50.0
    }
  }
}' \
"https://places.googleapis.com/v1/places:searchNearby"

উত্তরের বডিতে ব্যাসার্ধের মধ্যে থাকা প্রতিটি স্টেশন, স্টেশনে পরিষেবা প্রদানকারী লাইন, সেই স্টপে ট্রানজিট এজেন্সির ইস্যু করা সতর্কতা এবং ছাড়ার তথ্য অন্তর্ভুক্ত থাকে:

{
  "places": [
    {
      "id": "ChIJH2EstKpZwokRCwZtYyMd5Fg",
      "displayName": {
        "text": "6 Av/W 41 St",
        "languageCode": "en"
      },
      "transitStation": {
        "displayName": {
          "text": "6 Av/W 41 St",
          "languageCode": "en"
        },
        "agencies": [
          {
            "displayName": {
              "text": "ShortLine Hudson",
              "languageCode": "en"
            },
            "url": "https://www.coachusa.com/",
            "lines": [
              {
                "id": "ChIJSQlbzvPwwokRolrIA-Kuh6o",
                "vehicleType": "BUS",
                "displayName": {
                  "text": "200 - Northern District – Nanuet",
                  "languageCode": "en"
                },
                "shortDisplayName": {
                  "text": "ShortLine Hudson",
                  "languageCode": "en"
                },
                "textColor": "#000000",
                "backgroundColor": "#ED60A3",
                "vehicleIcon": {
                  "url": "https://maps.gstatic.com/mapfiles/transit/iw2/svg/bus2.svg"
                }
              }
            ]
          },
          {
            "displayName": {
              "text": "MTA New York City Transit",
              "languageCode": "en"
            },
            "url": "http://www.mta.info/",
            "lines": [
              {
                "id": "ChIJjUrj7PBewokR3O3S2JVpBrI",
                "vehicleType": "SUBWAY",
                "displayName": {
                  "text": "E Train (8 Av Local)",
                  "languageCode": "en"
                },
                "shortDisplayName": {
                  "text": "E Line",
                  "languageCode": "en"
                },
                "textColor": "#FFFFFF",
                "backgroundColor": "#0039A6",
                "url": "https://www.mta.info/schedules/subway/e-train",
                "icon": {
                  "url": "https://maps.gstatic.com/mapfiles/transit/iw2/svg/us-ny-mta/E.svg",
                  "nameIncluded": true
                },
                "vehicleIcon": {
                  "url": "https://maps.gstatic.com/mapfiles/transit/iw2/svg/subway2.svg"
                }
              },
              ...
            ]
          },
        "stops": [
          {
            "id": "ChIJvRnquapZwokRdUOyVwNGbe8",
            "displayName": {
              "text": "6 Av/W 41 St",
              "languageCode": "en"
            },
            "location": {
              "latitude": 40.754509,
              "longitude": -73.984216500000016
            },
            "wheelchairAccessibleEntrance": true
          }
        ],
        "departureBoards": [
          {
            "displayType": "DIRECTION_CENTRIC",
            "rows": [
              {
                "departures": [
                  {
                    "timedDeparture": {
                      "scheduledTime": "2026-05-15T22:29:51Z",
                      "timingType": "SCHEDULED"
                    },
                    "originallyScheduledStopId": "ChIJvRnquapZwokRdUOyVwNGbe8",
                    "lineId": "ChIJA1aFyaZfwokRkO5869M6UXk"
                  }
                ]
              },
              {
                "departures": [
                  {
                    "timedDeparture": {
                      "scheduledTime": "2026-05-15T22:33:55Z",
                      "timingType": "SCHEDULED"
                    },
                    "originallyScheduledStopId": "ChIJvRnquapZwokRdUOyVwNGbe8",
                    "lineId": "ChIJj3iCEwJfwokRZE2Qtnm4pPI"
                  }
                ]
              },
              ...
            ]
          }
        ]
      }
    },
    ...
    {
      {
        "id": "ChIJPyq6TZBZwokRdGoiJ5Iq_hE",
        "vehicleType": "BUS",
        "displayName": {
          "text": "W 44 St - South Ferry",
          "languageCode": "en"
        },
        "shortDisplayName": {
          "text": "M55",
          "languageCode": "en"
        },
        "textColor": "#FFFFFF",
        "backgroundColor": "#1D59B3",
        "vehicleIcon": {
          "url": "https://maps.gstatic.com/mapfiles/transit/iw2/svg/bus2.svg"
        },
        "alerts": [
          {
            "effect": "OTHER",
            "texts": [
              {
                "headline": {
                  "text": "Information",
                  "languageCode": "en"
                },
                "summary": {
                  "text": "Northbound M20 and M55 stop on State St at Bridge St is closed; use the temporary stop on State St before the intersection instead",
                  "languageCode": "en"
                },
                "fullDescription": {
                  "text": "See a map of the new stop location. What's happening? Construction",
                  "languageCode": "en"
                }
              }
            ],
            "detailsUrls": [
              {
                "url": "https://www.mta.info/"
              }
            ],
            "cause": "OTHER_CAUSE",
            "startTime": "2025-04-02T04:00:00Z",
            "endTime": "2026-06-15T00:00:00Z",
            "attribution": {
              "link": {
                "text": "www.mta.info",
                "url": "https://www.mta.info/"
              }
            },
            "createTime": "2026-05-15T22:32:00Z",
            "severityLevel": "INFO"
          }
        ]
      },
      ...
    }
    ...
  }

প্রবেশপথ ও নেভিগেশন পয়েন্ট পাওয়া

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

নেভিগেশন পয়েন্ট navigationPointToken রিটার্ন করে। ড্রাইভারদের নির্দিষ্ট লোকেশনে নিয়ে যাওয়ার জন্য আপনি এই টোকেন Navigation SDK (Android বা iOS-এর জন্য উপলভ্য) বা Routes API-তে পাস করতে পারবেন। আরও তথ্যের জন্য, নেভিগেশন পয়েন্ট টোকেন দেখুন।

নিচের উদাহরণে একটি 'আশেপাশে সার্চ (নতুন)' অনুরোধ দেখানো হয়েছে যাতে ফিল্ড মাস্কে entrances এবং navigationPoints অন্তর্ভুক্ত আছে:

curl -X POST \
-H "Content-Type: application/json" \
-H "X-Goog-Api-Key: API_KEY" \
-H "X-Goog-FieldMask: places.id,places.displayName,places.entrances,places.navigationPoints" \
-d '{
  "includedTypes": ["airport"],
  "maxResultCount": 1,
  "locationRestriction": {
    "circle": {
      "center": {"latitude": 37.6193, "longitude": -122.3816},
      "radius": 1000.0
    }
  }
}' \
"https://places.googleapis.com/v1/places:searchNearby"

উত্তরে জায়গাটির প্রবেশপথ ও নেভিগেশন পয়েন্ট অন্তর্ভুক্ত থাকে:

{
  "places": [
    {
      "id": "ChIJVVVVVYx3j4ARP-3NGldc8qQ",
      "displayName": {
        "text": "San Francisco International Airport",
        "languageCode": "en"
      },
      "entrances": [
        {
          "location": {
            "latitude": 37.6172154,
            "longitude": -122.3839724
          }
        },
        {
          "location": {
            "latitude": 37.6174073,
            "longitude": -122.384196
          }
        },
        ...
      ],
      "navigationPoints": [
        {
          "navigationPointToken": "ChIJoioBjMLOQkAR0A3yH_eYXsA...",
          "displayName": {
            "text": "International Terminal Departures Level",
            "languageCode": "en"
          },
          "location": {
            "latitude": 37.6153121,
            "longitude": -122.3900833
          },
          "travelModes": ["WALK"]
        },
        {
          "navigationPointToken": "ChIJy5JKws_OQkAROx0jNN2YXsA...",
          "displayName": {
            "text": "Domestic Garage - SFO Short Term Parking",
            "languageCode": "en"
          },
          "location": {
            "latitude": 37.6157153,
            "longitude": -122.3885012
          },
          "travelModes": ["DRIVE", "WALK"],
          "usages": ["PARKING"]
        },
        ...
      ]
    }
  ]
}

এটি ব্যবহার করে দেখুন!

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

  1. পৃষ্ঠার ডানদিকে API আইকন api বেছে নিন।

  2. ঐচ্ছিকভাবে অনুরোধের প্যারামিটার এডিট করুন।

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

  4. APIs Explorer প্যানেলে, APIs Explorer উইন্ডো বড় করতে ফুলস্ক্রিন আইকন ফুলস্ক্রিন বেছে নিন।