La API de Claude es la puerta a la automatizacion: informes automaticos, procesamiento de emails, moderacion, generacion de contenido a escala. Esta guia te lleva de cero a tu primera automatizacion funcional.

Espacio publicitario

Primeros pasos con la API

Necesitas una cuenta en console.anthropic.com y una API key. Instala el SDK oficial:

# Python
pip install anthropic

# Node.js
npm install @anthropic-ai/sdk

Tu primera llamada

from anthropic import Anthropic

client = Anthropic(api_key="tu-key")

message = client.messages.create(
    model="claude-sonnet-5",
    max_tokens=1024,
    messages=[
        {"role": "user", "content": "Resume esto en 3 bullets: [texto]"}
    ]
)
print(message.content[0].text)

Patron 1: procesamiento por lotes

Procesar 100 emails con Claude en un script:

import csv
from anthropic import Anthropic

client = Anthropic()

with open("emails.csv") as f:
    for row in csv.DictReader(f):
        response = client.messages.create(
            model="claude-haiku-4-5-20251001",
            max_tokens=200,
            messages=[{"role": "user", "content": f"Clasifica este email: {row['body']}"}]
        )
        print(row['id'], response.content[0].text)

Patron 2: agente con tool use

Claude decide llamar a tus funciones:

tools = [{
    "name": "get_weather",
    "description": "Devuelve el clima actual de una ciudad",
    "input_schema": {
        "type": "object",
        "properties": {"city": {"type": "string"}},
        "required": ["city"]
    }
}]

response = client.messages.create(
    model="claude-sonnet-5",
    max_tokens=1024,
    tools=tools,
    messages=[{"role": "user", "content": "Como esta el clima en Medellin?"}]
)

# Si Claude decide usar la tool, response.stop_reason == "tool_use"
# Ejecutas la funcion tu y le devuelves el resultado

Patron 3: streaming para UX rapido

En interfaces conversacionales, muestra la respuesta a medida que llega:

with client.messages.stream(
    model="claude-sonnet-5",
    max_tokens=1024,
    messages=[{"role": "user", "content": "..."}]
) as stream:
    for text in stream.text_stream:
        print(text, end="", flush=True)

Patron 4: prompt caching

Si envias el mismo contexto largo en cada peticion (por ejemplo un manual de politicas), activa caching y reduce el coste de input hasta 90%:

messages = [{
    "role": "user",
    "content": [
        {"type": "text", "text": manual_largo, "cache_control": {"type": "ephemeral"}},
        {"type": "text", "text": pregunta_del_usuario}
    ]
}]
Espacio publicitario

Patron 5: webhooks

Recibe eventos externos (nuevo email, formulario, ticket) y responde con Claude automaticamente. Combina la API con:

  • Zapier / Make para no-code.
  • AWS Lambda / Cloudflare Workers para serverless.
  • n8n self-hosted si prefieres control.

Errores tipicos a evitar

  • API key en el frontend: NUNCA. Solo desde backend.
  • Sin retry ni backoff: rate limits pasan; maneja con try/catch y exponential backoff.
  • max_tokens muy bajo: si esperas respuestas largas, sube el limite.
  • Sin logging: registra input/output para debug futuro.

Coste y monitorizacion

Establece budgets en la consola de Anthropic. Loguea tokens usados por request. Usa Haiku para tareas donde no necesitas la capacidad de Sonnet: la diferencia de coste es 10x o mas.

Conclusion

La API de Claude es la puerta a automatizacion real. Empieza pequeño: un script que procese 50 items automaticamente ya te da idea de la potencia. Escala desde ahi con confianza.