Region Lookup API ব্যবহার করুন

রিজিওন লুকআপ এপিআই (Region Lookup API) ব্যবহার করে আপনি অঞ্চলগুলির প্লেস আইডি (place ID) খুঁজে বের করতে পারেন, যা সীমানার ডেটা-ড্রাইভেন স্টাইলিং-এ বাউন্ডারি পলিগনগুলিকে স্টাইল করার জন্য ব্যবহার করা যায়। রিজিওন লুকআপ এপিআই দুই ধরনের অনুরোধ সমর্থন করে:

  • অঞ্চল অনুসন্ধান স্থানের নাম, FIPS কোড (শুধুমাত্র মার্কিন যুক্তরাষ্ট্রের রাজ্য এবং কাউন্টির জন্য), অথবা ISO-3166-1 দেশের কোড দ্বারা একটি অঞ্চল খুঁজে বের করে।
  • অঞ্চল অনুসন্ধানের মাধ্যমে ঠিকানা, LatLng বা স্থান আইডি দ্বারা নির্দিষ্ট কোনো অবস্থান ধারণকারী অঞ্চলটি খোঁজা হয়।

সমর্থিত অঞ্চলের স্থানের প্রকারগুলি

নিম্নলিখিত অঞ্চল স্থান প্রকারগুলি সমর্থিত: country , administrative_area_level_1 , administrative_area_level_2 , postal_code , locality

লাইব্রেরিটি ইনস্টল করুন

রিজিওন লুকআপ এপিআই ব্যবহার করতে, এই ধাপগুলো অনুসরণ করুন:

  1. কনসোলে রিজিওন লুকআপ এপিআই (Region Lookup API) সক্রিয় করুন
  2. ওপেন সোর্স লাইব্রেরিটি ইনস্টল করুন: npm install @googlemaps/region-lookup

লাইব্রেরি থেকে নির্ভরতা আমদানি করুন

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

  • অঞ্চল অনুসন্ধানের অনুরোধের জন্য, নিম্নলিখিতগুলি ইম্পোর্ট করুন:

    import {
      lookupRegion,
      LookupRegionRequestData,
      LookupRegionResponseData,
      LookupRegionResponse,
      RegionIdentifier
    } from "@googlemaps/region-lookup";
    
  • অঞ্চল অনুসন্ধানের অনুরোধের জন্য, নিম্নলিখিতগুলি ইম্পোর্ট করুন:

    import {
      searchRegion,
      RegionSearchValue,
      SearchRegionRequestData,
      SearchRegionResponse
    } from "@googlemaps/region-lookup";
    

অঞ্চল অনুসন্ধানের অনুরোধ

একটি অঞ্চল অনুসন্ধানের অনুরোধ একটি স্থানের নাম বা শনাক্তকারী কোড গ্রহণ করে এবং একটি স্থান আইডি ফেরত দেয়। একটি অঞ্চল অনুসন্ধান করতে, lookupRegion() কল করুন এবং নিম্নলিখিত প্যারামিটারসহ একটি LookupRegionRequestData নির্দিষ্ট করুন:

  • place বা unit_code (আবশ্যক) হয় অঞ্চলের নাম ( place ) অথবা স্থানটির unit_codeunit_code একটি FIPS কোড (শুধুমাত্র মার্কিন যুক্তরাষ্ট্রের রাজ্য এবং কাউন্টির জন্য) অথবা ISO-3166-1 দেশের কোড হতে পারে।
  • place_type (আবশ্যক) যে ধরনের স্থান অনুসন্ধান করা হবে, তার জন্য স্থানের প্রকারের মান।
  • region_code হলো অবস্থানটির সাথে মেলানোর জন্য দুই-অক্ষরের ISO-3166 দেশ/অঞ্চল কোড। place_type যদি COUNTRY হয়, তাহলে region_code ঐচ্ছিক।
  • language BCP-47 ভাষা কোড, যেমন "en-US" বা "sr-Latn"। যদি কোনোটি নির্দিষ্ট না করা হয়, তবে ডিফল্ট হলো en-US।

নিম্নলিখিত উদাহরণটি নিউয়ার্ক, এনজে-এর জন্য একটি অনুসন্ধান অনুরোধ দেখাচ্ছে।

// Headers
const headers = {
  "X-Goog-Api-Key": "YOUR API KEY",
};
const data: LookupRegionRequestData = {
  identifiers: [
    {
      "place": "newark",
      "place_type": "locality",
      "region_code": "us",
      "language": "en",
    },
  ],
};
const response: LookupRegionResponse = await RegionLookup.lookupRegion({ headers, data });

` place অথবা unit_code প্যারামিটার দুটির যেকোনো একটি আবশ্যক। কোনোটি নির্দিষ্ট করা না হলে একটি ত্রুটি দেখানো হয়।

place_type যদি COUNTRY হয়, তাহলে region_code প্যারামিটারটি আবশ্যক।

place এবং unit_code একটি place ID-কে মেলানোর জন্য একটি অবস্থান নির্দিষ্ট করে। উদাহরণস্বরূপ, যদি place হয় "California" এবং place_type হয় ADMINISTRATIVE_AREA_LEVEL_1 , তাহলে API-টি matched_place_id হিসেবে ক্যালিফোর্নিয়ার place ID-টি ফেরত দেয়।

  • place_type : ADMINISTRATIVE_AREA_LEVEL_1

    matched_place_id ফলাফল: ক্যালিফোর্নিয়ার স্থান আইডি। অন্য সব সমর্থিত প্রকারের ক্ষেত্রে কোনো মিল পাওয়া যায়নি।

যদি unit_code "6" (ক্যালিফোর্নিয়ার FIPS কোড), place_type ADMINISTRATIVE_AREA_LEVEL_1 এবং region_code "US" হয়, তাহলে API ক্যালিফোর্নিয়ার প্লেস আইডি ফেরত দেবে:

  • place_type : ADMINISTRATIVE_AREA_LEVEL_1
  • region_code : US

    matched_place_id ফলাফল: ক্যালিফোর্নিয়ার স্থান আইডি। অন্য সব সমর্থিত প্রকারের ক্ষেত্রে কোনো মিল পাওয়া যায়নি।

যদি unit_code "US" হয়, তাহলে নিম্নলিখিত place_type নির্দিষ্ট করা হলে API নিম্নলিখিত ফলাফলগুলি ফেরত দেয়:

  • place_type : COUNTRY

    matched_place_id ফলাফল: মার্কিন যুক্তরাষ্ট্রের স্থান আইডি। অন্য সব সমর্থিত প্রকারের ক্ষেত্রে কোনো মিল পাওয়া যায় না।

যদি কোনো মিল খুঁজে না পাওয়া যায়, তাহলে matched_place_id সেট করা হয় না।

অস্পষ্টতার ক্ষেত্রে সম্ভাব্য স্থান আইডিগুলো ফেরত দেওয়া হয়। উদাহরণস্বরূপ, যদি place হয় "সান্তা ক্লারা কাউন্টি" এবং place_type হয় LOCALITY , তাহলে সান্তা ক্লারা কাউন্টির স্থান আইডিটি একটি সম্ভাব্য প্রার্থী হিসেবে ফেরত দেওয়া হয়।

অঞ্চল অনুসন্ধানের প্রতিক্রিয়া

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

{
  "matches": [
    {
      "matchedPlaceId": "ChIJPV4oX_65j4ARVW8IJ6IJUYs"
    }
  ]
}

অঞ্চল অনুসন্ধানের অনুরোধ

কোনো নির্দিষ্ট অবস্থান ধারণকারী অঞ্চল খুঁজে বের করতে, নিম্নলিখিত প্যারামিটারসহ একটি SearchRegionRequestData উল্লেখ করে searchRegion কল করুন:

  • address বা latlng বা place_id (আবশ্যক) এতে একটি অসংগঠিত ঠিকানা স্ট্রিং, latlng , অথবা অঞ্চল-ভিত্তিক স্থানের আইডি (যেমন POI, ভবন, ইত্যাদি) থাকে। এর কোনোটি নির্দিষ্ট না করা হলে, একটি ত্রুটি দেখানো হয়।
  • place_type (আবশ্যক) যে ধরনের অঞ্চল অনুসন্ধান করা হবে, তার জন্য স্থানের প্রকারের মান।
  • region_code হলো অবস্থানের সাথে মেলানোর জন্য দুই-অক্ষরের ISO-3166 দেশ/অঞ্চল কোড। address নির্দিষ্ট করা হলে region_code আবশ্যক।
  • language BCP-47 ভাষা কোড, যেমন "en-US" বা "sr-Latn"। যদি কোনোটি নির্দিষ্ট না করা হয়, তবে ডিফল্ট হলো en-US।

নিম্নলিখিত উদাহরণটি বারব্যাঙ্ক, সিএ-এর জন্য একটি অনুসন্ধান অনুরোধ দেখাচ্ছে।

// Headers
const headers = {
  "X-Goog-Api-Key": "YOUR API KEY",
};

const data: SearchRegionRequestData = {
  search_values: [
    {
      "address": "2627 N Hollywood Way, Burbank, CA" ,
      "place_type": "locality" as const,
      "region_code": "us"
    },
  ],
};
const response = await regionLookupClient.searchRegion({ headers, data });

অঞ্চল অনুসন্ধানের প্রতিক্রিয়া

ফলাফল পাওয়া গেলে SearchRegionResponse অবজেক্টটিতে একটি matched_place_id থাকে। মিল খুঁজে না পাওয়ার ক্ষেত্রে, রেসপন্সটিতে এক বা একাধিক সম্ভাব্য স্থানের আইডি এবং একটি এরর কোড থাকে।

{
  "matches": [
    {
      "matchedPlaceId": "ChIJPV4oX_65j4ARVW8IJ6IJUYs"
    }
  ]
}

রেফারেন্স

LookupRegionRequestData শনাক্তকারী

মাঠ প্রকার বর্ণনা
place স্ট্রিং স্থান আইডির সাথে মেলানোর জন্য অঞ্চলের নাম। অঞ্চলের স্থান আইডি খুঁজে বের করতে place_type সাথে place ফিল্ডটি ব্যবহার করুন। উদাহরণস্বরূপ, যদি place_type "locality" হয়, তাহলে একটি বৈধ place হতে পারে "Palo Alto, CA"। যদি place_type `POSTAL_CODE` হয়, তাহলে একটি বৈধ স্থানের নাম হতে পারে "94109"। যদি place_type `COUNTRY` হয়, তাহলে একটি বৈধ place হতে পারে "United States", ইত্যাদি। place_type `COUNTRY` না হলে, ` place উল্লেখ করার সময় region_code আবশ্যক।
unit_code স্ট্রিং FIPs স্টেট বা কাউন্টি কোড (শুধুমাত্র মার্কিন যুক্তরাষ্ট্রের জন্য) অথবা ISO-3166-1 কান্ট্রি কোড মেলানোর প্রয়োজন হবে। অঞ্চলের প্লেস আইডি খুঁজে বের করার জন্য unit_code ফিল্ডটি place_type সাথে একত্রে ব্যবহৃত হয়। উদাহরণস্বরূপ: যদি place_type হয় COUNTRY , তাহলে একটি বৈধ unit_code হতে পারে "US" (মার্কিন যুক্তরাষ্ট্রের জন্য ISO-3166-1 Alpha-2 কোড) অথবা "BR" (ব্রাজিলের জন্য ISO-3166-1 Alpha-2 কোড)। যদি place_type হয় ADMINISTRATIVE_AREA_LEVEL_1 (স্টেট) এবং region_code হয় "US", তাহলে একটি বৈধ unit_code হতে পারে "6" (ক্যালিফোর্নিয়ার জন্য FIPs কোড) অথবা "12" (ফ্লোরিডার জন্য FIPs কোড)। যদি place_type হয় ADMINISTRATIVE_AREA_LEVEL_2 (কাউন্টি) এবং region_code হয় "US", তাহলে একটি বৈধ unit_code হতে পারে "6001" (ক্যালিফোর্নিয়ার অ্যালামেডা কাউন্টির FIPs কোড) অথবা "12086" (ফ্লোরিডার মিয়ামি-ডেড কাউন্টির FIPs কোড)। FIPs কোড উল্লেখ করার সময় region_code আবশ্যক। ISO-3166-1 কান্ট্রি কোডের ক্ষেত্রে region_code উপেক্ষা করা হয়।
place_type স্থান প্রকার আবশ্যক। অঞ্চলের ধরনটি মেলাতে হবে।
region_code স্ট্রিং আপনি যে অবস্থানটি মেলাতে চাইছেন, তার দুই-অক্ষরের ISO-3166 দেশ/অঞ্চল কোড। যদি place_type `COUNTRY` হয়, তাহলে region_code ঐচ্ছিক।
language_code স্ট্রিং BCP-47 ভাষা কোড, যেমন "en-US" বা "sr-Latn", যা সেই ভাষাকে নির্দেশ করে যে ভাষায় স্থানের নাম এবং ঠিকানা অনুরোধ করা হয়েছে। যদি কোনো কোড অনুরোধ করা না হয়, তবে এটি ডিফল্টভাবে ইংরেজি হয়ে যায়।

SearchRegionRequestData ডেটা শনাক্তকারী

আবশ্যক: address , latlng , অথবা place_id মধ্যে যেকোনো একটি।

মাঠ প্রকার বর্ণনা
address স্ট্রিং একটি অসংগঠিত রাস্তার ঠিকানা যা একটি নির্দিষ্ট অঞ্চলের অন্তর্ভুক্ত। address নির্দিষ্ট করার সময় region_code আবশ্যক।
latlng অক্ষাংশ দ্রাঘিমাংশ একটি অঞ্চলের অন্তর্ভুক্ত অক্ষাংশ এবং দ্রাঘিমাংশ যা মেলানোর জন্য নির্ধারিত।
place_id স্ট্রিং একটি স্থান আইডি যা মেলানোর জন্য একটি অঞ্চলের মধ্যে অন্তর্ভুক্ত।
place_type স্থানের ধরণ আবশ্যক। অঞ্চলের ধরনটি মেলাতে হবে।
language_code স্ট্রিং BCP-47 ভাষা কোড , যেমন "en-US" বা "sr-Latn", সেই ভাষাকে নির্দেশ করে যে ভাষায় স্থানের নাম এবং ঠিকানা অনুরোধ করা হয়েছে। যদি কোনো ভাষার অনুরোধ না করা হয়, তবে এটি ডিফল্টভাবে ইংরেজি হয়ে যায়।
region_code স্ট্রিং অবস্থানের সাথে মেলানোর জন্য দুই অক্ষরের ISO-3166 দেশ/অঞ্চল কোড প্রয়োজন। ঠিকানা নির্দিষ্ট করা হলে region_code আবশ্যক।

স্থানের প্রকারভেদ

মূল্য বর্ণনা
POSTAL_CODE পোস্টাল কোড, যা দেশের অভ্যন্তরে ডাকযোগে চিঠি পাঠানোর ঠিকানা নির্ধারণে ব্যবহৃত হয়।
ADMINISTRATIVE_AREA_LEVEL_1 দেশ পর্যায়ের নিচের একটি প্রথম-স্তরের বেসামরিক সত্তা। মার্কিন যুক্তরাষ্ট্রের মধ্যে, এই প্রশাসনিক স্তরগুলো হলো রাজ্য।
ADMINISTRATIVE_AREA_LEVEL_2 দেশ পর্যায়ের নিচের একটি দ্বিতীয়-স্তরের বেসামরিক সত্তা। মার্কিন যুক্তরাষ্ট্রের মধ্যে, এই প্রশাসনিক স্তরগুলো হলো কাউন্টি।
LOCALITY একটি নিগমিত শহর বা নগর রাজনৈতিক সত্তা।
COUNTRY জাতীয় রাজনৈতিক সত্তা, যা সাধারণত সর্বোচ্চ পর্যায়ের।

অক্ষাংশ দ্রাঘিমাংশ

একটি অবজেক্ট যা একটি অক্ষাংশ/দ্রাঘিমাংশ জোড়াকে উপস্থাপন করে। এটি ডিগ্রি অক্ষাংশ এবং ডিগ্রি দ্রাঘিমাংশ বোঝাতে একজোড়া ডাবল (double) হিসেবে প্রকাশ করা হয়। অন্যভাবে নির্দিষ্ট করা না থাকলে, এই অবজেক্টটিকে অবশ্যই WGS84 স্ট্যান্ডার্ড মেনে চলতে হবে। মানগুলো অবশ্যই নর্মালাইজড রেঞ্জের মধ্যে থাকতে হবে।

মাঠ প্রকার বর্ণনা
latitude দ্বিগুণ অক্ষাংশ ডিগ্রিতে। এটি অবশ্যই [-90.0, +90.0] সীমার মধ্যে হতে হবে। উদাহরণস্বরূপ 47.47583476464538
longitude দ্বিগুণ দ্রাঘিমাংশ ডিগ্রিতে। এটি অবশ্যই [-180.0, +180.0] সীমার মধ্যে হতে হবে। উদাহরণস্বরূপ -121.73858779269906

ত্রুটি কোড

মূল্য বর্ণনা
UnknownError একটি অজানা ত্রুটি ঘটেছে।
NoMatchFound অনুরোধটি মেলেনি, সম্ভব হলে candidate_place_ids যাচাই করুন।
AddressNotUnderstood প্রদত্ত ঠিকানার জন্য জিওকোডিং ব্যর্থ হয়েছে।
PlaceTypeMismatch প্রতিক্রিয়ায় প্রাপ্ত স্থানের ধরণ অনুরোধের সাথে মেলে না। উদাহরণস্বরূপ, locality অনুরোধ করা হয়েছিল কিন্তু administrative_area_level_2 ফেরত এসেছে।
MultipleCandidatesFound প্রদত্ত তথ্যের সাথে একাধিক প্রার্থী মিলে গেছে। candidate_place_ids উপলব্ধ থাকলে তা যাচাই করুন।
PlaceNameNotUnderstood প্রদত্ত স্থানের নামটি কোনো অঞ্চলে রূপান্তর করা যায়নি।
UnitCodeNotFound ইউনিট কোডটি খুঁজে পাওয়া যায়নি। ইউনিট কোডটি বৈধ এবং সঠিক বিন্যাসে প্রদান করা হয়েছে কিনা তা যাচাই করুন।
PlaceTypeNotAllowed মিলে যাওয়া স্থান আইডিটি স্থানের ধরন এবং দেশের অনুমোদিত তালিকায় নেই।