Tổng quan

API Google Biểu mẫu là một giao diện RESTful cho phép bạn tạo và sửa đổi biểu mẫu cũng như bài kiểm tra, truy xuất câu trả lời trong biểu mẫu và điểm bài kiểm tra, thiết lập khoá trả lời bài kiểm tra bằng tính năng phản hồi tự động và nhận thông báo đẩy. Các cách sử dụng API phổ biến nhất này bao gồm:

  • Tạo biểu mẫu hoặc bài kiểm tra
  • Cập nhật biểu mẫu hoặc bài kiểm tra
  • Truy xuất câu trả lời từ biểu mẫu hoặc bài kiểm tra
  • Đọc siêu dữ liệu và nội dung biểu mẫu
  • Thiết lập và nhận thông báo đẩy

Dưới đây là danh sách các thuật ngữ phổ biến mà API Biểu mẫu sử dụng:

Biểu mẫu

Một tài liệu trên Google Biểu mẫu, được tạo và lưu trữ trong Drive. Mỗi biểu mẫu được biểu thị bằng một tài nguyên Form và có một giá trị formId duy nhất, chứa các chữ cái, số, dấu gạch nối hoặc dấu gạch dưới. Bạn có thể tìm thấy mã biểu mẫu trong URL trên Google Biểu mẫu:

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

Bài kiểm tra

Một loại tài liệu cụ thể trong Google Biểu mẫu cho phép chấm điểm các câu trả lời qua biểu mẫu so với đáp án. Bạn chỉ có thể tạo bài kiểm tra bằng cách sử dụng phương thức batchUpdate() để cập nhật chế độ cài đặt isQuiz trên một biểu mẫu hiện có thành true.

Chấm điểm
Giá trị điểm, đáp án và phản hồi cho một câu hỏi được áp dụng khi isQuiztrue. Được biểu thị bằng tài nguyên Grading.
Phản hồi
Câu trả lời của người dùng cuối khi trả lời câu hỏi của một bài kiểm tra, do tài nguyên Feedback biểu thị.
Mục

Một phần tử trong biểu mẫu được biểu thị bằng tài nguyên Item (Mục). Item là một phần tử lặp lại có thể chứa một phần, nhóm câu hỏi, câu hỏi, văn bản, hình ảnh hoặc video.

Câu hỏi

Một câu hỏi về biểu mẫu, được biểu thị bằng tài nguyên Question.

Nhóm câu hỏi

Một nhóm câu hỏi mà tất cả đều có cùng một nhóm các câu trả lời có thể có (ví dụ: một lưới các điểm xếp hạng từ 1 đến 5). Được biểu thị bằng tài nguyên QuestionGroupItem.

Section

Phần là một cách để chia một biểu mẫu thành nhiều trang và thêm logic có điều kiện (chẳng hạn như chỉ hiển thị một số câu hỏi nhất định dựa trên cách người dùng trả lời). Các phần này tương ứng với tài nguyên PageBreakItem.

Trả lời

Câu trả lời của người dùng cuối cho một câu hỏi, được biểu thị bằng tài nguyên Answer. Bao gồm cả thông tin điểm (nếu có), siêu dữ liệu và nội dung của đáp án.

Đáp

Việc người dùng cuối gửi một biểu mẫu, biểu thị bằng tài nguyên FormResponse.

Xem

Trình kích hoạt theo dõi các thay đổi đối với thay đổi giản đồ biểu mẫu (chẳng hạn như chỉnh sửa câu hỏi) hoặc gửi phản hồi biểu mẫu và gửi thông báo đẩy khi thay đổi xảy ra. Được biểu thị bằng tài nguyên Watch.

Cấu trúc biểu mẫu

Khi quản lý biểu mẫu và bài kiểm tra, việc hiểu cách chỉ định các trường khác nhau có thể phức tạp, vì nhiều đối tượng biểu mẫu có thể được lồng vào nhau theo nhiều cách. Để xem cách thể hiện bằng hình ảnh của biểu mẫu cho các trường, bạn nên sử dụng giao diện người dùng để tạo một vài ví dụ về các biểu mẫu mà ứng dụng có thể tạo. Sau đó, hãy truy xuất JSON tương ứng bằng cách sử dụng phương thức forms.get() để bạn có thể so sánh. Ví dụ: bài kiểm tra mẫu này tương ứng với JSON sau:

{
  "formId": "FORM_ID",
  "info": {
    "title": "Famous Black Women",
    "description": "Please complete this quiz based off of this week's readings for class.",
    "documentTitle": "API Example Quiz"
  },
  "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"
              }
            ]
          }
        }
      }
    }
  ]
}

Các bước tiếp theo