Class Form

Form

Es un formulario que contiene propiedades y elementos generales. Las propiedades incluyen el título, la configuración y dónde se almacenan las respuestas. Los elementos incluyen preguntas, como casillas de verificación o elementos de radio, mientras el diseño se refieren a aspectos como saltos de página. Se puede acceder a los formularios o crearlos desde FormApp.

// Open a form by ID and create a new spreadsheet.
var form = FormApp.openById('1234567890abcdefghijklmnopqrstuvwxyz');
var 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 le permite a la que el encuestado seleccione varias opciones por fila desde una secuencia de casillas de verificación.
addCheckboxItem()CheckboxItemAgrega un nuevo elemento de la pregunta que permite a la persona que responde seleccionar una o más casillas de verificación, como así como una opción "other" .
addDateItem()DateItemAgrega un nuevo elemento de pregunta que permite al encuestado indicar una fecha.
addDateTimeItem()DateTimeItemAgrega un nuevo elemento de pregunta que permite al encuestado indicar una fecha y hora.
addDurationItem()DurationItemAgrega un nuevo elemento de pregunta que permite al encuestado indicar una cantidad de tiempo.
addEditor(emailAddress)FormAgrega el usuario determinado a la lista de editores de Form.
addEditor(user)FormAgrega el usuario determinado a la lista de editores de Form.
addEditors(emailAddresses)FormAgrega el array determinado de usuarios a la lista de editores de Form.
addGridItem()GridItemAgrega un nuevo elemento de pregunta, presentado como una cuadrícula de columnas y filas, que le permite a la que el encuestado 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 un menú desplegable lista.
addMultipleChoiceItem()MultipleChoiceItemAgrega un nuevo elemento de la pregunta que permite que el encuestado seleccione una opción de una lista de botones de selección botones u una opción "other" .
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 al encuestado ingresar un bloque de texto.
addScaleItem()ScaleItemAgrega un nuevo elemento de pregunta que permite al encuestado elegir una opción de un número secuencia de botones de selección.
addSectionHeaderItem()SectionHeaderItemAgrega un nuevo elemento de diseño que indica visualmente el inicio de una sección.
addTextItem()TextItemAgrega un nuevo elemento de pregunta para permitir que el encuestado ingrese una sola línea de texto.
addTimeItem()TimeItemAgrega un nuevo elemento de pregunta que permite al encuestado indicar 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 datos de direcciones de correo electrónico.
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 de un índice determinado entre todos los elementos del formulario.
deleteItem(item)voidBorra el elemento especificado.
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 está vacío si no se establece ningún mensaje personalizado.
getDescription()StringObtiene la descripción del formulario.
getDestinationId()StringObtiene el ID del destino de respuesta del formulario.
getDestinationType()DestinationTypeObtiene el tipo del destino de respuesta del formulario.
getEditUrl()StringObtiene la URL que se puede utilizar 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 en el formulario.
getItems(itemType)Item[]Obtiene un array de todos los elementos de un tipo determinado.
getPublishedUrl()StringObtiene la URL que se puede usar para responder el formulario.
getResponse(responseId)FormResponseObtiene una sola respuesta de formulario en función de 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 solo permite una respuesta por encuestado.
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 encuestado muestra completa el formulario.
isAcceptingResponses()BooleanDetermina si el formulario acepta respuestas actualmente.
isPublishingSummary()BooleanDetermina si el formulario muestra un vínculo para ver un resumen de las respuestas después de que un encuestado muestra completa el formulario.
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.
requiresLogin()BooleanDetermina si el formulario requiere que los encuestados accedan a una cuenta del mismo dominio o un subdominio antes de responder.
setAcceptingResponses(enabled)FormEstablece si el formulario acepta respuestas actualmente.
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 datos de direcciones de correo electrónico.
setConfirmationMessage(message)FormEstablece el mensaje de confirmación del formulario.
setCustomClosedFormMessage(message)FormConfigura 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 solo permite una respuesta por encuestado.
setProgressBar(enabled)FormEstablece si el formulario tiene una barra de progreso.
setPublishingSummary(enabled)FormEstablece si el formulario muestra un vínculo para ver un resumen de las respuestas después de que un encuestado envía uno el formulario.
setRequireLogin(requireLogin)FormEstablece si el formulario requiere que los encuestados accedan a una cuenta del mismo dominio o a una el subdominio antes de responder.
setShowLinkToRespondAgain(enabled)FormEstablece si el formulario muestra un vínculo para enviar otra respuesta después de que el encuestado completa el formulario.
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 las calificaciones de las FormResponses proporcionadas.

Documentación detallada

addCheckboxGridItem()

Agrega un nuevo elemento de pregunta, presentado como una cuadrícula de columnas y filas, que le permite a la que el encuestado seleccione varias opciones por fila desde 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();

// Sets the title 'Where did you celebrate New Year's?'
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 la pregunta que permite a la persona que responde seleccionar una o más casillas de verificación, como así como una opción "other" .

// 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 al encuestado indicar 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 al encuestado indicar 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 al encuestado indicar una cantidad de tiempo.

// 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 determinado a la lista de editores de Form. Si el usuario ya estaba en la lista de usuarios, este método asciende al usuario fuera de la lista de usuarios.

Parámetros

NombreTipoDescripción
emailAddressStringLa dirección de correo electrónico del usuario que se agregará.

Volver

Form: Este Form, para el encadenamiento.

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 determinado a la lista de editores de Form. Si el usuario ya estaba en la lista de usuarios, este método asciende al usuario fuera de la lista de usuarios.

Parámetros

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

Volver

Form: Este Form, para el encadenamiento.

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 determinado de usuarios a la lista de editores de Form. Si alguno de los usuarios ya estaban en la lista de usuarios; este método los hace desaparecer de la lista de usuarios.

Parámetros

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

Volver

Form: Este Form, para el encadenamiento.

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 le permite a la que el encuestado 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 un menú desplegable 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 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 la pregunta que permite que el encuestado seleccione una opción de una lista de botones de selección botones u una opción "other" .

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

addScaleItem()

Agrega un nuevo elemento de pregunta que permite al encuestado elegir una opción de un número 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 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 inicio 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 para permitir 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 al encuestado indicar 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 esta configuración, el método FormResponse.getEditResponseUrl() permite un autor de secuencias de comandos que tiene acceso de edición al formulario para generar una URL que se pueda usar para editar un 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 el mensaje “Edita tu respuesta” vínculo; false, si es 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

collectsEmail()

Determina si el formulario recopila datos de direcciones de correo electrónico.

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

createResponse()

Crea una respuesta nueva al formulario. Para responder un elemento de pregunta, crea un ItemResponse. del elemento y, luego, adjúntalo a esta respuesta de formulario llamando a FormResponse.withItemResponse(response). Para guardar la respuesta creada, 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 copias de las respuestas almacenadas en un destino de respuesta externo (como una hoja de cálculo), pero borrar la vista de resumen del formulario.

Volver

Form: Este Form, para el encadenamiento.

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 de un índice determinado entre todos los elementos del formulario. Muestra una excepción a la secuencia de comandos. si no existe ningún elemento en el índice indicado.

// 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
indexIntegerEl í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 especificado. Muestra una excepción de secuencia de comandos si ya se borró el elemento.

// 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
itemItemEl 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 de respuestas almacenadas en un destino de respuesta externo (como una hoja de cálculo), pero quita desde 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 el encadenamiento.

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 está vacío si no se establece 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 muestra si el formulario no acepta respuestas o está vacío. si no se establece 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 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 del 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 utilizar 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. Devuelve null si el ID no corresponde a un elemento en 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 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 en 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 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 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(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
itemTypeItemTypeEl tipo de elementos que se recuperarán.

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

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 en la que se debe 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 de formulario en función de su ID de respuesta. Los IDs de respuesta se pueden recuperar desde FormResponse.getId().

Parámetros

NombreTipoDescripción
responseIdStringEl 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
timestampDateLa fecha y hora más tempranas 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 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

getSummaryUrl()

Obtiene la URL que se puede usar para ver un resumen de las respuestas del formulario. A menos que se establezca setPublishingSummary(enabled) como true, solo los usuarios con permiso de edición para el elemento formulario pueda 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 solo permite una respuesta por encuestado. Si el valor es true, la secuencia de comandos no podrá enviar respuestas al formulario.

Volver

Boolean: true si el formulario permite solo una respuesta por encuestado; 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 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

Determina si el formulario muestra un vínculo para enviar otra respuesta después de que un encuestado muestra completa 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');

// 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 la opción "Enviar otra respuesta" vínculo; false, si es 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

isAcceptingResponses()

Determina si el formulario acepta respuestas actualmente.

// 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: true si el formulario acepta respuestas false si no lo es.

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 muestra completa 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');

// 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 el mensaje "Ver respuestas anteriores" vínculo; false, si es 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

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: true si el formulario acepta respuestas false si no lo es.

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. Lanza un excepción de la 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
fromIntegerEl índice actual del elemento entre todos los elementos del formulario.
toIntegerEl í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. Muestra una secuencia de comandos si el índice 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á.
toIndexIntegerEl í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 antiguo destino desvinculado aún retiene una copia de todas las respuestas anteriores. Todos los formularios, incluidos aquellos que no tienen un destino establecido explícitamente, guarde un copia de las respuestas en el almacén de respuestas del formulario. Si el formulario actualmente 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 el encadenamiento.

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 impedir que los usuarios accedan a Form si pertenecen a una clase de usuarios que tienen Acceso general (por ejemplo, si el Form se comparte con todo el dominio, o si Form está 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.

Parámetros

NombreTipoDescripción
emailAddressStringLa dirección de correo electrónico del usuario que se quitará.

Volver

Form: Este Form, para el encadenamiento.

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 impedir que los usuarios accedan a Form si pertenecen a una clase de usuarios que tienen Acceso general (por ejemplo, si el Form se comparte con todo el dominio, o si Form está 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.

Parámetros

NombreTipoDescripción
userUserUna representación del usuario que se quitará.

Volver

Form: Este Form, para el encadenamiento.

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

requiresLogin()

Determina si el formulario requiere que los encuestados accedan a una cuenta del 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 a sus cuentas false si no es así.


setAcceptingResponses(enabled)

Establece si el formulario acepta respuestas actualmente. El valor predeterminado para los formularios nuevos es 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());

Parámetros

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

Volver

Form: Este Form, para el encadenamiento.

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. La configuración predeterminada los formularios nuevos están false.

Independientemente de esta configuración, el método FormResponse.getEditResponseUrl() permite un autor de la secuencia de comandos que tiene permiso de edición del formulario para generar una URL que se pueda usar para editar un 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 la opción "Edita tu respuesta" vínculo; false si no es así.

Volver

Form: Este Form, para el encadenamiento.

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 datos de direcciones de correo electrónico. La opción predeterminada 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 es no.

Volver

Form: Este Form, para el encadenamiento.

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
messageStringNuevo mensaje de confirmación del formulario.

Volver

Form: Este Form, para el encadenamiento.

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)

Configura el mensaje que se mostrará si el formulario no acepta respuestas. Si no se establece un mensaje, el usa un mensaje 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
messageStringEl mensaje que se mostrará si el formulario no acepta respuestas.

Volver

Form: Este Form, para el encadenamiento.

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 el encadenamiento.

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 tener un destino establecido explícitamente, guarde una copia de las respuestas en el un almacén de respuestas.

Parámetros

NombreTipoDescripción
typeDestinationTypeEl tipo de destino de la respuesta del formulario.
idStringEl ID del destino de la respuesta del formulario.

Volver

Form: Este Form, para el encadenamiento.

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 establecer esto en false hará que todos opciones de calificación que se quitarán de todas las preguntas.

La configuración de cuestionarios solo está disponible en la nueva IU de Formularios. crear un formulario en un cuestionario opta por el formulario a usar 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 las funciones del cuestionario deben estar habilitadas para el formulario. false si no.

Volver

Form: Este Form, para el encadenamiento.

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 solo permite una respuesta por encuestado. La opción predeterminada para los formularios nuevos es false Si el valor se establece en true, la secuencia de comandos no podrá enviar respuestas al formulario a todos.

Parámetros

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

Volver

Form: Este Form, para el encadenamiento.

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 es así.

Volver

Form: Este Form, para el encadenamiento.

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 un encuestado envía uno el formulario. El valor predeterminado para los formularios nuevos es false.

Parámetros

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

Volver

Form: Este Form, para el encadenamiento.

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

setRequireLogin(requireLogin)

Establece si el formulario requiere que los encuestados accedan a una cuenta del mismo dominio o a una el subdominio antes de responder. El valor predeterminado para los formularios nuevos es false, a menos que se trate de un dominio administrador cambia la configuración predeterminada.

Esta función solo está disponible para formularios creados por usuarios de Google Workspace. Usuarios de otras tipos de Cuentas de Google no pueden acceder.

// 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 a sus cuentas false si es no.

Volver

Form: Es el formulario actual (para el encadenamiento).

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 el encuestado completa el formulario. El valor predeterminado para los formularios nuevos es true.

Parámetros

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

Volver

Form: Este Form, para el encadenamiento.

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 aleatorizado; false si no es así.

Volver

Form: Este Form, para el encadenamiento.

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
titleStringEl nuevo título del formulario.

Volver

Form: Este Form, para el encadenamiento.

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. Arroja una excepción si la URL larga no tiene pertenecen 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 las calificaciones de las FormResponses proporcionadas.

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

Parámetros

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

Volver

Form: Este Form, para el encadenamiento.

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