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

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

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

কাজ করে এমন অঞ্চলের জায়গার ধরন

নিম্নলিখিত অঞ্চলের জায়গার ধরন কাজ করে: country, administrative_area_level_1, administrative_area_level_2, postal_code, locality.

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

Region Lookup API ব্যবহার করতে, এইসব ধাপ অনুসরণ করুন:

  1. কনসোলে Region Lookup API চালু করুন।
  2. ওপেন সোর্স লাইব্রেরি ইনস্টল করুন: npm install @googlemaps/region-lookup

লাইব্রেরি থেকে ডিপেন্ডেন্সি ইমপোর্ট করুন

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

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

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

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

Region Lookup সংক্রান্ত অনুরোধ

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

  • place অথবা unit_code (প্রয়োজনীয়) জায়গার অঞ্চলের নাম (place) অথবা unit_code। unit_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।

নিচের উদাহরণে Newark, NJ-এর জন্য লুকআপ অনুরোধ দেখানো হয়েছে।

// 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 যদি "California" এবং place_type যদি ADMINISTRATIVE_AREA_LEVEL_1 হয়, তাহলে API, matched_place_id হিসেবে California-এর প্লেস আইডি রিটার্ন করে:

  • 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 যদি "Santa Clara County" হয় এবং place_type যদি LOCALITY হয়, তাহলে Santa Clara County-এর প্লেস আইডি ক্যান্ডিডেট হিসেবে দেখানো হয়।

রিজিয়ন লুকআপ রেসপন্স

ফলাফল পাওয়া গেলে, 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।

নিম্নলিখিত উদাহরণে Burbank, CA-এর জন্য লুক-আপ অনুরোধ দেখানো হয়েছে।

// 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` হয়, তাহলে একটি সঠিক place_name "94109" হতে পারে। place_type যদি `COUNTRY` হয়, তাহলে সঠিক place "United States" ইত্যাদি হতে পারে। place উল্লেখ করা থাকলে region_code প্রয়োজন, যদি না place_type `COUNTRY` হয়।
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 PlaceType প্রয়োজনীয়। ম্যাচ করার জন্য অঞ্চলের ধরন।
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 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 জাতীয় রাজনৈতিক সত্তা, সাধারণত সর্বোচ্চ ক্রমের ধরন।

LatLng

এমন একটি অবজেক্ট যা অক্ষাংশ/দ্রাঘিমাংশ পেয়ারকে দেখায়। এটি অক্ষাংশ ও দ্রাঘিমাংশের ডিগ্রি দেখানোর জন্য দুটি ডাবল ভ্যালুর জোড়া হিসেবে প্রকাশ করা হয়। অন্যভাবে উল্লেখ করা না থাকলে, এই অবজেক্টকে অবশ্যই 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 মিলে যাওয়া জায়গার আইডি, জায়গার ধরন ও দেশের অনুমোদিত তালিকায় নেই।