ওভারভিউ

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

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

ড্রাইভে তৈরি ও সংরক্ষিত একটি গুগল ফর্মস ডকুমেন্ট। প্রতিটি ফর্ম একটি Form রিসোর্স দ্বারা উপস্থাপিত হয় এবং এর একটি অনন্য formId ভ্যালু থাকে, যাতে অক্ষর, সংখ্যা, হাইফেন বা আন্ডারস্কোর থাকতে পারে। আপনি একটি ফর্মস ইউআরএল-এ ফর্ম আইডিটি খুঁজে পেতে পারেন:

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

কুইজ

এক বিশেষ ধরনের গুগল ফর্মস ডকুমেন্ট, যা একটি উত্তরমালার সাথে মিলিয়ে ফর্মের উত্তরগুলোর মূল্যায়ন করার সুযোগ দেয়। একটি কুইজ শুধুমাত্র batchUpdate() মেথড ব্যবহার করে বিদ্যমান কোনো ফর্মের isQuiz সেটিং-কে true তে আপডেট করার মাধ্যমেই তৈরি করা যায়।

গ্রেডিং
একটি প্রশ্নের পয়েন্ট মান, উত্তরপত্র এবং ফিডব্যাক, যা isQuiz true হলে প্রযোজ্য হয়। এটি Grading রিসোর্স দ্বারা উপস্থাপিত হয়।
প্রতিক্রিয়া
কুইজের কোনো প্রশ্নের উত্তর দেওয়ার সময় ব্যবহারকারীকে যে প্রতিক্রিয়া জানানো হয়, তা Feedback রিসোর্স দ্বারা উপস্থাপিত হয়।
আইটেম

ফর্মের একটি একক উপাদান, যা আইটেম রিসোর্স দ্বারা উপস্থাপিত হয়। Item একটি পুনরাবৃত্তিমূলক উপাদান যা একটি বিভাগ, প্রশ্ন গোষ্ঠী, প্রশ্ন, টেক্সট, ছবি বা ভিডিও ধারণ করতে পারে।

প্রশ্ন

ফর্মের একটিমাত্র প্রশ্ন, যা Question রিসোর্স দ্বারা উপস্থাপিত।

প্রশ্ন গোষ্ঠী

একগুচ্ছ প্রশ্ন, যেগুলোর সবগুলোর সম্ভাব্য উত্তর একই (উদাহরণস্বরূপ, ১ থেকে ৫ পর্যন্ত রেটিং-এর একটি গ্রিড)। এটি QuestionGroupItem রিসোর্স দ্বারা উপস্থাপিত হয়।

বিভাগ

একটি ফর্মকে একাধিক পৃষ্ঠায় বিভক্ত করতে এবং শর্তসাপেক্ষ লজিক (যেমন ব্যবহারকারীর উত্তরের উপর ভিত্তি করে শুধুমাত্র নির্দিষ্ট প্রশ্ন দেখানো) যোগ করার একটি উপায় হলো সেকশন। সেকশনগুলো PageBreakItem রিসোর্সের সাথে সম্পর্কিত।

উত্তর

কোনো প্রশ্নের প্রতি অন্তিম ব্যবহারকারীর উত্তর, যা Answer রিসোর্স দ্বারা উপস্থাপিত হয়। এতে গ্রেডের তথ্য (যদি থাকে), মেটাডেটা এবং উত্তরের বিষয়বস্তু অন্তর্ভুক্ত থাকে।

প্রতিক্রিয়া

অন্তিম ব্যবহারকারীর ফর্ম জমা দেওয়া, যা FormResponse রিসোর্স দ্বারা উপস্থাপিত হয়।

দেখুন

একটি ট্রিগার যা ফর্ম স্কিমার পরিবর্তন (যেমন প্রশ্নের সম্পাদনা) অথবা ফর্মের উত্তর জমা দেওয়ার বিষয়গুলো ট্র্যাক করে এবং কোনো পরিবর্তন ঘটলে একটি পুশ নোটিফিকেশন পাঠায়। এটি Watch রিসোর্স দ্বারা উপস্থাপিত হয়।

গঠন কাঠামো

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

{
  "formId": "FORM_ID",
  "info": {
    "title": "Famous Black Women",
    "description": "Please complete this quiz based off of this week's readings for class.",
    "documentTitle": "Famous Black Women"
  },
  "settings": {
    "quizSettings": {
      "isQuiz": true
    }
  },
  "revisionId": "00000021",
  "responderUri": "https://docs.google.com/forms/d/e/1FAIpQLSd0iBLPh4suZoGW938EU1WIxzObQv_jXto0nT2U8HH2KsI5dg/viewform",
  "items": [
    {
      "itemId": "5d9f9786",
      "imageItem": {
        "image": {
          "contentUri": "DIRECT_URL",
          "properties": {
            "alignment": "LEFT"
          }
        }
      }
    },
    {
      "itemId": "72b30353",
      "title": "Which African American woman authored \"I Know Why the Caged Bird Sings\"?",
      "questionItem": {
        "question": {
          "questionId": "25405d4e",
          "required": true,
          "grading": {
            "pointValue": 2,
            "correctAnswers": {
              "answers": [
                {
                  "value": "Maya Angelou"
                }
              ]
            }
          },
          "choiceQuestion": {
            "type": "RADIO",
            "options": [
              {
                "value": "Maya Angelou"
              },
              {
                "value": "bell hooks"
              },
              {
                "value": "Alice Walker"
              },
              {
                "value": "Roxane Gay"
              }
            ]
          }
        }
      }
    },
    {
      "itemId": "0a4859c8",
      "title": "Who was the first Dominican-American woman elected to state office?",
      "questionItem": {
        "question": {
          "questionId": "37fff47a",
          "grading": {
            "pointValue": 2,
            "correctAnswers": {
              "answers": [
                {
                  "value": "Grace Diaz"
                }
              ]
            }
          },
          "choiceQuestion": {
            "type": "RADIO",
            "options": [
              {
                "value": "Rosa Clemente"
              },
              {
                "value": "Grace Diaz"
              },
              {
                "value": "Juana Matias"
              },
              {
                "value": "Sabrina Matos"
              }
            ]
          }
        }
      }
    }
  ],
  "publishSettings" : {
    "isPublished": true,
    "isAcceptingResponses": true
  }
}

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

  • Google Workspace API ব্যবহার করে ডেভেলপমেন্ট, যার মধ্যে অথেনটিকেশন এবং অথরাইজেশন পরিচালনা অন্তর্ভুক্ত, সে সম্পর্কে জানতে "Get started as a Workspace developer" দেখুন।
  • একটি সাধারণ ফর্মস এপিআই অ্যাপ কীভাবে কনফিগার ও রান করতে হয় তা জানতে, কুইকস্টার্টস ওভারভিউটি পড়ুন।