REST Resource: forms

Kaynak: Form

Google Formlar dokümanı. Drive'da bir form oluşturulur. Formu silme veya erişim korumalarını değiştirme işlemleri Drive API aracılığıyla yapılır.

JSON gösterimi
{
  "formId": string,
  "info": {
    object (Info)
  },
  "settings": {
    object (FormSettings)
  },
  "items": [
    {
      object (Item)
    }
  ],
  "revisionId": string,
  "responderUri": string,
  "linkedSheetId": string
}
Alanlar
formId

string

Yalnızca çıkış. Form kimliği.

info

object (Info)

Zorunlu. Formun başlığı ve açıklaması.

settings

object (FormSettings)

Formun ayarları. Bu parametre UpdateSettingsRequest ile güncellenmelidir; forms.create ve UpdateFormInfoRequest içinde yoksayılır.

items[]

object (Item)

Zorunlu. Form öğelerinin listesi (bölüm üstbilgileri, sorular, yerleştirilmiş medya vb. olabilir).

revisionId

string

Yalnızca çıkış. Formun düzeltme kimliği. Değişikliklerin temel aldığı düzeltmeyi tanımlamak için güncelleme isteklerindeki WriteControl içinde kullanılır.

Düzeltme kimliğinin biçimi zaman içinde değişebileceği için opak bir şekilde ele alınmalıdır. Döndürülen bir düzeltme kimliği, iade edildikten sonra yalnızca 24 saat geçerli olur ve kullanıcılar arasında paylaşılamaz. Çağrılar arasında düzeltme kimliği değişmezse form değişmemiştir. Bunun aksine, değiştirilen kimlik (aynı form ve kullanıcı için) genellikle formun güncellendiği anlamına gelir; ancak değişen kimlik, kimlik biçimi değişiklikleri gibi dahili faktörlerden de kaynaklanabilir.

responderUri

string

Yalnızca çıkış. Katılımcılarla paylaşılacak form URI'si. Bu işlem, kullanıcının yanıt göndermesine izin veren ancak soruları düzenlemesine izin vermeyen bir sayfa açar.

linkedSheetId

string

Yalnızca çıkış. Bu formdaki yanıtları toplayan bağlı Google E-Tablosunun kimliği (böyle bir e-tablo varsa).

Bilgi

Bir formla ilgili genel bilgiler.

JSON gösterimi
{
  "title": string,
  "documentTitle": string,
  "description": string
}
Alanlar
title

string

Zorunlu. Katılımcılara gösterilecek formun başlığı.

documentTitle

string

Yalnızca çıkış. Drive'da görünür olan dokümanın başlığı. Info.title boşsa documentTitle, Google Formlar kullanıcı arayüzündeki yerinde görünebilir ve katılımcılar tarafından görülebilir. documentTitle, oluşturma sırasında ayarlanabilir, ancak Toplu Güncelleme isteğiyle değiştirilemez. documentTitle ürününü programatik olarak güncellemeniz gerekiyorsa lütfen Google Drive API'yi kullanın.

description

string

Formun açıklaması.

FormSettings

Formun ayarları.

JSON gösterimi
{
  "quizSettings": {
    object (QuizSettings)
  }
}
Alanlar
quizSettings

object (QuizSettings)

Test formları ve not vermeyle ilgili ayarlar.

QuizSettings

Test formları ve not vermeyle ilgili ayarlar. Bunlar UpdateSettingsRequest ile güncellenmelidir.

JSON gösterimi
{
  "isQuiz": boolean
}
Alanlar
isQuiz

boolean

Bu formun test olup olmadığı. Yanıtlar doğru olduğunda Grading. soruya göre notlandırılır. Yanlış değerine ayarlandığında tüm Grading sorusu silinir.

Öğe

Formun tek bir öğesi. kind, öğenin ne tür bir öğe olduğunu tanımlar.

JSON gösterimi
{
  "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.
}
Alanlar
itemId

string

Öğe kimliği.

Kimlik, oluşturma sırasında sağlanabilir ancak formda daha önce kullanılmamalıdır. Sağlanmazsa yeni bir kimlik atanır.

title

string

Öğenin başlığı.

description

string

Öğenin açıklaması.

kind alanı. Zorunlu. Bu öğenin türü. kind aşağıdakilerden yalnızca biri olabilir:
questionItem

object (QuestionItem)

Kullanıcıya bir soru sunar.

questionGroupItem

object (QuestionGroupItem)

Kullanıcıya tek bir önemli istemle bir veya daha fazla soru sorar.

pageBreakItem

object (PageBreakItem)

Başlığı olan yeni bir sayfa başlatır.

textItem

object (TextItem)

Sayfada bir başlık ve açıklama görüntüler.

imageItem

object (ImageItem)

Sayfada bir resim görüntüler.

videoItem

object (VideoItem)

Sayfada bir video gösterir.

QuestionItem

Tek bir soru içeren form öğesi.

JSON gösterimi
{
  "question": {
    object (Question)
  },
  "image": {
    object (Image)
  }
}
Alanlar
question

object (Question)

Zorunlu. Gösterilen soru.

image

object (Image)

Soruda gösterilen resim.

Soru

Herhangi bir sorunuz var mı? Belirli bir soru türü kind tarafından bilinir.

JSON gösterimi
{
  "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.
}
Alanlar
questionId

string

Salt okunur. Soru kimliği.

Kimlik, oluşturma sırasında sağlanabilir ancak formda daha önce kullanılmamalıdır. Sağlanmazsa yeni bir kimlik atanır.

required

boolean

Bir katılımcının yanıtını göndermesi için sorunun yanıtlanıp cevaplanmayacağı.

grading

object (Grading)

Sorunun notlandırma ayarları.

kind alanı. Zorunlu. Katılımcılara sunulan sorunun türü. kind şunlardan yalnızca biri olabilir:
choiceQuestion

object (ChoiceQuestion)

Katılımcılar önceden tanımlanmış bir seçenek grubundan seçim yapabilir.

textQuestion

object (TextQuestion)

Katılımcıları serbest metin şeklinde yanıtlayabilirler.

scaleQuestion

object (ScaleQuestion)

Katılımcılar bir aralıktan sayı seçebilir.

dateQuestion

object (DateQuestion)

Katılımcı tarih girebilir.

timeQuestion

object (TimeQuestion)

Katılımcı bir saat girebilir.

fileUploadQuestion

object (FileUploadQuestion)

Katılımcı bir veya daha fazla dosya yükleyebilir.

rowQuestion

object (RowQuestion)

QuestionGroupItem satırı.

ChoiceQuestion

Radyo/onay kutusu/açılır liste sorusu.

JSON gösterimi
{
  "type": enum (ChoiceType),
  "options": [
    {
      object (Option)
    }
  ],
  "shuffle": boolean
}
Alanlar
type

enum (ChoiceType)

Zorunlu. Seçim sorusunun türü.

options[]

object (Option)

Zorunlu. Katılımcının seçmesi gereken seçeneklerin listesi.

shuffle

boolean

Seçeneklerin testin farklı örnekleri için rastgele sırada gösterilip gösterilmeyeceği. Bu yaklaşım genellikle, başka bir katılımcının ekranına bakan katılımcıların hile yapmasını önlemek veya bir ankette her zaman aynı seçenekleri ya da sonuncuya yer vererek yanlılığı gidermek için kullanılır.

ChoiceType

Tercih edilen türdür.

Sıralamalar
CHOICE_TYPE_UNSPECIFIED Varsayılan değer. Kullanılmamış.
RADIO Radyo düğmeleri: Tüm seçenekler, yalnızca birini seçebilen kullanıcıya gösterilir.
CHECKBOX Onay kutuları: Tüm seçenekler kullanıcıya gösterilir ve kullanıcılar istedikleri sayıda seçeneği işaretleyebilir.
DROP_DOWN Açılır menü: Seçenekler kullanıcıya yalnızca istek üzerine gösterilir. Aksi takdirde yalnızca geçerli seçenek gösterilir. Yalnızca bir seçenek belirtilebilir.

Option

Seçim sorusu için bir seçenek.

JSON gösterimi
{
  "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.
}
Alanlar
value

string

Zorunlu. Kullanıcıya sunulan seçim.

image

object (Image)

Resim seçenek olarak gösterilir.

isOther

boolean

Seçeneğin "diğer" olup olmadığı. Şu anda yalnızca RADIO ve CHECKBOX seçim türleri için geçerlidir ancak QuestionGroupItem içinde izin verilmez.

go_to_section alanı. Bu seçenek belirlenirse gideceğiniz bölüm. Şu anda yalnızca RADIO ve SELECT seçim türü için geçerlidir ancak QuestionGroupItem içinde izin verilmez. go_to_section şunlardan yalnızca biri olabilir:
goToAction

enum (GoToAction)

Bölüm gezinme türü.

goToSectionId

string

Gidilecek bölüm başlığının öğe kimliği.

GoToAction

Bölüm bazında gezinme için sabitler.

Sıralamalar
GO_TO_ACTION_UNSPECIFIED Varsayılan değer. Kullanılmamış.
NEXT_SECTION Sonraki bölüme gidin.
RESTART_FORM Formun başına geri dönün.
SUBMIT_FORM Formu hemen gönderin.

Resim

Bir resmi temsil eden veriler.

JSON gösterimi
{
  "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.
}
Alanlar
contentUri

string

Yalnızca çıkış. Resmi indirebileceğiniz bir URI. Bu yalnızca sınırlı bir süre için geçerlidir.

altText

string

Resmin üzerine gelindiğinde gösterilen ve ekran okuyucular tarafından okunan bir açıklaması.

properties

object (MediaProperties)

Bir resmin özellikleri.

image_source alanı. Resim kaynağının türü. Yeni resimler oluşturulurken tam olarak bir resim kaynağı alanı ayarlanmalıdır. image_source şunlardan yalnızca biri olabilir:
sourceUri

string

Yalnızca giriş. Kaynak URI, resmi eklemek için kullanılan URI'dır. Kaynak URI getirildiğinde boş olabilir.

MediaProperties

Medyanın özellikleri.

JSON gösterimi
{
  "alignment": enum (Alignment),
  "width": integer
}
Alanlar
alignment

enum (Alignment)

Medyanın konumu.

width

integer

Medyanın piksel cinsinden genişliği. Medya görüntülenirken bu değerden küçüğe veya görüntülenen formun genişliğine ölçeklendirilir. Medyanın orijinal en boy oranı korunur. Forma medya eklendiğinde genişlik belirtilmezse medya kaynağının genişliğine ayarlanır. Genişlik 0 ile 740 arasında (0 ve 740 dahil) olmalıdır. Genişliğin 0 veya belirtilmedi değerine ayarlanmasına yalnızca medya kaynağı güncellenirken izin verilir.

Uyum

Sayfada hizalama.

Sıralamalar
ALIGNMENT_UNSPECIFIED Varsayılan değer. Kullanılmamış.
LEFT Sola hizala.
RIGHT Sağa hizala.
CENTER Orta.

TextQuestion

Metin tabanlı bir soru.

JSON gösterimi
{
  "paragraph": boolean
}
Alanlar
paragraph

boolean

Sorunun paragraf sorusu olup olmadığı. Cevabınız hayırsa soru kısa metinli bir sorudur.

ScaleQuestion

Ölçeklendirme sorusu. Kullanıcının seçebileceği bir sayısal değer aralığı vardır.

JSON gösterimi
{
  "low": integer,
  "high": integer,
  "lowLabel": string,
  "highLabel": string
}
Alanlar
low

integer

Zorunlu. Ölçekte olabilecek en düşük değerdir.

high

integer

Zorunlu. Ölçek için mümkün olan en yüksek değer.

lowLabel

string

Ölçeğin en düşük noktasını açıklayan, görüntülenecek etiket.

highLabel

string

Ölçeğin en yüksek noktasını açıklayan, gösterilecek etiket.

DateQuestion

Tarih sorusu. Tarih soruları varsayılan olarak yalnızca ay + gün şeklinde ayarlanır.

JSON gösterimi
{
  "includeTime": boolean,
  "includeYear": boolean
}
Alanlar
includeTime

boolean

Sorunun bir parçası olarak saatin eklenip eklenmeyeceğini belirtir.

includeYear

boolean

Yılın, sorunun bir parçası olarak eklenip eklenmeyeceğini belirtir.

TimeQuestion

Zaman sorusu.

JSON gösterimi
{
  "duration": boolean
}
Alanlar
duration

boolean

Soru geçen bir zamanla ilgiliyse true. Aksi takdirde, günün bir saati yaklaşık olur.

FileUploadQuestion

Dosya yükleme sorusu. API şu anda dosya yükleme soruları oluşturmayı desteklememektedir.

JSON gösterimi
{
  "folderId": string,
  "types": [
    enum (FileType)
  ],
  "maxFiles": integer,
  "maxFileSize": string
}
Alanlar
folderId

string

Zorunlu. Yüklenen dosyaların depolandığı Drive klasörünün kimliği.

types[]

enum (FileType)

Bu soru tarafından kabul edilen dosya türleri.

maxFiles

integer

Bu soru için tek bir yanıtta yüklenebilecek maksimum dosya sayısı.

maxFileSize

string (int64 format)

Bu soruya yüklenen herhangi bir tek dosya için izin verilen maksimum bayt sayısı.

FileType

Dosya yükleme sorusuna yüklenebilecek dosya türleri.

Sıralamalar
FILE_TYPE_UNSPECIFIED Varsayılan değer. Kullanılmamış.
ANY Türle ilgili kısıtlama yok.
DOCUMENT Google Dokümanlar dokümanı.
PRESENTATION Google Slaytlar sunusu.
SPREADSHEET Google E-Tablolar e-tablosu
DRAWING Çizim.
PDF PDF.
IMAGE Bir resim.
VIDEO Video.
AUDIO Ses dosyası.

RowQuestion

Bir soru grubunun parçası olan bir sorunun yapılandırması.

JSON gösterimi
{
  "title": string
}
Alanlar
title

string

Zorunlu. QuestionGroupItem içindeki tek satırın başlığı.

Not verme

Tek bir soruya not verme

JSON gösterimi
{
  "pointValue": integer,
  "correctAnswers": {
    object (CorrectAnswers)
  },
  "whenRight": {
    object (Feedback)
  },
  "whenWrong": {
    object (Feedback)
  },
  "generalFeedback": {
    object (Feedback)
  }
}
Alanlar
pointValue

integer

Zorunlu. Bir katılımcının doğru yanıt için otomatik olarak alabileceği maksimum puan. Bu negatif olmamalıdır.

correctAnswers

object (CorrectAnswers)

Zorunlu. Sorunun cevap anahtarı. Yanıtlar bu alana göre otomatik olarak notlandırılır.

whenRight

object (Feedback)

Doğru yanıtlar için gösterilen geri bildirim. Bu geri bildirim yalnızca doğru yanıtı sağlanmış çoktan seçmeli sorular için ayarlanabilir.

whenWrong

object (Feedback)

Yanlış yanıtlar için gösterilen geri bildirim. Bu geri bildirim yalnızca doğru yanıtı sağlanmış çoktan seçmeli sorular için ayarlanabilir.

generalFeedback

object (Feedback)

Tüm yanıtlar için gösterilen geri bildirim. Bu, genellikle bir test sahibi, yanıtı resmi olarak notlandırmadan önce soruyu doğru yanıtlayıp yanıtlamadıkları konusunda hızlı bir şekilde bir fikir vermek istediğinde, kısa cevaplı sorular için kullanılır. Otomatik olarak not verilen çoktan seçmeli sorular için genel geri bildirim ayarlanamaz.

CorrectAnswers

Bir sorunun cevap anahtarı.

JSON gösterimi
{
  "answers": [
    {
      object (CorrectAnswer)
    }
  ]
}
Alanlar
answers[]

object (CorrectAnswer)

Doğru yanıtların listesi. Test yanıtları, bu yanıtlara göre otomatik olarak notlandırılabilir. Tek değerli sorularda, bu listedeki herhangi bir değerle eşleşen yanıtlar doğru olarak işaretlenir (başka bir deyişle, birden fazla doğru yanıt mümkündür). Birden çok değerli (CHECKBOX) sorular söz konusu olduğunda, bir yanıt tam olarak bu listedeki değerleri içeriyorsa doğru olarak işaretlenir.

CorrectAnswer

Bir soru için tek bir doğru yanıt. Birden çok değerli (CHECKBOX) sorularda tek bir doğru yanıt seçeneğini temsil etmesi için birkaç CorrectAnswer gerekli olabilir.

JSON gösterimi
{
  "value": string
}
Alanlar
value

string

Zorunlu. Doğru yanıt değeri. Çeşitli değer türlerinin nasıl biçimlendirildiği hakkında ayrıntılı bilgi için TextAnswer.value belgelerine bakın.

QuestionGroupItem

Bir arada gruplandırılmış birden çok sorudan oluşan bir soru tanımlar.

JSON gösterimi
{
  "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.
}
Alanlar
questions[]

object (Question)

Zorunlu. Bu soru grubuna ait soruların listesi. Bir soru yalnızca bir gruba ait olmalıdır. Grubun kind maddesi, ne tür sorulara izin verildiğini etkileyebilir.

image

object (Image)

Soru grubunda, belirli soruların üst kısmında gösterilen resim.

kind alanı. Zorunlu. Hangi soru türlerine izin verileceğini ve bu soruların nasıl gösterileceğini belirleyen soru grubu türü. kind şunlardan yalnızca biri olabilir:
grid

object (Grid)

Soru grubu, aynı seçeneklerin paylaşıldığı çoktan seçmeli soruların yer aldığı bir ızgaradır. grid ayarlandığında gruptaki tüm sorular row türünde olmalıdır.

Tablo

Her satırın ayrı bir soruyu oluşturduğu bir seçenekler tablosu (radyo veya onay kutuları). Her satırda, sütun olarak gösterilen aynı seçenekler bulunur.

JSON gösterimi
{
  "columns": {
    object (ChoiceQuestion)
  },
  "shuffleQuestions": boolean
}
Alanlar
columns

object (ChoiceQuestion)

Zorunlu. Tablodaki her bir soru tarafından paylaşılan seçenekler. Başka bir deyişle, sütunların değerleri. Yalnızca CHECK_BOX ve RADIO seçimlerine izin verilir.

shuffleQuestions

boolean

true ise sorular rastgele sıralanır. Diğer bir deyişle, satırlar her katılımcı için farklı sırada görünür.

PageBreakItem

Sayfa sonu. Bu öğenin başlığı ve açıklaması yeni sayfanın üst kısmında gösterilir.

TextItem

Metin öğesi.

ImageItem

Resim içeren öğe.

JSON gösterimi
{
  "image": {
    object (Image)
  }
}
Alanlar
image

object (Image)

Zorunlu. Öğede gösterilen resim.

VideoItem

Video içeren bir öğe.

JSON gösterimi
{
  "video": {
    object (Video)
  },
  "caption": string
}
Alanlar
video

object (Video)

Zorunlu. Öğede gösterilen video.

caption

string

Videonun altında görüntülenen metin.

Video

Bir videoyu temsil eden veriler.

JSON gösterimi
{
  "youtubeUri": string,
  "properties": {
    object (MediaProperties)
  }
}
Alanlar
youtubeUri

string

Zorunlu. YouTube URI'si.

properties

object (MediaProperties)

Videonun özellikleri.

Yöntemler

batchUpdate

Formu birden fazla güncellemeyle değiştirin.

create

İstekte sağlanan form mesajında verilen başlığı kullanarak yeni bir form oluşturun.

get

Form alın.