Places Aggregate API সেট-আপ করুন

Places Aggregate API ব্যবহার শুরু করার জন্য আপনাকে যেসব ধাপ অনুসরণ করতে হবে তা এই ডকুমেন্টে বর্ণনা করা হয়েছে।

পূর্বশর্ত

এই পদ্ধতিতে, Google Cloud অ্যাকাউন্ট এবং বিলিং চালু করা আছে এমন Google Cloud প্রোজেক্ট সেট-আপ করার ব্যাপারে আপনাকে গাইড করা হয়েছে। এছাড়াও, Places Aggregate API ব্যবহার করার জন্য আপনাকে কীভাবে চার্জ করা হবে সেই সম্পর্কেও আপনাকে জানতে হবে।

  1. Places Aggregate API ব্যবহার ও বিলিং-এ ব্যবহারের জন্য বিলিং ও খরচ পর্যালোচনা করুন।
  2. আপনার একটি Google Cloud অ্যাকাউন্ট আছে কিনা তা যাচাই করুন।

    Google Cloud কনসোলে সাইন-ইন করুন
  3. বিলিং চালু করা আছে এমন একটি Google Cloud প্রোজেক্ট আপনার আছে কিনা তা যাচাই করুন।

    বিলিং পৃষ্ঠায় যান
    1. বিলিং পৃষ্ঠা খুলতে আপনার প্রোজেক্ট বেছে নিন।
    2. বিলিং পৃষ্ঠায়:

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

API চালু করুন

Places Aggregate API ব্যবহার করার আগে, আপনার Google Cloud প্রোজেক্টে এটি চালু করতে, আপনাকে অবশ্যই Google Cloud কনসোল বা gcloud কমান্ড ব্যবহার করতে হবে।

API চালু করতে:

কনসোল

  1. Google Cloud কনসোলে প্রোডাক্ট পৃষ্ঠা খুলুন:

    Places Aggregate API চালু করুন
  2. চালু করুন বোতামে ক্লিক করুন।

gcloud

gcloud services enable \
    --project "PROJECT" \
    "areainsights.googleapis.com"

Google Cloud SDK, Cloud SDK ইনস্টলেশন এবং নিম্নলিখিত কমান্ড সম্পর্কে আরও পড়ুন:

Places Aggregate API-এর সাথে ব্যবহার করার জন্য API key পান

Google Maps Platform প্রোডাক্টকে অননুমোদিত ব্যবহার থেকে সুরক্ষিত রাখতে API কলে API কী অথবা OAuth টোকেন যেকোনও একটি অন্তর্ভুক্ত করতে হয়। API key সংক্রান্ত পদ্ধতি প্রথমে আসে। পরিবর্তে OAuth টোকেন ব্যবহার করতে, OAuth টোকেন তৈরি করুন দেখুন।

API কী হল একটি অনন্য আলফানিউমেরিক স্ট্রিং যা আপনার Cloud Billing অ্যাকাউন্ট এবং Google Cloud প্রোজেক্টকে আপনার অ্যাপ্লিকেশন Google Maps Platform API বা SDK-তে করা অনুরোধের সাথে যুক্ত করে। নতুন 'কী' তৈরি করতে অথবা আগে থেকে থাকা 'কী'-তে API বা SDK যোগ করতে, এইসব নির্দেশাবলী অনুসরণ করুন।

কনসোল

  1. Google Maps Platform > কী ও ক্রেডেনশিয়াল পৃষ্ঠায় যান।

    'কী' ও ক্রেডেনশিয়াল পৃষ্ঠায় যান

  2. প্রম্পট করা হলে, আপনার প্রোজেক্ট বেছে নিন।
  3. নিম্নলিখিতগুলির মধ্যে থেকে যেকোনও একটি করুন:

    • নতুন 'কী' তৈরি করুন:

      1. ক্রেডেনশিয়াল তৈরি করুন > API key বিকল্পে ক্লিক করুন।
      2. API key তৈরি করুন প্যানেলে, API সংক্রান্ত বিধিনিষেধ বেছে নিন তালিকা খুলুন।
      3. এই 'কী'-এর প্রয়োজন নেই এমন যেকোনও API মুছে দিন এবং নিশ্চিত করুন যে Places Aggregate API বেছে নেওয়া আছে।
      4. তৈরি করুন বিকল্পে ক্লিক করুন। প্যানেলে আপনার নতুন API কী দেখা যাবে।
    • আগে থেকে থাকা 'কী' ব্যবহার করুন:

      1. 'কী'-এর নামে ক্লিক করুন।
      2. API সংক্রান্ত বিধিনিষেধ বেছে নিন তালিকা থেকে, Places Aggregate API বেছে নিন।
      3. সেভ করুন বিকল্পে ক্লিক করুন।

    এখানে API বেছে নিলে তা চালু হয় না। Places Aggregate API এর API লাইব্রেরি পৃষ্ঠায় চালু করা আছে কিনা তা নিশ্চিত করুন।

  4. পরে কী স্ট্রিং দেখতে, কী ও ক্রেডেনশিয়াল পৃষ্ঠায় যান এবং কী-এর জন্য কী দেখুন বিকল্পে ক্লিক করুন।

কনসোলটি যদি এই ধাপগুলির থেকে আলাদা দেখায়, তাহলে Google Cloud ডকুমেন্টেশনে একটি API কী তৈরি করুন এবং API বিধিনিষেধ যোগ করুন দেখুন।

gcloud

নিচের কমান্ডে PROJECT_ID-এর জায়গায় আপনার প্রোজেক্ট আইডি লিখুন।

  • নতুন 'কী' তৈরি করুন: নিম্নলিখিত কমান্ড রান করুন এবং DISPLAY_NAME-এর জায়গায় 'কী'-এর নাম লিখুন।

    gcloud services api-keys create \
        --project="PROJECT_ID" \
        --display-name="DISPLAY_NAME" \
        --api-target=service=areainsights.googleapis.com

    Google Cloud SDK, Cloud SDK ইনস্টলেশন এবং নিম্নলিখিত কমান্ড সম্পর্কে আরও পড়ুন:

  • আগে থেকে থাকা 'কী' ব্যবহার করুন: নিম্নলিখিত কমান্ড রান করুন এবং KEY_ID-এর জায়গায় 'কী'-এর আইডি লিখুন। --append ফ্ল্যাগ সেইসব API রাখে যেগুলি 'কী' আগে থেকেই অনুমোদন করে। এটি না থাকলে, কমান্ডটি সেগুলি পরিবর্তন করে।

    gcloud services api-keys update KEY_ID \
        --project="PROJECT_ID" \
        --append \
        --api-target=service=areainsights.googleapis.com

    Google Cloud SDK, Cloud SDK ইনস্টলেশন এবং নিম্নলিখিত কমান্ড সম্পর্কে আরও পড়ুন:

    'কী' আইডি হল 'কী' স্ট্রিং বা ডিসপ্লে নাম নয়। এটি খুঁজতে, gcloud services api-keys list --project="PROJECT_ID" রান করুন। আইডি হল name ফিল্ডের শেষ অংশ: projects/PROJECT_NUMBER/locations/global/keys/KEY_ID।

কী স্ট্রিং দেখতে, gcloud services api-keys get-key-string KEY_ID --project="PROJECT_ID" রান করুন।

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

এই উদাহরণে সান ফ্রান্সিসকোতে মাঝারি দামের রেস্তোরাঁর সংখ্যা জানতে চাওয়া হয়েছে।

  1. কী-এর বর্ণসাংখ্যিক স্ট্রিং যোগ করতে নিচের কোডে API_KEY-এ ক্লিক করুন:

    curl --location 'https://areainsights.googleapis.com/v1:computeInsights' \
    --header 'X-Goog-Api-Key: API_KEY' \
    --header 'Content-Type: application/json' \
    --data '{
       "insights":[
          "INSIGHT_COUNT"
       ],
       "filter":{
          "locationFilter":{
             "region":{
                "place":"places/ChIJIQBpAG2ahYAR_6128GcTUEo"
             }
          },
          "typeFilter":{
             "includedTypes":[
                "restaurant"
             ]
          },
          "priceLevels":[
             "PRICE_LEVEL_INEXPENSIVE"
          ]
       }
    }'
    
  2. curl কমান্ড কপি করতে, 'কপি করুন' আইকন বেছে নিন।, কোড স্যাম্পেলে কপি আইকনে ক্লিক করুন।
  3. টার্মিনাল উইন্ডোতে কমান্ড পেস্ট করে রান করুন।

রেসপন্স হল এই ফর্মের একটি JSON অবজেক্ট:

{
  "count": "1025"
}

API key সংক্রান্ত বিধিনিষেধ প্রয়োগ করুন

Google আপনাকে API কী-এর ব্যবহার শুধুমাত্র সেইসব API ও অ্যাপে সীমাবদ্ধ রাখার জন্য সুপারিশ করে যেগুলির জন্য API কী প্রয়োজন। API কী সীমাবদ্ধ করলে, আপনার অ্যাপ্লিকেশনকে অযাচিত অনুরোধ থেকে রক্ষা করে সুরক্ষা প্রদান করে। API কী দুই ধরনের বিধিনিষেধ সমর্থন করে:

বিধিনিষেধ প্রয়োগ করার ব্যাপারে আরও তথ্য পেতে, আপনার API কী সীমাবদ্ধ করুন দেখুন।

OAuth টোকেন তৈরি করা

Places Aggregate API যাচাইকরণের জন্য OAuth 2.0 ব্যবহার করে। Google সাধারণ OAuth 2.0 পরিস্থিতি সমর্থন করে, যেমন একটি ওয়েব সার্ভারের জন্য পরিস্থিতি।

আপনার ডেভেলপমেন্ট এনভায়রনমেন্টে Places Aggregate API কলে কীভাবে OAuth টোকেন পাস করতে হয় তা এই ডকুমেন্টে বর্ণনা করা হয়েছে। প্রোডাকশন এনভায়রনমেন্টে OAuth ব্যবহার করার ব্যাপারে আরও তথ্য পেতে, Google-এ যাচাইকরণ পদ্ধতি দেখুন।

আপনি সার্ভারে API অনুরোধ করে সরাসরি Google Maps API কল করতে পারেন অথবা আপনার কোড সহজ করতে ক্লায়েন্ট লাইব্রেরি ব্যবহার করতে পারেন। Google Maps, Go, Java, Node.js ও Python-এর জন্য ক্লায়েন্ট লাইব্রেরি প্রদান করে। আরও তথ্যের জন্য, Places Aggregate API ক্লায়েন্ট লাইব্রেরি দেখুন।

OAuth ওভারভিউ

আপনার ডিপ্লয়মেন্ট এনভায়রনমেন্টের উপর নির্ভর করে আপনি বিভিন্ন উপায়ে OAuth-এর মাধ্যমে অ্যাক্সেস টোকেন তৈরি ও ম্যানেজ করতে পারবেন।

আপনার অ্যাপ্লিকেশন এবং Google পরিষেবার মধ্যে সার্ভার-টু-সার্ভার ইন্টার‍্যাকশনের জন্য আপনি OAuth 2.0 ব্যবহার করতে পারেন। এই পরিস্থিতিতে, আপনি এমন একটি পরিষেবা অ্যাকাউন্ট ব্যবহার করেন যা কোনও স্বতন্ত্র ব্যবহারকারীর পরিবর্তে আপনার অ্যাপ্লিকেশনের সাথে যুক্ত। আপনি ব্যবহারকারীদের সরাসরি যুক্ত না করেই পরিষেবা অ্যাকাউন্ট ব্যবহার করে API অনুরোধ করতে পারেন। যাচাইকরণ পদ্ধতি সম্পর্কে আরও জানতে, Google-এ যাচাইকরণ পদ্ধতি দেখুন।

বিকল্প হিসেবে, আপনি Android বা iOS মোবাইল অ্যাপে Places Aggregate API ইন্টিগ্রেট করতে পারেন। বিভিন্ন ডেপ্লয়মেন্ট এনভায়রনমেন্টের জন্য OAuth ব্যবহার করা ও অ্যাক্সেস টোকেন ম্যানেজ করার ব্যাপারে আরও তথ্যের জন্য, Google API অ্যাক্সেস করতে OAuth 2.0 ব্যবহার করা দেখুন।

OAuth স্কোপ

Places Aggregate API-এর সাথে OAuth ব্যবহার করতে, আপনাকে OAuth টোকেনে নিম্নলিখিত স্কোপ অ্যাসাইন করতে হবে:

https://www.googleapis.com/auth/cloud-platform

যেমন: আপনার লোকাল ডেভেলপমেন্ট এনভায়রনমেন্টে REST API কল করে দেখুন

আপনার কাছে টোকেন জেনারেট করে এমন কোনও এনভায়রনমেন্ট না থাকলে এবং আপনি OAuth টোকেন সহ Places Aggregate API ব্যবহার করে দেখতে চাইলে, এই বিভাগে উল্লেখ করা পদ্ধতি অনুসরণ করুন।

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

নিম্নলিখিত REST পদ্ধতি শুধুমাত্র ডেভেলপমেন্ট বা পরীক্ষার জন্য ব্যবহার করুন, প্রোডাকশনের জন্য নয়।

পূর্বশর্ত

ADC ব্যবহার করে REST অনুরোধ করার আগে, ADC-তে ক্রেডেনশিয়াল প্রদান করতে gcloud CLI ব্যবহার করুন:

  1. gcloud CLI ইনস্টল ও ইনিশিয়ালাইজ করুন। আরও তথ্যের জন্য, gcloud CLI ইনস্টল করুন দেখুন।

  2. gcloud CLI-এর মাধ্যমে যাচাই করুন:

    gcloud auth application-default login
  3. ADC-এর ব্যবহার করা লোকাল ক্রেডেনশিয়াল ফাইলে আপনার ক্রেডেনশিয়াল সেভ করতে সাইন-ইন করার প্রসেস সম্পূর্ণ করুন।

আরও তথ্যের জন্য, লোকাল ডেভেলপমেন্ট এনভায়রনমেন্টের জন্য ADC সেট-আপ করুন দেখুন।

REST অনুরোধ করা

এই উদাহরণে, আপনি দুটি রিকোয়েস্ট হেডার পাস করেন:

  • নিম্নলিখিত কমান্ড ব্যবহার করে টোকেন জেনারেট করুন এবং Authorization হেডারে OAuth টোকেন পাস করুন:

    gcloud auth application-default print-access-token

    ফেরত দেওয়া টোকেনের স্কোপ হল https://www.googleapis.com/auth/cloud-platform।

  • আপনার Google Cloud প্রোজেক্টের আইডি বা নাম পাস করুন, যার বিলিং X-Goog-User-Project হেডারে চালু করা আছে।

OAuth টোকেন ব্যবহার করে Places Aggregate API কল করতে, নিম্নলিখিত ধাপগুলি সম্পূর্ণ করুন:

  1. নিম্নলিখিত কোড স্যাম্পেলে, PROJECT_NUMBER_OR_ID-এর জায়গায় আপনার Google Cloud প্রোজেক্ট নম্বর বা আইডি লিখুন।

    এই উদাহরণে সান ফ্রান্সিসকোতে মাঝারি দামের রেস্তোরাঁর সংখ্যা জানতে চাওয়া হয়েছে:

    curl -X POST 'https://areainsights.googleapis.com/v1:computeInsights' \
    -H "Content-Type: application/json" \
    -H "X-Goog-User-Project: PROJECT_NUMBER_OR_ID" \
    -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
    --data '{
    "insights":[
      "INSIGHT_COUNT"
    ],
    "filter":{
      "location_filter":{
         "region":{
            "place":"places/ChIJIQBpAG2ahYAR_6128GcTUEo"
         }
      },
      "type_filter":{
         "included_types":[
            "restaurant"
         ]
      },
      "price_levels":[
         "PRICE_LEVEL_INEXPENSIVE"
      ]
    }
    }'
  2. curl কমান্ড কপি করতে, কোড স্যাম্পেলে কপি করুন বিকল্পে ক্লিক করুন।

  3. টার্মিনাল উইন্ডোতে কমান্ড পেস্ট করে রান করুন।

রেসপন্স একটি JSON অবজেক্ট:

{
  "count": "1025"
}

সমস্যার সমাধান

আপনার অনুরোধে যদি এমন কোনও ত্রুটি মেসেজ আসে যাতে বলা হয় যে এই API-তে এন্ড-ইউজার ক্রেডেনশিয়াল কাজ করে না, তাহলে আপনার ADC সেট-আপের সমস্যার সমাধান করুন।

এর পরে কী করতে হবে

আপনি Places Aggregate API চালু করেছেন এবং সফলভাবে অনুরোধ করেছেন, তাই API ব্যবহার করার ব্যাপারে আরও জানতে আপনার প্রথম অনুরোধ করুন দেখুন।