Skip to main content
POST
cURL
POST /v1/images/generations El endpoint de texto a imagen usa un cuerpo de solicitud application/json. Envía un prompt, mantén abierta la solicitud HTTP y lee la imagen generada desde data[0].b64_json en la misma respuesta.
Usa https://bettertoken.ai/v1 como Base URL. Envía tu BetterToken API Key mediante Authorization: Bearer YOUR_API_KEY.
Puedes introducir Authorization y el cuerpo de la solicitud en el Playground de la derecha. Después, envía la solicitud directamente a https://bettertoken.ai/v1/images/generations.
No incluyas API Keys en código frontend del navegador, repositorios Git, tickets, capturas de pantalla ni registros. En llamadas mediante un proxy del servidor, guarda las API Keys únicamente en variables de entorno del servidor o en un gestor de secretos.

Elige el flujo adecuado

  • Generar una imagen desde texto y guardar el resultado: continúa en esta página. Empieza con el ejemplo de curl y usa después Guardar la imagen para decodificar data[0].b64_json.
  • Editar una imagen existente: usa Image to image, que envía uno o varios archivos de origen como multipart/form-data.
  • Elegir un modelo, revisar parámetros y estimar el presupuesto: consulta los Model ID y precios actuales en la model plaza y revisa Valores recomendados más abajo para los parámetros. El artículo en inglés sobre la primera solicitud de GPT Image 2 ofrece el contexto completo de solicitud y respuesta.

Inicio rápido con curl

Usa https://bettertoken.ai/v1 como Base URL y envía una solicitud a https://bettertoken.ai/v1/images/generations:

Valores recomendados

Envía estos campos de forma explícita en cada solicitud:
Para generar varias imágenes, envía varias solicitudes independientes. No dependas de una sola solicitud con n > 1.

Tamaños recomendados

size representa la proporción y el nivel de tamaño esperados. El servidor puede asignar o ajustar los píxeles devueltos. Usa las dimensiones de la imagen decodificada en lugar de recortar la salida por la fuerza al valor solicitado.

Guarda la imagen

Una respuesta correcta sigue la estructura de imagen compatible con OpenAI:
Lee data[0].b64_json y guárdalo como contenido de imagen en base64. La respuesta puede incluir campos adicionales como revised_prompt; permite esos campos en tu cliente. Define siempre output_format: "png". Después, guarda la imagen decodificada como .png sin inspeccionar las cabeceras del archivo.

Ejemplo con JavaScript (Node.js)

No confíes en output_format: "jpeg" ni en output_format: "webp" para recibir directamente archivos JPEG o WebP. El endpoint actual puede seguir devolviendo contenido de imagen PNG. Si tu producto necesita JPEG o WebP, recibe primero el PNG y conviértelo en tu propio código.

Flujo de respuesta

Este endpoint es síncrono. Después de enviar POST /images/generations, mantén abierta la solicitud HTTP hasta que responda el servidor. Cuando la generación se completa, el contenido de la imagen se devuelve en data[0].b64_json. El endpoint no devuelve un task_id, y no existe un endpoint separado para consultar el estado o descargar el resultado.

Tiempos de espera y reintentos

  • Configura tiempos de espera de varios minutos en el cliente HTTP.
  • Reintenta los errores de transporte, 408, 409, 425, 429 y 5xx.
  • No reintentes automáticamente 400, 401, parámetros ausentes ni solicitudes mal formadas.
  • Usa espera exponencial, por ejemplo, 3s, 8s y 15s.
  • Si no puedes aceptar imágenes duplicadas, registra tu propio ID de solicitud antes de reintentar.

Gestión de errores

Los errores suelen devolver JSON. Al mostrar un error, lee primero error.message, después message y, por último, el texto del estado HTTP.

Lista de integración

  • La Base URL es https://bettertoken.ai/v1.
  • La cabecera contiene Authorization: Bearer YOUR_API_KEY.
  • La solicitud usa application/json y POST /images/generations.
  • model es gpt-image-2, response_format es b64_json, output_format es png y n es 1.
  • size es uno de los valores recomendados, como 1024x1024.
  • Tu cliente HTTP permite varios minutos para la generación.

Documentación relacionada

Autorizaciones

Authorization
string
header
requerido

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Cuerpo

application/json
model
enum<string>
predeterminado:gpt-image-2
requerido

Use the GPT Image 2 model ID.

Opciones disponibles:
gpt-image-2
Ejemplo:

"gpt-image-2"

prompt
string
requerido

A detailed description of the image to generate.

Ejemplo:

"A futuristic AI product poster on a light background, with glass textures, a clean composition, and a premium technology aesthetic."

n
predeterminado:1

Use 1. Send separate requests when you need multiple output images.

Ejemplo:

1

size
enum<string>
predeterminado:1024x1024

The requested image size or aspect-ratio tier. The server may map or adjust the final pixel dimensions, so inspect the decoded image for its actual size.

Opciones disponibles:
auto,
1024x1024,
1536x1024,
1024x1536,
1536x1152,
1152x1536,
2048x2048,
2048x1152,
3840x2160,
2160x3840
Ejemplo:

"1024x1024"

response_format
enum<string>
predeterminado:b64_json

Use b64_json.

Opciones disponibles:
b64_json
Ejemplo:

"b64_json"

output_format
enum<string>
predeterminado:png

Use png. Do not rely on jpeg or webp being returned directly in the selected format.

Opciones disponibles:
png
Ejemplo:

"png"

Respuesta

Image generation result.