Saltar al contenido principal
POST
/
v1
/
images
/
generations
curl --request POST \ --url https://api.evolink.ai/v1/images/generations \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data ' { "model": "gpt-image-2", "prompt": "Una hermosa puesta de sol colorida sobre el océano" } '
{
  "created": 1757156493,
  "id": "task-unified-1757156493-imcg5zqt",
  "model": "gpt-image-2",
  "object": "image.generation.task",
  "progress": 0,
  "status": "pending",
  "task_info": {
    "can_cancel": true,
    "estimated_time": 100
  },
  "type": "image",
  "usage": {
    "billing_rule": "per_call",
    "credits_reserved": 2.5,
    "user_group": "default"
  }
}

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:

Authorization: Bearer YOUR_API_KEY

Cuerpo

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

Nombre del modelo de generación de imágenes, canal oficial, mejor estabilidad y controlabilidad, adecuado para escenarios comerciales

Opciones disponibles:
gpt-image-2
Ejemplo:

"gpt-image-2"

prompt
string
requerido

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

Límites:

  • Hasta 32000 caracteres (contados por puntos de código Unicode, válido para CJK y otros idiomas)
Maximum string length: 32000
Ejemplo:

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

image_urls
string<uri>[]

Lista de URLs de imagen de referencia para funciones de imagen a imagen y edición de imagen

Nota:

  • Número de imágenes de entrada por solicitud: 1~16
  • Tamaño de una sola imagen: no más de 50MB
  • 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
Ejemplo:
[
  "https://example.com/image1.png",
  "https://example.com/image2.png"
]
size
string
predeterminado:auto

Tamaño de la imagen generada. Admite formato de proporción y formato de píxeles explícito, por defecto auto

① Formato de proporción (recomendado, 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

② Formato de píxeles explícito: 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

auto: El modelo decide el tamaño automáticamente (en este caso resolution no se aplica)

Manejo de desbordamiento:

  • Si una combinación de proporción + resolution excede el presupuesto de píxeles, las dimensiones se reducen proporcionalmente al máximo permitido (p. ej. 4K 1:1 → 2880×2880)
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 este campo se ignora

Reglas de anclaje (el otro borde se deriva automáticamente del valor de size y se alinea a múltiplos de 16):

  • 1K: Borde corto fijado en 1024
  • 2K: Borde largo fijado en 2048
  • 4K: Borde largo fijado en 3840

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

Proporción1K2K4K
1:11024×10242048×20482880×2880 *
2:12048×10242048×10243840×1920
3:13072×10242048×6883840×1280
3:21536×10242048×13603520×2336 *
4:31360×10242048×15363312×2480 *
5:41280×10242048×16323216×2560 *
16:91824×10242048×11523840×2160 (UHD)
21:92384×10242048×8803840×1648

* 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, controla la "profundidad de razonamiento" del modelo, afecta directamente el número de tokens de salida y el costo. Por defecto medium

ValorBase de tileCosto relativo (1024²)
low16~0,11×
medium481,0×
high96~4,0×
Opciones disponibles:
low,
medium,
high
Ejemplo:

"medium"

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
Rango requerido: 1 <= x <= 10
Ejemplo:

1

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"

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:

0

status
enum<string>

Estado de la tarea

Opciones disponibles:
pending,
processing,
completed,
failed
Ejemplo:

"pending"

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