Class Form

Форма

Форма, содержащая общие свойства и элементы. Свойства включают заголовок, настройки и место хранения ответов. Элементы включают элементы вопросов, такие как флажки или переключатели, а элементы макета относятся к таким вещам, как разрывы страниц. Доступ к формам можно получить или создать из FormApp .

// Open a form by ID and create a new spreadsheet.
const form = FormApp.openById('1234567890abcdefghijklmnopqrstuvwxyz');
const ss = SpreadsheetApp.create('Spreadsheet Name');

// Update form properties via chaining.
form.setTitle('Form Name')
    .setDescription('Description of form')
    .setConfirmationMessage('Thanks for responding!')
    .setAllowResponseEdits(true)
    .setAcceptingResponses(false);

// Update the form's response destination.
form.setDestination(FormApp.DestinationType.SPREADSHEET, ss.getId());

Методы

Метод Тип возврата Краткое описание
addCheckboxGridItem() CheckboxGridItem Добавляет новый элемент вопроса, представленный в виде сетки столбцов и строк, который позволяет респонденту выбирать несколько вариантов ответа в каждой строке из последовательности флажков.
addCheckboxItem() CheckboxItem Добавляет новый элемент вопроса, который позволяет респонденту выбрать один или несколько флажков, а также необязательное поле «Другое».
addDateItem() DateItem Добавляет новый элемент вопроса, который позволяет респонденту указать дату.
addDateTimeItem() DateTimeItem Добавляет новый элемент вопроса, который позволяет респонденту указать дату и время.
addDurationItem() DurationItem Добавляет новый элемент вопроса, который позволяет респонденту указать промежуток времени.
addEditor(emailAddress) Form Добавляет данного пользователя в список редакторов Form .
addEditor(user) Form Добавляет данного пользователя в список редакторов Form .
addEditors(emailAddresses) Form Добавляет заданный массив пользователей в список редакторов Form .
addGridItem() GridItem Добавляет новый элемент вопроса, представленный в виде сетки столбцов и строк, который позволяет респонденту выбрать один вариант ответа в каждой строке из последовательности переключателей.
addImageItem() ImageItem Добавляет новый элемент макета, отображающий изображение.
addListItem() ListItem Добавляет новый элемент вопроса, который позволяет респонденту выбрать один вариант из раскрывающегося списка.
addMultipleChoiceItem() MultipleChoiceItem Добавляет новый элемент вопроса, который позволяет респонденту выбрать один вариант из списка переключателей или необязательного поля «другое».
addPageBreakItem() PageBreakItem Добавляет новый элемент макета, который отмечает начало страницы.
addParagraphTextItem() ParagraphTextItem Добавляет новый элемент вопроса, который позволяет респонденту ввести блок текста.
addScaleItem() ScaleItem Добавляет новый элемент вопроса, который позволяет респонденту выбрать один вариант из пронумерованной последовательности переключателей.
addSectionHeaderItem() SectionHeaderItem Добавляет новый элемент макета, который визуально указывает начало раздела.
addTextItem() TextItem Добавляет новый элемент вопроса, который позволяет респонденту ввести одну строку текста.
addTimeItem() TimeItem Добавляет новый элемент вопроса, который позволяет респонденту указать время суток.
addVideoItem() VideoItem Добавляет новый элемент макета, отображающий видео.
canEditResponse() Boolean Определяет, отображает ли форма ссылку для редактирования ответа после его отправки.
collectsEmail() Boolean Определяет, собирает ли форма адреса электронной почты респондентов.
createResponse() FormResponse Создает новый ответ на форму.
deleteAllResponses() Form Удаляет все отправленные ответы из хранилища ответов формы.
deleteItem(index) void Удаляет элемент по заданному индексу среди всех элементов формы.
deleteItem(item) void Удаляет данный элемент.
deleteResponse(responseId) Form Удаляет один ответ из хранилища ответов формы.
getConfirmationMessage() String Получает сообщение подтверждения формы.
getCustomClosedFormMessage() String Получает настраиваемое сообщение, которое отображается, если форма не принимает ответы, или пустую строку, если настраиваемое сообщение не задано.
getDescription() String Получает описание формы.
getDestinationId() String Получает идентификатор места назначения ответа формы.
getDestinationType() DestinationType Получает тип назначения ответа формы.
getEditUrl() String Получает URL-адрес, который можно использовать для доступа к режиму редактирования формы.
getEditors() User[] Получает список редакторов для этой Form .
getId() String Получает идентификатор формы.
getItemById(id) Item Получает элемент с заданным идентификатором.
getItems() Item[] Получает массив всех элементов формы.
getItems(itemType) Item[] Получает массив всех элементов заданного типа.
getPublishedUrl() String Получает URL-адрес, который можно использовать для ответа на форму.
getResponse(responseId) FormResponse Получает один ответ формы на основе его идентификатора ответа.
getResponses() FormResponse[] Получает массив всех ответов формы.
getResponses(timestamp) FormResponse[] Получает массив всех ответов формы после заданной даты и времени.
getShuffleQuestions() Boolean Определяет, является ли порядок вопросов на каждой странице формы случайным.
getSummaryUrl() String Получает URL-адрес, который можно использовать для просмотра сводки ответов формы.
getTitle() String Получает заголовок формы.
hasLimitOneResponsePerUser() Boolean Определяет, допускает ли форма только один ответ для каждого респондента.
hasProgressBar() Boolean Определяет, отображает ли форма индикатор выполнения.
hasRespondAgainLink() Boolean Определяет, отображает ли форма ссылку для отправки другого ответа после того, как респондент заполнит форму.
isAcceptingResponses() Boolean Определяет, принимает ли форма в данный момент ответы.
isPublishingSummary() Boolean Определяет, отображает ли форма ссылку для просмотра сводки ответов после того, как респондент заполнит форму.
isQuiz() Boolean Определяет, является ли форма тестом.
moveItem(from, to) Item Перемещает элемент по заданному индексу среди всех элементов формы в другой заданный индекс.
moveItem(item, toIndex) Item Перемещает заданный элемент в заданный индекс среди всех элементов формы.
removeDestination() Form Отключает форму от текущего места назначения ответа.
removeEditor(emailAddress) Form Удаляет данного пользователя из списка редакторов Form .
removeEditor(user) Form Удаляет данного пользователя из списка редакторов Form .
setAcceptingResponses(enabled) Form Устанавливает, принимает ли форма в данный момент ответы.
setAllowResponseEdits(enabled) Form Определяет, отображает ли форма ссылку для редактирования ответа после его отправки.
setCollectEmail(collect) Form Определяет, собирает ли форма адреса электронной почты респондентов.
setConfirmationMessage(message) Form Устанавливает сообщение подтверждения формы.
setCustomClosedFormMessage(message) Form Устанавливает сообщение, которое будет отображаться, если форма не принимает ответы.
setDescription(description) Form Устанавливает описание формы.
setDestination(type, id) Form Устанавливает место назначения, в котором сохраняются ответы формы.
setIsQuiz(enabled) Form Устанавливает, является ли форма тестом.
setLimitOneResponsePerUser(enabled) Form Устанавливает, допускает ли форма только один ответ для каждого респондента.
setProgressBar(enabled) Form Устанавливает, имеет ли форма индикатор выполнения.
setPublishingSummary(enabled) Form Определяет, отображает ли форма ссылку для просмотра сводки ответов после отправки формы респондентом.
setShowLinkToRespondAgain(enabled) Form Определяет, отображает ли форма ссылку для отправки другого ответа после того, как респондент заполнит форму.
setShuffleQuestions(shuffle) Form Определяет, является ли порядок вопросов на каждой странице формы случайным.
setTitle(title) Form Устанавливает заголовок формы.
shortenFormUrl(url) String Преобразует длинный URL-адрес формы в короткий URL-адрес.
submitGrades(responses) Form Отправляет оценки за заданные ответы FormResponse.

Подробная документация

addCheckboxGridItem()

Добавляет новый элемент вопроса, представленный в виде сетки столбцов и строк, который позволяет респонденту выбирать несколько вариантов ответа в каждой строке из последовательности флажков.

// Opens the Forms file by its URL. If you created your script from within a
// Google Forms file, you can use FormApp.getActiveForm() instead.
// TODO(developer): Replace the URL with your own.
const form = FormApp.openByUrl(
    'https://docs.google.com/forms/d/abc123456/edit',
);

// Adds a checkbox grid item.
const item = form.addCheckboxGridItem();

item.setTitle('Where did you celebrate New Year\'s?');

// Sets the grid's rows and columns.
item.setRows(['New York', 'San Francisco', 'London']).setColumns([
  '2014', '2015', '2016', '2017'
]);

Возвращаться

CheckboxGridItem — вновь созданный элемент.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

addCheckboxItem()

Добавляет новый элемент вопроса, который позволяет респонденту выбрать один или несколько флажков, а также необязательное поле «Другое».

// Opens the Forms file by its URL. If you created your script from within a
// Google Forms file, you can use FormApp.getActiveForm() instead.
// TODO(developer): Replace the URL with your own.
const form = FormApp.openByUrl(
    'https://docs.google.com/forms/d/abc123456/edit',
);

// Adds a checkbox item.
const item = form.addCheckboxItem();

// Sets the title of the checkbox item to 'Do you prefer cats or dogs?'
item.setTitle('Do you prefer cats or dogs?');

// Sets the choices.
item.setChoiceValues(['Cats', 'Dogs']);

Возвращаться

CheckboxItem — вновь созданный элемент.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

addDateItem()

Добавляет новый элемент вопроса, который позволяет респонденту указать дату.

// Opens the Forms file by its URL. If you created your script from within a
// Google Forms file, you can use FormApp.getActiveForm() instead.
// TODO(developer): Replace the URL with your own.
const form = FormApp.openByUrl(
    'https://docs.google.com/forms/d/abc123456/edit',
);

// Adds a date item.
const item = form.addDateItem();

// Sets the title to 'When were you born?'
item.setTitle('When were you born?');

// Sets the description for the date item.
item.setHelpText('Some helper text.');

Возвращаться

DateItem — вновь созданный элемент.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

addDateTimeItem()

Добавляет новый элемент вопроса, который позволяет респонденту указать дату и время.

// Opens the Forms file by its URL. If you created your script from within a
// Google Forms file, you can use FormApp.getActiveForm() instead.
// TODO(developer): Replace the URL with your own.
const form = FormApp.openByUrl(
    'https://docs.google.com/forms/d/abc123456/edit',
);

// Adds a question with date and time inputs.
const item = form.addDateTimeItem();

// Sets the title to 'When were you born?'
item.setTitle('When were you born?');

// Sets the question as required.
item.setRequired(true);

Возвращаться

DateTimeItem — вновь созданный элемент.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

addDurationItem()

Добавляет новый элемент вопроса, который позволяет респонденту указать промежуток времени.

// Opens the Forms file by its URL. If you created your script from within a
// Google Forms file, you can use FormApp.getActiveForm() instead.
// TODO(developer): Replace the URL with your own.
const form = FormApp.openByUrl(
    'https://docs.google.com/forms/d/abc123456/edit',
);

// Adds a question with a duration input.
const item = form.addDurationItem();

// Sets the title to 'How long can you hold your breath?'
item.setTitle('How long can you hold your breath?');

// Sets the question as required.
item.setRequired(true);

Возвращаться

DurationItem — вновь созданный элемент.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

addEditor(emailAddress)

Добавляет данного пользователя в список редакторов Form . Если пользователь уже был в списке зрителей, этот метод удаляет пользователя из списка зрителей.

Параметры

Имя Тип Описание
emailAddress String Адрес электронной почты пользователя, которого необходимо добавить.

Возвращаться

Form — Эта Form для связывания.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

addEditor(user)

Добавляет данного пользователя в список редакторов Form . Если пользователь уже был в списке зрителей, этот метод удаляет пользователя из списка зрителей.

Параметры

Имя Тип Описание
user User Представление добавляемого пользователя.

Возвращаться

Form — Эта Form для связывания.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

addEditors(emailAddresses)

Добавляет заданный массив пользователей в список редакторов Form . Если кто-либо из пользователей уже был в списке зрителей, этот метод удаляет его из списка зрителей.

Параметры

Имя Тип Описание
emailAddresses String[] Массив адресов электронной почты пользователей, которых нужно добавить.

Возвращаться

Form — Эта Form для связывания.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

addGridItem()

Добавляет новый элемент вопроса, представленный в виде сетки столбцов и строк, который позволяет респонденту выбрать один вариант ответа в каждой строке из последовательности переключателей.

// Opens the Forms file by its URL. If you created your script from within a
// Google Forms file, you can use FormApp.getActiveForm() instead.
// TODO(developer): Replace the URL with your own.
const form = FormApp.openByUrl(
    'https://docs.google.com/forms/d/abc123456/edit',
);

// Adds a multiple choice grid.
const item = form.addGridItem();

// Sets the title to 'Rate your interests.'
item.setTitle('Rate your interests');

// Sets the grid's rows and columns.
item.setRows(['Cars', 'Computers', 'Celebrities']).setColumns([
  'Boring', 'So-so', 'Interesting'
]);

Возвращаться

GridItem — вновь созданный элемент.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

addImageItem()

Добавляет новый элемент макета, отображающий изображение.

// Opens the Forms file by its URL. If you created your script from within a
// Google Forms file, you can use FormApp.getActiveForm() instead.
// TODO(developer): Replace the URL with your own.
const form = FormApp.openByUrl(
    'https://docs.google.com/forms/d/abc123456/edit',
);

// Adds an image item.
const item = form.addImageItem();

// Gets the Google icon to use as the image.
const img = UrlFetchApp.fetch(
    'https://fonts.gstatic.com/s/i/productlogos/googleg/v6/web-24dp/logo_googleg_color_1x_web_24dp.png',
);

// Sets the image, title, and description for the item.
item.setTitle('Google icon').setHelpText('Google icon').setImage(img);

Возвращаться

ImageItem — вновь созданный элемент.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

addListItem()

Добавляет новый элемент вопроса, который позволяет респонденту выбрать один вариант из раскрывающегося списка.

// Opens the Forms file by its URL. If you created your script from within a
// Google Forms file, you can use FormApp.getActiveForm() instead.
// TODO(developer): Replace the URL with your own.
const form = FormApp.openByUrl(
    'https://docs.google.com/forms/d/abc123456/edit',
);

// Adds a dropdown list to the form.
const item = form.addListItem();

// Sets the title to 'Do you prefer cats or dogs?'
item.setTitle('Do you prefer cats or dogs?');

// Sets the description to 'This is description text...'
item.setHelpText('This is description text...');

// Creates and adds choices to the dropdown list.
item.setChoices([item.createChoice('dog'), item.createChoice('cat')]);

Возвращаться

ListItem — вновь созданный элемент.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

addMultipleChoiceItem()

Добавляет новый элемент вопроса, который позволяет респонденту выбрать один вариант из списка переключателей или необязательного поля «другое».

// Opens the Forms file by its URL. If you created your script from within a
// Google Forms file, you can use FormApp.getActiveForm() instead.
// TODO(developer): Replace the URL with your own.
const form = FormApp.openByUrl(
    'https://docs.google.com/forms/d/abc123456/edit',
);

// Adds a multiple choice item to the form.
const item = form.addMultipleChoiceItem();

// Sets the title.
item.setTitle('What is your favorite ice cream flavor?');

// Creates some choice items.
const vanilla = item.createChoice('vanilla');
const chocolate = item.createChoice('chocolate');
const strawberry = item.createChoice('strawberry');

// Sets the choices.
item.setChoices([vanilla, chocolate, strawberry]);

Возвращаться

MultipleChoiceItem — вновь созданный элемент.

Авторизация

Скрипты, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

addPageBreakItem()

Добавляет новый элемент макета, который отмечает начало страницы.

// Opens the Forms file by its URL. If you created your script from within a
// Google Forms file, you can use FormApp.getActiveForm() instead.
// TODO(developer): Replace the URL with your own.
const form = FormApp.openByUrl(
    'https://docs.google.com/forms/d/abc123456/edit',
);

// Adds page break items to create a second and third page for the form.
const pageTwo = form.addPageBreakItem();
const pageThree = form.addPageBreakItem();

// Sets the titles for the pages.
pageTwo.setTitle('Page two');
pageThree.setTitle('Page three');

// Upon completion of the first page, sets the form to navigate to the third
// page.
pageTwo.setGoToPage(pageThree);

// Upon completion of the second page, sets the form to navigate back to the
// first page.
pageThree.setGoToPage(FormApp.PageNavigationType.RESTART);

Возвращаться

PageBreakItem — вновь созданный элемент.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

addParagraphTextItem()

Добавляет новый элемент вопроса, который позволяет респонденту ввести блок текста.

// Opens the form by its URL. If you created your script from within a
// Google Forms file, you can use FormApp.getActiveForm() instead.
// TODO(developer): Replace the URL with your own.
const form = FormApp.openByUrl(
    'https://docs.google.com/forms/d/abc123456/edit',
);

// Adds the paragraph text item.
const item = form.addParagraphTextItem();

// Sets the title to 'What is your address?'
item.setTitle('What is your address?');

Возвращаться

ParagraphTextItem — вновь созданный элемент.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

addScaleItem()

Добавляет новый элемент вопроса, который позволяет респонденту выбрать один вариант из пронумерованной последовательности переключателей.

// Opens the Forms file by its URL. If you created your script from within a
// Google Forms file, you can use FormApp.getActiveForm() instead.
// TODO(developer): Replace the URL with your own.
const form = FormApp.openByUrl(
    'https://docs.google.com/forms/d/abc123456/edit',
);

// Adds the scale item.
const item = form.addScaleItem();

// Sets the title of the scale item to 'Choose a number.'
item.setTitle('Choose a number');

// Sets the scale to 1-5.
item.setBounds(1, 5);

// Sets the label for the lower and upper bounds.
item.setLabels('Lowest', 'Highest');

Возвращаться

ScaleItem — вновь созданный элемент.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

addSectionHeaderItem()

Добавляет новый элемент макета, который визуально указывает начало раздела.

// Opens the Forms file by its URL. If you created your script from within a
// Google Forms file, you can use FormApp.getActiveForm() instead.
// TODO(developer): Replace the URL with your own.
const form = FormApp.openByUrl(
    'https://docs.google.com/forms/d/abc123456/edit',
);

// Adds the section heading item.
const item = form.addSectionHeaderItem();

// Sets the title to 'Title of new section.'
item.setTitle('Title of new section');

// Sets the description.
item.setHelpText('Description of new section');

Возвращаться

SectionHeaderItem — вновь созданный элемент.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

addTextItem()

Добавляет новый элемент вопроса, который позволяет респонденту ввести одну строку текста.

// Opens the Forms file by its URL. If you created your script from within a
// Google Forms file, you can use FormApp.getActiveForm() instead.
// TODO(developer): Replace the URL with your own.
const form = FormApp.openByUrl(
    'https://docs.google.com/forms/d/abc123456/edit',
);

// Adds a single-line text item.
const item = form.addTextItem();

// Sets the title to 'What is your name?'
item.setTitle('What is your name?');

Возвращаться

TextItem — вновь созданный элемент.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

addTimeItem()

Добавляет новый элемент вопроса, который позволяет респонденту указать время суток.

// Opens the Forms file by its URL. If you created your script from within a
// Google Forms file, you can use FormApp.getActiveForm() instead.
// TODO(developer): Replace the URL with your own.
const form = FormApp.openByUrl(
    'https://docs.google.com/forms/d/abc123456/edit',
);

// Adds a question with a time input.
const item = form.addTimeItem();

// Sets the title to 'What time do you usually wake up in the morning?'
item.setTitle('What time do you usually wake up in the morning?');

Возвращаться

TimeItem — вновь созданный элемент.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

addVideoItem()

Добавляет новый элемент макета, отображающий видео.

// Opens the Forms file by its URL. If you created your script from within a
// Google Forms file, you can use FormApp.getActiveForm() instead.
// TODO(developer): Replace the URL with your own.
const form = FormApp.openByUrl(
    'https://docs.google.com/forms/d/abc123456/edit',
);

// Adds a video item.
const item = form.addVideoItem();

// Sets the title, description, and video.
item.setTitle('YouTube video')
    .setHelpText('Send content automatically via Google Sheets and Apps Script')
    .setVideoUrl('https://youtu.be/xxgQr-jSu9o');

// Sets the alignment to the center.
item.setAlignment(FormApp.Alignment.CENTER);

Возвращаться

VideoItem — вновь созданный элемент.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

canEditResponse()

Определяет, отображает ли форма ссылку для редактирования ответа после его отправки.

Независимо от этого параметра, метод FormResponse.getEditResponseUrl() позволяет автору сценария, имеющему доступ к редактированию формы, создать URL-адрес, который можно использовать для редактирования ответа.

// Opens the Forms file by its URL. If you created your script from within a
// Google Forms file, you can use FormApp.getActiveForm() instead.
// TODO(developer): Replace the URL with your own.
const form = FormApp.openByUrl(
    'https://docs.google.com/forms/d/abc123456/edit',
);

// Checks if the form displays a link to edit a response after submitting it.
// The default is false. To let people edit their responses, use
// form.setAllowResponseEdits(true).
const edit = form.canEditResponse();

// If the form doesn't let people edit responses, logs false to the console.
console.log(edit);

Возвращаться

Booleantrue , если в форме отображается ссылка «Изменить ответ»; false если это не так.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

collectsEmail()

Определяет, собирает ли форма адреса электронной почты респондентов.

// Opens the Forms file by its URL. If you created your script from within a
// Google Forms file, you can use FormApp.getActiveForm() instead.
// TODO(developer): Replace the URL with your own.
const form = FormApp.openByUrl(
    'https://docs.google.com/forms/d/abc123456/edit',
);

// Sets the form to not collect respondents' email addresses.
form.setCollectEmail(false);

// Checks whether the form collects respondents' email addresses and logs it to
// the console.
const bool = form.collectsEmail();

console.log(bool);

Возвращаться

Booleantrue , если форма собирает адреса электронной почты; false если это не так.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

createResponse()

Создает новый ответ на форму. Чтобы ответить на элемент вопроса, создайте ItemResponse из этого элемента, а затем прикрепите его к этому ответу формы, вызвав FormResponse.withItemResponse(response) . Чтобы сохранить собранный ответ, вызовите FormResponse.submit() .

Возвращаться

FormResponse — вновь созданный ответ формы.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

deleteAllResponses()

Удаляет все отправленные ответы из хранилища ответов формы. Этот метод не удаляет копии ответов, хранящиеся во внешнем месте назначения ответов (например, в электронной таблице), но очищает сводное представление формы.

Возвращаться

Form — Эта Form для связывания.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

deleteItem(index)

Удаляет элемент по заданному индексу среди всех элементов формы. Выдает исключение сценария, если по данному индексу не существует элемента.

// Opens the Forms file by its URL. If you created your script from within
// a Google Forms file, you can use FormApp.getActiveForm() instead.
// TODO(developer): Replace the URL with your own.
const form = FormApp.openByUrl(
    'https://docs.google.com/forms/d/abc123456/edit',
);

// Gets all the items from the form.
const items = form.getItems();

// Finds the index of a paragraph text item and deletes it by the item's index.
const index = items.findIndex(
    (item) => item.getType() === FormApp.ItemType.PARAGRAPH_TEXT,
);
if (index !== -1) {
  form.deleteItem(index);
}

Параметры

Имя Тип Описание
index Integer Индекс элемента среди всех элементов формы.

Броски

Error — если по данному индексу не существует элемента

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

deleteItem(item)

Удаляет данный элемент. Выдает исключение сценария, если элемент уже был удален.

// Opens the Forms file by its URL. If you created your script from within
// a Google Forms file, you can use FormApp.getActiveForm() instead.
// TODO(developer): Replace the URL with your own.
const form = FormApp.openByUrl(
    'https://docs.google.com/forms/d/abc123456/edit',
);

// Gets all of the items from the form.
const items = form.getItems();

// Finds a paragraph text item and deletes it.
const item = items.find(
    (item) => item.getType() === FormApp.ItemType.PARAGRAPH_TEXT,
);
if (item) {
  form.deleteItem(item);
}

Параметры

Имя Тип Описание
item Item Элемент, который необходимо удалить.

Броски

Error — если элемент не существует в форме

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

deleteResponse(responseId)

Удаляет один ответ из хранилища ответов формы. Этот метод не удаляет копии ответов, хранящиеся во внешнем месте назначения ответов (например, в электронной таблице), но удаляет ответ из сводного представления формы. Идентификатор ответа можно получить с помощью FormResponse.getId() .

Параметры

Имя Тип Описание
responseId String Идентификатор ответа формы, который необходимо удалить.

Возвращаться

Form — Эта Form для связывания.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

getConfirmationMessage()

Получает сообщение подтверждения формы.

// Opens the Forms file by its URL. If you created your script from within
// a Google Forms file, you can use FormApp.getActiveForm() instead.
// TODO(developer): Replace the URL with your own.
const form = FormApp.openByUrl(
    'https://docs.google.com/forms/d/abc123456/edit',
);

// Sets the confirmation message to display after someone submits the form.
form.setConfirmationMessage('You successfully submitted the form.');

// Gets the confirmation message and logs it to the console.
const message = form.getConfirmationMessage();

console.log(message);

Возвращаться

String — сообщение подтверждения формы.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

getCustomClosedFormMessage()

Получает настраиваемое сообщение, которое отображается, если форма не принимает ответы, или пустую строку, если настраиваемое сообщение не задано.

// Opens the Forms file by its URL. If you created your script from within a
// Google Forms file, you can use FormApp.getActiveForm() instead.
// TODO(developer): Replace the URL with your own.
const form = FormApp.openByUrl(
    'https://docs.google.com/forms/d/abc123456/edit',
);

// Sets a custom closed form message to display to the user when the form
// no longer accepts responses.
form.setCustomClosedFormMessage('The form is no longer accepting responses.');

// Gets the custom message set for the form and logs it to the console.
const message = form.getCustomClosedFormMessage();

console.log(message);

Возвращаться

String — настраиваемое сообщение, отображаемое, если форма не принимает ответы, или пустая строка, если настраиваемое сообщение не задано.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

getDescription()

Получает описание формы.

// Opens the Forms file by its URL. If you created your script from within
// a Google Forms file, you can use FormApp.getActiveForm() instead.
// TODO(developer): Replace the URL with your own.
const form = FormApp.openByUrl(
    'https://docs.google.com/forms/d/abc123456/edit',
);

// Sets the form description.
form.setDescription('This is the form description.');

// Gets the form description and logs it to the console.
const description = form.getDescription();

console.log(description);

Возвращаться

String — описание формы.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

getDestinationId()

Получает идентификатор места назначения ответа формы.

// Opens the Forms file by its URL. If you created your script from within
// a Google Forms file, you can use FormApp.getActiveForm() instead.
// TODO(developer): Replace the URL with your own.
const form = FormApp.openByUrl(
    'https://docs.google.com/forms/d/abc123456/edit',
);

// Creates a spreadsheet to use as the response destination.
const ss = SpreadsheetApp.create('Test_Spreadsheet');

// Updates the form's response destination.
form.setDestination(FormApp.DestinationType.SPREADSHEET, ss.getId());

// Gets the ID of the form's response destination and logs it to the console.
const destinationId = form.getDestinationId();

console.log(destinationId);

Возвращаться

String — идентификатор места назначения ответа формы.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

getDestinationType()

Получает тип назначения ответа формы.

// Opens the Forms file by its URL. If you created your script from within
// a Google Forms file, you can use FormApp.getActiveForm() instead.
// TODO(developer): Replace the URL with your own.
const form = FormApp.openByUrl(
    'https://docs.google.com/forms/d/abc1234556/edit',
);

// Gets the type of the form's response destination and logs it to the console.
const destinationType = form.getDestinationType().name();

console.log(destinationType);

Возвращаться

DestinationType — Тип назначения ответа формы.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

getEditUrl()

Получает URL-адрес, который можно использовать для доступа к режиму редактирования формы.

// Opens the form by its URL. If you created your script from within
// a Google Forms file, you can use FormApp.getActiveForm() instead.
// TODO(developer): Replace the URL with your own.
const form = FormApp.openByUrl(
    'https://docs.google.com/forms/d/abc123456/edit',
);

// Gets the URL that accesses the form's edit mode and logs it to the console.
const url = form.getEditUrl();

console.log(url);

Возвращаться

String — URL-адрес для редактирования формы.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

getEditors()

Получает список редакторов для этой Form .

Возвращаться

User[] — Массив пользователей с разрешением на редактирование.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

getId()

Получает идентификатор формы.

// Opens the form by its URL. If you created your script from within
// a Google Forms file, you can use FormApp.getActiveForm() instead.
// TODO(developer): Replace the URL with your own.
const form = FormApp.openByUrl(
    'https://docs.google.com/forms/d/abc123456/edit',
);

// Gets the ID of the form and logs it to the console.
const id = form.getId();

console.log(id);

Возвращаться

String — идентификатор формы.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

getItemById(id)

Получает элемент с заданным идентификатором. Возвращает значение null , если идентификатор не соответствует элементу в форме.

// Opens the Forms file by its URL. If you created your script from within
// a Google Forms file, you can use FormApp.getActiveForm() instead.
// TODO(developer): Replace the URL with your own.
const form = FormApp.openByUrl(
    'https://docs.google.com/forms/d/abc123456/edit',
);

// Gets the ID of the first item on the form.
const itemId = form.getItems()[0].getId();

// Gets the item from the ID.
const item = form.getItemById(itemId);

// Gets the name of the item type and logs it to the console.
const type = item.getType().name();

console.log(type);

Параметры

Имя Тип Описание
id Integer Идентификатор предмета.

Возвращаться

Item — элемент с заданным идентификатором или null , если элемент не существует в форме.

Авторизация

Скрипты, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

getItems()

Получает массив всех элементов формы.

// Opens the Forms file by its URL. If you created your script from within
// a Google Forms file, you can use FormApp.getActiveForm() instead.
// TODO(developer): Replace the URL with your own.
const form = FormApp.openByUrl(
    'https://docs.google.com/forms/d/abc123456/edit',
);

// Gets the list of items in the form.
const items = form.getItems();

// Gets the type for each item and logs them to the console.
const types = items.map((item) => item.getType().name());

console.log(types);

Возвращаться

Item[] — Массив всех элементов формы.

Авторизация

Скрипты, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

getItems(itemType)

Получает массив всех элементов заданного типа.

// Opens the Forms file by its URL. If you created your script from within
// a Google Forms file, you can use FormApp.getActiveForm() instead.
// TODO(developer): Replace the URL with your own.
const form = FormApp.openByUrl(
    'https://docs.google.com/forms/d/abc123456/edit',
);

// Gets a list of all checkbox items on the form.
const items = form.getItems(FormApp.ItemType.CHECKBOX);

// Gets the title of each checkbox item and logs them to the console.
const checkboxItemsTitle = items.map(
    (item) => item.asCheckboxItem().getTitle(),
);
console.log(checkboxItemsTitle);

Параметры

Имя Тип Описание
itemType ItemType Тип элементов, которые необходимо получить.

Возвращаться

Item[] — Массив всех элементов этого типа.

Авторизация

Скрипты, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

getPublishedUrl()

Получает URL-адрес, который можно использовать для ответа на форму.

// Opens the Forms file by its URL. If you created your script from within
// a Google Forms file, you can use FormApp.getActiveForm() instead.
// TODO(developer): Replace the URL with your own.
const form = FormApp.openByUrl(
    'https://docs.google.com/forms/d/abc123456/edit',
);

// Gets the URL to respond to the form and logs it to the console.
const url = form.getPublishedUrl();
console.log(url);

Возвращаться

String — URL-адрес для ответа на форму.

Авторизация

Скрипты, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

getResponse(responseId)

Получает один ответ формы на основе его идентификатора ответа. Идентификаторы ответов можно получить из FormResponse.getId() .

Параметры

Имя Тип Описание
responseId String Идентификатор ответа формы.

Возвращаться

FormResponse — Ответ формы.

Броски

Error — если ответа не существует

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

getResponses()

Получает массив всех ответов формы.

Возвращаться

FormResponse[] — Массив всех ответов формы.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

getResponses(timestamp)

Получает массив всех ответов формы после заданной даты и времени.

Параметры

Имя Тип Описание
timestamp Date Самая ранняя дата и время, для которых должны быть возвращены ответы формы.

Возвращаться

FormResponse[] — Список ответов формы.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

getShuffleQuestions()

Определяет, является ли порядок вопросов на каждой странице формы случайным.

Возвращаться

Booleantrue , если порядок вопросов на каждой странице формы рандомизирован; false если нет.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

getSummaryUrl()

Получает URL-адрес, который можно использовать для просмотра сводки ответов формы. Если для параметра setPublishingSummary(enabled) установлено значение true , доступ к URL-адресу смогут получить только пользователи с разрешением на редактирование формы.

// Opens the Forms file by its URL. If you created your script from within
// a Google Forms file, you can use FormApp.getActiveForm() instead.
// Opens the form by its URL.
// TODO(developer): Replace the URL with your own.
const form = FormApp.openByUrl(
    'https://docs.google.com/forms/d/abc123456/edit',
);

// Gets the URL to view a summary of the form's responses and logs it to the
// console.
const url = form.getSummaryUrl();
console.log(url);

Возвращаться

String — URL-адрес для просмотра сводки ответов.

Авторизация

Скрипты, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

getTitle()

Получает заголовок формы.

// Opens the Forms file by its URL. If you created your script from within
// a Google Forms file, you can use FormApp.getActiveForm() instead.
// TODO(developer): Replace the URL with your own.
const form = FormApp.openByUrl(
    'https://docs.google.com/forms/d/abc123456/edit',
);

// Sets the title of the form to 'For_Testing.'
form.setTitle('For_Testing');

// Gets the title of the form and logs it to the console.
const title = form.getTitle();
console.log(title);

Возвращаться

String — заголовок формы.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

hasLimitOneResponsePerUser()

Определяет, допускает ли форма только один ответ для каждого респондента. Если значение равно true , сценарий вообще не может отправлять ответы формы.

Возвращаться

Booleantrue , если форма допускает только один ответ для каждого респондента; false если нет.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

hasProgressBar()

Определяет, отображает ли форма индикатор выполнения.

// Opens the Forms file by its URL. If you created your script from within
// a Google Forms file, you can use FormApp.getActiveForm() instead.
// Opens the form by its URL.
// TODO(developer): Replace the URL with your own.
const form = FormApp.openByUrl(
    'https://docs.google.com/forms/d/abc123456/edit',
);

// Displays the progress bar on the form.
form.setProgressBar(true);

// Checks if the form displays a progress bar and logs it to the console.
console.log(form.hasProgressBar());

Возвращаться

Booleantrue , если в форме отображается индикатор выполнения; false если это не так.

Авторизация

Скрипты, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

Определяет, отображает ли форма ссылку для отправки другого ответа после того, как респондент заполнит форму.

// Opens the Forms file by its URL. If you created your script from within
// a Google Forms file, you can use FormApp.getActiveForm() instead.
// TODO(developer): Replace the URL with your own.
const form = FormApp.openByUrl(
    'https://docs.google.com/forms/d/abc123456/edit',
);

// Sets the form to display a link to submit another
// response after someone submits the form.
form.setShowLinkToRespondAgain(true);

// Checks if the form displays a 'Submit another response' link and logs it to
// the console.
console.log(form.hasRespondAgainLink());

Возвращаться

Booleantrue , если в форме отображается ссылка «Отправить еще один ответ»; false если это не так.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

isAcceptingResponses()

Определяет, принимает ли форма в данный момент ответы.

// Opens the Forms file by its URL. If you created your script from within
// a Google Forms file, you can use FormApp.getActiveForm() instead.
// TODO(developer): Replace the URL with your own.
const form = FormApp.openByUrl(
    'https://docs.google.com/forms/d/abc123456/edit',
);

// Sets the form to accept responses.
form.setAcceptingResponses(true);

// Checks if the form is accepting responses or not and logs it to the console.
const accepting = form.isAcceptingResponses();
console.log(accepting);

Возвращаться

Booleantrue , если форма принимает ответы; false если это не так.

Авторизация

Скрипты, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

isPublishingSummary()

Определяет, отображает ли форма ссылку для просмотра сводки ответов после того, как респондент заполнит форму.

// Opens the Forms file by its URL. If you created your script from within
// a Google Forms file, you can use FormApp.getActiveForm() instead.
// TODO(developer): Replace the URL with your own.
const form = FormApp.openByUrl(
    'https://docs.google.com/forms/d/abc123456/edit',
);

// Sets the form to display a link to a summary of
// the responses after someone submits the form.
form.setPublishingSummary(true);

// Checks if the form displays a "See previous responses" link and logs it to
// the console.
const publishingLink = form.isPublishingSummary();
console.log(publishingLink);

Возвращаться

Booleantrue , если в форме отображается ссылка «Просмотреть предыдущие ответы»; false если это не так.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

isQuiz()

Определяет, является ли форма тестом.

// Opens the Forms file by its URL. If you created your script from within
// a Google Forms file, you can use FormApp.getActiveForm() instead.
// TODO(developer): Replace the URL with your own.
const form = FormApp.openByUrl(
    'https://docs.google.com/forms/d/abc123456/edit',
);

// Sets the form as a quiz.
form.setIsQuiz(true);

// Checks if the form is a quiz or not and logs it to the console.
console.log(form.isQuiz());

Возвращаться

Booleantrue , если форма принимает ответы; false если это не так.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

moveItem(from, to)

Перемещает элемент по заданному индексу среди всех элементов формы в другой заданный индекс. Выдает исключение сценария, если to выходит за пределы.

// Opens the Forms file by its URL. If you created your script from within
// a Google Forms file, you can use FormApp.getActiveForm() instead.
// TODO(developer): Replace the URL with your own.
const form = FormApp.openByUrl(
    'https://docs.google.com/forms/d/abc123456/edit',
);

// Moves the first item to be the last item.
form.moveItem(0, form.getItems().length - 1);

Параметры

Имя Тип Описание
from Integer Текущий индекс элемента среди всех элементов формы.
to Integer Новый индекс элемента среди всех элементов формы.

Возвращаться

Item — элемент, который был перемещен.

Броски

Error — если любой индекс выходит за пределы.

Авторизация

Скрипты, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

moveItem(item, toIndex)

Перемещает заданный элемент в заданный индекс среди всех элементов формы. Выдает исключение сценария, если данный индекс выходит за пределы.

// Opens the Forms file by its URL. If you created your script from within
// a Google Forms file, you can use FormApp.getActiveForm() instead.
// TODO(developer): Replace the URL with your own.
const form = FormApp.openByUrl(
    'https://docs.google.com/forms/d/abc123456/edit',
);

// Gets the first item.
const item = form.getItems()[0];

// Moves the item to be the last item.
form.moveItem(item, form.getItems().length - 1);

Параметры

Имя Тип Описание
item Item Предмет для перемещения.
toIndex Integer Новый индекс элемента среди всех элементов формы.

Возвращаться

Item — элемент, который был перемещен.

Броски

Error — если индекс выходит за пределы.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

removeDestination()

Отключает форму от текущего места назначения ответа. В несвязанном бывшем пункте назначения по-прежнему сохраняются копии всех предыдущих ответов. Все формы, включая те, у которых явно не указан пункт назначения, сохраняют копии ответов в хранилище ответов формы . Если форма в настоящее время не имеет места назначения ответа, этот метод не имеет никакого эффекта.

// Opens the Forms file by its URL. If you created your script from within
// a Google Forms file, you can use FormApp.getActiveForm() instead.
// TODO(developer): Replace the URL with your own.
const form = FormApp.openByUrl(
    'https://docs.google.com/forms/d/abc123456/edit',
);

// Opens a spreadsheet to use for the response destination.
// TODO(developer): Replace the URL with your own.
const ss = SpreadsheetApp.openByUrl(
    'https://docs.google.com/spreadsheets/d/abc123456/edit',
);

// Updates the form's response destination to the spreadsheet.
form.setDestination(FormApp.DestinationType.SPREADSHEET, ss.getId());

// Unlinks the form from the spreadsheet.
form.removeDestination();

Возвращаться

Form — Эта Form для связывания.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

removeEditor(emailAddress)

Удаляет данного пользователя из списка редакторов Form . Этот метод не блокирует доступ пользователей к Form , если они принадлежат к классу пользователей, имеющих общий доступ, например, если Form используется во всем домене пользователя или если Form находится на общем диске, который пользователь может получить доступ.

Для файлов на Диске это также удаляет пользователя из списка зрителей.

Параметры

Имя Тип Описание
emailAddress String Адрес электронной почты пользователя, которого необходимо удалить.

Возвращаться

Form — Эта Form для связывания.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

removeEditor(user)

Удаляет данного пользователя из списка редакторов Form . Этот метод не блокирует доступ пользователей к Form , если они принадлежат к классу пользователей, имеющих общий доступ — например, если Form используется во всем домене пользователя или если Form находится на общем диске, который пользователь может получить доступ.

Для файлов на Диске это также удаляет пользователя из списка зрителей.

Параметры

Имя Тип Описание
user User Представление пользователя, которого нужно удалить.

Возвращаться

Form — Эта Form для связывания.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

setAcceptingResponses(enabled)

Устанавливает, принимает ли форма в данный момент ответы. По умолчанию для новых форм установлено true .

// Opens the Forms file by its URL. If you created your script from within a
// Google Forms file, you can use FormApp.getActiveForm() instead.
// TODO(developer): Replace the URL with your own.
const form = FormApp.openByUrl(
    'https://docs.google.com/forms/d/abc123456/edit',
);

// Sets the form to accept responses.
form.setAcceptingResponses(true);

// Checks whether the form is accepting responses or not and logs it to the
// console.
console.log(form.isAcceptingResponses());

Параметры

Имя Тип Описание
enabled Boolean true если форма должна принимать ответы; false если этого не должно быть.

Возвращаться

Form — Эта Form для связывания.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

setAllowResponseEdits(enabled)

Определяет, отображает ли форма ссылку для редактирования ответа после его отправки. По умолчанию для новых форм установлено значение false .

Независимо от этого параметра, метод FormResponse.getEditResponseUrl() позволяет автору сценария, имеющему разрешение на редактирование формы, создать URL-адрес, который можно использовать для редактирования ответа.

// Opens the Forms file by its URL. If you created your script from within a
// Google Forms file, you can use FormApp.getActiveForm() instead.
// TODO(developer): Replace the URL with your own.
const form = FormApp.openByUrl(
    'https://docs.google.com/forms/d/abc123456/edit',
);

// Shows "Edit your response" link after someone submits the form.
form.setAllowResponseEdits(true);

// Checks whether the option to edit the form after a user submits it is set to
// true or not and logs it to the console.
console.log(form.canEditResponse());

Параметры

Имя Тип Описание
enabled Boolean true , если в форме должна отображаться ссылка «Изменить ответ»; false если нет.

Возвращаться

Form — Эта Form для связывания.

Авторизация

Скрипты, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

setCollectEmail(collect)

Определяет, собирает ли форма адреса электронной почты респондентов. По умолчанию для новых форм установлено значение false .

// Opens the Forms file by its URL. If you created your script from within a
// Google Forms file, you can use FormApp.getActiveForm() instead.
// TODO(developer): Replace the URL with your own.
const form = FormApp.openByUrl(
    'https://docs.google.com/forms/d/abc123456/edit',
);

// Sets the form to collect respondents' email addresses.
form.setCollectEmail(true);

// Checks whether the value is set to true or false and logs it to the console.
const collect = form.collectsEmail();
console.log(collect);

Параметры

Имя Тип Описание
collect Boolean true , если форма должна собирать адреса электронной почты; false если это не так.

Возвращаться

Form — Эта Form для связывания.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

setConfirmationMessage(message)

Устанавливает сообщение подтверждения формы.

// Opens the Forms file by its URL. If you created your script from within a
// Google Forms file, you can use FormApp.getActiveForm() instead.
// TODO(developer): Replace the URL with your own.
const form = FormApp.openByUrl(
    'https://docs.google.com/forms/d/abc123456/edit',
);

// Sets a custom confirmation message to display after someone submits the form.
form.setConfirmationMessage('Your form has been successfully submitted.');

// Gets the confirmation message set for the form and logs it to the console.
const message = form.getConfirmationMessage();
console.log(message);

Параметры

Имя Тип Описание
message String Новое подтверждающее сообщение формы.

Возвращаться

Form — Эта Form для связывания.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

setCustomClosedFormMessage(message)

Устанавливает сообщение, которое будет отображаться, если форма не принимает ответы. Если сообщение не задано, в форме используется сообщение по умолчанию.

// Opens the Forms file by its URL. If you created your script from within a
// Google Forms file, you can use FormApp.getActiveForm() instead.
// TODO(developer): Replace the URL with your own.
const form = FormApp.openByUrl(
    'https://docs.google.com/forms/d/abc123456/edit',
);

// Sets the form to not accept responses.
form.setAcceptingResponses(false);

// Sets a custom closed form message to display to the user.
form.setCustomClosedFormMessage('The form is no longer accepting responses.');

// Gets the custom message set for the form and logs it to the console.
const message = form.getCustomClosedFormMessage();
console.log(message);

Параметры

Имя Тип Описание
message String Сообщение, отображаемое, если форма не принимает ответы.

Возвращаться

Form — Эта Form для связывания.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

setDescription(description)

Устанавливает описание формы.

Параметры

Имя Тип Описание
description String Новое описание формы.

Возвращаться

Form — Эта Form для связывания.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

setDestination(type, id)

Устанавливает место назначения, в котором сохраняются ответы формы. Все формы, включая те, у которых явно не указан пункт назначения, сохраняют копии ответов в хранилище ответов формы .

Параметры

Имя Тип Описание
type DestinationType Тип назначения ответа формы.
id String Идентификатор места назначения ответа формы.

Возвращаться

Form — Эта Form для связывания.

Броски

Error — если указанный идентификатор пункта назначения недействителен.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

setIsQuiz(enabled)

Устанавливает, является ли форма тестом. По умолчанию для новых форм установлено значение false .

Оцениваемые вопросы разрешены только в викторинах, поэтому установка значения false приведет к удалению всех параметров оценки из всех вопросов.

Настройки теста доступны только в новом пользовательском интерфейсе Forms; создание формы викторины позволяет форме использовать новый пользовательский интерфейс.

// Opens the Forms file by its URL. If you created your script from within a
// Google Forms file, you can use FormApp.getActiveForm() instead.
// TODO(developer): Replace the URL with your own.
const form = FormApp.openByUrl(
    'https://docs.google.com/forms/d/abc123456/edit',
);

// Makes the form a quiz.
form.setIsQuiz(true);

// Checks whether the form is a quiz or not and logs it to the console.
console.log(form.isQuiz());

Параметры

Имя Тип Описание
enabled Boolean true если для формы должны быть включены функции викторины; false если нет.

Возвращаться

Form — Эта Form для связывания.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

setLimitOneResponsePerUser(enabled)

Устанавливает, допускает ли форма только один ответ для каждого респондента. По умолчанию для новых форм установлено значение false . Если для параметра установлено значение true , сценарий вообще не сможет отправлять ответы формы.

Параметры

Имя Тип Описание
enabled Boolean true если форма должна разрешать только один ответ от каждого респондента; false если нет.

Возвращаться

Form — Эта Form для связывания.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

setProgressBar(enabled)

Устанавливает, имеет ли форма индикатор выполнения. По умолчанию для новых форм установлено значение false .

// Opens the Forms file by its URL. If you created your script from within
// a Google Forms file, you can use FormApp.getActiveForm() instead.
// TODO(developer): Replace the URL with your own.
const form = FormApp.openByUrl(
    'https://docs.google.com/forms/d/abc123456/edit',
);

// Displays the progress bar on the form.
form.setProgressBar(true);

// Checks whether the form has a progress bar and logs it to the console.
console.log(form.hasProgressBar());

Параметры

Имя Тип Описание
enabled Boolean true если в форме отображается индикатор выполнения; false если это не так.

Возвращаться

Form — Эта Form для связывания.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

setPublishingSummary(enabled)

Определяет, отображает ли форма ссылку для просмотра сводки ответов после отправки формы респондентом. По умолчанию для новых форм установлено значение false .

Параметры

Имя Тип Описание
enabled Boolean true , если в форме должна отображаться ссылка «Просмотреть предыдущие ответы»; false если нет.

Возвращаться

Form — Эта Form для связывания.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

setShowLinkToRespondAgain(enabled)

Определяет, отображает ли форма ссылку для отправки другого ответа после того, как респондент заполнит форму. По умолчанию для новых форм установлено true .

Параметры

Имя Тип Описание
enabled Boolean true если в форме должна отображаться ссылка «Отправить другой ответ»; false если нет.

Возвращаться

Form — Эта Form для связывания.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

setShuffleQuestions(shuffle)

Определяет, является ли порядок вопросов на каждой странице формы случайным.

Параметры

Имя Тип Описание
shuffle Boolean true , если порядок вопросов на каждой странице формы должен быть рандомизирован; false если нет.

Возвращаться

Form — Эта Form для связывания.

Авторизация

Скрипты, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

setTitle(title)

Устанавливает заголовок формы.

Параметры

Имя Тип Описание
title String Новое название формы.

Возвращаться

Form — Эта Form для связывания.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

shortenFormUrl(url)

Преобразует длинный URL-адрес формы в короткий URL-адрес. Выдает исключение, если длинный URL-адрес не принадлежит Google Forms.

Параметры

Имя Тип Описание
url String URL-адрес, который нужно сократить.

Возвращаться

String — URL-адрес в формате http://goo.gl/forms/1234 .

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

submitGrades(responses)

Отправляет оценки за заданные ответы FormResponse.

Если ваш код включает триггер onFormSubmit , вызов submitGrades() запускает условие onFormSubmit и вызывает бесконечный цикл. Чтобы предотвратить бесконечный цикл, добавьте код, который проверяет, существуют ли оценки, перед вызовом submitGrades() .

Параметры

Имя Тип Описание
responses FormResponse[] Массив всех ответов формы.

Возвращаться

Form — Эта Form для связывания.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

Устаревшие методы