Class Form

Form

Es un formulario que contiene propiedades y elementos generales. Las propiedades incluyen el título, la configuración y el lugar donde se almacenan las respuestas. Los elementos incluyen elementos de pregunta, como casillas de verificación o botones de selección, mientras que los elementos de diseño hacen referencia a elementos como los saltos de página. Se puede acceder a los formularios o crearlos desde 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());

Métodos

MétodoTipo de datos que se muestraDescripción breve
addCheckboxGridItem()CheckboxGridItemAgrega un nuevo elemento de pregunta, presentado como una cuadrícula de columnas y filas, que permite al encuestado seleccionar varias opciones por fila de una secuencia de casillas de verificación.
addCheckboxItem()CheckboxItemAgrega un nuevo elemento de pregunta que permite al encuestado seleccionar una o más casillas de verificación, así como un campo opcional de "otro".
addDateItem()DateItemAgrega un nuevo elemento de pregunta que permite que el encuestado indique una fecha.
addDateTimeItem()DateTimeItemAgrega un nuevo elemento de pregunta que permite que el encuestado indique una fecha y hora.
addDurationItem()DurationItemAgrega un nuevo elemento de pregunta que permite que el encuestado indique una duración.
addEditor(emailAddress)FormAgrega el usuario especificado a la lista de editores de Form.
addEditor(user)FormAgrega el usuario especificado a la lista de editores de Form.
addEditors(emailAddresses)FormAgrega el array de usuarios determinado a la lista de editores de Form.
addGridItem()GridItemAgrega un nuevo elemento de pregunta, presentado como una cuadrícula de columnas y filas, que permite que la persona que responde seleccione una opción por fila de una secuencia de botones de selección.
addImageItem()ImageItemAgrega un nuevo elemento de diseño que muestra una imagen.
addListItem()ListItemAgrega un nuevo elemento de pregunta que permite al encuestado seleccionar una opción de una lista desplegable.
addMultipleChoiceItem()MultipleChoiceItemAgrega un nuevo elemento de pregunta que permite que el encuestado seleccione una opción de una lista de botones de selección o un campo opcional "otro".
addPageBreakItem()PageBreakItemAgrega un nuevo elemento de diseño que marca el inicio de una página.
addParagraphTextItem()ParagraphTextItemAgrega un nuevo elemento de pregunta que permite que el encuestado ingrese un bloque de texto.
addPublishedReader(emailAddress)FormAgrega el usuario determinado a la lista de personas que responden para el Form.
addPublishedReader(user)FormAgrega el usuario determinado a la lista de personas que responden para el Form.
addPublishedReaders(emailAddresses)FormAgrega el array de usuarios determinado a la lista de personas que respondieron para Form.
addRatingItem()RatingItemAgrega un nuevo elemento de pregunta que permite que el encuestado otorgue una calificación.
addScaleItem()ScaleItemAgrega un nuevo elemento de pregunta que permite que el encuestado elija una opción de una secuencia numerada de botones de selección.
addSectionHeaderItem()SectionHeaderItemAgrega un nuevo elemento de diseño que indica visualmente el comienzo de una sección.
addTextItem()TextItemAgrega un nuevo elemento de pregunta que permite que el encuestado ingrese una sola línea de texto.
addTimeItem()TimeItemAgrega un nuevo elemento de pregunta que permite que el encuestado indique una hora del día.
addVideoItem()VideoItemAgrega un nuevo elemento de diseño que muestra un video.
canEditResponse()BooleanDetermina si el formulario muestra un vínculo para editar una respuesta después de enviarla.
collectsEmail()BooleanDetermina si el formulario recopila las direcciones de correo electrónico de las personas que responden.
createResponse()FormResponseCrea una respuesta nueva al formulario.
deleteAllResponses()FormBorra todas las respuestas enviadas del almacén de respuestas del formulario.
deleteItem(index)voidBorra el elemento en un índice determinado entre todos los elementos del formulario.
deleteItem(item)voidBorra el elemento determinado.
deleteResponse(responseId)FormBorra una sola respuesta del almacén de respuestas del formulario.
getConfirmationMessage()StringObtiene el mensaje de confirmación del formulario.
getCustomClosedFormMessage()StringObtiene el mensaje personalizado que se muestra si el formulario no acepta respuestas, o una cadena vacía si no se configuró ningún mensaje personalizado.
getDescription()StringObtiene la descripción del formulario.
getDestinationId()StringObtiene el ID del destino de la respuesta del formulario.
getDestinationType()DestinationTypeObtiene el tipo de destino de respuesta del formulario.
getEditUrl()StringObtiene la URL que se puede usar para acceder al modo de edición del formulario.
getEditors()User[]Obtiene la lista de editores de este Form.
getId()StringObtiene el ID del formulario.
getItemById(id)ItemObtiene el elemento con un ID determinado.
getItems()Item[]Obtiene un array de todos los elementos del formulario.
getItems(itemType)Item[]Obtiene un array de todos los elementos de un tipo determinado.
getPublishedReaders()User[]Obtiene la lista de personas que respondieron para este Form.
getPublishedUrl()StringObtiene la URL que se puede usar para responder el formulario.
getResponse(responseId)FormResponseObtiene una sola respuesta del formulario según su ID de respuesta.
getResponses()FormResponse[]Obtiene un array de todas las respuestas del formulario.
getResponses(timestamp)FormResponse[]Obtiene un array de todas las respuestas del formulario después de una fecha y hora determinadas.
getShuffleQuestions()BooleanDetermina si el orden de las preguntas en cada página del formulario es aleatorio.
getSummaryUrl()StringObtiene la URL que se puede usar para ver un resumen de las respuestas del formulario.
getTitle()StringObtiene el título del formulario.
hasLimitOneResponsePerUser()BooleanDetermina si el formulario permite una sola respuesta por persona.
hasProgressBar()BooleanDetermina si el formulario muestra una barra de progreso.
hasRespondAgainLink()BooleanDetermina si el formulario muestra un vínculo para enviar otra respuesta después de que un participante lo completa.
isAcceptingResponses()BooleanDetermina si el formulario acepta respuestas en un momento determinado.
isPublished()BooleanDetermina si el formulario está publicado.
isPublishingSummary()BooleanDetermina si el formulario muestra un vínculo para ver un resumen de las respuestas después de que un encuestado lo completa.
isQuiz()BooleanDetermina si el formulario es un cuestionario.
moveItem(from, to)ItemMueve un elemento de un índice determinado entre todos los elementos del formulario a otro índice determinado.
moveItem(item, toIndex)ItemMueve un elemento determinado a un índice determinado entre todos los elementos del formulario.
removeDestination()FormDesvincula el formulario de su destino de respuesta actual.
removeEditor(emailAddress)FormQuita al usuario determinado de la lista de editores de Form.
removeEditor(user)FormQuita al usuario determinado de la lista de editores de Form.
removePublishedReader(emailAddress)FormQuita al usuario determinado de la lista de personas que respondieron para el Form.
removePublishedReader(user)FormQuita al usuario determinado de la lista de personas que respondieron para el Form.
setAcceptingResponses(enabled)FormEstablece si el formulario acepta respuestas en este momento.
setAllowResponseEdits(enabled)FormEstablece si el formulario muestra un vínculo para editar una respuesta después de enviarla.
setCollectEmail(collect)FormEstablece si el formulario recopila las direcciones de correo electrónico de las personas que responden.
setConfirmationMessage(message)FormEstablece el mensaje de confirmación del formulario.
setCustomClosedFormMessage(message)FormEstablece el mensaje que se mostrará si el formulario no acepta respuestas.
setDescription(description)FormEstablece la descripción del formulario.
setDestination(type, id)FormEstablece el destino en el que se guardan las respuestas del formulario.
setIsQuiz(enabled)FormEstablece si el formulario es un cuestionario.
setLimitOneResponsePerUser(enabled)FormEstablece si el formulario permite una sola respuesta por persona.
setProgressBar(enabled)FormEstablece si el formulario tiene una barra de progreso.
setPublished(enabled)FormEstablece si el formulario está publicado.
setPublishingSummary(enabled)FormEstablece si el formulario muestra un vínculo para ver un resumen de las respuestas después de que una persona que responde lo envía.
setShowLinkToRespondAgain(enabled)FormEstablece si el formulario muestra un vínculo para enviar otra respuesta después de que un participante lo complete.
setShuffleQuestions(shuffle)FormEstablece si el orden de las preguntas en cada página del formulario es aleatorio.
setTitle(title)FormEstablece el título del formulario.
shortenFormUrl(url)StringConvierte una URL larga de un formulario en una URL corta.
submitGrades(responses)FormEnvía calificaciones para las FormResponses determinadas.
supportsAdvancedResponderPermissions()BooleanDetermina si el formulario admite la publicación.
MétodoTipo de datos que se muestraDescripción breve
requiresLogin()BooleanDetermina si el formulario requiere que las personas que responden accedan a una cuenta en el mismo dominio o un subdominio antes de responder.
setRequireLogin(requireLogin)FormEstablece si el formulario requiere que las personas que respondan accedan a una cuenta en el mismo dominio o un subdominio antes de responder.

Documentación detallada

addCheckboxGridItem()

Agrega un nuevo elemento de pregunta, presentado como una cuadrícula de columnas y filas, que permite que la persona que responde seleccione varias opciones por fila de una secuencia de casillas de verificación.

// 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'
]);

Volver

CheckboxGridItem: Es el elemento recién creado.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

addCheckboxItem()

Agrega un nuevo elemento de pregunta que permite al encuestado seleccionar una o más casillas de verificación, así como un campo opcional de "otro".

// 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']);

Volver

CheckboxItem: Es el elemento recién creado.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

addDateItem()

Agrega un nuevo elemento de pregunta que permite que el encuestado indique una fecha.

// 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.');

Volver

DateItem: Es el elemento recién creado.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

addDateTimeItem()

Agrega un nuevo elemento de pregunta que permite que el encuestado indique una fecha y hora.

// 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);

Volver

DateTimeItem: Es el elemento recién creado.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

addDurationItem()

Agrega un nuevo elemento de pregunta que permite que el encuestado indique una duración.

// 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);

Volver

DurationItem: Es el elemento recién creado.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

addEditor(emailAddress)

Agrega el usuario especificado a la lista de editores de Form. Si el usuario ya estaba en la lista de usuarios o personas que respondieron, este método lo quita de la lista.

// 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 editor to the form.
// TODO(developer): replace the emailAddress.
form.addEditor('editor@uni.edu');

Parámetros

NombreTipoDescripción
emailAddressStringEs la dirección de correo electrónico del usuario que quieres agregar.

Volver

Form: Este Form, para encadenar.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

addEditor(user)

Agrega el usuario especificado a la lista de editores de Form. Si el usuario ya estaba en la lista de usuarios o personas que respondieron, este método lo quita de la lista.

// Opens the Forms file by its URL.
// TODO(developer): Replace the URL with your own.
const oldForm = FormApp.openByUrl('https://docs.google.com/forms/d/abc123456/edit');

// Gets the editors from the old form.
const users = oldForm.getEditors();

// Creates a new form.
const newForm = FormApp.create('New form');

// Adds the editors to a new form.
users.forEach(user => newForm.addEditor(user));

Parámetros

NombreTipoDescripción
userUserEs una representación del usuario que se agregará.

Volver

Form: Este Form, para encadenar.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

addEditors(emailAddresses)

Agrega el array de usuarios determinado a la lista de editores de Form. Si alguno de los usuarios ya estaba en la lista de usuarios, este método lo quita de la lista.

// 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 editors to the form.
// TODO(developer): replace the emailAddress.
form.addPublishedReaders(['editor1@uni.edu', 'editor2@uni.edu']);

Parámetros

NombreTipoDescripción
emailAddressesString[]Es un array de direcciones de correo electrónico de los usuarios que se agregarán.

Volver

Form: Este Form, para encadenar.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

addGridItem()

Agrega un nuevo elemento de pregunta, presentado como una cuadrícula de columnas y filas, que permite que la persona que responde seleccione una opción por fila de una secuencia de botones de selección.

// 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'
]);

Volver

GridItem: Es el elemento recién creado.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

addImageItem()

Agrega un nuevo elemento de diseño que muestra una imagen.

// 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);

Volver

ImageItem: Es el elemento recién creado.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

addListItem()

Agrega un nuevo elemento de pregunta que permite al encuestado seleccionar una opción de una lista desplegable.

// 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')]);

Volver

ListItem: Es el elemento recién creado.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

addMultipleChoiceItem()

Agrega un nuevo elemento de pregunta que permite que el encuestado seleccione una opción de una lista de botones de selección o un campo opcional "otro".

// 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]);

Volver

MultipleChoiceItem: Es el elemento recién creado.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

addPageBreakItem()

Agrega un nuevo elemento de diseño que marca el inicio de una página.

// 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);

Volver

PageBreakItem: Es el elemento recién creado.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

addParagraphTextItem()

Agrega un nuevo elemento de pregunta que permite que el encuestado ingrese un bloque de texto.

// 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?');

Volver

ParagraphTextItem: Es el elemento recién creado.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

addPublishedReader(emailAddress)

Agrega el usuario determinado a la lista de personas que responden para el Form. Si el usuario ya estaba en la lista de editores o usuarios, este método no tiene efecto.

// 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 responder to the form.
// TODO(developer): replace the emailAddress.
form.addPublishedReader('responder@uni.edu');

Parámetros

NombreTipoDescripción
emailAddressStringEs la dirección de correo electrónico del usuario que quieres agregar.

Volver

Form: Este Form, para encadenar.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

addPublishedReader(user)

Agrega el usuario determinado a la lista de personas que responden para el Form. Si el usuario ya estaba en la lista de editores o usuarios, este método no tiene efecto.

// Opens the Forms file by its URL.
// TODO(developer): Replace the URL with your own.
const oldForm = FormApp.openByUrl('https://docs.google.com/forms/d/abc123456/edit');

// Gets the responders from the old form.
const users = oldForm.getPublishedReaders();

// Creates a new form.
const newForm = FormApp.create('New form');

// Adds the responders to a new form.
users.forEach(user => newForm.addPublishedReader(user));

Parámetros

NombreTipoDescripción
userUserEs una representación del usuario que se agregará.

Volver

Form: Este Form, para encadenar.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

addPublishedReaders(emailAddresses)

Agrega el array de usuarios determinado a la lista de personas que respondieron para Form. Si el usuario ya estaba en la lista de editores o usuarios, este método no tiene efecto.

// 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 responders to the form.
// TODO(developer): replace the emailAddress.
form.addPublishedReaders(['responder1@uni.edu', 'responder2@uni.edu']);

Parámetros

NombreTipoDescripción
emailAddressesString[]Es un array de direcciones de correo electrónico de los usuarios que se agregarán.

Volver

Form: Este Form, para encadenar.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

addRatingItem()

Agrega un nuevo elemento de pregunta que permite que el encuestado otorgue una calificación.

// 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 rating item.
const item = form.addRatingItem();

Volver

RatingItem: Es el elemento recién creado.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

addScaleItem()

Agrega un nuevo elemento de pregunta que permite que el encuestado elija una opción de una secuencia numerada de botones de selección.

// 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');

Volver

ScaleItem: Es el elemento recién creado.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

addSectionHeaderItem()

Agrega un nuevo elemento de diseño que indica visualmente el comienzo de una sección.

// 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');

Volver

SectionHeaderItem: Es el elemento recién creado.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

addTextItem()

Agrega un nuevo elemento de pregunta que permite que el encuestado ingrese una sola línea de texto.

// 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?');

Volver

TextItem: Es el elemento recién creado.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

addTimeItem()

Agrega un nuevo elemento de pregunta que permite que el encuestado indique una hora del día.

// 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?');

Volver

TimeItem: Es el elemento recién creado.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

addVideoItem()

Agrega un nuevo elemento de diseño que muestra un video.

// 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);

Volver

VideoItem: Es el elemento recién creado.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

canEditResponse()

Determina si el formulario muestra un vínculo para editar una respuesta después de enviarla.

Independientemente de este parámetro de configuración, el método FormResponse.getEditResponseUrl() permite que un autor de secuencia de comandos que tenga acceso de edición al formulario genere una URL que se pueda usar para editar una respuesta.

// 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);

Volver

Boolean: true si el formulario muestra un vínculo "Editar tu respuesta"; false si no lo muestra.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

collectsEmail()

Determina si el formulario recopila las direcciones de correo electrónico de las personas que responden.

// 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);

Volver

Boolean: true si el formulario recopila direcciones de correo electrónico; false si no lo hace.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

createResponse()

Crea una respuesta nueva al formulario. Para responder un elemento de pregunta, crea un ItemResponse a partir del elemento y, luego, adjúntalo a esta respuesta del formulario llamando a FormResponse.withItemResponse(response). Para guardar la respuesta ensamblada, llama a FormResponse.submit().

Volver

FormResponse: Es la respuesta del formulario recién creada.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

deleteAllResponses()

Borra todas las respuestas enviadas del almacén de respuestas del formulario. Este método no borra las copias de las respuestas almacenadas en un destino de respuesta externo (como una hoja de cálculo), pero borra la vista de resumen del formulario.

Volver

Form: Este Form, para encadenar.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

deleteItem(index)

Borra el elemento en un índice determinado entre todos los elementos del formulario. Lanza una excepción de secuencias de comandos si no existe ningún elemento en el índice determinado.

// 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);
}

Parámetros

NombreTipoDescripción
indexIntegerEs el índice del elemento entre todos los elementos del formulario.

Arroja

Error: Si no existe ningún elemento en el índice determinado.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

deleteItem(item)

Borra el elemento determinado. Genera una excepción de secuencias de comandos si el elemento ya se borró.

// 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);
}

Parámetros

NombreTipoDescripción
itemItemEs el elemento que se borrará.

Arroja

Error: Si el elemento no existe en el formulario

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

deleteResponse(responseId)

Borra una sola respuesta del almacén de respuestas del formulario. Este método no borra las copias de las respuestas almacenadas en un destino de respuesta externo (como una hoja de cálculo), pero quita la respuesta de la vista de resumen del formulario. El ID de respuesta se puede recuperar con FormResponse.getId().

Parámetros

NombreTipoDescripción
responseIdStringEl ID de la respuesta del formulario que se borrará.

Volver

Form: Este Form, para encadenar.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

getConfirmationMessage()

Obtiene el mensaje de confirmación del formulario.

// 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);

Volver

String: Es el mensaje de confirmación del formulario.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

getCustomClosedFormMessage()

Obtiene el mensaje personalizado que se muestra si el formulario no acepta respuestas, o una cadena vacía si no se configuró ningún mensaje personalizado.

// 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);

Volver

String: Es el mensaje personalizado que se mostrará si el formulario no acepta respuestas, o una cadena vacía si no se configuró ningún mensaje personalizado.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

getDescription()

Obtiene la descripción del formulario.

// 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);

Volver

String: Es la descripción del formulario.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

getDestinationId()

Obtiene el ID del destino de la respuesta del formulario.

// 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);

Volver

String: Es el ID del destino de respuesta del formulario.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

getDestinationType()

Obtiene el tipo de destino de respuesta del formulario.

// 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);

Volver

DestinationType: Es el tipo de destino de respuesta del formulario.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

getEditUrl()

Obtiene la URL que se puede usar para acceder al modo de edición del formulario.

// 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);

Volver

String: Es la URL para editar el formulario.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

getEditors()

Obtiene la lista de editores de este Form.

Volver

User[]: Es un array de usuarios con permiso de edición.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

getId()

Obtiene el ID del formulario.

// 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);

Volver

String: Es el ID del formulario.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

getItemById(id)

Obtiene el elemento con un ID determinado. Muestra null si el ID no corresponde a un elemento del formulario.

// 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);

Parámetros

NombreTipoDescripción
idIntegerEs el ID del artículo.

Volver

Item: Es el elemento con el ID determinado o null si el elemento no existe en el formulario.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

getItems()

Obtiene un array de todos los elementos del formulario.

// 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);

Volver

Item[]: Es un array de todos los elementos del formulario.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

getItems(itemType)

Obtiene un array de todos los elementos de un tipo determinado.

// 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);

Parámetros

NombreTipoDescripción
itemTypeItemTypeEs el tipo de elementos que se deben recuperar.

Volver

Item[]: Es un array de todos los elementos de ese tipo.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

getPublishedReaders()

Obtiene la lista de personas que respondieron para este Form.

// 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 responders for the form.
const users = form.getPublishedReaders();
users.forEach(user => console.log(user.getEmail()));

Volver

User[]: Es un array de usuarios con permiso de respuesta.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

getPublishedUrl()

Obtiene la URL que se puede usar para responder el formulario.

// 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);

Volver

String: Es la URL para responder el formulario.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

getResponse(responseId)

Obtiene una sola respuesta del formulario según su ID de respuesta. Los IDs de respuesta se pueden recuperar de FormResponse.getId().

Parámetros

NombreTipoDescripción
responseIdStringEs el ID de la respuesta del formulario.

Volver

FormResponse: Es la respuesta del formulario.

Arroja

Error: Si la respuesta no existe

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

getResponses()

Obtiene un array de todas las respuestas del formulario.

Volver

FormResponse[]: Es un array de todas las respuestas del formulario.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

getResponses(timestamp)

Obtiene un array de todas las respuestas del formulario después de una fecha y hora determinadas.

Parámetros

NombreTipoDescripción
timestampDateEs la fecha y hora más antiguas para las que se deben mostrar las respuestas del formulario.

Volver

FormResponse[]: Es la lista de respuestas del formulario.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

getShuffleQuestions()

Determina si el orden de las preguntas en cada página del formulario es aleatorio.

Volver

Boolean: true si el orden de las preguntas en cada página del formulario es aleatorio; false si no.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

getSummaryUrl()

Obtiene la URL que se puede usar para ver un resumen de las respuestas del formulario. A menos que setPublishingSummary(enabled) se establezca como true, solo los usuarios con permiso de edición en el formulario podrán acceder a la 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);

Volver

String: Es la URL para ver un resumen de las respuestas.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

getTitle()

Obtiene el título del formulario.

// 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);

Volver

String: Es el título del formulario.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

hasLimitOneResponsePerUser()

Determina si el formulario permite una sola respuesta por persona. Si el valor es true, la secuencia de comandos no puede enviar respuestas de formularios.

Volver

Boolean: Es true si el formulario solo permite una respuesta por persona, y false si no es así.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

hasProgressBar()

Determina si el formulario muestra una barra de progreso.

// 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());

Volver

Boolean: true si el formulario muestra una barra de progreso; false si no la muestra.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

Determina si el formulario muestra un vínculo para enviar otra respuesta después de que un participante lo completa.

// 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());

Volver

Boolean: true si el formulario muestra un vínculo "Enviar otra respuesta"; false si no lo hace.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

isAcceptingResponses()

Determina si el formulario acepta respuestas en un momento determinado. Se reemplaza cuando se cambia el estado de publicación del formulario.

// 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);

Volver

Boolean: Es true si el formulario acepta respuestas; false si no es así.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

isPublished()

Determina si el formulario está publicado.

Esta función solo está disponible para los formularios que admiten la publicación. Usa supportsAdvancedResponderPermissions() para verificar si el formulario admite la publicación.

// 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 whether the form is published or not and logs it to the console.
console.log(form.isPublished());

Volver

Boolean: true si el formulario está publicado; false si no lo está.

Arroja

Error: Si se lo llama en formularios no compatibles.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

isPublishingSummary()

Determina si el formulario muestra un vínculo para ver un resumen de las respuestas después de que un encuestado lo completa.

// 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);

Volver

Boolean: true si el formulario muestra un vínculo "Ver respuestas anteriores"; false si no lo hace.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

isQuiz()

Determina si el formulario es un cuestionario.

// 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());

Volver

Boolean: Es true si el formulario acepta respuestas; false si no es así.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

moveItem(from, to)

Mueve un elemento de un índice determinado entre todos los elementos del formulario a otro índice determinado. Genera una excepción de secuencia de comandos si el índice to está fuera de los límites.

// 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);

Parámetros

NombreTipoDescripción
fromIntegerEs el índice actual del elemento entre todos los elementos del formulario.
toIntegerEs el índice nuevo del elemento entre todos los elementos del formulario.

Volver

Item: Es el elemento que se movió.

Arroja

Error: Si alguno de los índices está fuera de los límites.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

moveItem(item, toIndex)

Mueve un elemento determinado a un índice determinado entre todos los elementos del formulario. Genera una excepción de secuencias de comandos si el índice determinado está fuera de los límites.

// 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);

Parámetros

NombreTipoDescripción
itemItemEl elemento que se moverá.
toIndexIntegerEs el índice nuevo del elemento entre todos los elementos del formulario.

Volver

Item: Es el elemento que se movió.

Arroja

Error: Si el índice está fuera de los límites.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

removeDestination()

Desvincula el formulario de su destino de respuesta actual. El destino anterior desvinculado aún conserva una copia de todas las respuestas anteriores. Todos los formularios, incluidos los que no tienen un destino establecido de forma explícita, guardan una copia de las respuestas en el almacén de respuestas del formulario. Si el formulario no tiene un destino de respuesta, este método no tiene efecto.

// 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();

Volver

Form: Este Form, para encadenar.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

removeEditor(emailAddress)

Quita al usuario determinado de la lista de editores de Form. Este método no impide que los usuarios accedan a Form si pertenecen a una clase de usuarios que tienen acceso general, por ejemplo, si Form se comparte con todo el dominio del usuario o si Form se encuentra en una unidad compartida a la que el usuario puede acceder.

En el caso de los archivos de Drive, también se quita al usuario de la lista de lectores y personas que respondieron.

// Opens the Forms file by its URL.
// TODO(developer): Replace the URL with your own.
const form = FormApp.openByUrl('https://docs.google.com/forms/d/abc123456/edit');

// Removes the editor from the form.
// TODO(developer): replace the emailAddress.
form.removeEditor('editor@uni.edu');

Parámetros

NombreTipoDescripción
emailAddressStringEs la dirección de correo electrónico del usuario que quieres quitar.

Volver

Form: Este Form, para encadenar.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

removeEditor(user)

Quita al usuario determinado de la lista de editores de Form. Este método no impide que los usuarios accedan a Form si pertenecen a una clase de usuarios que tienen acceso general, por ejemplo, si Form se comparte con todo el dominio del usuario o si Form se encuentra en una unidad compartida a la que el usuario puede acceder.

En el caso de los archivos de Drive, también se quita al usuario de la lista de usuarios con permiso de lectura.

// Opens the Forms file by its URL.
// TODO(developer): Replace the URL with your own.
const form1 = FormApp.openByUrl('https://docs.google.com/forms/d/abc123456/edit');

// Gets the editors from the form.
const users = form1.getEditors();

// Opens another form.
// TODO(developer): Replace the URL with your own.
const form2 = FormApp.openByUrl('https://docs.google.com/forms/d/abc123456/edit');

// Removes editors from the form.
users.forEach(user => form2.removeEditor(user));

Parámetros

NombreTipoDescripción
userUserEs una representación del usuario que se quitará.

Volver

Form: Este Form, para encadenar.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

removePublishedReader(emailAddress)

Quita al usuario determinado de la lista de personas que respondieron para el Form. Este método no impide que los usuarios accedan a Form si pertenecen a una clase de usuarios que tienen acceso general, por ejemplo, si Form se comparte con todo el dominio del usuario o si Form se encuentra en una unidad compartida a la que el usuario puede acceder.

En el caso de los archivos de Drive, también se quita al usuario de la lista de usuarios que pueden ver y editar el archivo.

// Opens the Forms file by its URL.
// TODO(developer): Replace the URL with your own.
const form = FormApp.openByUrl('https://docs.google.com/forms/d/abc123456/edit');

// Removes the responders from the form.
// TODO(developer): replace the emailAddress.
form.removePublishedReader('responder1@uni.edu');

Parámetros

NombreTipoDescripción
emailAddressStringEs la dirección de correo electrónico del usuario que quieres quitar.

Volver

Form: Este Form, para encadenar.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

removePublishedReader(user)

Quita al usuario determinado de la lista de personas que respondieron para el Form. Este método no impide que los usuarios accedan a Form si pertenecen a una clase de usuarios que tienen acceso general, por ejemplo, si Form se comparte con todo el dominio del usuario o si Form se encuentra en una unidad compartida a la que el usuario puede acceder.

En el caso de los archivos de Drive, también se quita al usuario de la lista de usuarios que pueden ver y editar el archivo.

// Opens the Forms file by its URL.
// TODO(developer): Replace the URL with your own.
const form1 = FormApp.openByUrl('https://docs.google.com/forms/d/abc123456/edit');

// Gets the responders from the form.
const users = form1.getPublishedReaders();

// Opens another form.
// TODO(developer): Replace the URL with your own.
const form2 = FormApp.openByUrl('https://docs.google.com/forms/d/abc123456/edit');

// Removes responders from the form.
users.forEach(user => form2.removePublishedReader(user));

Parámetros

NombreTipoDescripción
userUserEs una representación del usuario que se quitará.

Volver

Form: Este Form, para encadenar.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

setAcceptingResponses(enabled)

Establece si el formulario acepta respuestas en este momento. El valor predeterminado para los formularios nuevos es true. El estado se reemplaza cuando se cambia el estado de publicación del formulario.

// 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());

Parámetros

NombreTipoDescripción
enabledBooleantrue si el formulario debe aceptar respuestas; false si no debe hacerlo.

Volver

Form: Este Form, para encadenar.

Arroja

Error: Si está habilitado en un formulario no publicado.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

setAllowResponseEdits(enabled)

Establece si el formulario muestra un vínculo para editar una respuesta después de enviarla. El valor predeterminado para los formularios nuevos es false.

Independientemente de este parámetro de configuración, el método FormResponse.getEditResponseUrl() permite que un autor de secuencia de comandos que tenga permiso de edición en el formulario genere una URL que se pueda usar para editar una respuesta.

// 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());

Parámetros

NombreTipoDescripción
enabledBooleantrue si el formulario debe mostrar un vínculo "Editar tu respuesta"; false si no es así.

Volver

Form: Este Form, para encadenar.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

setCollectEmail(collect)

Establece si el formulario recopila las direcciones de correo electrónico de las personas que responden. El valor predeterminado para los formularios nuevos es 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);

Parámetros

NombreTipoDescripción
collectBooleantrue si el formulario debe recopilar direcciones de correo electrónico; false si no es así.

Volver

Form: Este Form, para encadenar.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

setConfirmationMessage(message)

Establece el mensaje de confirmación del formulario.

// 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);

Parámetros

NombreTipoDescripción
messageStringEl nuevo mensaje de confirmación del formulario.

Volver

Form: Este Form, para encadenar.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

setCustomClosedFormMessage(message)

Establece el mensaje que se mostrará si el formulario no acepta respuestas. Si no se establece un mensaje, el formulario usa uno predeterminado.

// 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);

Parámetros

NombreTipoDescripción
messageStringEs el mensaje que se mostrará si el formulario no acepta respuestas.

Volver

Form: Este Form, para encadenar.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

setDescription(description)

Establece la descripción del formulario.

Parámetros

NombreTipoDescripción
descriptionStringLa nueva descripción del formulario.

Volver

Form: Este Form, para encadenar.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

setDestination(type, id)

Establece el destino en el que se guardan las respuestas del formulario. Todos los formularios, incluidos aquellos que no tienen un destino establecido de forma explícita, guardan una copia de las respuestas en el almacén de respuestas del formulario.

Parámetros

NombreTipoDescripción
typeDestinationTypeEs el tipo de destino de respuesta del formulario.
idStringEl ID del destino de respuesta del formulario.

Volver

Form: Este Form, para encadenar.

Arroja

Error: Si el ID de destino proporcionado no es válido

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

setIsQuiz(enabled)

Establece si el formulario es un cuestionario. El valor predeterminado para los formularios nuevos es false.

Las preguntas con calificación solo se permiten en los cuestionarios, por lo que si estableces este valor en false, se quitarán todas las opciones de calificación de todas las preguntas.

La configuración de cuestionarios solo está disponible en la nueva IU de Formularios. Si conviertes un formulario en un cuestionario, este se usará con la nueva IU.

// 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());

Parámetros

NombreTipoDescripción
enabledBooleantrue si se deben habilitar las funciones de cuestionario para el formulario; false si no.

Volver

Form: Este Form, para encadenar.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

setLimitOneResponsePerUser(enabled)

Establece si el formulario permite una sola respuesta por persona. El valor predeterminado para los formularios nuevos es false. Si el valor se establece como true, la secuencia de comandos no puede enviar respuestas de formularios.

Parámetros

NombreTipoDescripción
enabledBooleantrue si el formulario debe permitir solo una respuesta por persona que responde; false si no es así.

Volver

Form: Este Form, para encadenar.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

setProgressBar(enabled)

Establece si el formulario tiene una barra de progreso. El valor predeterminado para los formularios nuevos es 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());

Parámetros

NombreTipoDescripción
enabledBooleantrue si el formulario muestra una barra de progreso; false si no la muestra.

Volver

Form: Este Form, para encadenar.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

setPublished(enabled)

Establece si el formulario está publicado. El valor predeterminado para los formularios nuevos es true.

Esta función solo está disponible para los formularios que admiten la publicación. Usa supportsAdvancedResponderPermissions() para verificar si el formulario admite la publicación.

Los formularios deben estar publicados para que las personas que responden puedan acceder a ellos. Este método reemplaza las llamadas a setAcceptingResponses(enabled).

// 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',
);

// Publishes the form before sharing it.
form.setPublished(true);

// Checks whether the form is published or not and logs it to the console.
console.log(form.isPublished());

Parámetros

NombreTipoDescripción
enabledBooleantrue si se debe publicar el formulario, false si no.

Volver

Form: Este Form, para encadenar.

Arroja

Error: Si se lo llama en formularios no compatibles.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

setPublishingSummary(enabled)

Establece si el formulario muestra un vínculo para ver un resumen de las respuestas después de que una persona que responde lo envía. El valor predeterminado para los formularios nuevos es false.

Parámetros

NombreTipoDescripción
enabledBooleantrue si el formulario debe mostrar un vínculo "Ver respuestas anteriores"; false si no.

Volver

Form: Este Form, para encadenar.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

setShowLinkToRespondAgain(enabled)

Establece si el formulario muestra un vínculo para enviar otra respuesta después de que un encuestado lo complete. El valor predeterminado para los formularios nuevos es true.

Parámetros

NombreTipoDescripción
enabledBooleantrue si el formulario debe mostrar un vínculo "Enviar otra respuesta"; false si no.

Volver

Form: Este Form, para encadenar.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

setShuffleQuestions(shuffle)

Establece si el orden de las preguntas en cada página del formulario es aleatorio.

Parámetros

NombreTipoDescripción
shuffleBooleantrue si el orden de las preguntas en cada página del formulario debe ser aleatorio; false si no.

Volver

Form: Este Form, para encadenar.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

setTitle(title)

Establece el título del formulario.

Parámetros

NombreTipoDescripción
titleStringEs el nuevo título del formulario.

Volver

Form: Este Form, para encadenar.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

shortenFormUrl(url)

Convierte una URL larga de un formulario en una URL corta. Muestra una excepción si la URL larga no pertenece a Formularios de Google.

Parámetros

NombreTipoDescripción
urlStringLa URL que se acortará.

Volver

String: Es una URL con el formato http://goo.gl/forms/1234.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

submitGrades(responses)

Envía calificaciones para las FormResponses determinadas.

Si tu código incluye un activador onFormSubmit, llamar a submitGrades() activa la condición onFormSubmit y genera un bucle infinito. Para evitar el bucle infinito, agrega código que verifique si ya existen calificaciones antes de llamar a submitGrades().

Parámetros

NombreTipoDescripción
responsesFormResponse[]Es un array de todas las respuestas del formulario.

Volver

Form: Este Form, para encadenar.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

supportsAdvancedResponderPermissions()

Determina si el formulario admite la publicación. Este método se usa para determinar si los métodos setPublished(enabled) y isPublished(), y los permisos del respondedor, están disponibles.

// 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 whether the form supports publishing or not and logs it to the
// console.
console.log(form.supportsAdvancedResponderPermissions());

Volver

Boolean: true si el formulario admite la publicación; false si no es así.

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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

Métodos obsoletos

Obsoleto. Esta función dejó de estar disponible y no se debe usar en secuencias de comandos nuevas.

Determina si el formulario requiere que las personas que responden accedan a una cuenta en el mismo dominio o un subdominio antes de responder.

// 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 requires respondents to log in to a Google Workspace
// account before responding and logs it to the console.
const login = form.requiresLogin();
console.log(login);

Volver

Boolean: true si el formulario requiere que los usuarios accedan; false si no lo hace.


Obsoleto. Esta función dejó de estar disponible y no se debe usar en secuencias de comandos nuevas.

Establece si el formulario requiere que las personas que respondan accedan a una cuenta en el mismo dominio o un subdominio antes de responder. El valor predeterminado para los formularios nuevos es false, a menos que un administrador del dominio cambie el valor predeterminado.

Esta función solo está disponible para los formularios creados por usuarios de Google Workspace. No se puede exigir que los usuarios de otros tipos de Cuentas de Google accedan.

// 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 so that users must log in to their Google Workspace account.
form.setRequireLogin(true);

// Checks whether the form requires login or not and logs it to the console.
console.log(form.requiresLogin());

Parámetros

NombreTipoDescripción
requireLoginBooleantrue si el formulario requiere que los usuarios accedan; false si no es así.

Volver

Form: Es el formulario actual (para encadenar).

Autorización

Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:

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