Google Forms API เป็นอินเทอร์เฟซ RESTful ที่ช่วยให้คุณสร้างและแก้ไขแบบฟอร์ม และแบบทดสอบ เรียกดูข้อมูลคำตอบแบบฟอร์มและคะแนนแบบทดสอบ ตั้งค่าเฉลยคำตอบแบบทดสอบ พร้อมความคิดเห็นอัตโนมัติ และรับข้อความ Push ได้ การใช้งาน API นี้ที่พบบ่อยที่สุด รวมถึงงานต่อไปนี้
- สร้างแบบฟอร์มหรือแบบทดสอบ
- เผยแพร่และจัดการผู้ตอบ
- อัปเดตแบบฟอร์มหรือแบบทดสอบ
- ดึงคำตอบจากแบบฟอร์มหรือแบบทดสอบ
- อ่านเนื้อหาและข้อมูลเมตาของแบบฟอร์ม
- ตั้งค่าและรับข้อความ Push
- รายการคำศัพท์ทั่วไปที่ใช้ใน Forms API มีดังนี้
- แบบฟอร์ม
- เอกสาร Google ฟอร์มที่สร้างและจัดเก็บไว้ในไดรฟ์ แต่ละแบบฟอร์มจะแสดงด้วยทรัพยากร - Formและมีค่า- formIdที่ไม่ซ้ำกัน ซึ่งประกอบด้วยตัวอักษร ตัวเลข ขีดกลาง หรือขีดล่าง คุณจะพบรหัสแบบฟอร์มใน URL ของ Google ฟอร์ม
- https://docs.google.com/forms/d/FORM_ID/edit
- แบบทดสอบ
- เอกสาร Google ฟอร์มประเภทหนึ่งที่ช่วยให้สามารถให้คะแนน คำตอบในแบบฟอร์มเทียบกับเฉลยคำตอบได้ คุณจะสร้างแบบทดสอบได้โดยใช้เมธอด - batchUpdate()เพื่ออัปเดตการตั้งค่า- isQuizในแบบฟอร์มที่มีอยู่เป็น- trueเท่านั้น
- รายการ
- องค์ประกอบเดียวในแบบฟอร์มซึ่งแสดงโดยทรัพยากร Item - Itemเป็น องค์ประกอบที่ทำซ้ำได้ซึ่งอาจมีส่วน กลุ่มคำถาม คำถาม ข้อความ รูปภาพ หรือวิดีโอ
- คำถาม
- คำถามเดียวในแบบฟอร์มซึ่งแสดงโดยทรัพยากร - Question
- กลุ่มคำถาม
- กลุ่มคำถามที่มีชุดคำตอบที่เป็นไปได้ชุดเดียวกัน (เช่น ตารางคะแนนตั้งแต่ 1 ถึง 5) แสดงโดยทรัพยากร - QuestionGroupItem
- Section
- ส่วนเป็นวิธีแบ่งแบบฟอร์มออกเป็นหลายหน้าและเพิ่ม ตรรกะแบบมีเงื่อนไข (เช่น แสดงเฉพาะคำถามบางข้อตามวิธีที่ผู้ใช้ตอบ) ส่วนต่างๆ จะสอดคล้องกับทรัพยากร - PageBreakItem
- คำตอบ
- คำตอบของผู้ใช้ปลายทางสำหรับคำถาม ซึ่งแสดงโดยทรัพยากร - Answerรวมถึงข้อมูลคะแนน (หากมี) ข้อมูลเมตา และ เนื้อหาของคำตอบ
- การตอบกลับ
- การส่งแบบฟอร์มของผู้ใช้ปลายทาง ซึ่งแสดงโดยทรัพยากร - FormResponse
- นาฬิกาข้อมือ
- ทริกเกอร์ที่ติดตามการเปลี่ยนแปลงในสคีมาของแบบฟอร์ม (เช่น การแก้ไขคำถาม) หรือการส่งคำตอบของแบบฟอร์ม และส่งการแจ้งเตือนแบบพุชเมื่อมีการเปลี่ยนแปลงเกิดขึ้น แสดงโดยทรัพยากร - Watch
โครงสร้างแบบฟอร์ม
เมื่อจัดการแบบฟอร์มและแบบทดสอบ การทำความเข้าใจวิธีระบุช่องต่างๆ
อาจซับซ้อน เนื่องจากออบเจ็กต์แบบฟอร์มจำนวนมากสามารถซ้อนกันได้
ในหลายๆ วิธี หากต้องการดูว่าการแสดงภาพของแบบฟอร์ม
เชื่อมโยงกับช่องต่างๆ อย่างไร เราขอแนะนำให้ใช้ UI เพื่อสร้างตัวอย่าง
แบบฟอร์มที่แอปพลิเคชันของคุณอาจสร้างขึ้น จากนั้นดึงข้อมูล JSON ที่เกี่ยวข้อง
โดยใช้เมธอด forms.get()
เพื่อให้คุณเปรียบเทียบได้ เช่น แบบทดสอบตัวอย่างนี้
สอดคล้องกับ JSON ต่อไปนี้
{
  "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
  }
}
ขั้นตอนถัดไป
- หากต้องการดูข้อมูลเกี่ยวกับการพัฒนาด้วย Google Workspace API รวมถึงการจัดการการตรวจสอบสิทธิ์และการให้สิทธิ์ โปรดดูเริ่มต้นใช้งานในฐานะนักพัฒนาแอป Workspace
- ดูวิธีกำหนดค่าและเรียกใช้แอป Forms API พื้นฐานได้ที่ภาพรวมของคู่มือเริ่มต้นฉบับย่อ