Ringkasan

Google Formulir API adalah antarmuka RESTful yang memungkinkan Anda membuat dan mengubah formulir dan kuis, mengambil respons formulir dan nilai kuis, menyiapkan kunci jawaban kuis dengan masukan otomatis, dan menerima notifikasi push. Penggunaan yang paling umum API ini mencakup tugas-tugas berikut:

  • Buat formulir atau kuis
  • Memperbarui formulir atau kuis
  • Mengambil respons dari formulir atau kuis
  • Membaca metadata dan konten formulir
  • Menyiapkan dan menerima notifikasi push

Di bawah ini adalah daftar istilah umum yang digunakan di Forms API:

Formulir

Dokumen Google Formulir, yang dibuat dan disimpan di Drive. Setiap formulir yang diwakili oleh resource Form dan memiliki nilai formId yang unik, yang berisi huruf, angka, tanda hubung, atau garis bawah. Anda dapat menemukan ID formulir di URL Google Formulir:

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

Kuis

Jenis dokumen Google Formulir tertentu yang memungkinkan penilaian respons formulir terhadap kunci jawaban. Kuis hanya dapat dibuat menggunakan batchUpdate() untuk memperbarui setelan isQuiz pada formulir yang ada ke true.

Penilaian
Nilai poin, kunci jawaban, dan masukan untuk suatu pertanyaan, diterapkan saat isQuiz adalah true. Diwakili oleh Referensi Grading.
Masukan
Respons yang diberikan kepada pengguna akhir saat menjawab pertanyaan pada kuis, yang direpresentasikan oleh Feedback resource Anda
Item

Satu elemen di dalam formulir, yang direpresentasikan oleh Item. Item adalah elemen berulang yang dapat berisi bagian, kelompok pertanyaan, pertanyaan, teks, gambar, atau video.

Pertanyaan

Satu pertanyaan di formulir, diwakili oleh Referensi Question.

Grup pertanyaan

Sekelompok pertanyaan yang semuanya memiliki set kemungkinan jawaban yang sama (untuk misalnya, kisi-kisi peringkat dari 1 hingga 5). Diwakili oleh QuestionGroupItem resource Anda

Section

Bagian adalah cara untuk membagi formulir menjadi beberapa laman dan menambahkan logika bersyarat (seperti hanya menampilkan pertanyaan tertentu berdasarkan bagaimana jawaban pengguna). Bagian sesuai dengan PageBreakItem resource Anda

Jawab

Jawaban pengguna akhir atas suatu pertanyaan, diwakili oleh Answer resource Anda Menyertakan informasi nilai (jika ada), metadata, dan jawaban yang benar.

Respons

Pengiriman formulir pengguna akhir, yang diwakili oleh Referensi FormResponse.

Tonton

Pemicu yang melacak perubahan pada salah satu perubahan skema formulir (seperti pengeditan ke pertanyaan) atau pengiriman respons formulir dan mengirim notifikasi push saat terjadi sebuah perubahan. Diwakili oleh Referensi Watch.

Struktur formulir

Saat mengelola formulir dan kuis, memahami cara menentukan berbagai kolom bisa rumit, mengingat banyak objek formulir dapat disarangkan di dalam satu sama lain dengan berbagai cara. Untuk melihat bagaimana representasi visual suatu formulir peta ke bidang isian, sebaiknya gunakan UI untuk membuat beberapa contoh formulir yang mungkin dihasilkan aplikasi Anda. Kemudian, ambil JSON yang sesuai menggunakan metode forms.get() sehingga dapat dibandingkan. Misalnya, contoh kuis ini sesuai dengan JSON berikut:

{
  "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"
              }
            ]
          }
        }
      }
    }
  ]
}

Langkah berikutnya