La API de Formularios de Google es una interfaz RESTful que te permite crear y modificar formularios y cuestionarios, recuperar respuestas de formularios y calificaciones de cuestionarios, configurar claves de respuestas de cuestionarios con comentarios automáticos y recibir notificaciones push. Los usos más comunes de esta API incluyen las siguientes tareas:
- Crear un formulario o cuestionario
- Publicar y administrar a los encuestados
- Actualizar un formulario o cuestionario
- Recuperar respuestas de un formulario o cuestionario
- Leer metadatos y contenido de formularios
- Configurar y recibir notificaciones push
- La siguiente es una lista de términos comunes que se usan en la API de Formularios:
- Form
Un documento de Formularios de Google, creado y almacenado en Drive. Cada formulario está representado por un
Formrecurso y tiene un valorformIdúnico, que contiene letras, números, guiones o guiones bajos. Puedes encontrar el ID del formulario en una URL de Formularios:https://docs.google.com/forms/d/FORM_ID/edit- Quiz
Un tipo específico de documento de Formularios de Google que permite calificar las respuestas del formulario en función de una clave de respuestas. Solo se puede crear un cuestionario con el
batchUpdate()método para actualizar la configuraciónisQuizen un formulario existente atrue.- Grading
- Un valor de puntos, una clave de respuestas y comentarios para una pregunta, que se aplican cuando
isQuizestrue. Representado por elGradingrecurso. - Comentarios
- Una respuesta que se le da al usuario final cuando responde una pregunta en un cuestionario,
representada por el
Feedbackrecurso.
- Elemento
Un solo elemento en un formulario, representado por el Item recurso.
Itemes un elemento repetitivo que puede contener una sección, un grupo de preguntas, una pregunta, texto, una imagen o un video.- Pregunta
Una sola pregunta en el formulario, representada por el
Questionrecurso.- Grupo de preguntas
Un grupo de preguntas que comparten el mismo conjunto de respuestas posibles (por ejemplo, una cuadrícula de calificaciones del 1 al 5). Representado por el
QuestionGroupItemrecurso.- Sección
Una sección es una forma de dividir un formulario en varias páginas y agregar lógica condicional (como mostrar solo ciertas preguntas según la respuesta del usuario). Las secciones corresponden al
PageBreakItemrecurso.- Respuesta
La respuesta del usuario final a una pregunta, representada por el
Answerrecurso. Incluye información de la calificación (si está presente), metadatos y el contenido de la respuesta.- Respuesta
El envío de un formulario por parte del usuario final, representado por el
FormResponserecurso.- Reloj
Un activador que hace un seguimiento de los cambios en los cambios de esquema del formulario (como las ediciones de preguntas) o los envíos de respuestas del formulario y envía una notificación push cuando se produce un cambio. Representado por el
Watchrecurso.
Estructura del formulario
Cuando se administran formularios y cuestionarios, comprender cómo especificar diferentes campos puede ser complicado, ya que muchos de los objetos del formulario se pueden anidar entre sí de varias maneras. Para ver cómo la representación visual de un formulario se asigna a los campos, te recomendamos que uses la IU para crear algunos ejemplos de formularios que podría generar tu aplicación. Luego, recupera el JSON correspondiente
con el
forms.get() método
para que puedas comparar. Por ejemplo,
este cuestionario de ejemplo
corresponde al siguiente JSON:
{
"formId": "FORM_ID",
"info": {
"title": "Famous Black Women",
"description": "Please complete this quiz based off of this week's readings for class.",
"documentTitle": "Famous Black Women"
},
"settings": {
"quizSettings": {
"isQuiz": true
}
},
"revisionId": "00000021",
"responderUri": "https://docs.google.com/forms/d/e/1FAIpQLSd0iBLPh4suZoGW938EU1WIxzObQv_jXto0nT2U8HH2KsI5dg/viewform",
"items": [
{
"itemId": "5d9f9786",
"imageItem": {
"image": {
"contentUri": "DIRECT_URL",
"properties": {
"alignment": "LEFT"
}
}
}
},
{
"itemId": "72b30353",
"title": "Which African American woman authored \"I Know Why the Caged Bird Sings\"?",
"questionItem": {
"question": {
"questionId": "25405d4e",
"required": true,
"grading": {
"pointValue": 2,
"correctAnswers": {
"answers": [
{
"value": "Maya Angelou"
}
]
}
},
"choiceQuestion": {
"type": "RADIO",
"options": [
{
"value": "Maya Angelou"
},
{
"value": "bell hooks"
},
{
"value": "Alice Walker"
},
{
"value": "Roxane Gay"
}
]
}
}
}
},
{
"itemId": "0a4859c8",
"title": "Who was the first Dominican-American woman elected to state office?",
"questionItem": {
"question": {
"questionId": "37fff47a",
"grading": {
"pointValue": 2,
"correctAnswers": {
"answers": [
{
"value": "Grace Diaz"
}
]
}
},
"choiceQuestion": {
"type": "RADIO",
"options": [
{
"value": "Rosa Clemente"
},
{
"value": "Grace Diaz"
},
{
"value": "Juana Matias"
},
{
"value": "Sabrina Matos"
}
]
}
}
}
}
],
"publishSettings" : {
"isPublished": true,
"isAcceptingResponses": true
}
}
Próximos pasos
- Para obtener información sobre el desarrollo con las APIs de Google Workspace, incluido el manejo de la autenticación y la autorización, consulta Comienza como desarrollador de Workspace.
- Para obtener información sobre cómo configurar y ejecutar una app básica de la API de Formularios, lee la descripción general de las guías de inicio rápido.