GPT Image 2: tu primera solicitud a la Image API
Envía tu primera solicitud de GPT Image 2 mediante BetterToken, guarda la imagen b64_json y resuelve errores de clave, modelo y saldo.
Índice
Generar tu primera imagen con BetterToken requiere una sola solicitud HTTP. Necesitas tu propia API Key y una solicitud POST a https://www.bettertoken.ai/v1/images/generations. Define el modelo como gpt-image-2 e incluye una descripción textual en el cuerpo de la solicitud. La respuesta devuelve la imagen como b64_json, que después debes decodificar y guardar en un archivo.
BetterToken ofrece una Image API compatible con OpenAI, pero es un servicio independiente: tu clave, saldo e historial de solicitudes pertenecen a tu cuenta de BetterToken, no a OpenAI. Antes de empezar, crea una clave en el Dashboard de BetterToken y consulta las condiciones actuales en la página de modelos y precios.
Qué necesitas
curlpara enviar la solicitud;- tu propia API Key de BetterToken;
- la Base URL exacta
https://www.bettertoken.ai/v1; - el modelo
gpt-image-2para esta Image API; - un decodificador Base64 o un script corto de Python.
No pongas una clave real en código fuente, capturas de pantalla ni en un comando que quede en el historial de tu shell. Guárdala en una variable de entorno:
export BETTERTOKEN_API_KEY="your_api_key_here"
El valor anterior es solo un marcador de posición. Usa tu propia clave y nunca la publiques.
Tu primera solicitud de GPT Image 2
¿Listo para ejecutar la solicitud con tu propia clave? Crea una cuenta BetterToken, obtén una API Key y mantenla fuera del código fuente. Crear una cuenta BetterToken
Envía una solicitud al endpoint de generación de imágenes:
curl https://www.bettertoken.ai/v1/images/generations \
-H "Authorization: Bearer $BETTERTOKEN_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-image-2",
"prompt": "A clean editorial illustration of a coding desk at night, green and graphite palette",
"n": 1,
"size": "1024x1024",
"response_format": "b64_json",
"output_format": "png"
}' \
-o image-response.json
Este es un contrato síncrono: la primera solicitud mostrada no necesita task ID, polling ni callback. Lee data[0].b64_json, decodifícalo y guarda el PNG.
Guardar la imagen
El siguiente ejemplo lee el JSON, decodifica el valor Base64 y crea bettertoken-image.png. Solo usa la biblioteca estándar de Python:
import base64
import json
with open("image-response.json", "r", encoding="utf-8") as source:
payload = json.load(source)
image_base64 = payload["data"][0]["b64_json"]
with open("bettertoken-image.png", "wb") as target:
target.write(base64.b64decode(image_base64))
print("Saved: bettertoken-image.png")
Abre el archivo y comprueba que corresponde al prompt. Un HTTP 200 confirma que la solicitud se realizó, pero no sustituye una revisión visual del resultado.
Mejorar la segunda solicitud
Para la primera prueba, utiliza un prompt corto con cuatro partes claras:
- sujeto o escena;
- estilo visual;
- composición;
- paleta o iluminación.
Por ejemplo:
Editorial illustration of a developer reviewing an API response,
clean geometric style, centered composition, dark graphite background
with restrained green accents, no text, no logos
No empieces con una lista larga de requisitos contradictorios. Comprueba primero la composición básica y modifica un parámetro cada vez. Así será más fácil saber qué redacción afectó al resultado.
Los tamaños, la calidad y los formatos son parámetros actuales: antes de una segunda solicitud elige valores admitidos en las Image API Docs actuales. Este contrato no confirma tareas o callbacks asíncronos, procesamiento por lotes, plantillas para vendedores ni calidad de imagen garantizada.
Errores habituales
401: clave rechazada
Comprueba que BETTERTOKEN_API_KEY esté definida en la terminal actual y que la cabecera de autorización incluya el prefijo Bearer. No muestres la clave con echo ni envíes su valor completo al soporte.
402 o saldo insuficiente
Abre el Dashboard de BetterToken y comprueba el saldo disponible. El saldo pagado de BetterToken no se restablece automáticamente al final del mes, pero cada solicitud requiere saldo restante suficiente.
404: ruta incorrecta
La generación de imágenes utiliza esta ruta completa:
https://www.bettertoken.ai/v1/images/generations
No la sustituyas por el endpoint Chat Completions ni uses api.openai.com: una clave de BetterToken funciona con el endpoint de BetterToken.
400: modelo o parámetros incorrectos
Empieza únicamente con los campos obligatorios model y prompt. Esta guía usa gpt-image-2. Si la API indica que el modelo no está disponible, compara el Model ID y los parámetros actuales con la documentación de la Image API.
429 o 5xx
No inicies un bucle infinito de reintentos. Registra el estado HTTP, la hora y una parte segura de la respuesta; vuelve a intentarlo tras una espera. En BetterToken Dashboard, relaciona la solicitud por hora e inspecciona solo el modelo, el estado y el cargo real.
Comprobaciones antes de integrarla en una aplicación
Antes de llevar la solicitud a un backend o flujo de automatización, confirma que:
- la clave se guarda en una variable de entorno o gestor de secretos;
- la solicitud se dirige a BetterToken y no al endpoint de otro proveedor;
- el modelo y los parámetros proceden de la documentación actual;
- el payload Base64 se decodifica sin errores;
- la aplicación limita los reintentos y maneja respuestas que no sean 2xx;
- el coste se comprueba con la página de precios actual, no con una reseña antigua.
Versión breve
El primer flujo funcional tiene tres pasos: envía una solicitud POST a la BetterToken Image API, lee data[0].b64_json y decodifícala en un archivo. Comprueba los parámetros y precios actuales antes de ejecutar la solicitud.