> ## Documentation Index
> Fetch the complete documentation index at: https://apidoc.cometapi.com/llms.txt
> Use this file to discover all available pages before exploring further.

# APIs de generación y edición de imágenes

> Elige las rutas de imágenes de CometAPI para generación y ediciones compatibles con OpenAI, Gemini y Nano Banana, Midjourney, Flux, Bria, Replicate y flujos de trabajo de Seedream o SeedEdit.

Usa la documentación de modelos de imágenes de CometAPI eligiendo el formato de solicitud que coincida con tu flujo de trabajo. Los endpoints de imágenes compatibles con OpenAI cubren flujos comunes de generación y edición; las páginas específicas del proveedor cubren sistemas de imágenes basados en tareas.

## Elige una API de imágenes

<CardGroup cols={2}>
  <Card title="Crear una imagen" icon="image" href="/api/image/openai/images">
    Genera imágenes con una solicitud compatible con OpenAI.
  </Card>

  <Card title="Crear edición de imagen" icon="sparkles" href="/api/image/openai/image-editing">
    Edita imágenes con una solicitud compatible con OpenAI.
  </Card>

  <Card title="Generar imágenes con Gemini" icon="image" href="/api/image/gemini/gemini-generates-image">
    Genera o edita imágenes con el formato de Gemini.
  </Card>

  <Card title="Empezar con la API de Midjourney" icon="sparkles" href="/api/image/midjourney/midjourney-api-quick-start">
    Envía y consulta tareas de imágenes de Midjourney.
  </Card>

  <Card title="Generar una imagen con Flux" icon="image" href="/api/image/flux/flux-generate-image">
    Genera imágenes de Flux a través de CometAPI.
  </Card>

  <Card title="Generar una imagen con Bria" icon="image" href="/api/image/bria/generate-image">
    Usa las herramientas de generación de imágenes de Bria.
  </Card>

  <Card title="Crear una predicción de Replicate" icon="sparkles" href="/api/image/replicate/create-predictions-general">
    Ejecuta solicitudes de predicción de imágenes en formato Replicate.
  </Card>

  <Card title="Crear imágenes de Seedream" icon="image" href="/api/image/seededit-seedream/bytedance-image-generation">
    Crea solicitudes de generación de imágenes de Seedream.
  </Card>
</CardGroup>

## Generar una imagen

Usa un model ID con capacidad de imagen desde la [página de modelos](/es/overview/models) o el [directorio de modelos](https://www.cometapi.com/models/). Los ejemplos siguientes llaman al endpoint compatible con OpenAI Create an image.

<Note>
  Estos ejemplos usan el marcador de posición `your-image-model-id`. Reemplázalo por un model ID de imagen disponible de la [página de modelos](/es/overview/models) o del [directorio de modelos](https://www.cometapi.com/models/) antes de ejecutar la solicitud.
</Note>

<Tip>
  Abre [Create an image](/api/image/openai/images) para usar el playground y el esquema del endpoint.
</Tip>

<CodeGroup>
  ```python Python theme={null}
  import os
  import requests

  response = requests.post(
      "https://api.cometapi.com/v1/images/generations",
      headers={
          "Authorization": "Bearer " + os.environ["COMETAPI_KEY"],
          "Content-Type": "application/json",
      },
      json={
          "model": "your-image-model-id",
          "prompt": "A clean product photo of a glass teapot on a white table",
          "size": "1024x1024",
      },
      timeout=120,
  )

  response.raise_for_status()
  result = response.json()
  print(result["data"][0].keys())
  ```

  ```javascript Node.js theme={null}
  const response = await fetch("https://api.cometapi.com/v1/images/generations", {
    method: "POST",
    headers: {
      Authorization: `Bearer ${process.env.COMETAPI_KEY}`,
      "Content-Type": "application/json",
    },
    body: JSON.stringify({
      model: "your-image-model-id",
      prompt: "A clean product photo of a glass teapot on a white table",
      size: "1024x1024",
    }),
  });

  if (!response.ok) {
    throw new Error(await response.text());
  }

  const result = await response.json();
  console.log(Object.keys(result.data[0]));
  ```

  ```bash cURL theme={null}
  curl https://api.cometapi.com/v1/images/generations \
    -H "Authorization: Bearer $COMETAPI_KEY" \
    -H "Content-Type: application/json" \
    -d '{
      "model": "your-image-model-id",
      "prompt": "A clean product photo of a glass teapot on a white table",
      "size": "1024x1024"
    }'
  ```
</CodeGroup>

## Ejemplo de respuesta

Una respuesta exitosa puede verse así. Según el modelo seleccionado, cada elemento puede contener una imagen en base64 o una URL de resultado:

```json theme={null}
{
  "created": 1779872000,
  "background": "opaque",
  "data": [
    {
      "b64_json": "iVBORw0KGgo..."
    }
  ],
  "output_format": "png",
  "quality": "low",
  "size": "1024x1024",
  "usage": {
    "input_tokens": 19,
    "input_tokens_details": {
      "image_tokens": 0,
      "text_tokens": 19
    },
    "output_tokens": 196,
    "output_tokens_details": {
      "image_tokens": 196,
      "text_tokens": 0
    },
    "total_tokens": 215
  }
}
```

## Registros de modelo de ejemplo

<Info>
  Esta respuesta de ejemplo del catálogo de modelos muestra la envoltura de `/api/models` y la estructura de un registro de modelo de imagen. No es una lista completa de modelos.
</Info>

```bash cURL theme={null}
curl https://api.cometapi.com/api/models
```

```json theme={null}
{
  "success": true,
  "page": 1,
  "page_size": 20,
  "total": 302,
  "data": [
    {
      "created": 1776391310,
      "id": "your-image-model-id",
      "code": "your-image-model-id",
      "provider": "ExampleProvider",
      "provider_code": "example",
      "name": "Example image model",
      "model_type": "image",
      "features": [
        "text-to-image"
      ],
      "endpoints": "{\n  \"openai-image\": {\n    \"path\": \"/v1/images/generations\",\n    \"method\": \"POST\"\n  }\n}",
      "pricing": {
        "currency": "USD / M Tokens",
        "input": 4,
        "output": 24,
        "per_request": null,
        "per_second": null
      }
    }
  ]
}
```

## Errores comunes

<AccordionGroup>
  <Accordion title="Invalid model ID">
    Elige un modelo con capacidad de imagen en la [página de modelos](/es/overview/models).
  </Accordion>

  <Accordion title="Unsupported size">
    Usa un tamaño que el endpoint de imagen seleccionado acepte.
  </Accordion>

  <Accordion title="Expired result URL">
    Descarga los recursos generados antes de que expiren los enlaces del proveedor.
  </Accordion>

  <Accordion title="Upload too large">
    Usa URL de imágenes o archivos más pequeños en lugar de cargas útiles base64 grandes.
  </Accordion>

  <Accordion title="Missing image data">
    Revisa tanto los campos `b64_json` como `url` porque la forma de la salida puede variar según el modelo.
  </Accordion>
</AccordionGroup>

## Códigos de error y estrategia de reintento

<AccordionGroup>
  <Accordion title="400">
    No reintentes hasta que se corrija el prompt, el tamaño o la entrada de imagen.
  </Accordion>

  <Accordion title="401">
    No reintentes hasta que la clave de API esté presente y sea válida.
  </Accordion>

  <Accordion title="404">
    Verifica la URL base, la ruta y el model ID antes de reintentar.
  </Accordion>

  <Accordion title="413">
    Reduce el tamaño de la carga antes de reintentar.
  </Accordion>

  <Accordion title="429">
    Reintenta con backoff exponencial y reduce la concurrencia.
  </Accordion>

  <Accordion title="500 or 503">
    Reintenta con backoff en caso de errores transitorios del proveedor o del servicio.
  </Accordion>
</AccordionGroup>

<Tip>
  Para patrones de implementación, consulta [Códigos de error y estrategia de reintento](/es/guides/error-codes-and-retry-strategy) y [Límites de tasa y concurrencia](/es/guides/rate-limits-and-concurrency).
</Tip>

## Precios y directorio de modelos

<CardGroup cols={3}>
  <Card title="Models page" icon="list" href="/overview/models">
    Lee cómo CometAPI expone los model IDs en la documentación.
  </Card>

  <Card title="Model directory" icon="puzzle-piece" href="https://www.cometapi.com/models/">
    Explora la disponibilidad y las capacidades de los modelos.
  </Card>

  <Card title="Pricing" icon="tag" href="https://www.cometapi.com/pricing/">
    Consulta los precios antes de llamar a un modelo.
  </Card>
</CardGroup>
