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 la dirección de 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 leerla basta 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. Exporta datos de la app a una hoja para quien trabaja con hojas de cálculo.
  • Un paso intermedio. Empieza con la hoja y luego pasa a una base de datos de verdad. 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 son propiedad de 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 las apps, una cuenta de servicio es la opción correcta: 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 la dirección de email de la cuenta de servicio, como lector si es solo lectura, o como editor si necesita 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 de cálculo (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 las lecturas en caché si muchos visitantes ven los mismos datos, para no alcanzar la cuota.

Las llamadas que usarás

De la guía de Google para leer y escribir 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 después de 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, así que nombra la pestaña explícitamente 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 introdujeron en tu app, usa RAW. Con USER_ENTERED, alguien podría enviar una fórmula que se ejecute cuando un compañero abra 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 por proyecto300300
Por minuto, por usuario y proyecto6060

No hay límite diario mientras te mantengas dentro de las cuotas por minuto. Si te excedes, se devuelve 429: Too many requests (demasiadas solicitudes), y Google recomienda la espera exponencial truncada: esperar más tiempo tras cada intento fallido, con un retardo aleatorio, hasta un máximo. Una sola solicitud 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 los datos de la hoja en caché durante un minuto o más, agrupa las lecturas con batchGet y agrupa las escrituras cuando puedas.

Opciones y compromisos

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 con 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 manda
Base de datos primero, exportar a la hojaLa app es dueña de los datos; la hoja es un informeLas ediciones en la hoja no vuelven a la app
Herramienta de automatización intermediaSin código para flujos sencillosOtra 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 guardada. 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 también añade una fila a la pestaña «Leads» (fecha, nombre, email, mensaje) usando spreadsheets.values.append con valueInputOption RAW. Si Google devuelve 429, reintenta con espera exponencial; si sigue fallando, mantén el lead 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 incorrectos. Lee la fila de encabezados y mapea 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 permiso 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 espera exponencial
  • La app sigue funcionando con elegancia si Sheets no está disponible
  • Decidido qué lado 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 a Mythex para que el agente la use mientras construyes, por ejemplo para leer una hoja y construir un panel a partir de ella; según la documentación, 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 su cuenta, 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, tal como se explica en Integrar cualquier API. Si estás creciendo más allá de la hoja, pide al agente que mueva los datos a la base de datos del proyecto y que construya un panel encima.

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: activa la API de Sheets, crea la cuenta de servicio y su clave, y comparte la hoja de cálculo con la dirección de 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 son 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 o 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 por proyecto, y 60 de cada tipo por minuto por usuario y proyecto, sin límite diario. Si se superan, se devuelve un error 429; Google recomienda una espera exponencial truncada (exponential backoff).

¿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 para crear apps con IA · Herramientas gratis para crear apps con IA · English

English አማርኛ العربية Български বাংলা Bosanski Català Čeština Dansk Deutsch Ελληνικά Español (España) 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 简体中文 繁體中文(香港) 繁體中文(台灣)