একটি Apps স্ক্রিপ্ট প্রকল্প সেট আপ করুন৷

REST কলের মাধ্যমে সরাসরি Google Forms API কল করার জন্য একটি Apps Script প্রকল্প সেট আপ করার জন্য কয়েকটি পদক্ষেপ প্রয়োজন। ধরে নিচ্ছি আপনি ইতিমধ্যেই একটি Google Cloud প্রকল্প কনফিগার করেছেন, নিম্নলিখিতগুলি করুন:

  1. একটি নতুন অ্যাপস স্ক্রিপ্ট প্রকল্প তৈরি করুন।
  2. ফর্মস এপিআই-এর জন্য আপনার সক্ষম করা প্রকল্পের সাথে মিল রাখতে সংশ্লিষ্ট গুগল ক্লাউড প্রকল্প নম্বরটি পরিবর্তন করুন।
  3. প্রয়োজনীয় OAuth স্কোপ যোগ করতে ম্যানিফেস্ট ফাইল ( appsscript.json ) সম্পাদনা করুন।
  4. OAuth টোকেন আনতে অ্যাপস স্ক্রিপ্ট কোড যোগ করুন এবং টোকেনটি ব্যবহার করে একটি REST কল করুন।

একটি নতুন অ্যাপস স্ক্রিপ্ট প্রকল্প তৈরি এবং কনফিগার করুন

  1. আপনার Google ক্লাউড প্রজেক্ট কনফিগার করার জন্য যে Google অ্যাকাউন্টটি ব্যবহার করেছিলেন সেই একই অ্যাকাউন্ট ব্যবহার করে, Apps Script Dashboard এ যান, তারপর New project এ ক্লিক করুন।
  2. আপনার প্রজেক্টটি ওপেন হয়ে গেলে, প্রজেক্ট সেটিংসে ক্লিক করুন।
  3. এডিটর চেকবক্সে "appsscript.json" ম্যানিফেস্ট ফাইল দেখান নির্বাচন করুন।
  4. গুগল ক্লাউড প্ল্যাটফর্ম (গুগল ক্লাউড) প্রজেক্ট বিভাগে, প্রজেক্ট পরিবর্তন করুন ক্লিক করুন এবং ফর্মস এপিআই-এর জন্য আপনার কনফিগার করা গুগল ক্লাউড প্রজেক্ট নম্বরটি লিখুন।

আপনার অ্যাপস স্ক্রিপ্ট প্রজেক্টটি এখন ফর্মস এপিআই অ্যাক্সেস করার জন্য কনফিগার করা হয়েছে। পরবর্তী প্রয়োজনীয় পদক্ষেপ হল সঠিক OAuth স্কোপ যোগ করা।

OAuth স্কোপ যোগ করুন

অ্যাপস স্ক্রিপ্টে সঠিকভাবে স্কোপ করা OAuth টোকেন তৈরি করতে, আপনাকে প্রকল্পের ম্যানিফেস্ট ফাইলে প্রয়োজনীয় স্কোপ সেট করতে হবে।

  1. এডিটরে, appsscript.json খুলুন।
  2. ম্যানিফেস্টের বডিতে স্কোপ যোগ করুন।

    {
      ...
    "oauthScopes": [
        "https://www.googleapis.com/auth/script.external_request",
        "https://www.googleapis.com/auth/drive",
        "https://www.googleapis.com/auth/drive.readonly",
        "https://www.googleapis.com/auth/forms.body",
        "https://www.googleapis.com/auth/forms.body.readonly",
        "https://www.googleapis.com/auth/forms.responses.readonly"
      ],
     ...
     }
    
  3. "প্রকল্প করুন" এ ক্লিক করুন এবং প্রয়োজনে যেকোনো সিনট্যাক্স ত্রুটি সংশোধন করুন। আপনার প্রকল্পটি এখন একটি REST কল ব্যবহার করে ফর্ম API কল করতে সক্ষম হবে।

API কল করতে অ্যাপস স্ক্রিপ্ট কোড যোগ করুন

ফর্ম কল করার জন্য কোড লেখার আগে, আপনার নিজের মালিকানাধীন এমন একটি ফর্ম সনাক্ত করতে হবে যার প্রতিক্রিয়া রয়েছে এবং এর ফর্ম আইডিটি নোট করুন। ফর্মটি সম্পাদনা করার সময় ফর্ম আইডিটি URL-এ পাওয়া যাবে:

https://docs.google.com/forms/d/<FORM_ID>/edit

API কল করার জন্য, আপনাকে একটি Apps Script UrlFetchApp কল ব্যবহার করতে হবে।

  1. Code.gs খুলুন এবং নিম্নলিখিত কোডটি যোগ করুন:

    ফর্ম-এপিআই/স্নিপেটস/রিট্রিভ_অল_রেসপন্সেস.জিএস
    function callFormsAPI() {
      console.log("Calling the Forms API!");
      const formId = "<YOUR_FORM_ID>";
    
      // Get OAuth Token
      const OAuthToken = ScriptApp.getOAuthToken();
      console.log(`OAuth token is: ${OAuthToken}`);
    
      const formsAPIUrl = `https://forms.googleapis.com/v1/forms/${formId}/responses`;
      console.log(`formsAPIUrl is: ${formsAPIUrl}`);
    
      const options = {
        headers: {
          Authorization: `Bearer ${OAuthToken}`,
          Accept: "application/json",
        },
        method: "get",
      };
    
      const response = UrlFetchApp.fetch(formsAPIUrl, options);
      console.log(`Response from forms.responses was: ${response}`);
    }
  2. YOUR_FORM_ID পরিবর্তে আপনি আগে উল্লেখ করা মানটি ব্যবহার করুন।

    উদাহরণ: var formId = 'tL5ygBC8zpbTnTp76JCZdIg80hA-cnpbTnTjnsewCKJH';

  3. করুন ক্লিক করুন প্রকল্প সংরক্ষণ করুন এবং প্রয়োজনে যেকোনো বাক্য গঠন ত্রুটি সংশোধন করুন।

কোডটি পরীক্ষা করুন

  1. Run এ ক্লিক করুন।
  2. আগের মতো একই গুগল অ্যাকাউন্ট ব্যবহার করে প্রয়োজন অনুযায়ী প্রকল্পটি অনুমোদন করুন।

এটি শুরু হয়ে গেলে, আপনি এক্সিকিউশন লগে এইরকম একটি প্রতিক্রিয়া দেখতে পাবেন:

Execution started
Calling the Forms API!
OAuth token is: ya29.a0ARrdaM8IMjtlv…
formsAPIUrl is: https://forms.googleapis.com/v1beta/forms/…/responses
Response from Forms.responses was: {
"responses": [
    {
      "responseId":"...",
      "createTime": "2021-03-25T01:23:58.146Z",
      "lastSubmittedTime": "2021-03-25T01:23:58.146607Z",
      "answers": {
        "1e9b0ead": {
          "questionId": "1e9b0ead",
          "textAnswers": {
            "answers": [
              {
                "value": "Red"
              }
            ]
          }
        },
        "773ed8f3": {
          "questionId": "773ed8f3",
          "textAnswers": {
            "answers": [
              {
                "value": "Tesla"
              }
            ]
          }
        }
      }
    }
  ]
}
Execution completed

পরবর্তী পদক্ষেপ

অ্যাপস স্ক্রিপ্ট ব্যবহার করে API-তে সফলভাবে কল করার পর, রেফারেন্স ডকুমেন্টেশনটি দেখুন এবং API-তে অন্যান্য কল করার পরীক্ষা করুন।