Texto a imagen
Un lienzo en blanco y una frase se convierten en una imagen terminada sin que nadie abra un editor. Este endpoint toma un prompt de texto y devuelve una imagen generada, pensado para productos que necesitan visuales bajo demanda en lugar de sacados de un banco de fotos.
Ejecútela online
Ejecute esto en nuestros servidores con su cuenta. Las herramientas gratuitas corren en su navegador; esta cobra de su saldo del KIT según el precio de arriba.
Qué problema resuelve en realidad
Muchas aplicaciones necesitan una imagen que todavía no existe y que nunca existirá como foto de stock: una ilustración principal que combine con un tono de marca específico, un marcador que refleje lo que el propio usuario escribió, un ícono para una categoría que nadie fotografió jamás. Conseguir o encargar esa imagen por la vía tradicional toma días; describirla en una frase y generarla toma segundos, y eso cambia qué vale la pena construir dentro de un producto.
Qué envía y qué recibe
Envía un prompt de texto que describe la imagen que quiere, junto con parámetros opcionales de tamaño, estilo y número de variaciones, y la tarea devuelve una o más imágenes generadas cuando termina el procesamiento. Como el endpoint es asíncrono, recibe un task_id de inmediato y la imagen real llega después por webhook o por un enlace firmado, lo que mantiene rápida su solicitud aunque la generación en sí requiera tiempo real de cómputo.
Por qué las palabras del prompt cambian el resultado
La generación de texto a imagen funciona mapeando lenguaje hacia un espacio visual que el modelo aprendió a partir de enormes cantidades de pares imagen-texto, lo que significa que la especificidad importa: un prompt vago produce un resultado genérico, mientras uno que nombra sujeto, estilo, iluminación y composición produce algo más cercano a la intención original. Es la misma razón por la que dos personas que escriben palabras distintas para la misma idea que tienen en la cabeza reciben imágenes visiblemente diferentes: el modelo no tiene acceso a lo que piensa, solo a lo que realmente escribió.
Cómo encaja la generación en un flujo
Como los resultados llegan de forma asíncrona, este endpoint se combina de manera natural con el resto de un pipeline de imágenes: genere una imagen base y luego pásela por un paso de redimensionado, quitado de fondo o marca de agua antes de mostrarla a un usuario. Los equipos que construyen herramientas de contenido, generadores de mockups o piezas de marketing dinámicas suelen llamar a este endpoint como primera etapa, con todo lo demás operando sobre lo que llega de vuelta.
Qué esperar, con honestidad
Las imágenes generadas son composiciones originales inferidas de su prompt, no imágenes recuperadas de una base de fotos existentes, así que los resultados varían entre ejecuciones aun con el mismo prompt, y las solicitudes muy específicas, como texto exacto renderizado o un conteo preciso de objetos, siguen siendo el punto más débil de cualquier modelo de generación. Trate el primer resultado como un punto de partida sólido y no como una coincidencia exacta garantizada, e itere sobre el prompt como lo haría con un brief para un diseñador.
Qué puede hacer con ella
Encabezados dinámicos para blog y artículos
Una plataforma de publicación genera una imagen de encabezado única a partir del título y resumen de cada artículo, en lugar de licenciar fotografía de stock para cada publicación.
Visuales personalizados por el usuario
Una app deja que el usuario describa una escena con sus propias palabras y genera una imagen a la medida para una tarjeta, un fondo de avatar o un diseño de regalo.
Bocetos de concepto y marcadores de posición
Un equipo de producto genera visuales de concepto rápidos a partir de un brief escrito para probar una dirección de diseño antes de encargar el arte final.
Ilustración con estilo de marca a escala
Un equipo de marketing genera un conjunto consistente de ilustraciones para una campaña reutilizando una plantilla de prompt con estilo fijo sobre muchos sujetos distintos.
Preguntas frecuentes
¿Cómo genero una imagen a partir de texto con la api?
Envía un POST a /image/generate con su prompt de texto y los parámetros de tamaño o estilo que quiera; recibe un task_id y la imagen llega por webhook o por un enlace firmado.
¿Puedo controlar el tamaño y el estilo de la imagen?
Sí, define el tamaño objetivo y parámetros de estilo opcionales en la solicitud, y la imagen generada respeta esas configuraciones.
¿El mismo prompt siempre produce la misma imagen?
No. La generación no es determinista, así que prompts idénticos producen imágenes distintas pero relacionadas en cada ejecución, lo cual es comportamiento esperado, no un error.
¿Hay una prueba gratuita para la api de texto a imagen?
No hay capa gratuita: las capas gratis se abusan y ralentizan a todos. El acceso funciona con un saldo prepago de ForHosting KIT: se recarga desde $10.00 (no caduca) y cada solicitud se cobra a su precio publicado, así que una llamada sin saldo devuelve HTTP 402. Sin suscripción, sin tokens ni créditos inventados, y una tarea fallida no se cobra.
¿Cuánto cuesta generar una imagen?
$0.002 por solicitud más $0.0065 por imagen, y solo se cobran las tareas que se completan con éxito.
¿Puede renderizar texto exacto o logotipos dentro de la imagen?
El texto exacto y la reproducción precisa de logotipos son el punto más débil de cualquier modelo de generación; trata esos resultados como aproximados y no como listos para producción.
¿Qué pasa si la generación falla?
La tarea reintenta automáticamente hasta tres veces; si aun así falla, recibe un error claro y nunca se cobra el intento fallido.
¿Puedo generar muchas imágenes en lote a partir de un prompt?
Envía varias solicitudes asíncronas en paralelo para volumen, o pida varias variaciones en una sola llamada donde esté disponible, y recoja cada resultado a medida que se dispara su webhook.
Para desarrolladores — acceso por API
Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.
Endpoint de API
¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, y pronto desde nuestra app, el email y Telegram.
Llámela desde su stack
curl -X POST https://api.kit.forhosting.com/image/generate \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"image":"https://ejemplo.com/imagen.jpg"}'const res = await fetch("https://api.kit.forhosting.com/image/generate", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"image": "https://ejemplo.com/imagen.jpg"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/image/generate",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"image": "https://ejemplo.com/imagen.jpg"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/image/generate", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"image":"https://ejemplo.com/imagen.jpg"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"image":"https://ejemplo.com/imagen.jpg"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/image/generate", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Ejemplo de solicitud
{
"image": "https://ejemplo.com/imagen.jpg"
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "image.generate",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.
Precio
Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.
Límites
max_mb | 15 |
max_megapixels | 12 |
Errores
| HTTP | Código | Significado |
|---|---|---|
401 | unauthorized | API key ausente o inválida. |
402 | insufficient_balance | El saldo no cubre el precio de la tarea. |
404 | unknown_type | El tipo de tarea no existe. |
429 | rate_limited | Demasiadas peticiones. Use el webhook en vez de sondear. |
422 | task_failed | La tarea falló tras 3 reintentos. No se cobra. |