De imagen a imagen (edición de imágenes)
Genera o edita imágenes a partir de imágenes de referencia con GPT Image 2 mediante la API de BetterToken compatible con OpenAI. Con configuración y ejemplos.
POST /v1/images/edits
El endpoint de imagen a imagen usa un cuerpo de solicitud multipart/form-data. Sube una o varias imágenes de referencia y envía el prompt y los parámetros como campos de formulario.
https://bettertoken.ai/v1 como Base URL. Envía tu BetterToken API Key mediante Authorization: Bearer YOUR_API_KEY.Valores recomendados
Envía estos campos de forma explícita en cada solicitud:image para una sola imagen de referencia. Para varias imágenes de referencia, repite el campo image[].
Una imagen de referencia
Varias imágenes de referencia
Edita una zona seleccionada con una máscara
Añade el campo de archivo opcionalmask cuando quieras orientar la edición a una zona seleccionada. El endpoint actual de BetterToken admite un solo archivo en mask. No envíes campos mask[] repetidos.
- La imagen original y la máscara deben tener el mismo formato y las mismas dimensiones en píxeles. Cada archivo debe pesar menos de 50 MB. Para obtener la máxima compatibilidad, usa PNG con canal Alpha en ambos archivos.
- La máscara debe incluir un canal Alpha. Los píxeles totalmente transparentes (
Alpha 0) marcan la zona que el modelo puede volver a dibujar. Los píxeles totalmente opacos (Alpha 255) indican al modelo que conserve esa zona. - Una imagen RGB normal en blanco y negro no es una máscara válida si no contiene realmente un canal Alpha.
- Si envías varios campos
image[], la máscara se aplica a la primera imagen de entrada. - La máscara orienta al modelo. No garantiza que los píxeles fuera de la zona transparente permanezcan exactamente iguales.
Edición con máscara en Python
Abre ambos archivos en una sola sentenciawith para que Python los cierre después de la solicitud:
Comprueba los archivos antes de subirlos
Esta comprobación mínima con Pillow verifica los requisitos de formato, dimensiones y canal Alpha. Para una máscara local típica, también muestra una advertencia si el canal Alpha no incluye zonas totalmente transparentes y opacas:Ejemplo con Python
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:data[0].b64_json y guárdalo como contenido de imagen en base64. Define siempre output_format: "png" para poder guardar la imagen decodificada como .png.
Flujo de respuesta
Este endpoint es síncrono. Después de enviarPOST /images/edits, 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.
Documentación relacionada
Autorizaciones
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Cuerpo
Use the GPT Image 2 model ID.
gpt-image-2 "gpt-image-2"
Instructions for editing the image or generating from reference images.
"Use this reference image to create a more polished square product hero image while preserving the main style."
The reference image field for a single input image.
Repeat this field for each input when sending multiple reference images.
An optional single mask file. The mask and original image must have the same format and dimensions, each file must be smaller than 50 MB, and the mask must contain an Alpha channel. For maximum compatibility, use PNG with an Alpha channel for both files. With multiple image[] inputs, the mask applies to the first image.
Use 1. Send separate requests when you need multiple output images.
"1"
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.
auto, 1024x1024, 1536x1024, 1024x1536, 1536x1152, 1152x1536, 2048x2048, 2048x1152, 3840x2160, 2160x3840 "1024x1024"
Use b64_json.
b64_json "b64_json"
Use png. Do not rely on jpeg or webp being returned directly in the selected format.
png "png"

