REST Resource: forms

Resource: Formulir

Dokumen Google Formulir. Formulir dibuat di Drive, dan penghapusan formulir atau mengubah perlindungan aksesnya dilakukan melalui Drive API.

Representasi JSON
{
  "formId": string,
  "info": {
    object (Info)
  },
  "settings": {
    object (FormSettings)
  },
  "items": [
    {
      object (Item)
    }
  ],
  "revisionId": string,
  "responderUri": string,
  "linkedSheetId": string
}
Kolom
formId

string

Hanya output. ID formulir.

info

object (Info)

Wajib diisi. Judul dan deskripsi formulir.

settings

object (FormSettings)

Setelan formulir. Opsi ini harus diperbarui dengan UpdateSettingsRequest; elemen ini akan diabaikan selama forms.create dan UpdateFormInfoRequest.

items[]

object (Item)

Wajib diisi. Daftar item formulir, yang dapat mencakup header bagian, pertanyaan, media tersemat, dll.

revisionId

string

Hanya output. ID revisi formulir. Digunakan dalam WriteControl dalam permintaan update untuk mengidentifikasi revisi yang menjadi dasar perubahan.

Format ID revisi dapat berubah dari waktu ke waktu, sehingga harus ditangani secara tidak transparan. ID revisi yang dikembalikan hanya dijamin valid selama 24 jam setelah ID tersebut dikembalikan dan tidak dapat dibagikan ke pengguna lain. Jika ID revisi tidak berubah di antara panggilan, formulir tidak berubah. Sebaliknya, ID yang berubah (untuk formulir dan pengguna yang sama) biasanya berarti formulir telah diperbarui; namun, perubahan ID juga dapat disebabkan oleh faktor internal seperti perubahan format ID.

responderUri

string

Hanya output. URI formulir yang akan dibagikan kepada responden. Tindakan ini akan membuka halaman yang memungkinkan pengguna mengirimkan respons tetapi tidak mengedit pertanyaan.

linkedSheetId

string

Hanya output. ID Google Spreadsheet tertaut yang mengumpulkan respons dari Formulir ini (jika Spreadsheet tersebut ada).

Info

Informasi umum untuk formulir.

Representasi JSON
{
  "title": string,
  "documentTitle": string,
  "description": string
}
Kolom
title

string

Wajib diisi. Judul formulir yang dapat dilihat oleh responden.

documentTitle

string

Hanya output. Judul dokumen yang terlihat di Drive. Jika Info.title kosong, documentTitle dapat muncul sebagai penggantinya di UI Google Formulir dan dapat dilihat oleh responden. documentTitle dapat ditetapkan saat pembuatan, tetapi tidak dapat diubah oleh permintaan Removed. Gunakan Google Drive API jika Anda perlu mengupdate documentTitle secara terprogram.

description

string

Deskripsi formulir.

FormSettings

Setelan formulir.

Representasi JSON
{
  "quizSettings": {
    object (QuizSettings)
  }
}
Kolom
quizSettings

object (QuizSettings)

Setelan yang terkait dengan formulir dan penilaian kuis.

QuizSettings

Setelan yang terkait dengan formulir dan penilaian kuis. Setelan ini harus diupdate dengan UpdateSettingsRequest.

Representasi JSON
{
  "isQuiz": boolean
}
Kolom
isQuiz

boolean

Apakah formulir ini berupa kuis atau bukan. Jika benar, respons akan dinilai berdasarkan pertanyaan Grading. Setelah disetel ke salah (false), semua pertanyaan Grading akan dihapus.

Item

Satu item formulir. kind menentukan jenis item ini.

Representasi JSON
{
  "itemId": string,
  "title": string,
  "description": string,

  // Union field kind can be only one of the following:
  "questionItem": {
    object (QuestionItem)
  },
  "questionGroupItem": {
    object (QuestionGroupItem)
  },
  "pageBreakItem": {
    object (PageBreakItem)
  },
  "textItem": {
    object (TextItem)
  },
  "imageItem": {
    object (ImageItem)
  },
  "videoItem": {
    object (VideoItem)
  }
  // End of list of possible types for union field kind.
}
Kolom
itemId

string

ID item.

Saat pembuatan, ID ini dapat diberikan, tetapi ID belum boleh digunakan dalam formulir. Jika tidak diberikan, ID baru akan ditetapkan.

title

string

Judul item.

description

string

Deskripsi item.

Kolom union kind. Wajib diisi. Jenis item ini. kind hanya dapat berupa salah satu dari yang berikut:
questionItem

object (QuestionItem)

Mengajukan pertanyaan kepada pengguna.

questionGroupItem

object (QuestionGroupItem)

Mengajukan satu atau beberapa pertanyaan kepada pengguna dengan satu perintah utama.

pageBreakItem

object (PageBreakItem)

Memulai halaman baru dengan judul.

textItem

object (TextItem)

Menampilkan judul dan deskripsi pada halaman.

imageItem

object (ImageItem)

Menampilkan gambar di halaman.

videoItem

object (VideoItem)

Menampilkan video di halaman.

QuestionItem

Item formulir yang berisi satu pertanyaan.

Representasi JSON
{
  "question": {
    object (Question)
  },
  "image": {
    object (Image)
  }
}
Kolom
question

object (Question)

Wajib diisi. Pertanyaan yang ditampilkan.

image

object (Image)

Gambar yang ditampilkan dalam pertanyaan.

Pertanyaan

Pertanyaan apa saja. Jenis pertanyaan spesifik diketahui dengan kind.

Representasi JSON
{
  "questionId": string,
  "required": boolean,
  "grading": {
    object (Grading)
  },

  // Union field kind can be only one of the following:
  "choiceQuestion": {
    object (ChoiceQuestion)
  },
  "textQuestion": {
    object (TextQuestion)
  },
  "scaleQuestion": {
    object (ScaleQuestion)
  },
  "dateQuestion": {
    object (DateQuestion)
  },
  "timeQuestion": {
    object (TimeQuestion)
  },
  "fileUploadQuestion": {
    object (FileUploadQuestion)
  },
  "rowQuestion": {
    object (RowQuestion)
  }
  // End of list of possible types for union field kind.
}
Kolom
questionId

string

Hanya baca. ID pertanyaan.

Saat pembuatan, ID ini dapat diberikan, tetapi ID belum boleh digunakan dalam formulir. Jika tidak diberikan, ID baru akan ditetapkan.

required

boolean

Apakah pertanyaan harus dijawab agar responden mengirimkan responsnya.

grading

object (Grading)

Konfigurasi penilaian untuk pertanyaan.

Kolom union kind. Wajib diisi. Jenis pertanyaan yang ditawarkan kepada responden. kind hanya dapat berupa salah satu dari berikut:
choiceQuestion

object (ChoiceQuestion)

Responden dapat memilih dari rangkaian opsi yang telah ditetapkan.

textQuestion

object (TextQuestion)

Responden dapat memasukkan respons teks bebas.

scaleQuestion

object (ScaleQuestion)

Responden dapat memilih angka dari rentang.

dateQuestion

object (DateQuestion)

Responden dapat memasukkan tanggal.

timeQuestion

object (TimeQuestion)

Responden dapat memasukkan waktu.

fileUploadQuestion

object (FileUploadQuestion)

Responden dapat mengupload satu atau beberapa file.

rowQuestion

object (RowQuestion)

Baris QuestionGroupItem.

ChoiceQuestion

Pertanyaan radio/kotak centang/dropdown.

Representasi JSON
{
  "type": enum (ChoiceType),
  "options": [
    {
      object (Option)
    }
  ],
  "shuffle": boolean
}
Kolom
type

enum (ChoiceType)

Wajib diisi. Jenis pertanyaan pilihan.

options[]

object (Option)

Wajib diisi. Daftar opsi yang harus dipilih oleh responden.

shuffle

boolean

Apakah opsi harus ditampilkan dalam urutan acak untuk berbagai contoh kuis. Hal ini sering digunakan untuk mencegah kecurangan oleh responden yang mungkin melihat layar responden lain, atau untuk mengatasi bias dalam survei yang mungkin muncul dengan selalu menempatkan opsi yang sama di urutan pertama atau terakhir.

ChoiceType

Jenis pilihan.

Enum
CHOICE_TYPE_UNSPECIFIED Nilai default. Tidak digunakan.
RADIO Tombol pilihan: Semua pilihan ditampilkan kepada pengguna, yang hanya dapat memilih salah satunya.
CHECKBOX Kotak centang: Semua pilihan ditampilkan kepada pengguna, yang dapat memilih berapa pun pilihannya.
DROP_DOWN Menu drop-down: Pilihan hanya ditampilkan kepada pengguna sesuai permintaan, jika tidak, hanya pilihan saat ini yang ditampilkan. Hanya satu opsi yang dapat dipilih.

Opsi

Opsi untuk pertanyaan Pilihan.

Representasi JSON
{
  "value": string,
  "image": {
    object (Image)
  },
  "isOther": boolean,

  // Union field go_to_section can be only one of the following:
  "goToAction": enum (GoToAction),
  "goToSectionId": string
  // End of list of possible types for union field go_to_section.
}
Kolom
value

string

Wajib diisi. Pilihan seperti yang ditampilkan kepada pengguna.

image

object (Image)

Menampilkan gambar sebagai opsi.

isOther

boolean

Apakah opsinya "lainnya". Saat ini hanya berlaku untuk jenis pilihan RADIO dan CHECKBOX, tetapi tidak diizinkan di QuestionGroupItem.

Kolom union go_to_section. Bagian yang akan dibuka jika opsi ini dipilih. Saat ini hanya berlaku untuk jenis pilihan RADIO dan SELECT, tetapi tidak diizinkan di QuestionGroupItem. go_to_section hanya dapat berupa salah satu dari yang berikut:
goToAction

enum (GoToAction)

Jenis navigasi bagian.

goToSectionId

string

ID item dari header bagian yang akan dibuka.

GoToAction

Konstanta untuk navigasi bagian.

Enum
GO_TO_ACTION_UNSPECIFIED Nilai default. Tidak digunakan.
NEXT_SECTION Buka bagian berikutnya.
RESTART_FORM Kembali ke bagian awal formulir.
SUBMIT_FORM Segera kirim formulir.

Gambar

Data yang mewakili gambar.

Representasi JSON
{
  "contentUri": string,
  "altText": string,
  "properties": {
    object (MediaProperties)
  },

  // Union field image_source can be only one of the following:
  "sourceUri": string
  // End of list of possible types for union field image_source.
}
Kolom
contentUri

string

Hanya output. URI tempat Anda dapat mendownload gambar; ini hanya berlaku dalam waktu terbatas.

altText

string

Deskripsi gambar yang ditampilkan saat kursor diarahkan ke atasnya dan dibaca oleh pembaca layar.

properties

object (MediaProperties)

Properti gambar.

Kolom union image_source. Jenis sumber gambar. Hanya satu kolom sumber gambar yang harus ditetapkan saat membuat gambar baru. image_source hanya dapat berupa salah satu dari berikut:
sourceUri

string

Input saja. URI sumber adalah URI yang digunakan untuk menyisipkan gambar. URI sumber boleh kosong saat diambil.

MediaProperties

Properti media.

Representasi JSON
{
  "alignment": enum (Alignment),
  "width": integer
}
Kolom
alignment

enum (Alignment)

Posisi media.

width

integer

Lebar media dalam piksel. Saat media ditampilkan, media akan diskalakan ke lebih kecil dari nilai ini atau lebar bentuk yang ditampilkan. Rasio aspek asli media dipertahankan. Jika lebar tidak ditentukan saat media ditambahkan ke formulir, lebar akan disetel ke lebar sumber media. Lebar harus antara 0 dan 740, inklusif. Menyetel lebar ke 0 atau tidak ditentukan hanya diizinkan saat mengupdate sumber media.

Perataan

Perataan pada halaman.

Enum
ALIGNMENT_UNSPECIFIED Nilai default. Tidak digunakan.
LEFT Rata kiri.
RIGHT Rata kanan.
CENTER Tengah.

TextQuestion

Pertanyaan berbasis teks.

Representasi JSON
{
  "paragraph": boolean
}
Kolom
paragraph

boolean

Apakah pertanyaan tersebut berupa pertanyaan paragraf atau bukan. Jika tidak, pertanyaannya adalah pertanyaan teks singkat.

ScaleQuestion

Sebuah pertanyaan berskala besar. Pengguna memiliki rentang nilai numerik yang dapat dipilih.

Representasi JSON
{
  "low": integer,
  "high": integer,
  "lowLabel": string,
  "highLabel": string
}
Kolom
low

integer

Wajib diisi. Nilai serendah mungkin untuk timbangan.

high

integer

Wajib diisi. Nilai tertinggi untuk timbangan.

lowLabel

string

Label yang ditampilkan yang menjelaskan titik terendah pada skala.

highLabel

string

Label yang akan ditampilkan, yang mendeskripsikan titik tertinggi pada skala.

DateQuestion

Pertanyaan tanggal. Pertanyaan tanggal secara default hanya mencakup bulan + hari.

Representasi JSON
{
  "includeTime": boolean,
  "includeYear": boolean
}
Kolom
includeTime

boolean

Apakah akan memasukkan waktu sebagai bagian dari pertanyaan.

includeYear

boolean

Apakah akan menyertakan tahun sebagai bagian dari pertanyaan.

TimeQuestion

Pertanyaan waktu.

Representasi JSON
{
  "duration": boolean
}
Kolom
duration

boolean

true jika pertanyaannya tentang waktu berlalu. Jika tidak, ini tentang waktu dalam sehari.

FileUploadQuestion

Pertanyaan terkait upload file. API saat ini tidak mendukung pembuatan pertanyaan upload file.

Representasi JSON
{
  "folderId": string,
  "types": [
    enum (FileType)
  ],
  "maxFiles": integer,
  "maxFileSize": string
}
Kolom
folderId

string

Wajib diisi. ID folder Drive tempat file yang diupload disimpan.

types[]

enum (FileType)

Jenis file yang disetujui oleh pertanyaan ini.

maxFiles

integer

Jumlah maksimum file yang dapat diupload untuk pertanyaan ini dalam satu respons.

maxFileSize

string (int64 format)

Jumlah byte maksimum yang diizinkan untuk setiap file yang diupload ke pertanyaan ini.

FileType

Jenis file yang dapat diupload ke pertanyaan upload file.

Enum
FILE_TYPE_UNSPECIFIED Nilai default. Tidak digunakan.
ANY Tidak ada batasan jenis.
DOCUMENT Dokumen Google Dokumen.
PRESENTATION Presentasi Google Slide.
SPREADSHEET Spreadsheet Google Spreadsheet.
DRAWING Gambar.
PDF PDF.
IMAGE Gambar.
VIDEO Video.
AUDIO File audio.

RowQuestion

Konfigurasi untuk pertanyaan yang merupakan bagian dari grup pertanyaan.

Representasi JSON
{
  "title": string
}
Kolom
title

string

Wajib diisi. Judul untuk satu baris di QuestionGroupItem.

Penilaian

Penilaian untuk satu pertanyaan

Representasi JSON
{
  "pointValue": integer,
  "correctAnswers": {
    object (CorrectAnswers)
  },
  "whenRight": {
    object (Feedback)
  },
  "whenWrong": {
    object (Feedback)
  },
  "generalFeedback": {
    object (Feedback)
  }
}
Kolom
pointValue

integer

Wajib diisi. Jumlah maksimum poin yang dapat diperoleh secara otomatis oleh responden untuk jawaban yang benar. Nilai ini tidak boleh negatif.

correctAnswers

object (CorrectAnswers)

Wajib diisi. Kunci jawaban untuk pertanyaan. Jawaban akan dinilai secara otomatis berdasarkan kolom ini.

whenRight

object (Feedback)

Masukan ditampilkan untuk respons yang benar. Masukan ini hanya dapat ditetapkan untuk pertanyaan pilihan ganda yang memiliki jawaban benar.

whenWrong

object (Feedback)

Masukan ditampilkan untuk respons yang salah. Masukan ini hanya dapat ditetapkan untuk pertanyaan pilihan ganda yang memiliki jawaban benar.

generalFeedback

object (Feedback)

Masukan ditampilkan untuk semua jawaban. Pertanyaan ini biasanya digunakan untuk pertanyaan jawaban singkat ketika pemilik kuis ingin segera memberikan gambaran kepada responden tentang apakah mereka menjawab pertanyaan dengan benar sebelum mereka memiliki kesempatan untuk menilai respons secara resmi. Masukan umum tidak dapat ditetapkan untuk pertanyaan pilihan ganda yang dinilai secara otomatis.

CorrectAnswers

Kunci jawaban untuk suatu pertanyaan.

Representasi JSON
{
  "answers": [
    {
      object (CorrectAnswer)
    }
  ]
}
Kolom
answers[]

object (CorrectAnswer)

Daftar jawaban yang benar. Respons kuis dapat dinilai secara otomatis berdasarkan jawaban tersebut. Untuk pertanyaan bernilai tunggal, respons ditandai sebagai benar jika cocok dengan nilai apa pun dalam daftar ini (dengan kata lain, beberapa jawaban benar juga dapat diajukan). Untuk pertanyaan yang bernilai ganda (CHECKBOX), respons ditandai sebagai benar jika berisi nilai yang ada dalam daftar ini.

CorrectAnswer

Satu jawaban yang benar untuk sebuah pertanyaan. Untuk pertanyaan bernilai banyak (CHECKBOX), beberapa CorrectAnswer mungkin diperlukan untuk mewakili satu opsi respons yang benar.

Representasi JSON
{
  "value": string
}
Kolom
value

string

Wajib diisi. Nilai jawaban yang benar. Lihat dokumentasi TextAnswer.value untuk mengetahui detail tentang pemformatan berbagai jenis nilai.

QuestionGroupItem

Mendefinisikan pertanyaan yang terdiri dari beberapa pertanyaan yang dikelompokkan bersama.

Representasi JSON
{
  "questions": [
    {
      object (Question)
    }
  ],
  "image": {
    object (Image)
  },

  // Union field kind can be only one of the following:
  "grid": {
    object (Grid)
  }
  // End of list of possible types for union field kind.
}
Kolom
questions[]

object (Question)

Wajib diisi. Daftar pertanyaan yang termasuk dalam grup pertanyaan ini. Sebuah pertanyaan hanya boleh dimiliki oleh satu kelompok. kind grup dapat memengaruhi jenis pertanyaan apa yang diizinkan.

image

object (Image)

Gambar yang ditampilkan dalam grup pertanyaan di atas pertanyaan tertentu.

Kolom union kind. Wajib diisi. Jenis grup pertanyaan, yang menentukan jenis pertanyaan apa yang diizinkan dan bagaimana pertanyaan tersebut ditampilkan. kind hanya dapat berupa salah satu dari berikut:
grid

object (Grid)

Grup pertanyaan adalah petak dengan baris pertanyaan pilihan ganda yang memiliki opsi yang sama. Jika grid ditetapkan, semua pertanyaan di grup harus berjenis row.

Petak

Petak pilihan (kotak pilihan atau kotak centang) dengan setiap baris merupakan pertanyaan terpisah. Setiap baris memiliki pilihan yang sama, yang ditampilkan sebagai kolom.

Representasi JSON
{
  "columns": {
    object (ChoiceQuestion)
  },
  "shuffleQuestions": boolean
}
Kolom
columns

object (ChoiceQuestion)

Wajib diisi. Pilihan yang dibagikan oleh setiap pertanyaan di petak. Dengan kata lain, nilai-nilai kolom. Hanya CHECK_BOX dan RADIO pilihan yang diizinkan.

shuffleQuestions

boolean

Jika true, pertanyaan akan diurutkan secara acak. Dengan kata lain, baris akan muncul dalam urutan yang berbeda untuk setiap responden.

PageBreakItem

Batas halaman. Judul dan deskripsi item ini ditampilkan di bagian atas halaman baru.

TextItem

Item teks.

ImageItem

Item yang berisi gambar.

Representasi JSON
{
  "image": {
    object (Image)
  }
}
Kolom
image

object (Image)

Wajib diisi. Gambar yang ditampilkan di item.

VideoItem

Item yang berisi video.

Representasi JSON
{
  "video": {
    object (Video)
  },
  "caption": string
}
Kolom
video

object (Video)

Wajib diisi. Video yang ditampilkan di item.

caption

string

Teks yang ditampilkan di bawah video.

Video

Data yang mewakili video.

Representasi JSON
{
  "youtubeUri": string,
  "properties": {
    object (MediaProperties)
  }
}
Kolom
youtubeUri

string

Wajib diisi. URI YouTube.

properties

object (MediaProperties)

Properti video.

Metode

batchUpdate

Mengubah formulir dengan sekumpulan pembaruan.

create

Buat formulir baru menggunakan judul yang diberikan dalam pesan formulir yang disediakan dalam permintaan.

get

Dapatkan formulir.