Skip to main content
POST

Autorizaciones

Authorization
string
header
requerido

Todas las APIs requieren autenticación Bearer Token.

Obtener API Key:

Visita la Página de gestión de API Key para obtener tu API Key

Agregar al encabezado de la solicitud:

Cuerpo

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

Nombre del modelo de generación de imágenes, con mayor estabilidad y control para usos comerciales

Ambos modelos aceptan exactamente los mismos parámetros. El consumo real de tokens puede variar ligeramente con el mismo nivel de quality; tome como referencia el usage devuelto.

Opciones disponibles:
gpt-image-2.6-sunburst,
gpt-image-2.6-flare
Ejemplo:

"gpt-image-2.6-sunburst"

prompt
string
requerido

Prompt que describe la imagen que desea generar o cómo editar la imagen de entrada

Límites de longitud (deben cumplirse ambos):

  • Hasta 32.000 caracteres (contados como puntos de código Unicode)
  • El propio texto de prompt no debe superar los 60.000 bytes al codificarse en UTF-8

Cada carácter puede ocupar una cantidad distinta de bytes en UTF-8. Utilice el número real de bytes tras la codificación.

Si se supera cualquiera de los límites, acorte el prompt antes de volver a enviarlo.

Recomendación: Si el prompt supera los 8000 tokens, la imagen generada puede no coincidir con lo esperado; se recomienda acortar el prompt.

Maximum string length: 32000
Ejemplo:

"Una hermosa puesta de sol colorida sobre el océano"

image_urls
string<uri>[]

Imágenes de referencia como URLs públicas, para funciones de imagen a imagen y edición de imágenes

Nota:

  • Número de imágenes de entrada por solicitud: 1~16
  • Tamaño de una sola imagen: no más de 50MB
  • Píxeles de una sola imagen: ancho × alto no más de 178.956.970 px
  • Longitud de lado de una sola imagen: ancho / alto sin superar 23170 px cada uno; al superarlo pueden producirse errores
  • Formatos de archivo admitidos: .jpeg, .jpg, .png, .webp
  • Las URLs de imagen deben ser directamente accesibles por el servidor, o la URL de imagen debe activar la descarga directa al acceder (generalmente estas URLs terminan con extensiones de archivo de imagen, como .png, .jpg)
  • En escenarios de imagen a imagen / edición de imagen, las imágenes de referencia enviadas generan consumo adicional de tokens de imagen de entrada
  • Con markup_url, las anotaciones se aplican a la primera imagen y las demás sirven como referencias; la primera imagen debe tener un ancho × alto ≤ 16.777.216 px
  • No se admiten imágenes de referencia cuando output_format es svg
Ejemplo:
mask_url
string<uri>

URL de la máscara de inpainting — marca la región de la imagen de referencia que se va a regenerar. Solo válida en modo de edición de imagen (debe combinarse con image_urls); en texto-a-imagen puro, la máscara se ignora silenciosamente.

Requisitos de formato:

  • Debe ser un PNG con canal alfa: píxeles transparentes (alpha < 255) = áreas a regenerar, píxeles opacos = preservados
  • Las dimensiones de la máscara deben coincidir exactamente con las de la imagen de referencia (ancho × alto en píxeles)
  • Una máscara por solicitud

Nota:

  • Se requiere al menos una imagen de referencia en image_urls; una máscara sola no tiene efecto
  • No se puede combinar con markup_url
  • Errores comunes:
    • Invalid mask image format - mask image missing alpha channel: la imagen subida no tiene canal alfa (JPEG, PNG opaco, etc.). Reexporta la máscara como PNG con regiones transparentes.
    • Invalid mask image format - mask size does not match image size: las dimensiones de la máscara no coinciden con la imagen de referencia. Redimensiona la máscara a las mismas dimensiones en píxeles que tu imagen de referencia.
Ejemplo:

"https://example.com/mask.png"

markup_url
string<uri>

URL pública de la capa de anotaciones. Marque con círculos, flechas o trazos las zonas que desea modificar en la imagen de referencia y describa los cambios en prompt. Solo se aplica en el modo de edición de imágenes (requiere image_urls).

Requisitos de formato:

  • Debe ser un PNG con píxeles transparentes: dibuje únicamente las anotaciones y deje el resto transparente. No dibuje directamente sobre la imagen original
  • Las dimensiones deben coincidir exactamente con las de la primera imagen de referencia (ancho × alto en píxeles)
  • Tanto la primera imagen de referencia como la capa de anotaciones deben tener un ancho × alto ≤ 16.777.216 px
  • Tamaño del archivo: no más de 50MB

Nota:

  • Las anotaciones se aplican a la primera imagen de image_urls; las demás sirven como referencias
  • No se puede combinar con mask_url
  • Admite edición de imágenes convencionales y GIF, pero no SVG
  • También puede enviarse como model_params.markup_url; si se proporcionan ambos valores, tiene prioridad el de nivel superior
  • En prompt, indique también qué debe conservarse, por ejemplo, "mantenga el resto sin cambios y elimine el círculo rojo"
Ejemplo:

"https://example.com/markup.png"

size
string
predeterminado:auto

Dimensiones de la imagen generada. Por defecto auto. Las imágenes convencionales y las imágenes de referencia para SVG comparten las reglas siguientes; GIF utiliza las reglas independientes del apartado ④.

① Imágenes convencionales / referencia para SVG: formato de proporción (15 opciones)

  • 1:1: Cuadrado
  • 1:2 / 2:1: Vertical / horizontal extremo
  • 1:3 / 3:1: Ultra vertical / horizontal (límite 3:1)
  • 2:3 / 3:2: Vertical / horizontal estándar
  • 3:4 / 4:3: Vertical / horizontal clásico
  • 4:5 / 5:4: Comunes en redes sociales
  • 9:16 / 16:9: Pantalla ancha móvil / escritorio
  • 9:21 / 21:9: Ultra-ancha

② Imágenes convencionales / referencia para SVG: píxeles explícitos: WxH (o W×H), p. ej. 1024x1024, 1536x1024, 3840×2160

  • Ancho y alto deben ser múltiplos de 16
  • Rango de cada borde: [16, 3840]
  • Presupuesto de píxeles: 655.360 ≤ width × height ≤ 8.294.400 (aprox. 0,65 MP ~ 8,29 MP)
  • Relación de aspecto: ≤ 3:1

③ Imágenes convencionales / referencia para SVG: auto: El modelo decide el tamaño automáticamente (en este caso resolution no se aplica)

④ Salida GIF: size indica las dimensiones de cada fotograma. Solo admite auto y dimensiones explícitas en píxeles, no proporciones.

  • Con auto, cada fotograma mide 512×512
  • El ancho y el alto explícitos de cada fotograma deben ser múltiplos positivos de 16
  • El mínimo de 655.360 píxeles para imágenes convencionales no se aplica a cada fotograma GIF; por ejemplo, 512x512 es válido
  • La imagen que reúne todos los fotogramas debe cumplir los límites de lados, píxeles totales y relación de aspecto; consulte las distribuciones y los límites por fotograma en model_params.frame_count
  • resolution no se aplica

Tratamiento de valores fuera de rango:

  • Para imágenes convencionales / referencia para SVG, una combinación de proporción + resolution que exceda el presupuesto se reduce proporcionalmente al máximo permitido (p. ej. 4K 2:1 → 3840×1920)
  • Las dimensiones explícitas de fotogramas GIF que superen los límites devuelven HTTP 400 y no se reducen automáticamente
Ejemplo:

"auto"

resolution
enum<string>
predeterminado:1K

Parámetro rápido de nivel de resolución, solo efectivo cuando size está en formato de proporción; en formato de píxeles explícito y en la salida GIF este campo se ignora

Reglas de presupuesto de píxeles (las dimensiones se calculan a partir del recuento total de píxeles objetivo y la proporción de size, alineadas a múltiplos de 16):

  • 1K: ~1 MP (1024² = 1.048.576 píxeles)
  • 2K: ~4 MP (2048² = 4.194.304 píxeles)
  • 4K: ~8,29 MP (3840×2160 = 8.294.400 píxeles, el máximo)

Tamaños de salida horizontal / cuadrado (los tamaños verticales son el horizontal con ancho/alto intercambiados, p. ej. 2:3 = 3:2 invertido):

* Indica combinaciones que se reducen automáticamente para caber en el presupuesto de píxeles. Los valores no distinguen mayúsculas/minúsculas.

Opciones disponibles:
1K,
2K,
4K
Ejemplo:

"1K"

quality
enum<string>
predeterminado:medium

Calidad de renderizado, que afecta directamente al número de tokens de salida y al costo. Por defecto medium

Nota:

  • La tabla compara únicamente el costo de salida de imagen, sin incluir la entrada ni el modelo autor de SVG
  • Los valores corresponden a 1024×1024; los tokens de salida varían con el total de píxeles y la relación de aspecto. Consulte el usage devuelto para conocer el consumo real
  • En GIF, los tokens se calculan sobre la imagen que reúne todos los fotogramas; en SVG, la calidad se aplica a la imagen de referencia
  • Use low para borradores rápidos. Para recursos finales, compare niveles para equilibrar detalle, latencia y costo
Opciones disponibles:
low,
medium,
high,
xhigh,
max
Ejemplo:

"medium"

complexity
enum<string>
predeterminado:high

Profundidad de planificación antes de generar la imagen, independiente de quality. Por defecto high

  • low: Adecuado para cambios locales, como sustituir el fondo o cambiar el texto de un cartel
  • medium: Equilibrado
  • high: Adecuado para imágenes con mucho texto, composiciones complejas o relaciones complejas entre objetos

Nota:

  • Los niveles más altos tardan más y pueden introducir cambios no deseados; compare los resultados para su tarea
  • Cambiar complexity no genera un cargo adicional
  • En SVG, se aplica a la imagen de referencia
  • También puede enviarse como model_params.complexity; si se proporcionan ambos valores, tiene prioridad el de nivel superior
Opciones disponibles:
low,
medium,
high
Ejemplo:

"high"

background
enum<string>
predeterminado:opaque

Canal alfa de la imagen de salida. Valor predeterminado opaque

  • opaque: Fondo opaco, sin canal alfa
  • transparent: Conserva el canal alfa

Nota:

  • transparent es una función en Preview y los resultados pueden ser inestables
  • Al usar transparent, output_format debe ser png o webp
  • Si output_format es gif o svg, solo se admite opaque
Opciones disponibles:
opaque,
transparent
Ejemplo:

"opaque"

output_format
enum<string>
predeterminado:png

Formato del archivo de salida. Por defecto png

  • png: Sin pérdida, admite fondos transparentes
  • jpeg: Compresión con pérdida y archivos más pequeños
  • webp: Equilibra tamaño y calidad; también admite transparencia
  • gif: GIF animado; consulte model_params para el número y la duración de los fotogramas
  • svg: Imagen vectorial SVG, adecuada para logotipos, iconos y gráficos que necesitan escalar sin pérdida

Nota:

  • Si background es transparent, solo se permite png o webp
  • gif admite generación de texto a imagen y edición de imágenes
  • Con gif y svg, n debe ser 1
  • svg solo admite generación de texto a imagen
  • Para crear un SVG, primero se genera una imagen de referencia y luego un modelo autor (model_params.svg_model) la convierte en gráficos vectoriales. Los tokens del modelo autor se facturan por separado según sus tarifas
Opciones disponibles:
png,
jpeg,
webp,
gif,
svg
Ejemplo:

"png"

n
integer
predeterminado:1

Cantidad de imágenes a generar, cada una facturada de forma independiente

Nota:

  • Los tokens de entrada de texto escalan proporcionalmente con n
  • El soporte de n > 1 es poco fiable por ahora: aun con un valor mayor que 1, a menudo solo se devuelve una imagen. El número real es el de results en la respuesta y la facturación sigue el usage devuelto. Si necesita varias imágenes, envíe varias solicitudes de una sola imagen
  • Cuando output_format es gif o svg, este valor debe ser 1
Rango requerido: 1 <= x <= 10
Ejemplo:

1

model_params
object

Parámetros específicos del modelo. Los parámetros de fotogramas GIF y del autor de SVG deben enviarse en este objeto.

  • frame_count y frame_duration_ms solo se permiten con output_format=gif
  • svg_model y svg_reasoning_effort solo se permiten con output_format=svg
  • Los parámetros incompatibles con el formato de salida devuelven HTTP 400; no se ignoran silenciosamente
callback_url
string<uri>

Dirección de callback HTTPS después de completar la tarea

Momento del callback:

  • Se activa cuando la tarea se completa, falla o se cancela
  • Se envía después de completar la confirmación de facturación

Restricciones de seguridad:

  • Solo se admite el protocolo HTTPS
  • El callback a direcciones IP internas está prohibido (127.0.0.1, 10.x.x.x, 172.16-31.x.x, 192.168.x.x, etc.)
  • La longitud de la URL no debe exceder 2048 caracteres

Mecanismo de callback:

  • Tiempo de espera: 10 segundos
  • Máximo 3 reintentos en caso de fallo (reintentos después de 1 segundo/2 segundos/4 segundos)
  • El formato del cuerpo de respuesta del callback es consistente con el formato de respuesta de la API de consulta de tareas
  • La dirección de callback que devuelve un código de estado 2xx se considera exitosa, otros códigos de estado activarán reintentos
Ejemplo:

"https://your-domain.com/webhooks/image-task-completed"

Respuesta

Tarea de imagen creada con éxito

created
integer

Marca de tiempo de creación de la tarea

Ejemplo:

1757156493

id
string

ID de tarea

Ejemplo:

"task-unified-1757156493-imcg5zqt"

model
string

Nombre del modelo usado realmente

Ejemplo:

"gpt-image-2.6-sunburst"

object
enum<string>

Tipo específico de tarea

Opciones disponibles:
image.generation.task
progress
integer

Porcentaje de progreso de la tarea (0-100)

Rango requerido: 0 <= x <= 100
Ejemplo:

1

status
enum<string>

Estado de la tarea. Las tareas en cola y en generación devuelven processing; el estado final es completed o failed.

Opciones disponibles:
processing,
completed,
failed
Ejemplo:

"processing"

task_info
object

Información de tarea asíncrona

type
enum<string>

Tipo de salida de la tarea

Opciones disponibles:
text,
image,
audio,
video
Ejemplo:

"image"

usage
object

Información de uso y facturación