Módulo 5: OpenRouter - Introducción
Setup de Cuenta OpenRouter
Descripción
Crearás cuenta OpenRouter y obtendrás API key para acceder a 100+ modelos.
Tiempo: 15 minutos
Dificultad: Muy baja
🎯 Objetivos
- ✅ Crear cuenta OpenRouter
- ✅ Obtener API key
- ✅ Configurar .env
- ✅ Verificar con curl
📝 Paso 1: Crear Cuenta
1.1 Signup:
- Visita: https://openrouter.ai/
- Click "Sign Up"
- Opciones:
- Email + password
- Google OAuth
- GitHub OAuth
Recomendación: Google (1 click)
1.2 Verificación:
Si usaste email, verifica inbox (check spam).
💳 Paso 2: Credits y Billing
Free credits:
Algunos usuarios reciben $1 gratis para testing.
Verifica:
- Dashboard → Credits
- Balance disponible
Si necesitas agregar credits:
- Dashboard → Billing
- Add payment method (tarjeta)
- Add credits ($5, $10, $20, etc.)
Spending limits:
- Set limit: $10/mes (recomendado)
- Alert: $5/mes
🔑 Paso 3: Obtener API Key
3.1 Generar key:
- Dashboard → API Keys
- Click "Create Key"
- Name: "Module 5 - Learning"
- Click "Create"
3.2 Copiar key:
sk-or-v1-abc123...
⚠️ Solo verás una vez! Copia ahora.
3.3 Formato:
API keys OpenRouter:
sk-or-v1-XXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Empieza con sk-or-v1-
🔐 Paso 4: Configurar .env
Crear/editar .env:
# .env
OPENROUTER_API_KEY=sk-or-v1-abc123...
Actualizar .gitignore:
# .gitignore
.env
.env.local
✅ Paso 5: Verificar con Curl
curl https://openrouter.ai/api/v1/models \
-H "Authorization: Bearer $OPENROUTER_API_KEY"
Output esperado (primeras líneas):
{
"data": [
{
"id": "openai/gpt-3.5-turbo",
"name": "GPT-3.5 Turbo"
},
{
"id": "anthropic/claude-3-haiku",
"name": "Claude 3 Haiku"
},
...
]
}
Si ves lista de modelos: ✅ API key funciona!
🧪 Paso 6: Test con Python
from dotenv import load_dotenv
import os
import requests
load_dotenv()
api_key = os.getenv("OPENROUTER_API_KEY")
if not api_key:
print("❌ API key not found")
exit(1)
print(f"✅ API Key: {api_key[:20]}...")
# List models
headers = {"Authorization": f"Bearer {api_key}"}
response = requests.get(
"https://openrouter.ai/api/v1/models",
headers=headers
)
if response.status_code == 200:
models = response.json()["data"]
print(f"✅ API funciona! {len(models)} modelos disponibles")
print(f"Ejemplos: {models[0]['id']}, {models[1]['id']}")
else:
print(f"❌ Error: {response.status_code}")
🐛 Troubleshooting
Error: 401 Unauthorized
Causa: API key incorrecta
Solución:
- Verifica que key comienza con
sk-or-v1- - No espacios al inicio/final
- Regenera key si necesario
Error: 402 Payment Required
Causa: Credits agotados
Solución:
- Dashboard → Add credits
- Mínimo $5
📊 Dashboard Overview
Explorar dashboard:
1. Models:
- 100+ modelos disponibles
- Filtros: Provider, Cost, Context
2. Usage:
- Requests por modelo
- Costo acumulado
- Gráficas
3. API Keys:
- Manage keys
- Revoke keys
✅ Resumen
- Cuenta OpenRouter creada
- API key obtenida (
sk-or-v1-...) - .env configurado
- Verificado con curl y Python
- Listo para usar 100+ modelos
Siguiente: 03-primeros-requests.md
Harás requests a múltiples modelos (GPT, Claude, Gemini) con misma API.
Tiempo: 20 min