---
title: Model catalog
description: "GET /v1/models — current Clipia AI models for image, video, and audio generation."
---

Get the exact slugs, capabilities, input parameters, and prices available to your
API key. The catalog can change without a new SDK release.

<Cards>
  <Card title="Seedance 2.5 API" href="/en/docs/api-reference/models/seedance-2-5">
    Exact T2V/I2V slugs, parameters, and live-catalog availability checks.
  </Card>
  <Card title="Submit a generation" href="/en/docs/api-reference/submit">
    The universal POST request for every active model.
  </Card>
  <Card title="Estimate cost" href="/en/docs/api-reference/estimate">
    Get the exact price for a model and input before submitting it.
  </Card>
</Cards>

## Live catalog

<ApiPlayground path="/v1/models" method="get" />

<Method name="GET" path="/v1/models" />

<Tabs items={['cURL', 'TypeScript', 'Python']}>
<Tab value="cURL">

```bash
curl https://api.clipia.ai/v1/models \
  -H "Authorization: Bearer $CLIPIA_KEY"
```

</Tab>
<Tab value="TypeScript">

```ts
const { data } = await clipia.models.list();
console.log(data.map(({ slug, type }) => ({ slug, type })));
```

</Tab>
<Tab value="Python">

```python
catalog = client.models.list()
print([(model["slug"], model["type"]) for model in catalog["data"]])
```

</Tab>
</Tabs>

`GET /v1/models` is the canonical source of current availability. Results can
vary by environment and change faster than this page.

<Callout type="info" title="Audited on August 7, 2026">
The readable snapshot below covers 64 active public slugs: 23 image, 39 video,
and 2 audio models. Always fetch the live catalog before submitting a job.
</Callout>

## Image models

| Family | Public API slugs |
| --- | --- |
| FLUX 2 | `flux-2-flex`, `flux-2-pro` |
| FLUX Kontext | `flux-kontext-max`, `flux-kontext-pro` |
| Imagen 4 | `google/imagen4`, `google/imagen4-fast`, `google/imagen4-ultra` |
| GPT Image | `gpt-image-1-5`, `gpt-image-2` |
| Grok Imagine | `grok-imagine/text-to-image`, `grok-imagine/image-to-image` |
| Higgsfield Soul | `higgsfield-soul` |
| Midjourney | `midjourney/v7` |
| Nano Banana | `nano-banana-2`, `nano-banana-pro` |
| Qwen Image | `qwen-image-2` |
| Seedream | `seedream-4-5`, `seedream-5-0-lite`, `seedream-5-0-pro`, `seedream-v4`, `seedream-v4-edit` |
| Wan Image | `wan-2-7-image` |
| Z-Image | `z-image` |

## Video models

| Family | Public API slugs |
| --- | --- |
| Gemini Omni | `gemini-omni-video` |
| Grok Imagine | `grok-imagine/text-to-video`, `grok-imagine/image-to-video`, `grok-imagine-video-1-5` |
| Hailuo | `hailuo-02`, `hailuo-02-standard`, `hailuo-2-3`, `hailuo-2-3-fast` |
| HappyHorse | `happy-horse-t2v`, `happy-horse-i2v`, `happy-horse-r2v`, `happy-horse-edit` |
| Kling 2.5 | `kling`, `kling-v2-5`, `kling-v2-5-turbo-text-to-video-pro`, `kling-v2-5-turbo-image-to-video-pro` |
| Kling 2.6 | `kling-2-6-text-to-video`, `kling-2-6-image-to-video`, `kling-2-6-motion-control` |
| Kling 3 | `kling-3-text-to-video`, `kling-3-image-to-video`, `kling-3-multi-shot`, `kling-3-motion-control` |
| Kling Lip Sync | `kling-lip-sync` |
| Midjourney Video | `midjourney/v7-image-to-video` |
| Seedance 1.5 | `seedance-1-5-text-to-video`, `seedance-1-5-image-to-video` |
| Seedance 2.0 | `seedance-2-t2v`, `seedance-2-i2v`, `seedance-2-fast-t2v`, `seedance-2-fast-i2v`, `seedance-2-mini-t2v`, `seedance-2-mini-i2v` |
| Veo | `veo3-fast`, `veo3-lite`, `veo3-quality` |
| Wan | `wan-2-5`, `wan-2-7`, `wan-2-7-image-to-video` |

## Audio models

| Family | Public API slug |
| --- | --- |
| Gemini TTS | `gemini-3-1-flash-tts`, `gemini-2-5-pro-tts` |
| Suno Music | `suno-music` |

## Single-model schema

<Method name="GET" path="/v1/models/:model" />

```bash
curl https://api.clipia.ai/v1/models/gpt-image-2 \
  -H "Authorization: Bearer $CLIPIA_KEY"
```

The response includes `slug`, `type`, `name`, `capabilities`, `input_schema`, and
`pricing`. Pass only keys from `input_schema` inside the submit request's `input`.

<TypeTable
  type={{
    slug: { type: 'string', description: 'Exact identifier for POST /v1/models/:model' },
    type: { type: 'string', description: 'image, video, or audio' },
    name: { type: 'string', description: 'Public model name' },
    capabilities: { type: 'string[]', description: 'Supported generation modes' },
    input_schema: { type: 'object', description: 'Current parameters, enums, defaults, and required fields' },
    pricing: { type: 'object', description: 'Base credit pricing' }
  }}
/>

<Callout type="warning" title="Do not hard-code a schema from this page">
Variants in one family can have different required fields, durations,
resolutions, and reference inputs. Fetch `input_schema` for the exact slug and
call `POST /v1/models/:model/estimate` before generation.
</Callout>

## New model availability

A model is API-ready only after its exact slug appears in `GET /v1/models`. A
product landing or announcement is not an API availability signal. Exact slugs
`seedance-2-5-t2v` and `seedance-2-5-i2v` are prepared for
[Seedance 2.5](/en/docs/api-reference/models/seedance-2-5), but activation can
be controlled per environment. The customer-facing
[Seedance 2.5 landing](/en/video-models/seedance-2-5) opens only when both modes
are active. Always check the live catalog before submit.
