How to List Models
Retrieve available models from WaveSpeedAI via API.
Endpoint
GET https://api.wavespeed.ai/api/v3/modelsRequest
curl --location --request GET 'https://api.wavespeed.ai/api/v3/models' \
--header 'Authorization: Bearer ${WAVESPEED_API_KEY}'Response
{
"code": 200,
"message": "success",
"data": {
"items": [
{
"model_uuid": "wavespeed-ai/flux-dev",
"name": "FLUX Dev",
"category": "text-to-image",
"description": "High-quality text-to-image generation"
},
{
"model_uuid": "google/veo3",
"name": "Veo 3.1",
"category": "image-to-video",
"description": "Image to video generation"
}
]
}
}Response Fields
| Field | Type | Description |
|---|---|---|
model_uuid | string | Unique model identifier |
name | string | Display name |
category | string | Model category |
description | string | Model description |
Filter by Category
curl --location --request GET 'https://api.wavespeed.ai/api/v3/models?category=text-to-image' \
--header 'Authorization: Bearer ${WAVESPEED_API_KEY}'Categories
| Category | Description |
|---|---|
text-to-image | Generate images from text |
image-to-image | Transform images |
text-to-video | Generate videos from text |
image-to-video | Animate images |
video-to-video | Transform videos |
text-to-audio | Generate audio |
Python Example
import os
import requests
api_key = os.environ.get("WAVESPEED_API_KEY")
def list_models(category=None):
url = "https://api.wavespeed.ai/api/v3/models"
if category:
url += f"?category={category}"
response = requests.get(
url,
headers={"Authorization": f"Bearer {api_key}"}
)
return response.json()["data"]["items"]
# List all models
all_models = list_models()
print(f"Total models: {len(all_models)}")
# List only text-to-image models
t2i_models = list_models(category="text-to-image")
for model in t2i_models:
print(f"- {model['name']}: {model['model_uuid']}")Pagination
For large result sets:
curl --location --request GET 'https://api.wavespeed.ai/api/v3/models?page=1&page_size=50' \
--header 'Authorization: Bearer ${WAVESPEED_API_KEY}'