API · ia.gratis
Una API REST para chat IA (Claude, GPT-4o, Gemini, modelos abiertos), generar imágenes, videos, transcribir audios, buscar la web, y más. Mismo precio en tokens.
Crea cuenta para obtener tu API token
Regístrate gratis (500 tokens) y obtén un token Bearer para llamar la API desde tu código.
Crear cuenta gratis →Autenticación
Cada request lleva tu token en el header Authorization: Bearer <tu_token>. Lo encuentras en /cuenta/ o arriba si estás logueado.
Quick start
cURL
curl https://ia.gratis/api/tools/chat/ \
-H "Authorization: Bearer tu_api_token" \
-H "Content-Type: application/json" \
-d '{"messages": [{"role":"user","content":"Hola, ¿cómo estás?"}]}'
Python
import requests
r = requests.post('https://ia.gratis/api/tools/chat/',
headers={'Authorization': 'Bearer ' + TOKEN},
json={'messages': [{'role':'user','content':'Hola'}]})
print(r.json()['reply'])
JavaScript / Node
const r = await fetch('https://ia.gratis/api/tools/chat/', {
method: 'POST',
headers: {
'Authorization': 'Bearer ' + TOKEN,
'Content-Type': 'application/json',
},
body: JSON.stringify({messages: [{role:'user', content:'Hola'}]}),
});
console.log((await r.json()).reply);
Endpoints
| Método | Path | Descripción | tokens |
|---|---|---|---|
| POST | /api/tools/chat/ | Chat con cualquier modelo (Claude, GPT-4o, Qwen, Llama, ...) | 10–20 |
| POST | /api/tools/image/ | Generar imágenes (Flux, Nano Banana, Imagen 4, ...) | 10–100 |
| POST | /api/tools/video/ | Generar video (Kling, Veo 3, Runway) | 1.000–5.000 |
| POST | /api/tools/tts/ | Texto a voz (ElevenLabs) | 50 / 1.000 chars |
| POST | /api/tools/stt/ | Transcribir audio (Whisper) | 10 / minuto |
| POST | /api/tools/music/ | Generar música (Lyria 2) | 300 / 30s |
| POST | /api/tools/search/ | Búsqueda web + resumen IA | 50 |
| POST | /api/tools/upscale/ | Mejorar calidad de imagen | 30 |
| POST | /api/tools/bg-remove/ | Quitar fondo | 30 |
| POST | /api/tools/humanize/ | Humanizar texto generado por IA | 20 |
| POST | /api/tools/detect/ | Detectar texto IA | 20 |
| POST | /api/tools/summarize/ | Resumir texto | 20 |
| POST | /api/tools/translate/ | Traducir | 20 |
| GET | /api/chat-sessions/ | Listar tus conversaciones de chat | 0 |
| POST | /api/chat-sessions/ | Crear nueva conversación | 0 |
| POST | /api/projects/ | Crear proyecto (system prompt + archivos) | 0 |
Ejemplos
Generar una imagen
curl https://ia.gratis/api/tools/image/ \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"prompt": "Un gato samurái en un templo japonés",
"model": "image_premium",
"num_images": 1,
"size": "landscape_4_3"
}'
Generar un video
curl https://ia.gratis/api/tools/video/ \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"prompt": "Drone volando sobre ciudad cyberpunk al atardecer",
"model": "video_fast",
"duration": "5",
"aspect_ratio": "16:9"
}'
Texto a voz
curl https://ia.gratis/api/tools/tts/ \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{"text": "Hola, soy una voz generada por IA.", "voice": "Rachel"}'
Búsqueda web con resumen IA
curl https://ia.gratis/api/tools/search/ \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{"query": "mejores películas españolas de 2025", "num": 10}'
Respuestas
Toda respuesta JSON tiene un campo ok (booleano). Cuando el quota se gasta, recibes HTTP 429 con un cuerpo:
{
"ok": false,
"error": "Te has quedado sin tokens. Compra un pack o sube a Pro para más.",
"quota": {
"kind": "no_credits",
"user_state": "free",
"signup_url": "/registro/",
"upgrade_url": "/precios/"
}
}
Límites
- Chat: 30 calls/hora para anónimos. Auth: hasta 1000/hora dependiendo del plan.
- Video: 1/día anon, ilimitado para usuarios con tokens.
- Archivos en chat: máx 5 por mensaje, 8 MB cada uno.
Precios
El plan API usa el mismo pool de tokens que el sitio web. Mira Precios para los packs y suscripciones disponibles.