REST Resource: forms

Zasób: formularz

Dokument z Formularzy Google. Formularz jest tworzony na Dysku. Aby usunąć formularz lub zmienić jego zabezpieczenia przed dostępem, użyj interfejsu Drive API.

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

string

Tylko dane wyjściowe. Identyfikator formularza.

info

object (Info)

Wymagane. Tytuł i opis formularza.

settings

object (FormSettings)

Ustawienia formularza. Musisz zaktualizować ten atrybut za pomocą atrybutu UpdateSettingsRequest; jest ignorowany podczas: forms.create i UpdateFormInfoRequest.

items[]

object (Item)

Wymagane. Lista elementów formularza, która może obejmować nagłówki sekcji, pytania, umieszczone multimedia itp.

revisionId

string

Tylko dane wyjściowe. Identyfikator wersji formularza. Używana w elemencie WriteControl w żądaniach aktualizacji do identyfikowania wersji, na której są oparte zmiany.

Format identyfikatora wersji może się z czasem zmieniać, dlatego identyfikator powinien być nieprzezroczysty. Gwarantujemy, że zwrócony identyfikator wersji będzie ważny tylko przez 24 godziny po zwróceniu i nie będzie można go udostępniać użytkownikom. Jeśli identyfikator wersji nie zmienia się między wywołaniami, formularz się nie zmienił. Natomiast zmiana identyfikatora (dla tego samego formularza i użytkownika) oznacza zazwyczaj, że formularz został zaktualizowany. ale z powodu czynników wewnętrznych, takich jak zmiana formatu identyfikatora.

responderUri

string

Tylko dane wyjściowe. Identyfikator URI formularza, który ma być udostępniany użytkownikom. Otworzy się strona, na której użytkownik może przesyłać odpowiedzi, ale nie może ich edytować.

linkedSheetId

string

Tylko dane wyjściowe. Identyfikator połączonego arkusza Google, który zbiera odpowiedzi z tego formularza (jeśli taki arkusz istnieje).

Informacje

Ogólne informacje o formularzu.

Zapis JSON
{
  "title": string,
  "documentTitle": string,
  "description": string
}
Pola
title

string

Wymagane. Tytuł formularza widoczny dla użytkowników.

documentTitle

string

Tylko dane wyjściowe. Tytuł dokumentu widoczny na Dysku. Jeśli pole Info.title jest puste, zamiast tekstu w interfejsie Formularzy Google może pojawić się właściwość documentTitle. Będzie ona widoczna dla użytkowników. Pole documentTitle można ustawić podczas tworzenia, ale nie można go zmodyfikować za pomocą żądania wsadowego. Aby automatycznie zaktualizować documentTitle, użyj interfejsu Google Drive API.

description

string

Opis formularza.

FormSettings

Ustawienia formularza.

Zapis JSON
{
  "quizSettings": {
    object (QuizSettings)
  }
}
Pola
quizSettings

object (QuizSettings)

Ustawienia związane z formularzami testów i ocenianiem.

QuizSettings

Ustawienia związane z formularzami testów i ocenianiem. Należy je zaktualizować za pomocą obiektu UpdateSettingsRequest.

Zapis JSON
{
  "isQuiz": boolean
}
Pola
isQuiz

boolean

Określa, czy ten formularz jest quizem. Jeśli ustawisz wartość prawda, odpowiedzi będą oceniane na podstawie pytania Grading. Jeśli zasada ma wartość Fałsz, wszystkie pytania Grading są usuwane.

Element

Pojedynczy element formularza. kind określa rodzaj produktu.

Zapis 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.
}
Pola
itemId

string

Identyfikator produktu.

Identyfikator można podać podczas tworzenia, ale nie może on być już użyty w formularzu. Jeśli nie zostanie podany, zostanie przypisany nowy identyfikator.

title

string

Tytuł produktu.

description

string

Opis produktu.

Pole sumy kind. Wymagane. Rodzaj danego elementu. kind może mieć tylko jedną z tych wartości:
questionItem

object (QuestionItem)

Zadawanie użytkownikowi pytania

questionGroupItem

object (QuestionGroupItem)

Zadaje użytkownikowi co najmniej 1 pytanie przy użyciu jednego głównego promptu.

pageBreakItem

object (PageBreakItem)

Rozpoczyna nową stronę pod tytułem.

textItem

object (TextItem)

Wyświetla tytuł i opis na stronie.

imageItem

object (ImageItem)

Wyświetla obraz na stronie.

videoItem

object (VideoItem)

Wyświetla film na stronie.

QuestionItem

Element formularza zawierający jedno pytanie.

Zapis JSON
{
  "question": {
    object (Question)
  },
  "image": {
    object (Image)
  }
}
Pola
question

object (Question)

Wymagane. Wyświetlane pytanie.

image

object (Image)

Obraz wyświetlany w pytaniu.

Pytanie

Jakieś pytania. Konkretny typ pytania to kind.

Zapis 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.
}
Pola
questionId

string

Tylko do odczytu. Identyfikator pytania.

Identyfikator można podać podczas tworzenia, ale nie może on być już użyty w formularzu. Jeśli nie zostanie podany, zostanie przypisany nowy identyfikator.

required

boolean

Określa, czy użytkownik musi udzielić odpowiedzi na pytanie, aby użytkownik mógł przesłać odpowiedź.

grading

object (Grading)

Konfiguracja oceniania dla tego pytania.

Pole sumy kind. Wymagane. Rodzaj pytania zadanego respondentowi. kind może mieć tylko jedną z tych wartości:
choiceQuestion

object (ChoiceQuestion)

Użytkownik może wybierać ze wstępnie zdefiniowanych opcji.

textQuestion

object (TextQuestion)

Użytkownik może wpisać odpowiedź tekstową.

scaleQuestion

object (ScaleQuestion)

Użytkownik może wybrać liczbę z zakresu.

dateQuestion

object (DateQuestion)

Użytkownik może podać datę.

timeQuestion

object (TimeQuestion)

Użytkownik może podać godzinę.

fileUploadQuestion

object (FileUploadQuestion)

Użytkownik może przesłać jeden lub więcej plików.

rowQuestion

object (RowQuestion)

Wiersz elementu QuestionGroupItem.

ChoiceQuestion

Pytanie radiowe/pytanie w polu wyboru lub menu.

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

enum (ChoiceType)

Wymagane. Typ pytania jednokrotnego wyboru.

options[]

object (Option)

Wymagane. Lista opcji, które użytkownik musi wybrać.

shuffle

boolean

Określa, czy opcje mają być wyświetlane w losowej kolejności w różnych przypadkach testu. Często używa się go, aby zapobiegać oszustwom przez respondentów, którzy patrzą na ekran innego respondenta, lub rozwiązywać problemy z uprzedzeniami w ankiecie, które mogą wynikać z umieszczania zawsze tych samych opcji na początku lub na końcu.

ChoiceType

Typ wyboru.

Wartości w polu enum
CHOICE_TYPE_UNSPECIFIED Wartość domyślna. Nieużywane.
RADIO Przyciski opcji: użytkownik widzi wszystkie opcje i może wybrać tylko jedną z nich.
CHECKBOX Pola wyboru: użytkownik widzi wszystkie opcje i może wybrać dowolną ich liczbę.
DROP_DOWN Menu: opcje są widoczne tylko dla użytkownika na żądanie. W przeciwnym razie widoczny jest tylko bieżący wybór. Możesz wybrać tylko jedną opcję.

Opcja

Odpowiedź na pytanie wyboru.

Zapis 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.
}
Pola
value

string

Wymagane. Wybór przedstawiony użytkownikowi.

image

object (Image)

Wyświetl obraz jako opcję.

isOther

boolean

Określa, czy opcja ma wartość „Inne”. Obecnie dotyczy to tylko typów wyboru RADIO i CHECKBOX, ale nie jest to dozwolone w QuestionGroupItem.

Pole sumy go_to_section. Sekcja, do której należy przejść po wybraniu tej opcji. Obecnie dotyczy to tylko typu wyboru RADIO i SELECT, ale nie jest to dozwolone w QuestionGroupItem. go_to_section może mieć tylko jedną z tych wartości:
goToAction

enum (GoToAction)

Typ nawigacji po sekcji.

goToSectionId

string

Identyfikator elementu nagłówka sekcji, do której należy przejść.

GoToAction

Stałe związane z nawigacją po sekcji.

Wartości w polu enum
GO_TO_ACTION_UNSPECIFIED Wartość domyślna. Nieużywane.
NEXT_SECTION Przejdź do następnej sekcji.
RESTART_FORM Wróć na początek formularza.
SUBMIT_FORM Natychmiast prześlij formularz.

Obraz

Dane reprezentujące obraz.

Zapis 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.
}
Pola
contentUri

string

Tylko dane wyjściowe. identyfikator URI, z którego można pobrać obraz; informacje są ważne tylko przez ograniczony czas.

altText

string

Opis obrazu wyświetlany po najechaniu kursorem i odczytywany przez czytniki ekranu.

properties

object (MediaProperties)

Właściwości obrazu.

Pole sumy image_source. Rodzaj źródła obrazu. Podczas tworzenia nowych obrazów musisz ustawić dokładnie 1 pole źródłowe obrazu. image_source może mieć tylko jedną z tych wartości:
sourceUri

string

Tylko dane wejściowe. Identyfikator URI źródła to identyfikator URI służący do wstawiania obrazu. Źródłowy identyfikator URI może być pusty po pobraniu.

MediaProperties

Właściwości multimediów.

Zapis JSON
{
  "alignment": enum (Alignment),
  "width": integer
}
Pola
alignment

enum (Alignment)

Pozycja multimediów.

width

integer

Szerokość multimediów w pikselach. Gdy multimedia są wyświetlane, są skalowane do mniejszej z tych wartości lub szerokości wyświetlanego formularza. Oryginalny format obrazu jest zachowywany. Jeśli szerokość nie zostanie określona przy dodawaniu multimediów do formularza, zostanie ona ustawiona na szerokość źródła multimediów. Szerokość musi mieścić się w zakresie od 0 do 740 włącznie. Ustawienie szerokości na 0 lub nieokreślenia wartości jest dozwolone tylko podczas aktualizowania źródła multimediów.

Wyrównanie

Wyrównanie na stronie.

Wartości w polu enum
ALIGNMENT_UNSPECIFIED Wartość domyślna. Nieużywane.
LEFT Wyrównaj do lewej.
RIGHT Wyrównaj do prawej.
CENTER Na środku.

TextQuestion

Pytanie tekstowe.

Zapis JSON
{
  "paragraph": boolean
}
Pola
paragraph

boolean

Określa, czy pytanie jest akapitem czy nie. W przeciwnym razie pytanie ma postać krótkiego tekstu.

ScaleQuestion

Pytanie na skalę. Do wyboru jest szereg wartości liczbowych.

Zapis JSON
{
  "low": integer,
  "high": integer,
  "lowLabel": string,
  "highLabel": string
}
Pola
low

integer

Wymagane. Najniższa możliwa wartość dla skali.

high

integer

Wymagane. Najwyższa możliwa wartość na skali.

lowLabel

string

Wyświetlana etykieta opisująca najniższy punkt na skali.

highLabel

string

Wyświetlana etykieta opisująca najwyższy punkt na skali.

DateQuestion

Pytanie dotyczące daty. Pytania dotyczące daty są domyślnie ustawione tylko na miesiąc i dzień.

Zapis JSON
{
  "includeTime": boolean,
  "includeYear": boolean
}
Pola
includeTime

boolean

Określa, czy w pytaniu należy podać godzinę.

includeYear

boolean

Określa, czy w pytaniu należy podać rok.

TimeQuestion

Pytanie dotyczące czasu.

Zapis JSON
{
  "duration": boolean
}
Pola
duration

boolean

true, jeśli pytanie dotyczy czasu, który upłynął. W przeciwnym razie chodzi o porę dnia.

FileUploadQuestion

Pytanie z przesyłaniem pliku. Interfejs API nie obsługuje obecnie tworzenia pytań z możliwością przesyłania plików.

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

string

Wymagane. Identyfikator folderu na Dysku, w którym są przechowywane przesłane pliki.

types[]

enum (FileType)

Typy plików akceptowane w tym pytaniu.

maxFiles

integer

Maksymalna liczba plików, które można przesłać w przypadku tego pytania w ramach jednej odpowiedzi.

maxFileSize

string (int64 format)

Maksymalna dozwolona liczba bajtów dla jednego pliku przesłanego w ramach tego pytania.

FileType

Typy plików, które można przesłać w pytaniu dotyczącym przesyłania plików.

Wartości w polu enum
FILE_TYPE_UNSPECIFIED Wartość domyślna. Nieużywane.
ANY Brak ograniczeń dotyczących typu.
DOCUMENT Dokument w Dokumentach Google.
PRESENTATION Prezentacja Google.
SPREADSHEET Arkusz kalkulacyjny Arkuszy Google.
DRAWING Rysunek.
PDF Plik PDF.
IMAGE Obraz.
VIDEO Film.
AUDIO Plik audio.

RowQuestion

Konfiguracja pytania, które należy do grupy pytań.

Zapis JSON
{
  "title": string
}
Pola
title

string

Wymagane. Tytuł pojedynczego wiersza w kolumnie QuestionGroupItem.

Ocenianie

Ocena pojedynczego pytania

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

integer

Wymagane. Maksymalna liczba punktów, które użytkownik może automatycznie zdobyć za prawidłową odpowiedź. Wartość nie może być liczbą ujemną.

correctAnswers

object (CorrectAnswers)

Wymagane. Klucz odpowiedzi na pytanie. Odpowiedzi są oceniane automatycznie na podstawie tego pola.

whenRight

object (Feedback)

Komentarz wyświetlany dla poprawnych odpowiedzi. Tę opinię można ustawić tylko dla pytania jednokrotnego wyboru, na które podano poprawne odpowiedzi.

whenWrong

object (Feedback)

Opinia wyświetlana przy nieprawidłowych odpowiedziach. Tę opinię można ustawić tylko dla pytania jednokrotnego wyboru, na które podano poprawne odpowiedzi.

generalFeedback

object (Feedback)

Komentarz wyświetlany przy wszystkich odpowiedziach. Jest to często stosowane w przypadku pytań z krótkimi odpowiedziami, gdy właściciel testu chce szybko dać użytkownikom poczucie, że odpowiedź jest poprawna, zanim jeszcze oficjalnie ocenili odpowiedź. Nie można ustawić opinii ogólnej w przypadku automatycznie ocenianych pytań jednokrotnego wyboru.

CorrectAnswers

Klucz odpowiedzi na pytanie.

Zapis JSON
{
  "answers": [
    {
      object (CorrectAnswer)
    }
  ]
}
Pola
answers[]

object (CorrectAnswer)

Lista prawidłowych odpowiedzi. Odpowiedzi w quizie mogą być oceniane automatycznie na podstawie tych odpowiedzi. W przypadku pytań jednowartościowych odpowiedź jest oznaczana jako prawidłowa, jeśli pasuje do dowolnej wartości z tej listy (inaczej mówiąc, możliwe jest kilka poprawnych odpowiedzi). W przypadku pytań z wieloma wartościami (CHECKBOX) odpowiedź jest oznaczana jako prawidłowa, jeśli zawiera dokładnie wartości z tej listy.

CorrectAnswer

Jedna prawidłowa odpowiedź na pytanie. W przypadku pytań z wieloma wartościami (CHECKBOX) do reprezentowania jednej poprawnej odpowiedzi może być potrzebne kilka znaczników CorrectAnswer.

Zapis JSON
{
  "value": string
}
Pola
value

string

Wymagane. Wartość prawidłowej odpowiedzi. Szczegółowe informacje o formatowaniu różnych typów wartości znajdziesz w dokumentacji usługi TextAnswer.value.

QuestionGroupItem

Definiuje pytanie składające się z wielu zgrupowanych pytań.

Zapis 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.
}
Pola
questions[]

object (Question)

Wymagane. Lista pytań należących do tej grupy pytań. Pytanie może należeć tylko do jednej grupy. kind grupy może mieć wpływ na to, jakie typy pytań są dozwolone.

image

object (Image)

Obraz wyświetlany w grupie pytań nad konkretnymi pytaniami.

Pole sumy kind. Wymagane. Typ grupy pytań określający dozwolone typy pytań i sposób ich wyświetlania. kind może mieć tylko jedną z tych wartości:
grid

object (Grid)

Grupa pytań to siatka z wierszami pytań jednokrotnego wyboru, które mają te same opcje. Jeśli zasada grid jest ustawiona, wszystkie pytania w grupie muszą mieć rodzaj row.

Siatka

Siatka opcji (radio lub pola wyboru), z których każdy wiersz stanowi osobne pytanie. Każdy wiersz zawiera te same opcje, które są wyświetlane jako kolumny.

Zapis JSON
{
  "columns": {
    object (ChoiceQuestion)
  },
  "shuffleQuestions": boolean
}
Pola
columns

object (ChoiceQuestion)

Wymagane. Odpowiedzi na każde pytanie w siatce. Inaczej mówiąc, wartości w kolumnach. Dozwolone są tylko opcje CHECK_BOX i RADIO.

shuffleQuestions

boolean

Jeśli parametr ma wartość true, pytania są uporządkowane losowo. Oznacza to, że wiersze są wyświetlane w innej kolejności dla każdego respondenta.

PageBreakItem

Podział strony. Tytuł i opis tego elementu są wyświetlane u góry nowej strony.

TextItem

Element tekstowy.

ImageItem

Element zawierający obraz.

Zapis JSON
{
  "image": {
    object (Image)
  }
}
Pola
image

object (Image)

Wymagane. Obraz wyświetlany w produkcie.

VideoItem

Element zawierający film.

Zapis JSON
{
  "video": {
    object (Video)
  },
  "caption": string
}
Pola
video

object (Video)

Wymagane. Film wyświetlany w elemencie.

caption

string

Tekst wyświetlany pod filmem.

Wideo

Dane reprezentujące film.

Zapis JSON
{
  "youtubeUri": string,
  "properties": {
    object (MediaProperties)
  }
}
Pola
youtubeUri

string

Wymagane. Identyfikator URI YouTube.

properties

object (MediaProperties)

Właściwości filmu.

Metody

batchUpdate

Wprowadź w formularzu serię aktualizacji.

create

Utwórz nowy formularz, używając tytułu podanego w wiadomości formularza w prośbie.

get

Pobierz formularz.