Guías

Cómo conectar Google Sheets a tu app

Para conectar Google Sheets a tu app, activa la API de Google Sheets en un proyecto de Google Cloud, crea una cuenta de servicio, comparte la hoja de cálculo con el email de la cuenta de servicio y guarda su clave como secreto del lado del servidor. Tu servidor lee filas con spreadsheets.values.get y añade filas con spreadsheets.values.append. Si los usuarios necesitan conectar sus propias hojas, usa OAuth, y si la hoja es totalmente pública, para leer basta con una clave de API sencilla.

Esta guía cubre qué método encaja, las llamadas que necesitas, las cuotas y los detalles a tener en cuenta, y prompts para un creador de apps con IA. Los datos de Google proceden de su documentación para desarrolladores a septiembre de 2026.

Por qué conectar una hoja

Motivos habituales:

  • Mantener el flujo de trabajo del equipo. El personal sigue editando una lista de precios o un calendario en Sheets; la app lo muestra.
  • Recoger datos donde la gente ya mira. Los nuevos registros, pedidos o respuestas de formularios llegan como filas.
  • Informes. Exportar datos de la app a una hoja para quien trabaja con hojas de cálculo.
  • Un paso intermedio. Empezar desde la hoja y pasar después a una base de datos adecuada. Consulta cómo convertir una hoja de cálculo en una app.

Elige cómo se identifica tu app ante Google

La guía de credenciales de Google describe tres tipos:

CredencialA qué puede accederIdeal para
Clave de APISolo datos disponibles públicamente, como archivos compartidos con « Cualquiera con el enlace »Leer una hoja pública
Cuenta de servicioDatos que pertenecen a tu app, o archivos concretos compartidos con el email de la cuenta de servicioQue tu app lea y escriba tus hojas
ID de cliente OAuthLos archivos propios de un usuario, tras su consentimientoPermitir que cada usuario conecte sus hojas

Para la mayoría de apps, una cuenta de servicio es la opción adecuada: un único conjunto de credenciales, de tu propiedad, con acceso solo a las hojas que compartas explícitamente con ella.

Paso a paso con una cuenta de servicio

  1. Crea o elige un proyecto de Google Cloud y activa la API de Google Sheets.
  2. Crea una cuenta de servicio y una clave para ella. La clave es un archivo JSON; trátala como una contraseña.
  3. Comparte la hoja de cálculo con el email de la cuenta de servicio, como Lector si es solo de lectura o como Editor para escribir. La guía de Google indica que esto se hace desde la pantalla normal de uso compartido.
  4. Guarda la clave como secreto en tu servidor, por ejemplo GOOGLE_SERVICE_ACCOUNT_JSON, y el ID de la hoja (la cadena larga de la URL de la hoja) como SHEET_ID.
  5. Llama a la API desde el servidor con la biblioteca cliente de Google para tu lenguaje.
  6. Guarda en caché las lecturas si muchos visitantes ven los mismos datos, para no alcanzar la cuota.

Las llamadas que usarás

Según la guía de Google sobre lectura y escritura de valores:

MétodoQué hace
spreadsheets.values.getLee un rango, como Leads!A1:E
spreadsheets.values.batchGetLee varios rangos en una sola solicitud
spreadsheets.values.updateEscribe en un rango concreto
spreadsheets.values.appendAñade filas tras los datos existentes de una tabla

Los rangos usan la notación A1. Google señala que un rango sin nombre de hoja, como A1:B2, se aplica a la primera hoja; pon siempre el nombre de la pestaña para evitar sorpresas cuando alguien reordene las pestañas.

RAW frente a USER_ENTERED

Las escrituras necesitan un valueInputOption:

  • RAW guarda exactamente lo que envías, como texto. =1+2 se guarda como el texto =1+2.
  • USER_ENTERED trata la entrada como si se hubiera escrito en Sheets: las fechas se convierten en fechas y =1+2 se convierte en una fórmula.

Si escribes texto que los usuarios han escrito en tu app, usa RAW. Con USER_ENTERED, alguien podría enviar una fórmula que se ejecutaría cuando un compañero abriera la hoja.

Cuotas y errores

A septiembre de 2026, la página de límites de la API de Sheets de Google indica:

LímiteSolicitudes de lecturaSolicitudes de escritura
Por minuto y proyecto300300
Por minuto, por usuario y proyecto6060

No hay límite diario mientras te mantengas dentro de las cuotas por minuto. Si las superas, aparece 429: Too many requests (demasiadas solicitudes), y Google recomienda un retroceso exponencial truncado: esperar más tiempo tras cada intento fallido, con un retardo aleatorio, hasta un máximo. Una solicitud individual que tarde más de 180 segundos se cancela por tiempo de espera.

En la práctica: no llames a la API en cada visita a una página. Guarda en caché los datos de la hoja durante un minuto o más, agrupa las lecturas con batchGet y agrupa las escrituras cuando puedas.

Opciones y compensaciones

EnfoqueVentajasInconvenientes
La hoja como fuente de datos en vivoEl personal edita en una herramienta conocida; no hay pantallas de administración que construirCuotas, sin permisos por fila, fácil de romper al renombrar una columna
Sincronizar la hoja en una base de datosLecturas rápidas y fiables; la app sigue funcionando si Sheets caeNecesitas un proceso de sincronización y una regla sobre qué lado gana
Base de datos primero, exportar a la hojaLa app es dueña de los datos; la hoja es un informeLos cambios en la hoja no vuelven a la app
Herramienta de automatización intermediaFlujos sencillos sin códigoOtra suscripción; más difícil de depurar

Para cualquier cosa con muchos usuarios o datos sensibles, una base de datos es la mejor fuente de verdad. Consulta qué es una base de datos.

Prompts para tu creador de apps con IA

Leer una hoja:

Muestra la pestaña « Menú » de nuestra hoja de Google en la página del menú. Usa la API de Google Sheets desde el servidor con una cuenta de servicio cuya clave JSON está en el secreto GOOGLE_SERVICE_ACCOUNT_JSON, y el ID de la hoja en SHEET_ID. Lee el rango Menu!A2:D (nombre, descripción, precio, categoría). Guarda el resultado en caché durante 5 minutos. Si la API falla, muestra la última versión en caché. No envíes nunca la clave al navegador.

Escribir filas:

Cuando alguien envíe el formulario de contacto, guárdalo en nuestra base de datos y añade también una fila a la pestaña « Leads » (fecha, nombre, email, mensaje) usando spreadsheets.values.append con valueInputOption RAW. Si Google devuelve 429, reintenta con retroceso exponencial; si sigue fallando, mantén el contacto en la base de datos y reintenta más tarde.

Errores habituales

  • Olvidar compartir la hoja con el email de la cuenta de servicio. La API devuelve entonces un error de permisos aunque la clave sea correcta.
  • La clave en el frontend o en el repositorio. La clave JSON da acceso a todas las hojas compartidas con ella. Consulta cómo mantener seguras las claves de API.
  • Usar USER_ENTERED con la entrada de los usuarios, lo que permite la inyección de fórmulas.
  • Llamar a la API en cada solicitud y alcanzar la cuota por minuto con el primer pico de tráfico.
  • Depender de las posiciones de las columnas. Alguien inserta una columna y la app lee datos equivocados. Lee la fila de encabezados y asigna por nombre, o bloquea el encabezado.
  • Compartir la hoja más de lo necesario. « Cualquiera con el enlace » la hace pública.
  • Usar una hoja como base de datos multiusuario. Las escrituras simultáneas y los permisos mal configurados provocan pérdidas o filtraciones de datos.

Lista de comprobación

  • API de Sheets activada; cuenta de servicio creada
  • Hoja compartida con el email de la cuenta de servicio con el rol mínimo necesario
  • Clave e ID de la hoja guardados como secretos del servidor
  • Todas las llamadas hechas desde el servidor
  • Nombres de pestaña usados en los rangos
  • RAW usado para el texto que aportan los usuarios
  • Lecturas en caché; errores 429 gestionados con retroceso
  • La app se degrada con elegancia si Sheets no está disponible
  • Decidido cuál de los dos lados es la fuente de verdad

Google Sheets en Mythex

Mythex tiene dos formas distintas de trabajar con Sheets. Los conectores vinculan tu cuenta de Google con Mythex para que el agente la use mientras construyes, por ejemplo para leer una hoja y crear un panel a partir de ella; la documentación indica que la credencial permanece en el servicio de conexión de Mythex y nunca llega a tu código (consulta Conectores, y aprueba cada permiso que pida Google). Para que la app publicada lea o escriba una hoja por sí sola, la vía fiable es la de esta guía: una clave de cuenta de servicio guardada como secreto del proyecto y llamadas a la API de Sheets desde tu servidor, como en Integrar cualquier API. Si la hoja se te queda pequeña, pide al agente que mueva los datos a la base de datos del proyecto y que construya un panel sobre ellos.

Preguntas

¿Cómo puede mi app leer una hoja de cálculo privada de Google?

La forma habitual es una cuenta de servicio de Google Cloud: activas la API de Sheets, creas la cuenta de servicio y su clave, y compartes la hoja de cálculo con el email de la cuenta de servicio como Lector o Editor. Tu servidor usa la clave, guardada como secreto, para llamar a la API de Sheets.

¿Puedo usar una clave de API de Google para acceder a una hoja de cálculo?

Solo para datos públicos. La guía de credenciales de Google indica que las claves de API sirven para acceso anónimo a datos disponibles públicamente, como archivos compartidos con cualquiera que tenga el enlace. Las hojas privadas necesitan una cuenta de servicio u OAuth.

¿Cuáles son los límites de la API de Google Sheets?

A septiembre de 2026, Google indica 300 solicitudes de lectura y 300 de escritura por minuto y proyecto, y 60 de cada tipo por minuto, por usuario y proyecto, sin límite diario. Si se superan, aparece un error 429; Google recomienda un retroceso exponencial truncado.

¿Debo usar Google Sheets como base de datos de mi app?

Funciona para apps pequeñas y de poco tráfico en las que la gente también edita los datos en la hoja. Con muchos usuarios, escrituras frecuentes, relaciones entre registros o permisos por usuario, una base de datos real es más fiable, y aun así puedes exportar a una hoja.

Mythex · Pricing · Crea lo que quieras con IA · Plantillas de sitios web y apps · Mythex comparado · Glosario de creación de apps con IA · Herramientas gratuitas para crear apps con IA · English

English አማርኛ العربية Български বাংলা Bosanski Català Čeština Dansk Deutsch Ελληνικά Español Eesti فارسی Suomi Français Français (Canada) ગુજરાતી हिन्दी Hrvatski Magyar Հայերեն Bahasa Indonesia Íslenska Italiano 日本語 ქართული Қазақ тілі ಕನ್ನಡ 한국어 Lietuvių Latviešu Македонски മലയാളം Монгол मराठी Bahasa Melayu မြန်မာ Norsk bokmål Nederlands ਪੰਜਾਬੀ Polski Português (Brasil) Português (Portugal) Română Русский Slovenčina Slovenščina Soomaali Shqip Srpski Svenska Kiswahili தமிழ் తెలుగు ไทย Tagalog Türkçe Українська اردو Tiếng Việt 简体中文 繁體中文(香港) 繁體中文(台灣)