What these endpoints return
Every model comes back with its supported parameters and its currently effective pricing. Use them when you need to:- discover current model IDs
- separate image models from video models
- validate
aspect_ratio,resolution,duration, andsoundbefore you submit a generation - read the current price per billable unit
List models
Filter by type
Use the optionaltype query parameter when you only want one category.
type=image for image models and type=video for video models.
Get a single model
Pass a model ID to read one model without fetching the whole list.404 with error code not_found.
Response fields
Supported parameters and defaults
supported_aspect_ratios, supported_durations, and supported_resolutions are ordered. The first value is the default the API applies when you omit the parameter, so you can send a minimal request and still get a sensible result.
Sending a value that isn’t in the list returns 400 with error code invalid_parameter.
Reference image roles
supported_references maps each role the model accepts to the maximum number of reference images for that role.
400. See Generate images and Generate videos for how roles work.
Pricing
Each model carries the rates currently in effect for your project.
To find the rate for a generation, match on the
resolution and sound values you plan to send. For videos, not_applicable also acts as a fallback when no exact match exists.
unit_price is a string so you can parse it as a decimal without floating-point rounding. Use your language’s decimal type rather than a float when you total costs.
An empty
rates array means no active rates are configured for that model. It does not mean generation is free. Current rates are also listed on the Models page.Validate before you generate
Fetch the model and check your parameters against it. That turns a failed generation into a local check.supported_references.
Image vs video models
Choose the model type based on the generation type:- Image models are for
POST /v2/images/generations - Video models are for
POST /v2/videos/generations
400 with error code invalid_parameter.
How to choose a model
Start with these checks:- generation type: image or video
- input shape: prompt only, reference image, first frame, or last frame
- output needs: aspect ratio, resolution, duration, and sound
Where to check current availability
Use one of these sources:GET /v2/modelsandGET /v2/models/{model}in your integration- the Models page in the dashboard