Mario Fernando Perez Martínez
Ruben Galindo
Dawlym Murillo Jaramillo
Andres Rafael Tito
Francisco de Brito Fontes
ProfesorEliana Zapata Alzate
Francisco de Brito Fontes
ProfesorDavid Morales
Ruben Galindo
Carlos Andrés Garcia Sanchez
Jhon Alexander Mosquera Vanegas
Daniel Alfredo García Serna
Wilson Montenegro
Joana Guadalupe Silva Ortega
Andres Rafael Tito
Francisco de Brito Fontes
ProfesorAndres Rafael Tito
Sandra Margarita Rivera
Ruben Galindo
Maikel Andres Vinces Mendoza
Ruben Galindo
Si alguien necesita generar el formulario de manera automática, puede hacerlo utilizando Google Apps Script.
Una vez ejecutado el script, el formulario se generará automáticamente y el sistema mostrará el enlace para acceder a él.
⚠️ Importante: después de crear el formulario, recuerden vincular una hoja de cálculo para que las respuestas queden guardadas. Esto se hace desde la pestaña “Respuestas” → “Crear hoja de cálculo” dentro del formulario.
function crearFormularioEvento() { var form = FormApp.create("Registro del evento"); form.setDescription( "Ayudar al usuario a avanzar (sin venderle todo de una vez).\n\n" + "Será el lunes 2 de febrero a las 12:00 (Colombia), 14:00 (Argentina y Chile) o 18:00 (España). " + "Es online por Zoom y el formato es directo y aplicable." ); form.setCollectEmail(true); form.addTextItem() .setTitle("Nombre") .setRequired(true); Logger.log("Formulario creado: " + form.getEditUrl()); Logger.log("Link para responder: " + form.getPublishedUrl()); }
Muchas gracias por ese valioso aporte. Lo pude mejorar con IA porque me dio falla en el submit a:
function crearFormularioEvento() {
var form = FormApp.create("Registro del evento");
form.setDescription(
"Ayudar al usuario a avanzar (sin venderle todo de una vez).\n\n" +
"Será el lunes 2 de febrero a las 12:00 (Colombia), 14:00 (Argentina y Chile) o 18:00 (España). " +
"Es online por Zoom y el formato es directo y aplicable."
);
form.setCollectEmail(true);
form.addTextItem()
.setTitle("Nombre")
.setRequired(true);
Logger.log("Formulario creado: " + form.getEditUrl());
Logger.log("Link para responder: " + form.getPublishedUrl());
}
Chicos, he visto que muchos hemos tenido el mismo problema con el tema del formulario.
1. Lo que deben hacer es subir a google Drive la tabla de excel de la clase y guardarla como google sheets en el Drive.
Profe, para solucionar mi problema me di cuenta que hay que cargar el forms a la misma carpeta de drive para que reconozca en el modulo 1 (google forms) el output (respondent email) y de esa manera corre el flujo entero sin errores
Buen aprendizaje Andres 👏 Este tipo de cosas marcan la diferencia cuando pasas de probar a construir sistemas reales.
¿Qué tan adecuado es mantener el límite del formulario en un valor mayor a 2? ¿Lo hago para que no consuma muchos créditos? o simplemente porque Make sugiere que sea 2
Hola, Eliana
Puedes definir el límite según tus necesidades. Make suele sugerir 2 como valor por defecto, pero no es una regla obligatoria.
Por ejemplo, si tu escenario se ejecuta cada 60 segundos y el límite es 2, pero en ese tiempo recibes 5 o más formularios, el sistema tardará varias ejecuciones en procesarlos todos.
En ese caso puedes:
Solo ten en cuenta algo importante: si el escenario se ejecuta y no encuentra nuevos datos, igual consumirá 1 operación.
Por eso, cuando el proceso funcione bien, vale la pena optimizar la frecuencia y el límite para evitar el consumo innecesario de operaciones.
COMPLEMENTO A LA CLASE Y SOLUCIÓN A PROBLEMAS CON FORMS
Si de casualidad están intentando copiar el ID del forms que creó el profe y que está en el archivo "Escenario-Textos-Emails.docx" no les va a servir, porque necesitan tener su propio forms que este en su drive para encontrarlo.
Ahora bien, asumiendo que han creado una carpeta en drive para este proyecto que desarrollaremos en el curso, vamos a tener algo como:
<img height="143" width="297" src="https://static.platzi.com/media/user_upload/upload-84252638-34a7-4b2a-a4ca-371c5c25d4fd.png">Una vez tengan así su carpeta, nos vamos a dirigir a la esquina superior izquierda. Verán el logo de drive y justo abajo el símbolo "+", vamos a presionar y veremos que aparece un menú de opciones: Google Sheet, Presentación, Google docs, etc. Si buscamos veremos que está "Formularios de Google (Google Forms)" le daremos enter y nos abrirá una nueva pestaña para crear dicho formulario:
<img height="330" width="290" src="https://static.platzi.com/media/user_upload/upload-874973d0-b825-47e9-b904-eb2409dc2bf3.png">Ya que tengan el forms listo con la información lista, deberán de tener algo así. Acto seguido daremos en el bóton "Publicar" o "Publish" en la esquina superior derecha: <img height="303" width="436" src="https://static.platzi.com/media/user_upload/upload-de1eadfd-c07f-4099-bd09-01ef1f0bb651.png">
Y listo, ya tendrán su form guardado en la carpeta y completamente suyo. Solo faltaría que copien el ID para usarlo en Make.
<img height="230" width="373" src="https://static.platzi.com/media/user_upload/upload-8252e052-fc31-4630-9cb5-587093cddd0d.png">Pdt: A día de hoy 15-Abr-2026, esto funciona. ¡Los mejores deseos!
Por favor tanto al profesor como a la gente de Platzi:
Como sugerencia al tema del formulario, como hacen en los recursos que pueda dar un documento con indicaciones de como tratar este tema con formulario porque la mayoria de nosotros no trabajamos con google forms y google ha actualizado temas de usos que ahora son limitaciones que antes no tenia la herramienta...
el formulario no lo puedo subir a mi google drive por esta razón se produce el error porque no lo encuentra, la pregunta es si saben como lo subo a mi Drive
La clase integra inteligencia artificial en un flujo con Google Forms: cuando alguien se registra, el escenario toma su nombre, se lo pasa a la IA con un prompt y envía por correo el mensaje de agradecimiento que esta redacta. Lo que me parece más útil es que, tras probarlo, la clase añade un filtro que valida que el módulo anterior traiga datos antes de seguir, porque sin respuestas nuevas el flujo se ejecutaría igual y fallaría. En mi lectura, un módulo de IA da libertad al texto, y por eso necesita al lado una regla determinista que decida cuándo puede actuar.
📚 CLASE: IA que Redacta Emails desde Google Forms
━━━━━━━━━━━━━━━━━━
🎯 IDEA PRINCIPAL Conecta Google Forms con Make y OpenAI para transformar respuestas de usuarios en borradores de correo personalizados y listos para enviar en tiempo real.
━━━━━━━━━━━━━━━━━━
⚡ RESUMEN ULTRA RÁPIDO
🔵 Google Forms captura solicitudes, preguntas o registros de usuarios en tiempo real.
🟢 Make recibe la respuesta e inyecta los campos clave en un prompt de IA.
🟡 OpenAI analiza la intención del usuario y redacta una respuesta ajustada al contexto.
🔴 Enviar respuestas directamente sin parsear variables genera textos desalineados o incompletos.
🟣 Crear borradores en Gmail permite validar el contenido generado por IA antes de enviarlo.
━━━━━━━━━━━━━━━━━━
🔑 LO IMPORTANTE
🔵 Trigger de Google Forms: detecta nuevas respuestas al instante utilizando el módulo Watch Responses.
🟡 Prompt contextualizado: combina el texto fijo de instrucciones con las variables dinámicas del formulario.
🔴 Prompt vago: no limitar la longitud o tono de la IA resulta en respuestas genéricas o irrelevantes.
🟢 Integración con Gmail: usa la acción Create a Draft para guardar el correo en borrador sin enviarlo automáticamente.
🟣 Trazabilidad de solicitudes: guarda las respuestas de la IA y el estado del borrador en una hoja de Google Sheets.
━━━━━━━━━━━━━━━━━━
🧩 MODELO MENTAL
Formulario (Google Forms) → Inferencia (Prompt OpenAI) → Borrador (Gmail Drafts)
━━━━━━━━━━━━━━━━━━
🚀 ACCIONES PARA HOY
🟢 Conecta tu módulo de Google Forms en Make y realiza una entrega de prueba con datos reales.
🟢 Mapea las preguntas del formulario como variables dentro del prompt del módulo de OpenAI.
🟢 Cambia la acción final de envio directo a Create a Draft dentro del módulo de Gmail.
🟢 Realiza un Run Once y valida que el correo guardado en borradores mantenga el tono deseado.
━━━━━━━━━━━━━━━━━━
🟣 VENTAJA PROFESIONAL Convertir formularios estáticos en sistemas de atención inteligente elimina horas de soporte manual. Guardar las salidas de la IA como borradores crea una capa de control (Human-in-the-Loop) que elimina el riesgo de alucinaciones mientras acelera el tiempo de respuesta en un 80%.
━━━━━━━━━━━━━━━━━━
📝 CIERRE
El principiante manda respuestas automáticas rígidas e impersonales; el profesional usa la IA para adaptar la respuesta a la duda exacta del cliente. Integra hoy tu primer formulario con OpenAI y automatiza la redacción de tu soporte.
Una automatización que me haga los archivos para la clase de automatización. 😅
¿Qué pasa si no hay nuevas respuestas?
Si tu escenario está programado para ejecutarse cada hora y nadie llenó el formulario, la plataforma de todas formas hará la consulta a la base de datos. Esto significa que consumirás una operación (un crédito de tu plan) solo por preguntar si hay alguien nuevo. Si no configuras barreras de contención, el flujo intentará avanzar hacia los siguientes módulos de inteligencia artificial y correo electrónico. Al no tener un nombre o un email real para procesar, la automatización colapsará, generando un error en tu historial y deteniendo el escenario. Por eso es vital entender que las ejecuciones programadas cobran un peaje operativo, independientemente de si traen información útil o no. Debes diseñar tus flujos asumiendo que muchas veces se ejecutarán en vacío.
Profe, me está saliendo un error al final del flujo e identifiqué que la opción "Respondent Email" no me aparece en el driver. También revise la configuración al crear el forms y es idéntico al suyo, ayúdame, profe. :,v
Hola, Andrés, me puedes mostrar el error que sale en Gmail por favor, para esto, haz clic en el icono del triangulo en Gmail y veras el motivo del error.
Este es el error que me sale :(
El formulario no logro encontrarlo ya lo guarde con dos nombres y no logro subirlo, porque si realice el proceso paso a paso
Compañera tienes que seguir las instrucciones de los otros alumnos mas abajo.
El formulario tiene que esta en la carpeta donde estas trabajando make para este particular y asi podra funcionar para la automatizacion.
Hola Sandra estaría genial! Si nos muestras un captura de tu problema!
Nuevo aporte a la clase:
1. Fase de Adquisición (Identity)
Si el formulario es de otra persona y solo tienes el link que termina en /viewform, no puedes clonarlo directamente por seguridad.
/viewform a /copy. Si el dueño tiene el archivo público, Google te preguntará: "¿Quieres hacer una copia?".2. Configuración del Bunker (Access Control)
Para que el botón de Submit no se bloquee (especialmente en incógnito o para usuarios externos), debes auditar estos tres puntos en la pestaña Settings:
3. Extracción de la Identidad Real (File ID)
Este fue el punto donde tuvimos el error 404. Nunca uses el ID del link público para herramientas de sistema (Make/Apps Script).
/d/ y /edit.
docs.google.com/forms/d/[ESTE_ES_EL_ID_REAL]/edit
4. El "Handshake" con Make (Data Flow)
Make es un sistema ciego hasta que recibe el primer paquete de datos.
/viewform, llena los datos y dale a Submit.