Generar imágenes
Texto a imagen compatible con OpenAI Images: GPT Image, Gemini Banana y Seedream; Seedream y Gemini también reciben aquí imágenes de referencia.
/v1/images/generationsGenera imágenes a partir de un prompt. GPT Image y Gemini devuelven data[].b64_json; Seedream devuelve data[].url (válido 24 horas). Seedream y los dos grupos de Gemini también hacen imagen a imagen en este endpoint con image / images.
Cada modelo tiene parámetros y límites distintos: elija un modelo abajo y la tabla de parámetros cambia con él; las cifras provienen de las especificaciones que exporta el código de validación del plugin (la misma fuente que /spec/models/<model>.json). Cuando GPT Image tarda más de unos 40 segundos, el servidor responde primero 200 y escribe espacios en blanco para mantener viva la conexión, así que un fallo posterior también llega con 200: determine el resultado según si el cuerpo contiene error y use en el cliente un tiempo de espera de lectura de al menos 300 segundos.
Kling y Midjourney también se envían en este endpoint, pero siempre de forma asíncrona (202 + id; consulte con Consultar una tarea de video); elija «Kling» o «Midjourney» en el selector de modelo para verlos. Para Grok Imagine, vea generación de imágenes de Grok Imagine.
- GPT Image no admite el campo oficial de streaming
partial_images; omítalo.stream: truedevuelve SSE de Images de HopBase, no eventos de vista previa por imagen. output_compression,moderation,useryresponse_formatsolo se reenvían en texto a imagen síncrono JSON y en edición multipart síncrona; la edición JSON y las tareas asíncronas no conservan estos campos. En modo asíncrono, GPT Image solo conservamodel,prompt,n,size,quality,background,output_format,input_fidelityy las imágenes / mask de edición.- Facturación de Gemini: «Gemini (todos los modelos, incl. imagen)» factura un precio fijo por imagen (igual para 1K / 2K / 4K); «Gemini oficial directo» factura por tokens (tokens de salida × precio).
- La ruta puente de Chat Completions a Images solo conserva las primeras 6 imágenes de referencia; para usar 14, llame directamente a este endpoint.
Encabezados
Bearer sk-…: una clave de API creada en la consola; su grupo debe incluir el modelo solicitado
respond-async: GPT Image / Gemini devuelven de inmediato 202 Accepted, task_id y status_url; después consulte con GET /v1/images/tasks?task_id=…. Recomendado para imágenes grandes 2K / 4K; Seedream ignora esta cabecera y responde de forma síncrona como siempre
Valoresrespond-async
Parámetros del cuerpoJSON
data[].b64_json. Hasta 16 imágenes de referencia.Confirme primero que GET /v1/models de la clave actual incluye este ID
Instrucción de generación o edición; si está vacío devuelve 400 prompt must not be empty. El gateway no limita la longitud; el máximo es el límite oficial
LímitesTras quitar los espacios al inicio y al final no puede quedar vacío; si no, 400 "prompt must not be empty"Longitud1–32000 caracteres
Ejemplos: 1024x1024, 2048x2048, 3840x2160. Un valor no válido devuelve 400 antes de generar, sin facturar; no acepta 1K / 2K / 4K
Límitesauto o anchoxalto: lados múltiplos de 16, cada lado ≤ 3840, relación lado largo/corto ≤ 3:1, 655360–8294400 píxeles en total
Cuanto más alto el nivel, más tokens de salida y mayor costo: en pruebas con 1024x1024, low da unos 200, high unos 1,760, xhigh unos 3,120 y max unos 7,020 tokens de salida
Valoresautolowmediumhigh
LímitesEl gateway no lo valida y lo reenvía sin cambios; cuanto más alto el nivel, más tokens de salida
Algunos grupos solo admiten 1 y un valor mayor devuelve 400; ≤ 0 se trata como 1
Rango1–10Predeterminado1
transparent requiere png o webp; el fondo transparente en 2.0 es una función en vista previa
Valoresautoopaquetransparent
Determina el formato de b64_json una vez decodificado
Valorespngjpegwebp
Solo jpeg / webp; solo se conserva en el JSON síncrono de generations y en la edición multipart
Rango0–100Predeterminado100
No desactiva la revisión de seguridad del contenido
Valoresautolow
Cadena de identificación del usuario final; no es un ID de cuenta de HopBase ni cambia a quién se factura
Envíe lo que envíe, se devuelve b64_json; no se puede obtener un enlace de descarga con url. Omítalo
true cambia a SSE de Images de HopBase (envía keepalive durante la espera; solo el último evento data: contiene el JSON de Images y termina con [DONE]), no los eventos nativos de vista previa imagen por imagen de OpenAI; en el SDK mantenga false
Límitestrue devuelve SSE de Images de HopBase; en el SDK mantenga falsePredeterminadofalse
Campo de compatibilidad; GPT Image 2 ya procesa las referencias en alta fidelidad por defecto. Omítalo
Valoreslowhigh
- transparent requiere png o webp
- output_compression solo aplica a jpeg / webp
Confirme primero que GET /v1/models de la clave actual incluye este ID
Instrucción de generación o edición; si está vacío devuelve 400 prompt must not be empty. El gateway no limita la longitud; el máximo es el límite oficial
LímitesTras quitar los espacios al inicio y al final no puede quedar vacío; si no, 400 "prompt must not be empty"Longitud1–32000 caracteres
Ejemplos: 1024x1024, 2048x2048, 3840x2160. Un valor no válido devuelve 400 antes de generar, sin facturar; no acepta 1K / 2K / 4K
Límitesauto o anchoxalto: lados múltiplos de 16, cada lado ≤ 3840, relación lado largo/corto ≤ 3:1, 655360–8294400 píxeles en total
Cuanto más alto el nivel, más tokens de salida y mayor costo: en pruebas con 1024x1024, low da unos 200, high unos 1,760, xhigh unos 3,120 y max unos 7,020 tokens de salida
Valoresautolowmediumhighxhighmax
LímitesEl gateway no lo valida y lo reenvía sin cambios; cuanto más alto el nivel, más tokens de salida
Algunos grupos solo admiten 1 y un valor mayor devuelve 400; ≤ 0 se trata como 1
Rango1–10Predeterminado1
transparent requiere png o webp; el fondo transparente en 2.0 es una función en vista previa
Valoresautoopaquetransparent
Determina el formato de b64_json una vez decodificado
Valorespngjpegwebp
Solo jpeg / webp; solo se conserva en el JSON síncrono de generations y en la edición multipart
Rango0–100Predeterminado100
No desactiva la revisión de seguridad del contenido
Valoresautolow
Cadena de identificación del usuario final; no es un ID de cuenta de HopBase ni cambia a quién se factura
Envíe lo que envíe, se devuelve b64_json; no se puede obtener un enlace de descarga con url. Omítalo
true cambia a SSE de Images de HopBase (envía keepalive durante la espera; solo el último evento data: contiene el JSON de Images y termina con [DONE]), no los eventos nativos de vista previa imagen por imagen de OpenAI; en el SDK mantenga false
Límitestrue devuelve SSE de Images de HopBase; en el SDK mantenga falsePredeterminadofalse
Campo de compatibilidad; GPT Image 2 ya procesa las referencias en alta fidelidad por defecto. Omítalo
Valoreslowhigh
- transparent requiere png o webp
- output_compression solo aplica a jpeg / webp
Confirme primero que GET /v1/models de la clave actual incluye este ID
Instrucción de generación o edición; si está vacío devuelve 400 prompt must not be empty. El gateway no limita la longitud; el máximo es el límite oficial
LímitesTras quitar los espacios al inicio y al final no puede quedar vacío; si no, 400 "prompt must not be empty"Longitud1–32000 caracteres
Ejemplos: 1024x1024, 2048x2048, 3840x2160. Un valor no válido devuelve 400 antes de generar, sin facturar; no acepta 1K / 2K / 4K
Límitesauto o anchoxalto: lados múltiplos de 16, cada lado ≤ 3840, relación lado largo/corto ≤ 3:1, 655360–8294400 píxeles en total
Cuanto más alto el nivel, más tokens de salida y mayor costo: en pruebas con 1024x1024, low da unos 200, high unos 1,760, xhigh unos 3,120 y max unos 7,020 tokens de salida
Valoresautolowmediumhighxhighmax
LímitesEl gateway no lo valida y lo reenvía sin cambios; cuanto más alto el nivel, más tokens de salida
Algunos grupos solo admiten 1 y un valor mayor devuelve 400; ≤ 0 se trata como 1
Rango1–10Predeterminado1
transparent requiere png o webp; el fondo transparente en 2.0 es una función en vista previa
Valoresautoopaquetransparent
Determina el formato de b64_json una vez decodificado
Valorespngjpegwebp
Solo jpeg / webp; solo se conserva en el JSON síncrono de generations y en la edición multipart
Rango0–100Predeterminado100
No desactiva la revisión de seguridad del contenido
Valoresautolow
Cadena de identificación del usuario final; no es un ID de cuenta de HopBase ni cambia a quién se factura
Envíe lo que envíe, se devuelve b64_json; no se puede obtener un enlace de descarga con url. Omítalo
true cambia a SSE de Images de HopBase (envía keepalive durante la espera; solo el último evento data: contiene el JSON de Images y termina con [DONE]), no los eventos nativos de vista previa imagen por imagen de OpenAI; en el SDK mantenga false
Límitestrue devuelve SSE de Images de HopBase; en el SDK mantenga falsePredeterminadofalse
Campo de compatibilidad; GPT Image 2 ya procesa las referencias en alta fidelidad por defecto. Omítalo
Valoreslowhigh
- transparent requiere png o webp
- output_compression solo aplica a jpeg / webp
Según lo que devuelve GET /v1/models para la clave actual
Si el modelo se niega o solo responde con texto, devuelve 400 (el mensaje cita ese texto) o 502: reformule el prompt
LímitesTras quitar los espacios al inicio y al final no puede quedar vacío; si no, 400 "prompt must not be empty"Longitud≥ 1 caracteres
Se generan en paralelo. Todo o nada: si falla una, falla toda la solicitud y no se factura
LímitesTope según el nivel de salida: 1K ≤ 10, 2K ≤ 5Rango1–10Predeterminado1
Forma plana de nivel superior, equivalente a google.image_config.image_size; sustituye el nivel deducido de size
Valores1K2K
Predeterminado"1K"
Forma plana de nivel superior, equivalente a google.image_config.aspect_ratio; tiene prioridad sobre size
Valores1:12:33:23:44:34:55:49:1616:921:9
Predeterminado"1:1"
anchoxalto nunca se rechaza por la proporción: se asigna a la proporción oficial más cercana y el nivel se deduce del lado largo, bajando sin aviso al nivel máximo del modelo. Un 1K / 2K / 4K explícito por encima del nivel del modelo devuelve 400; si también se envía image_size, prevalece este
Valores1K2K
Límitesauto, anchoxalto con cualquier proporción (se asigna a la proporción oficial más cercana; el nivel se deduce del lado largo y baja sin aviso al nivel máximo del modelo) o un nivel del modelo
En el SDK puede escribirse como extra_body.google.image_config; las tres formas son equivalentes
Valores1:12:33:23:44:34:55:49:1616:921:9
Valores1K2K
Imágenes de referencia; basta con incluirlas en el cuerpo de generations. Si se envían ambas, prevalece images. En "Gemini oficial directo", cada imagen decodificada ≤ 20 MiB y no hay /v1/images/edits
Igual que image; si se envían ambas, prevalece images
LímitesImágenes de referencia: cadena o array de cadenas, como máximo 14
No admitido: enviar mask devuelve 400; para ediciones locales, describa la zona en el prompt
No admite transparent (devuelve 400)
No puede ser"transparent"
No admitido; omítalo o envíe false
No puede sertrue
- Con salida 2K, como máximo 5 imágenes por solicitud (límite de tamaño de la respuesta)
Según lo que devuelve GET /v1/models para la clave actual
Si el modelo se niega o solo responde con texto, devuelve 400 (el mensaje cita ese texto) o 502: reformule el prompt
LímitesTras quitar los espacios al inicio y al final no puede quedar vacío; si no, 400 "prompt must not be empty"Longitud≥ 1 caracteres
Se generan en paralelo. Todo o nada: si falla una, falla toda la solicitud y no se factura
LímitesTope según el nivel de salida: 1K ≤ 10, 2K ≤ 5Rango1–10Predeterminado1
Forma plana de nivel superior, equivalente a google.image_config.image_size; sustituye el nivel deducido de size
Valores1K2K
Predeterminado"1K"
Forma plana de nivel superior, equivalente a google.image_config.aspect_ratio; tiene prioridad sobre size
Valores1:12:33:23:44:34:55:49:1616:921:9
Predeterminado"1:1"
anchoxalto nunca se rechaza por la proporción: se asigna a la proporción oficial más cercana y el nivel se deduce del lado largo, bajando sin aviso al nivel máximo del modelo. Un 1K / 2K / 4K explícito por encima del nivel del modelo devuelve 400; si también se envía image_size, prevalece este
Valores1K2K
Límitesauto, anchoxalto con cualquier proporción (se asigna a la proporción oficial más cercana; el nivel se deduce del lado largo y baja sin aviso al nivel máximo del modelo) o un nivel del modelo
En el SDK puede escribirse como extra_body.google.image_config; las tres formas son equivalentes
Valores1:12:33:23:44:34:55:49:1616:921:9
Valores1K2K
Imágenes de referencia; basta con incluirlas en el cuerpo de generations. Si se envían ambas, prevalece images. En "Gemini oficial directo", cada imagen decodificada ≤ 20 MiB y no hay /v1/images/edits
Igual que image; si se envían ambas, prevalece images
LímitesImágenes de referencia: cadena o array de cadenas, como máximo 14
No admitido: enviar mask devuelve 400; para ediciones locales, describa la zona en el prompt
No admite transparent (devuelve 400)
No puede ser"transparent"
No admitido; omítalo o envíe false
No puede sertrue
- Con salida 2K, como máximo 5 imágenes por solicitud (límite de tamaño de la respuesta)
Según lo que devuelve GET /v1/models para la clave actual
Si el modelo se niega o solo responde con texto, devuelve 400 (el mensaje cita ese texto) o 502: reformule el prompt
LímitesTras quitar los espacios al inicio y al final no puede quedar vacío; si no, 400 "prompt must not be empty"Longitud≥ 1 caracteres
Se generan en paralelo. Todo o nada: si falla una, falla toda la solicitud y no se factura
LímitesTope según el nivel de salida: 1K ≤ 10, 2K ≤ 5, 4K ≤ 2Rango1–10Predeterminado1
Forma plana de nivel superior, equivalente a google.image_config.image_size; sustituye el nivel deducido de size
Valores1K2K4K
Predeterminado"1K"
Forma plana de nivel superior, equivalente a google.image_config.aspect_ratio; tiene prioridad sobre size
Valores1:12:33:23:44:34:55:49:1616:921:9
Predeterminado"1:1"
anchoxalto nunca se rechaza por la proporción: se asigna a la proporción oficial más cercana y el nivel se deduce del lado largo, bajando sin aviso al nivel máximo del modelo. Un 1K / 2K / 4K explícito por encima del nivel del modelo devuelve 400; si también se envía image_size, prevalece este
Valores1K2K4K
Límitesauto, anchoxalto con cualquier proporción (se asigna a la proporción oficial más cercana; el nivel se deduce del lado largo y baja sin aviso al nivel máximo del modelo) o un nivel del modelo
En el SDK puede escribirse como extra_body.google.image_config; las tres formas son equivalentes
Valores1:12:33:23:44:34:55:49:1616:921:9
Valores1K2K4K
Imágenes de referencia; basta con incluirlas en el cuerpo de generations. Si se envían ambas, prevalece images. En "Gemini oficial directo", cada imagen decodificada ≤ 20 MiB y no hay /v1/images/edits
Igual que image; si se envían ambas, prevalece images
LímitesImágenes de referencia: cadena o array de cadenas, como máximo 14
No admitido: enviar mask devuelve 400; para ediciones locales, describa la zona en el prompt
No admite transparent (devuelve 400)
No puede ser"transparent"
No admitido; omítalo o envíe false
No puede sertrue
- Con salida 2K, como máximo 5 imágenes por solicitud (límite de tamaño de la respuesta)
- Con salida 4K, como máximo 2 imágenes por solicitud (límite de tamaño de la respuesta)
Según lo que devuelve GET /v1/models para la clave actual
Si el modelo se niega o solo responde con texto, devuelve 400 (el mensaje cita ese texto) o 502: reformule el prompt
LímitesTras quitar los espacios al inicio y al final no puede quedar vacío; si no, 400 "prompt must not be empty"Longitud≥ 1 caracteres
Se generan en paralelo. Todo o nada: si falla una, falla toda la solicitud y no se factura
LímitesTope según el nivel de salida: 1K ≤ 10Rango1–10Predeterminado1
Forma plana de nivel superior, equivalente a google.image_config.image_size; sustituye el nivel deducido de size
Valores1K
Predeterminado"1K"
Forma plana de nivel superior, equivalente a google.image_config.aspect_ratio; tiene prioridad sobre size
Valores1:12:33:23:44:34:55:49:1616:921:9
Predeterminado"1:1"
anchoxalto nunca se rechaza por la proporción: se asigna a la proporción oficial más cercana y el nivel se deduce del lado largo, bajando sin aviso al nivel máximo del modelo. Un 1K / 2K / 4K explícito por encima del nivel del modelo devuelve 400; si también se envía image_size, prevalece este
Valores1K
Límitesauto, anchoxalto con cualquier proporción (se asigna a la proporción oficial más cercana; el nivel se deduce del lado largo y baja sin aviso al nivel máximo del modelo) o un nivel del modelo
En el SDK puede escribirse como extra_body.google.image_config; las tres formas son equivalentes
Valores1:12:33:23:44:34:55:49:1616:921:9
Valores1K
Imágenes de referencia; basta con incluirlas en el cuerpo de generations. Si se envían ambas, prevalece images. En "Gemini oficial directo", cada imagen decodificada ≤ 20 MiB y no hay /v1/images/edits
Igual que image; si se envían ambas, prevalece images
LímitesImágenes de referencia: cadena o array de cadenas, como máximo 14
No admitido: enviar mask devuelve 400; para ediciones locales, describa la zona en el prompt
No admite transparent (devuelve 400)
No puede ser"transparent"
No admitido; omítalo o envíe false
No puede sertrue
Según lo que devuelve GET /v1/models para la clave actual
Si el modelo se niega o solo responde con texto, devuelve 400 (el mensaje cita ese texto) o 502: reformule el prompt
LímitesTras quitar los espacios al inicio y al final no puede quedar vacío; si no, 400 "prompt must not be empty"Longitud≥ 1 caracteres
Se generan en paralelo. Todo o nada: si falla una, falla toda la solicitud y no se factura
LímitesTope según el nivel de salida: 1K ≤ 10Rango1–10Predeterminado1
Forma plana de nivel superior, equivalente a google.image_config.image_size; sustituye el nivel deducido de size
Valores1K
Predeterminado"1K"
Forma plana de nivel superior, equivalente a google.image_config.aspect_ratio; tiene prioridad sobre size
Valores1:12:33:23:44:34:55:49:1616:921:9
Predeterminado"1:1"
anchoxalto nunca se rechaza por la proporción: se asigna a la proporción oficial más cercana y el nivel se deduce del lado largo, bajando sin aviso al nivel máximo del modelo. Un 1K / 2K / 4K explícito por encima del nivel del modelo devuelve 400; si también se envía image_size, prevalece este
Valores1K
Límitesauto, anchoxalto con cualquier proporción (se asigna a la proporción oficial más cercana; el nivel se deduce del lado largo y baja sin aviso al nivel máximo del modelo) o un nivel del modelo
En el SDK puede escribirse como extra_body.google.image_config; las tres formas son equivalentes
Valores1:12:33:23:44:34:55:49:1616:921:9
Valores1K
Imágenes de referencia; basta con incluirlas en el cuerpo de generations. Si se envían ambas, prevalece images. En "Gemini oficial directo", cada imagen decodificada ≤ 20 MiB y no hay /v1/images/edits
Igual que image; si se envían ambas, prevalece images
LímitesImágenes de referencia: cadena o array de cadenas, como máximo 3
No admitido: enviar mask devuelve 400; para ediciones locales, describa la zona en el prompt
No admite transparent (devuelve 400)
No puede ser"transparent"
No admitido; omítalo o envíe false
No puede sertrue
Use el ID completo que devuelve GET /v1/models para la clave actual
Contenido, composición, estilo o instrucción de edición; para ediciones locales puede describir coordenadas, bbox, flechas o zonas marcadas en la imagen de referencia
LímitesTras quitar los espacios al inicio y al final no puede quedar vacío; si no, 400 "missing prompt"Longitud≥ 1 caracteres
Un valor no válido devuelve 400 antes de generar, indicando el intervalo permitido, sin facturar
Valores1K1.5K2K
LímitesAbreviatura 1K / 1.5K / 2K, o anchoxalto: 921600–4624220 píxeles en total, relación de aspecto de 1:16 a 16:1
Otros valores (incluido null) devuelven 400
Límitesonly a single output is supported (n=1)Predeterminado1
Devuelve un enlace directo firmado válido 24 horas
Valoresurl
Predeterminado"url"
En 4.5 solo jpeg
Valorespngjpeg
Debe ser un objeto
Valoresstandardfast
Al enviarlo se activa imagen a imagen o edición con una o varias imágenes; /v1/images/edits requiere al menos 1. Las URL no se descargan ni se comprueba su tamaño al enviar
LímitesImágenes de referencia (al enviarlas, imagen a imagen / edición): como máximo 10; Data URL ≤ 31457280 bytes por imagen; las URL no se descargan al enviar
Fijado en false por el servidor
Use el ID completo que devuelve GET /v1/models para la clave actual
Contenido, composición, estilo o instrucción de edición; para ediciones locales puede describir coordenadas, bbox, flechas o zonas marcadas en la imagen de referencia
LímitesTras quitar los espacios al inicio y al final no puede quedar vacío; si no, 400 "missing prompt"Longitud≥ 1 caracteres
Un valor no válido devuelve 400 antes de generar, indicando el intervalo permitido, sin facturar
Valores2K3K4K
LímitesAbreviatura 2K / 3K / 4K, o anchoxalto: 3686400–16777216 píxeles en total, relación de aspecto de 1:16 a 16:1
Otros valores (incluido null) devuelven 400
Límitesonly a single output is supported (n=1)Predeterminado1
Devuelve un enlace directo firmado válido 24 horas
Valoresurl
Predeterminado"url"
En 4.5 solo jpeg
Valorespngjpeg
Debe ser un objeto
Valoresstandard
Al enviarlo se activa imagen a imagen o edición con una o varias imágenes; /v1/images/edits requiere al menos 1. Las URL no se descargan ni se comprueba su tamaño al enviar
LímitesImágenes de referencia (al enviarlas, imagen a imagen / edición): como máximo 14; Data URL ≤ 31457280 bytes por imagen; las URL no se descargan al enviar
Fijado en false por el servidor
Use el ID completo que devuelve GET /v1/models para la clave actual
Contenido, composición, estilo o instrucción de edición; para ediciones locales puede describir coordenadas, bbox, flechas o zonas marcadas en la imagen de referencia
LímitesTras quitar los espacios al inicio y al final no puede quedar vacío; si no, 400 "missing prompt"Longitud≥ 1 caracteres
Un valor no válido devuelve 400 antes de generar, indicando el intervalo permitido, sin facturar
Valores2K4K
LímitesAbreviatura 2K / 4K, o anchoxalto: 3686400–16777216 píxeles en total, relación de aspecto de 1:16 a 16:1
Otros valores (incluido null) devuelven 400
Límitesonly a single output is supported (n=1)Predeterminado1
Devuelve un enlace directo firmado válido 24 horas
Valoresurl
Predeterminado"url"
En 4.5 solo jpeg
Valoresjpeg
Debe ser un objeto
Valoresstandard
Al enviarlo se activa imagen a imagen o edición con una o varias imágenes; /v1/images/edits requiere al menos 1. Las URL no se descargan ni se comprueba su tamaño al enviar
LímitesImágenes de referencia (al enviarlas, imagen a imagen / edición): como máximo 14; Data URL ≤ 31457280 bytes por imagen; las URL no se descargan al enviar
Fijado en false por el servidor
ID de modelo de imagen de Kling; enviar un modelo de video devuelve 400
Valoreskling-image-expandkling-image-o1kling-image-v2-1kling-image-v2-1-i2ikling-image-v2-1-multi-refkling-image-v3kling-image-v3-omni
Envíe al menos este campo o un images no vacío
No distingue mayúsculas; los valores al estilo OpenAI como high o standard se rechazan. Niveles por modelo: kling-image-v3 1k / 2k; kling-image-v3-omni 1k / 2k / 4k; kling-image-o1 1k / 2k / 4k; kling-image-v2-1 1k / 2k; kling-image-v2-1-i2i 1k / 2k; kling-image-v2-1-multi-ref 1k / 2k; kling-image-expand 1k
Valores1k2k4k
Predeterminado"1k"
Se factura por las imágenes realmente generadas
Rango1–9Predeterminado1
Imágenes de referencia; cada elemento lleva url (dirección HTTP(S) pública) o file_id, no ambos, y no puede llevar usage; file_id debe ser un recurso de Kling disponible para la clave actual, no un ID de recurso de Seedance. Cantidad: kling-image-v3 0–1; kling-image-v3-omni 0–10; kling-image-o1 0–10; kling-image-v2-1 no acepta ninguna; kling-image-v2-1-i2i exactamente 1; kling-image-v2-1-multi-ref 2–4; kling-image-expand exactamente 1
Dirección HTTP(S) pública
ID de recurso de Kling; use este o url, no ambos
Solo para la expansión kling-image-expand: las cuatro proporciones son números de 0 a 2; si se omiten valen 0 y no pueden ser todas 0. El área expandida no puede superar 3 veces la original: (1+izquierda+derecha) × (1+arriba+abajo) ≤ 3. En otros modelos, un extra no vacío devuelve 400
Proporciones de expansión
Rango0–2
Proporciones de expansión
Rango0–2
Proporciones de expansión
Rango0–2
Proporciones de expansión
Rango0–2
Coincidencia exacta
Descripción de la imagen; después de la descripción se pueden añadir parámetros -- (--ar relación de aspecto, --hd 2K nativo, --s, --c, --weird, --iw, --sref + --sw, --no, --seed, --tile, --exp). Debe haber una descripción: no puede contener solo parámetros -- ni incluir ::. La relación de --ar no puede superar 14:1, ni 4:1 con --hd; --q, --niji, --repeat, --oref, --cref, --stealth, --stop, --draft y --profile devuelven 400
Longitud≥ 1 caracteres
Imagen de referencia, 0–1 elementos; cada elemento lleva url (dirección HTTP(S) pública y absoluta) o file_id, no ambos, y no puede llevar usage
Elementos≤ 1
Dirección HTTP(S) pública y absoluta
ID de recurso; use este o url, no ambos
Solo puede ser 4: cada tarea genera siempre 4 imágenes y se factura por cada imagen devuelta
Predeterminado4
Omítalo: un valor no vacío devuelve 400; para 2K escriba --hd en el prompt
Omítalo: un objeto no vacío devuelve 400
Respuesta
200Éxito síncrono
202Aceptado de forma asíncrona: GPT Image / Gemini con Prefer: respond-async; Kling y Midjourney siempre
Segundos Unix
Un elemento por imagen
GPT Image / Gemini: datos de imagen en Base64; al decodificar, guárdelos según output_format. Gemini puede devolver JPEG; consulte mime_type
Seedream: enlace directo firmado válido 24 horas; al caducar solo queda volver a generar
MIME de la imagen
Prompt reescrito por el modelo (algunos modelos)
Puede devolverse
Tokens de entrada
Tokens de salida
Total
Errores
safety_rejectedmissing_api_key / invalid_api_key / api_key_expired)insufficient_quota)model_not_found) o la ruta no pertenece a ese grupo (route_not_found)request_too_large)user_concurrency_limit / apikey_concurrency_limit), con Retry-AfterMensajes de error de GPT Image
# size: siga las reglas de tamaño de arriba
size must be WIDTHxHEIGHT or auto
size side length exceeds 3840px (4096x2048)
size width and height must be multiples of 16 (1000x1000)
size aspect ratio must not exceed 3:1 (3840x1024)
size total pixel count must be at least 655360 (512x512=262144)
size total pixel count must not exceed 8294400 (3840x3840=14745600)
# prompt vacío
prompt must not be empty
# edits JSON: ponga las referencias en "image" como cadenas o {"url": ...}; "images" no se lee
/v1/images/edits requires at least one image
image object is missing the url field
image must be a data URL or an http(s) URL
# referencias remotas: URL pública que devuelva image/*, como máximo 25 MiB
image download returned HTTP 404
image is too large
image Content-Type is not image/*: text/html
reference image URL must not point to an internal address
image is too large, please compress it to under 4MB and retry
# seguridad de contenido (error.code: safety_rejected)
Your request was rejected by the safety system.
# HTTP 413
Request body exceeds the size limit (60 MB)Mensajes de error de Gemini
# Gemini (todos los modelos, incl. imagen)
prompt must not be empty
n must be between 1 and 10 for model gemini-3-pro-image
n=3 is too large for 4K output on model gemini-3-pro-image; at most 2 images per request at this size (response size limit); lower n or send separate requests
model gemini-3.1-flash-image does not support tier 4K; supported: 1K, 2K
model gemini-3-pro-image: size "big" is not valid; expected WIDTHxHEIGHT (any aspect ratio, mapped to the nearest official tier) or 1K/2K/4K
aspect_ratio "7:3" is not supported for model gemini-3-pro-image; allowed values: 1:1, 2:3, 3:2, 3:4, 4:3, 4:5, 5:4, 9:16, 16:9, 21:9
image_size "4K" is not supported for model gemini-3.1-flash-image; supported: 1K, 2K
background=transparent is not supported for model gemini-3-pro-image; Gemini image models cannot output transparent images
mask is not supported for Gemini image models; remove mask and describe the region to edit in the prompt
too many reference images: at most 14 are supported for this model, got 15
# Gemini oficial directo
missing prompt
Gemini image generation does not support stream=true; send a non-streaming request
n must be at most 10
n=6 is too large for 2K output on model gemini-3.1-flash-image; at most 5 images per request at this size (response size limit); lower n or send separate requests
Images generations only accepts a JSON request body: ...
size 4K is not supported for model gemini-3.1-flash-image; supported tiers: 1K, 2K
size "banana" is not valid for model gemini-3-pro-image; use auto, WIDTHxHEIGHT (e.g. 1024x1024, mapped to the nearest supported aspect ratio and capped at the model's largest tier), or one of: 1K, 2K, 4K
image_config.aspect_ratio "7:3" is not supported; allowed values: 1:1, 2:3, 3:2, 3:4, 4:3, 4:5, 5:4, 9:16, 16:9, 21:9
image_config.image_size "4K" is not supported for model gemini-3.1-flash-image; allowed values: 1K, 2K
mask is not supported for model gemini-3-pro-image; remove mask and describe the region to edit in the prompt
background=transparent is not supported for model gemini-3-pro-image; Gemini image models cannot output transparent images
reference image 1: reference image exceeds the 20MB limit
reference image 1: reference image URL must not point to an internal address
reference image 1: reference image download returned HTTP 404
reference image 1: reference file is not a supported image typeMensajes de error de Seedream
model seedream-5-0-pro only supports size 1K, 1.5K, 2K or a valid WIDTHxHEIGHT pixel size # p. ej. "size": "auto"
model seedream-5-0-lite requires the total pixel count of size to be between 3686400 and 16777216
size aspect ratio must be between 1:16 and 16:1
missing prompt
response_format only supports url
only a single output is supported (n=1)
model seedream-4-5 only supports output_format jpeg
optimize_prompt_options must be an object
image must be a URL/data URL string or an array of strings
every item in the image array must be a URL or data URL string
image must not be empty
at most 10 reference images are supported
reference image 1 is invalid: data URL must be base64-encoded
reference image 1 is invalid: unsupported image format image/svg+xml
reference image 1 is invalid: a single image must not exceed 30 MB
image edits require at least one image reference # /v1/images/edits sin imagen
seedream does not accept a traditional mask; ... # cualquier "mask" en /v1/images/edits, incluso null