Cómo conectar Claude API con Google Sheets en 30 minutos sin servidor
Tutorial completo para usar Claude desde una hoja de Google con Apps Script. Sirve para clasificar leads, traducir textos o resumir feedback en lote.
Marcos Vega
Tutoriales, automatización y workflows

Si tu equipo vive en Google Sheets y quieres dejar de copiar-pegar prompts a Claude.ai, este tutorial te ahorra horas cada semana. Vamos a montar una función personalizada =CLAUDE(prompt) que llama directamente a la API de Anthropic desde Apps Script, el entorno de scripting nativo de Google Workspace. Funciona en plan gratuito de Workspace, no necesitas servidor propio y el coste por llamada se mide en céntimos. El patrón sirve para etiquetar feedback de lectores, traducir titulares al portugués, resumir transcripciones de entrevistas en lotes y muchas otras tareas repetitivas que hoy te llevan media jornada al mes.
Por qué este patrón gana a alternativas como Zapier, Make o n8n para casos sencillos: la latencia es menor (sin webhook intermedio), no hay límites de operaciones mensuales, los datos no salen del entorno Google y la curva de aprendizaje es prácticamente cero para alguien que ya use Sheets. La contraparte es que escala mal: Apps Script tiene timeouts duros y no es la herramienta correcta si vas a procesar diez mil filas diarias. Para volúmenes menores — clasificación de leads de la semana, traducción de batch de copy, etiquetado de tickets — es lo más rentable del mercado.
Qué vamos a construir
- OKUna función
=CLAUDE("clasifica este lead", A2)que devuelve la respuesta en la celda. - OKUn menú nuevo "Claude" en la barra de la hoja para ejecutar tareas en lote.
- OKManejo de errores básico (timeouts, falta de créditos) que no rompe la hoja.
- 1
Crea una API key en Anthropic
Entra a console.anthropic.com, ve a "API Keys" y genera una nueva clave. Cárgale al menos $5 de crédito — con eso tienes miles de llamadas a Haiku.
- 2
Abre Apps Script desde tu hoja
En tu Google Sheet ve a "Extensiones > Apps Script". Se abre el editor en una pestaña nueva.
- 3
Pega el script principal
Borra el código por defecto y pega el primer bloque de código que viene abajo. Reemplaza TU_API_KEY por la clave que generaste en el paso 1.
- 4
Guarda y autoriza permisos
Cmd/Ctrl+S, ponle nombre al proyecto, ejecuta una vez la función "setup" y acepta los permisos de red que pide Google.
- 5
Vuelve a la hoja y prueba
En cualquier celda escribe =CLAUDE("dime hola"). Verás "loading..." y en 2-3 segundos la respuesta. Si sale ERROR, revisa el mensaje y comprueba la API key.
// Pega este código completo en Apps Script
const API_KEY = 'TU_API_KEY' // <-- reemplaza
const MODEL = 'claude-haiku-4-5' // barato y rápido
function CLAUDE(prompt, contextCell) {
const fullPrompt = contextCell ? `${prompt}\n\nContexto:\n${contextCell}` : prompt
const payload = {
model: MODEL,
max_tokens: 512,
messages: [{ role: 'user', content: fullPrompt }]
}
const options = {
method: 'post',
contentType: 'application/json',
headers: {
'x-api-key': API_KEY,
'anthropic-version': '2023-06-01'
},
payload: JSON.stringify(payload),
muteHttpExceptions: true
}
const res = UrlFetchApp.fetch('https://api.anthropic.com/v1/messages', options)
if (res.getResponseCode() !== 200) return 'ERROR: ' + res.getContentText()
return JSON.parse(res.getContentText()).content[0].text.trim()
}
function setup() {
SpreadsheetApp.getUi().alert('Claude está listo. Prueba =CLAUDE("hola") en una celda.')
}Bonus: menú con tareas en lote
// Añade esto al final del script para tener un menú propio
function onOpen() {
SpreadsheetApp.getUi()
.createMenu('Claude')
.addItem('Clasificar columna A', 'clasificarColumna')
.addToUi()
}
function clasificarColumna() {
const sheet = SpreadsheetApp.getActiveSheet()
const range = sheet.getRange('A2:A' + sheet.getLastRow())
const values = range.getValues()
for (let i = 0; i < values.length; i++) {
if (!values[i][0]) continue
const cat = CLAUDE('Clasifica este lead como Hot/Warm/Cold. Solo la palabra.', values[i][0])
sheet.getRange(i + 2, 2).setValue(cat)
Utilities.sleep(400) // evita rate limit
}
}
Tres patrones que valen la pena en producción
El primer patrón útil es clasificación de feedback de clientes: una columna A con el comentario, una columna B con la categoría que Claude asigna (bug, feature request, queja, elogio), y una columna C con la severidad. Con Haiku 4.5, mil filas se procesan en pocos minutos y el coste se mantiene en pocos dólares. El segundo patrón es traducción contextual de copy de marketing — pedirle a Claude que adapte un titular al portugués brasileño respetando un tono determinado tiende a producir mejores resultados que un traductor automático genérico.
El tercer patrón, y el más rentable en equipos de ventas, es enriquecimiento de leads. Le pasas a Claude la URL pública de LinkedIn o el dominio corporativo y le pides que devuelva tamaño estimado de empresa, vertical y señales de intención. No reemplaza a herramientas como Clearbit en cobertura, pero como primer filtro para campañas outbound saca un porcentaje significativo del valor a una fracción del precio. La clave es estructurar el prompt para que devuelva JSON en una sola línea: así puedes parsearlo con fórmulas nativas de Sheets sin escribir más código.
Una advertencia operativa antes de escalar: Apps Script tiene un límite duro de seis minutos por ejecución y de 30 segundos por celda. Si pasas de mil filas o si tus prompts son largos, conviene mover la lógica a una Cloud Function o a Cloud Run con la misma API key. El esqueleto del código que pegamos arriba sirve igual; solo cambia el entorno de ejecución. Para volúmenes superiores a diez mil filas diarias, el siguiente paso es montar una cola con Pub/Sub, pero ya nos estamos saliendo del espíritu "30 minutos sin servidor" del tutorial.
¿Cuánto cuesta cada llamada?+
¿Es seguro pegar la API key en el script?+
¿Por qué a veces sale "loading..." y se queda así?+
¿Funciona con Gemini o GPT en lugar de Claude?+
En 30 minutos tienes Claude dentro de Sheets como si fuera una función nativa.
Haiku 4.5 mantiene los costes en céntimos para casos típicos de PYME.
Sirve igual para clasificación, traducción y resumen en lote sin levantar servidor.
Comentarios
Dejar un comentario
Siguiente lectura
Relacionados
Cómo conectar Notion Workers con Claude Code en 25 minutos
La nueva plataforma de Notion permite ejecutar lógica propia desde una database. Tutorial paso a paso para conectar Claude Code sin servidor.
Marcos Vega

Cómo crear un agente IA con n8n y Claude paso a paso en 2026
Monta tu primer agente IA conversacional en n8n conectado a Claude en menos de 30 minutos — sin código de producción. Incluye prompts y plantilla descargable.
Marcos Vega

10 procesos manuales que toda PYME debería automatizar este año
Catorce semanas observando equipos de 5–40 personas. Estos son los 10 procesos que más tiempo recuperan al automatizarlos, con cifras reales de ahorro.
Marcos Vega

Make vs Zapier vs n8n: 30 días testeando los tres en producción
Mismo workflow, tres plataformas, 30 días corriendo. Quién ganó en velocidad, precio, IA nativa y debugging real cuando algo se rompe.
Marcos Vega