Google Biểu mẫu API 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 của biểu mẫu và điểm của bài kiểm tra, thiết lập khoá đáp án của bài kiểm tra kèm theo phản hồi tự động và nhận thông báo đẩy. Các trường hợp sử dụng phổ biến nhất của API này bao gồm những nhiệm vụ sau:
- Tạo biểu mẫu hoặc bài kiểm tra
- Xuất bản và quản lý người trả lời
- 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 nội dung và siêu dữ liệu của biểu mẫu
- Thiết lập và nhận thông báo đẩy
- Sau đây là danh sách các thuật ngữ thường dùng trong Forms API:
- Biểu mẫu
Một tài liệu 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 chữ cái, số, dấu gạch ngang hoặc dấu gạch dưới. Bạn có thể tìm thấy mã nhận dạng biểu mẫu trong URL của 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ể của Google Biểu mẫu cho phép chấm điểm các câu trả lời trên biểu mẫu dựa trên đá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 đặtisQuiz
trên một biểu mẫu hiện có thànhtrue
.- Item
Một phần tử trong biểu mẫu, được biểu thị bằng tài nguyên Item.
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 duy nhất trên 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 có cùng một tập hợp câu trả lời có thể (ví dụ: một lưới gồm các mức phân loại từ 1 đến 5). Được biểu thị bằng tài nguyên
QuestionGroupItem
.- Section
Phần là một cách để chia 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 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 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 về điểm (nếu có), siêu dữ liệu và nội dung của câu trả lời.- Đáp
Việc người dùng cuối gửi biểu mẫu, được biểu thị bằng tài nguyên
FormResponse
.- Xem
Một điều kiện kích hoạt theo dõi các thay đổi đối với các thay đổi về giản đồ biểu mẫu (chẳng hạn như chỉnh sửa câu hỏi) hoặc việc gửi phản hồi biểu mẫu và gửi thông báo đẩy khi có 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 tìm 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 biểu diễn trực quan của một biểu mẫu tương ứng với 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ủa bạn có thể tạo. Sau đó, hãy truy xuất JSON tương ứng bằng phương thức forms.get()
để bạn có thể so sánh. Ví dụ: ví dụ về bài kiểm tra 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"
}
]
}
}
}
}
],
"publishSettings" : {
"isPublished": true,
"isAcceptingResponses": true
}
}
Các bước tiếp theo
- Để tìm hiểu về cách phát triển bằng các API của Google Workspace, bao gồm cả cách xử lý việc xác thực và uỷ quyền, hãy tham khảo bài viết Bắt đầu với tư cách là nhà phát triển Workspace.
- Để tìm hiểu cách định cấu hình và chạy một ứng dụng Forms API cơ bản, hãy đọc phần Tổng quan về hướng dẫn bắt đầu nhanh.