CheaperGen
ByteDanceTutorial

Cómo usar la API de Seedream 5.0 Lite

Tutorial paso a paso de la API de Seedream 5.0 Lite con Node.js, Python y cURL: envía una tarea de texto a imagen, consulta su estado o recibe un webhook y descarga el resultado de image. El ejemplo siguiente cuesta $0,032.

Endpoints
2
Texto a imagen · Edición de imagen
Solicitud de ejemplo
$0,032
Texto a imagen
Lenguajes
3
Node.js · Python · cURL
Generaciones fallidas
$0
reembolso automático
1

Obtener una clave de API

Crea una cuenta, añade saldo y genera una clave en Panel → Claves de API. Guárdala como CHEAPERGEN_API_KEY en tu servidor. Cada solicitud la envía como token bearer.

Cómo obtener una clave de API de Seedream 5.0 Lite
2

Elige un endpoint de Seedream 5.0 Lite

Cada tarea tiene su propio endpoint. Todos reciben un cuerpo JSON y devuelven una generación cuyo estado puedes consultar.

Seedream 5.0 Lite endpoints, entradas obligatorias y precios
TareaEndpointObligatorioDesde
Texto a imagenbytedance/seedream-5.0-lite/text-to-imageprompt$0,0317 por imagen
Edición de imagenbytedance/seedream-5.0-lite/editprompt, image_urls$0,0317 por imagen
3

Envía un trabajo de texto a imagen

Este programa envía la tarea, consulta su estado cada 3 segundos hasta que termina e imprime la URL de image. Cambia el prompt y los ajustes por los tuyos.

const API = "https://cheapergen.com/api/v1";
const headers = {
  Authorization: `Bearer ${process.env.CHEAPERGEN_API_KEY}`,
  "Content-Type": "application/json",
};

// 1. Submit the job
let job = await fetch(`${API}/run/bytedance/seedream-5.0-lite/text-to-image`, {
  method: "POST",
  headers,
  body: JSON.stringify({
    "prompt": "Foto editorial de producto de una cafetera espresso negro mate sobre travertino, luz suave de ventana, 85 mm",
    "aspect_ratio": "1:1",
    "size": "2K"
  }),
}).then((r) => r.json());

// 2. Poll until it finishes (or pass webhook_url and skip polling)
while (job.status === "queued" || job.status === "running") {
  await new Promise((r) => setTimeout(r, 3000));
  job = await fetch(`${API}/generations/${job.id}`, { headers }).then((r) => r.json());
}

console.log(job.status === "succeeded" ? job.output.images[0].url : job.error);
4

Configura los parámetros importantes

Los ajustes de bytedance/seedream-5.0-lite/text-to-image y cómo afecta cada uno al precio.

Parámetros de Seedream 5.0 Lite Texto a imagen y su efecto en el precio
ParámetroTipo · valor predeterminadoQué haceEfecto en el precio
aspect_ratiostring (enum) · 1:1Formato de la imagen de salida.
1:1 · 4:3 · 3:4 · 16:9 · 9:16 · 3:2 · 2:3 · 21:9
Sí
sizestring (enum) · 2K1K ≈ 1 megapíxel, 2K ≈ 4 megapíxeles.
1K · 2K
1K: $0,0317 por imagen
2K: $0,0317 por imagen
seedintegerUsa la misma semilla y los mismos ajustes para reproducir un resultado. Déjalo vacío para usar una semilla aleatoria.Ninguno
enable_safety_checkerboolean · trueSi se establece en true, se activará el comprobador de seguridad. El contenido prohibido por nuestra Política de uso aceptable seguirá bloqueado en cualquier caso.Ninguno

Otros endpoints de Seedream 5.0 Lite usan el mismo formato, con sus propias entradas:

POST /api/v1/run/bytedance/seedream-5.0-lite/edit

{
  "prompt": "Sustituye el fondo por una terraza mediterránea soleada; conserva el producto sin cambios",
  "image_urls": [
    "https://cdn.cheapergen.com/samples/portrait.jpg"
  ],
  "aspect_ratio": "1:1",
  "size": "2K"
}
5

Obtén el resultado

Una tarea pasa de queued a running y luego a succeeded, failed o canceled. Consulta GET /api/v1/generations/{id} o proporciona webhook_url para que te enviemos el resultado mediante una solicitud POST. Descarga y guarda el resultado por tu cuenta.

200 — succeeded
{
  "id": "gen_8c2QmX1nq0k4",
  "object": "generation",
  "model": "bytedance/seedream-5.0-lite",
  "endpoint": "bytedance/seedream-5.0-lite/text-to-image",
  "mode": "text-to-image",
  "status": "succeeded",
  "input": {
    "prompt": "Foto editorial de producto de una cafetera espresso negro mate sobre travertino, luz suave de ventana, 85 mm",
    "aspect_ratio": "1:1",
    "size": "2K"
  },
  "output": {
    "images": [
      {
        "url": "https://cdn.cheapergen.com/outputs/gen_8c2Q-0.png",
        "content_type": "image/png",
        "width": 2048,
        "height": 2048
      }
    ]
  },
  "error": null,
  "cost": {
    "amount_usd": 0.2255,
    "currency": "usd",
    "estimated": false,
    "official_usd": 0.264,
    "list_price_source": "official",
    "list_price_label": "Official",
    "saved_usd": 0.0385
  },
  "source": "api",
  "created_at": "2026-10-15T09:21:04Z",
  "started_at": "2026-10-15T09:21:06Z",
  "completed_at": "2026-10-15T09:22:31Z"
}
Verifica las firmas de webhooks
6

Calcula el precio antes de ejecutar una solicitud

El endpoint de cotización es gratis y no requiere una clave. Devuelve el precio, el precio oficial y tu descuento para los datos exactos que envíes.

curl -X POST https://cheapergen.com/api/v1/quote/bytedance/seedream-5.0-lite/text-to-image \
  -H "Content-Type: application/json" \
  -d '{"prompt":"Foto editorial de producto de una cafetera espresso negro mate sobre travertino, luz suave de ventana, 85 mm","aspect_ratio":"1:1","size":"2K"}'
Errores de la API y cómo resolverlos
EstadoCódigoSignificado
400invalid_requestFalta un parámetro o está fuera de rango; el mensaje indica cuál.
401unauthorizedFalta la clave de API, está mal formada o fue revocada.
402insufficient_balanceEl saldo no alcanza para el precio cotizado; añade créditos o activa la recarga automática.
429rate_limitedHay demasiadas solicitudes o generaciones en curso; espera un poco y vuelve a intentarlo.
502upstream_errorEl proveedor del modelo falló; se reembolsa el importe reservado y puedes volver a intentarlo.
503model_unavailableNo hay ninguna ruta disponible en este momento; inténtalo más tarde o elige otro modelo.
Documentación completa de la API de Seedream 5.0 Lite

Preguntas frecuentes

Preguntas sobre la API de Seedream 5.0 Lite

No. La API usa HTTPS y JSON, así que los ejemplos de Node.js (fetch) y Python (requests) de esta página son programas completos. Funciona cualquier lenguaje que pueda enviar solicitudes HTTP.

Sí. Añade "webhook_url" al cuerpo de la solicitud y enviaremos la generación terminada mediante POST, firmada con la cabecera CheaperGen-Signature (HMAC-SHA256 de la marca de tiempo y el cuerpo sin procesar). También puedes consultar GET /api/v1/generations/{id}.

Pasa URL públicas en "image_urls". Si un archivo no tiene URL pública, primero puedes subirlo con POST /api/v1/uploads; recibirás una URL para usar en la solicitud.

Texto a imagen cuesta desde $0,0317 por imagen; la solicitud de ejemplo de esta página cuesta $0,032, 9% por debajo de el precio oficial. Las generaciones fallidas se reembolsan automáticamente.