REST Resource: forms

Zasób: formularz

dokument w Formularzach Google, Formularz jest tworzony na Dysku, a jego usuwanie lub zmiana ustawień ochrony dostępu odbywa się za pomocą 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 parametr za pomocą wartości UpdateSettingsRequest; jest on ignorowany podczas forms.createUpdateFormInfoRequest.

items[]

object (Item)

Wymagane. Lista elementów formularza, która może zawierać nagłówki sekcji, pytania, osadzone treści multimedialne itp.

revisionId

string

Tylko dane wyjściowe. Identyfikator wersji formularza. Używany w prośbach o aktualizację w polu WriteControl do identyfikowania wersji, na której bazują zmiany.

Format identyfikatora wersji może się z czasem zmieniać, dlatego należy traktować go jako nieprzezroczysty. Zwrócony identyfikator wersji jest gwarantowany tylko przez 24 godziny od momentu jego zwrotu i nie może być udostępniany innym użytkownikom. Jeśli identyfikator poprawki nie zmienia się między wywołaniami, oznacza to, że formularz się nie zmienił. Zmiana identyfikatora (w przypadku tego samego formularza i użytkownika) zwykle oznacza, że formularz został zaktualizowany. Zmiana identyfikatora może być też spowodowana czynnikami wewnętrznymi, takimi jak zmiany formatu identyfikatora.

responderUri

string

Tylko dane wyjściowe. Identyfikator URI formularza do udostępnienia użytkownikom. Spowoduje to otwarcie strony, na której użytkownik może przesłać odpowiedzi, ale nie może edytować pytań.

linkedSheetId

string

Tylko dane wyjściowe. Identyfikator powiązanego arkusza Google, w którym gromadzone są 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 odpowiadających.

documentTitle

string

Tylko dane wyjściowe. Tytuł dokumentu widocznego na Dysku. Jeśli pole Info.title jest puste, w interfejsie Formularzy Google może pojawić się pole documentTitle, które będzie widoczne dla osób wypełniających formularz. Wartość documentTitle można ustawić podczas tworzenia, ale nie można jej zmienić za pomocą żądania batchUpdate. Jeśli chcesz zaktualizować documentTitle za pomocą kodu, 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ą UpdateSettingsRequest.

Zapis JSON
{
  "isQuiz": boolean
}
Pola
isQuiz

boolean

Czy formularz jest testem. Jeśli jest ustawiona na wartość Prawda, odpowiedzi są oceniane na podstawie pytania Grading. Gdy ustawisz wartość na Fałsz, wszystkie pytania Grading zostaną usunięte.

Element

Pojedynczy element formularza. kind określa, jakiego rodzaju jest to element.

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.

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

title

string

Nazwa produktu.

description

string

Opis elementu.

Pole unii kind. Wymagane. Rodzaj produktu. kind może być tylko jednym z tych obiektów:
questionItem

object (QuestionItem)

Użytkownik zostaje poproszony o odpowiedź na pytanie.

questionGroupItem

object (QuestionGroupItem)

Zadaje użytkownikowi co najmniej 1 pytanie za pomocą jednego prompta głównego.

pageBreakItem

object (PageBreakItem)

rozpoczyna nową stronę z 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świetlone pytanie.

image

object (Image)

Obraz wyświetlany w pytaniu.

Pytanie

Masz pytania? Konkretny typ pytania można rozpoznać po 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)
  },
  "ratingQuestion": {
    object (RatingQuestion)
  }
  // End of list of possible types for union field kind.
}
Pola
questionId

string

Tylko do odczytu. Identyfikator pytania.

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

required

boolean

Czy pytanie musi zostać wypełnione, aby respondent mógł przesłać odpowiedź.

grading

object (Grading)

Konfiguracja oceniania pytania.

Pole unii kind. Wymagane. Typ pytania zadanego respondentowi. kind może być tylko jednym z tych elementów:
choiceQuestion

object (ChoiceQuestion)

Użytkownik może wybrać jedną z wstępnie zdefiniowanych opcji.

textQuestion

object (TextQuestion)

Użytkownik może wpisać odpowiedź w formie dowolnego tekstu.

scaleQuestion

object (ScaleQuestion)

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

dateQuestion

object (DateQuestion)

Respondent can enter a date.

timeQuestion

object (TimeQuestion)

Użytkownik może podać godzinę.

fileUploadQuestion

object (FileUploadQuestion)

Respondent może przesłać co najmniej 1 plik.

rowQuestion

object (RowQuestion)

Wiersz w tabeli QuestionGroupItem.

ratingQuestion

object (RatingQuestion)

Respondent może wybrać ocenę z wstępnie zdefiniowanego zestawu ikon.

ChoiceQuestion

pytanie z opcjami wyboru w formie przycisków, pól wyboru lub menu.

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

enum (ChoiceType)

Wymagane. Typ pytania z wyborem.

options[]

object (Option)

Wymagane. Lista opcji, spośród których respondent musi wybrać jedną.

shuffle

boolean

Określa, czy opcje mają być wyświetlane w losowej kolejności w różnych przypadkach testu. Jest to często wykorzystywane, aby zapobiec oszustwom ze strony respondentów, którzy mogliby podglądać ekran innego uczestnika ankiety, lub aby wyeliminować stronniczość w ankiecie, która może wystąpić, gdy te same opcje są zawsze podawane jako pierwsze lub ostatnie.

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ą wyświetlane użytkownikowi tylko na żądanie, w przeciwnym razie widoczna jest tylko bieżąca opcja. Możesz wybrać tylko jedną opcję.

Opcja

Opcja w pytaniu z wyborem.

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świetlanie obrazu jako opcji.

isOther

boolean

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

Pole unii go_to_section. Sekcja, do której przejdziesz, jeśli wybierzesz tę opcję. Obecnie dotyczy to tylko typów wyboru RADIOSELECT, ale nie jest dozwolone w przypadku wyboru QuestionGroupItem. go_to_section może być tylko jednym z tych elementów:
goToAction

enum (GoToAction)

Typ nawigacji w sekcji.

goToSectionId

string

Identyfikator elementu w nagłówku sekcji, do którego chcesz przejść.

GoToAction

Stałe wartości dotyczące nawigacji 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 Wyślij formularz od razu.

Obraz

Dane przedstawiają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. Jest on ważny tylko przez ograniczony czas.

altText

string

Opis obrazu, który jest wyświetlany po najechaniu kursorem i odczytywany przez czytniki ekranu.

properties

object (MediaProperties)

Właściwości obrazu.

Pole unii image_source. Rodzaj źródła obrazu. Podczas tworzenia nowych obrazów musisz ustawić dokładnie 1 pole źródła obrazu. image_source może być tylko jednym z tych elementów:
sourceUri

string

Tylko dane wejściowe. Identyfikator URI źródła to identyfikator URI użyty do wstawienia obrazu. Identyfikator URI źródła może być pusty podczas pobierania.

MediaProperties

Właściwości multimediów.

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

enum (Alignment)

Pozycja mediów.

width

integer

Szerokość multimediów w pikselach. Gdy multimedium jest wyświetlane, jest ono skalowane do mniejszej wartości lub szerokości wyświetlanego formularza. Oryginalny współczynnik proporcji multimediów jest zachowany. Jeśli podczas dodawania multimediów do formularza nie podasz szerokości, 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śloną 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ównanie do lewej.
RIGHT Wyrównanie do prawej.
CENTER Na środku.

TextQuestion

Pytanie tekstowe.

Zapis JSON
{
  "paragraph": boolean
}
Pola
paragraph

boolean

Czy pytanie jest pytaniem w akapitie. W przeciwnym razie pytanie będzie krótkim tekstem.

ScaleQuestion

Pytanie z wyborem spośród podanych opcji. Użytkownik ma do wyboru zakres wartości liczbowych.

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

integer

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

high

integer

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

lowLabel

string

Etykieta wyświetlana w opisie najniższego punktu na skali.

highLabel

string

Etykieta wyświetlana jako najwyższy punkt na skali.

DateQuestion

Pytanie dotyczące daty. Domyślnie pytania dotyczące daty dotyczą tylko miesiąca i dnia.

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

boolean

Czy uwzględnić godzinę w pytaniu.

includeYear

boolean

Określa, czy w pytaniu ma być uwzględniony rok.

TimeQuestion

Pytanie dotyczące czasu.

Zapis JSON
{
  "duration": boolean
}
Pola
duration

boolean

true, jeśli pytanie dotyczy upływu czasu. W przeciwnym razie chodzi o porę dnia.

FileUploadQuestion

pytanie z możliwością przesłania 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 Dysku, w którym są przechowywane przesłane pliki.

types[]

enum (FileType)

Typy plików akceptowane przez to pytanie.

maxFiles

integer

Maksymalna liczba plików, które można przesłać w ramach jednej odpowiedzi na to pytanie.

maxFileSize

string (int64 format)

Maksymalna liczba bajtów dozwolona dla pojedynczego pliku przesłanego do tego pytania.

FileType

Typy plików, które można przesłać w odpowiedzi na pytanie dotyczące 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 prezentację w Prezentacjach Google,
SPREADSHEET arkusz kalkulacyjny w Arkuszach 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 tabeli QuestionGroupItem.

RatingQuestion

Pytanie dotyczące oceny. Użytkownik ma do wyboru kilka ikon.

Zapis JSON
{
  "ratingScaleLevel": integer,
  "iconType": enum (RatingIconType)
}
Pola
ratingScaleLevel

integer

Wymagane. Poziom skali ocen pytania o ocenę.

iconType

enum (RatingIconType)

Wymagane. Typ ikony używany do oceny.

RatingIconType

Typ ikony używanej do oceny.

Wartości w polu enum
RATING_ICON_TYPE_UNSPECIFIED Wartość domyślna. Nieużywane.
STAR Ikona gwiazdki.
HEART Ikona serca
THUMB_UP Ikona kciuka w dół.

Ocenianie

Ocenianie 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, jaką respondent może automatycznie uzyskać za prawidłową odpowiedź. Nie może być ujemna.

correctAnswers

object (CorrectAnswers)

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

whenRight

object (Feedback)

Informacje wyświetlane w przypadku prawidłowych odpowiedzi. Ta opinia może być ustawiona tylko w przypadku pytań wielokrotnego wyboru, które mają podane prawidłowe odpowiedzi.

whenWrong

object (Feedback)

Opinia wyświetlana w przypadku nieprawidłowych odpowiedzi. Ta opinia może być ustawiona tylko w przypadku pytań wielokrotnego wyboru, które mają podane prawidłowe odpowiedzi.

generalFeedback

object (Feedback)

Opinia wyświetlana przy wszystkich odpowiedziach. Jest to często używane w przypadku pytań z krótką odpowiedzią, gdy właściciel quizu chce szybko poinformować respondentów, czy ich odpowiedź na pytanie jest poprawna, zanim będzie można oficjalnie ocenić odpowiedź. W przypadku pytań jednokrotnego wyboru ocenianych automatycznie nie można ustawić ogólnej informacji zwrotnej.

CorrectAnswers

Klucz odpowiedzi do pytania.

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

object (CorrectAnswer)

lista poprawnych odpowiedzi; Odpowiedzi na quiz mogą być oceniane automatycznie na podstawie tych odpowiedzi. W przypadku pytań z jedną wartością odpowiedź jest uznawana za prawidłową, jeśli pasuje do dowolnej wartości na liście (czyli możliwe są liczne prawidłowe odpowiedzi). W przypadku pytań z wieloma wartościami (CHECKBOX) odpowiedź jest uznawana za prawidłową, jeśli zawiera dokładnie te wartości z listy.

CorrectAnswer

Pojedyncza prawidłowa odpowiedź na pytanie. W przypadku pytań z wielowartościowymi odpowiedziami (CHECKBOX) może być konieczne podanie kilku CorrectAnswer, aby reprezentowały jedną poprawną odpowiedź.

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 TextAnswer.value.

QuestionGroupItem

Definiuje pytanie, które składa się z kilku pytań zgrupowanych razem.

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 wpływać na to, jakie pytania są dozwolone.

image

object (Image)

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

Pole unii kind. Wymagane. Typ grupy pytań, który określa, jakie typy pytań są dozwolone i jak są wyświetlane. kind może być tylko jednym z tych elementów:
grid

object (Grid)

Grupa pytań to siatka z wierszami pytań jednokrotnego wyboru, które mają te same opcje. Gdy ustawisz wartość grid, wszystkie pytania w grupie muszą być typu row.

Siatka

Siatka opcji (opcji wyboru lub pól wyboru), w której każdy wiersz stanowi osobne pytanie. Każdy wiersz ma te same opcje, które są wyświetlane jako kolumny.

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

object (ChoiceQuestion)

Wymagane. opcje wspólne dla wszystkich pytań w siatce; Innymi słowy, wartości kolumn. Dozwolone są tylko opcje CHECK_BOX i RADIO.

shuffleQuestions

boolean

Jeśli true, pytania są uporządkowane losowo. Inaczej mówiąc, wiersze są wyświetlane w różnej kolejności dla każdego respondenta.

PageBreakItem

Ten typ nie ma pól.

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

TextItem

Ten typ nie ma pól.

Element tekstowy.

ImageItem

Element zawierający obraz.

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

object (Image)

Wymagane. Obraz wyświetlany w elemencie.

VideoItem

Element zawierający film.

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

object (Video)

Wymagane. Film wyświetlany w produkcie.

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

Zmień formularz za pomocą aktualizacji zbiorczej.

create

Utwórz nowy formularz, używając tytułu podanego w przesłanym komunikacie formularza.

get

Pobierz formularz.