Response Example
{
"object": "list",
"data": [
{
"id": "image.genfire_v1",
"object": "model",
"capability": "image_generation",
"name": "Genfire v1",
"description": "Genfire's signature image model — tuned for ad/product creative.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"1:1",
"16:9",
"9:16",
"4:3",
"3:4"
],
"max_count": 4,
"max_reference_images": 16
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": true,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": true,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "image.nano_banana_2",
"object": "model",
"capability": "image_generation",
"name": "Nano Banana 2",
"description": "Google's general-purpose image model. Fast, broad subject coverage. Superseded by image.nano_banana_2_1 (same price).",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"1:1",
"16:9",
"9:16",
"4:3",
"3:4",
"21:9",
"9:21"
],
"max_count": 4
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": true,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": true,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "image.nano_banana_2_1",
"object": "model",
"capability": "image_generation",
"name": "Nano Banana 2.1",
"description": "Google's newest Nano Banana — better visual design, mask-based editing and subject consistency than Nano Banana 2, same price. 1K/2K/4K. Default.",
"status": "available",
"is_default": true,
"limits": {
"aspect_ratios": [
"1:1",
"16:9",
"9:16",
"4:3",
"3:4",
"21:9"
],
"max_count": 4,
"resolutions": [
"1K",
"2K",
"4K"
]
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": true,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": true,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "image.nano_banana_pro",
"object": "model",
"capability": "image_generation",
"name": "Nano Banana Pro",
"description": "Premium photoreal image generation, higher fidelity than Nano Banana 2.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"1:1",
"16:9",
"9:16",
"4:3",
"3:4"
],
"max_count": 4
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": true,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": true,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "image.nano_banana",
"object": "model",
"capability": "image_generation",
"name": "Nano Banana",
"description": "Standard speed and quality. Cheaper than Pro for high-volume use.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"1:1",
"16:9",
"9:16",
"4:3",
"3:4"
],
"max_count": 4
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": true,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "image.nano_banana_lite",
"object": "model",
"capability": "image_generation",
"name": "Nano Banana Lite",
"description": "Gemini 3.1 Flash Lite Image — ultra-low latency, cheapest tier. Supports editing.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"1:1",
"16:9",
"9:16",
"4:3",
"3:4",
"21:9",
"9:21"
],
"max_count": 4
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": true,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "image.nano_banana_2_lite",
"object": "model",
"capability": "image_generation",
"name": "Nano Banana 2 Lite",
"description": "Gemini 3.1 Flash Lite Image (v2) — ultra-low latency text-to-image. No edit endpoint.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"1:1",
"16:9",
"9:16",
"4:3",
"3:4",
"21:9",
"9:21"
],
"max_count": 4
},
"capabilities": {
"text_to_output": true,
"image_to_output": false,
"reference_images": false,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "image.gpt_image_2",
"object": "model",
"capability": "image_generation",
"name": "GPT Image 2",
"description": "OpenAI GPT Image 2 — premium photorealistic generation.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"1:1",
"16:9",
"9:16",
"4:3",
"3:4"
],
"max_count": 4,
"max_reference_images": 16
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": true,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": true,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "image.gpt_image_25_sunburst",
"object": "model",
"capability": "image_generation",
"name": "GPT Image 2.5 Sunburst",
"description": "OpenAI GPT Image 2.5 Sunburst — the precision tier: extra fidelity on intricate detail and tighter control across edits, at longer generation times. Same controls and price as image.gpt_image_2; use Flare when speed matters.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"1:1",
"16:9",
"9:16",
"4:3",
"3:4"
],
"max_count": 4,
"max_reference_images": 16
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": true,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": true,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "image.gpt_image_25_flare",
"object": "model",
"capability": "image_generation",
"name": "GPT Image 2.5 Flare",
"description": "OpenAI GPT Image 2.5 Flare — OpenAI's recommended default: higher quality than GPT Image 2 at ~50% lower latency, for everyday, social, product and high-volume work. Same controls and price as image.gpt_image_2.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"1:1",
"16:9",
"9:16",
"4:3",
"3:4"
],
"max_count": 4,
"max_reference_images": 16
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": true,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": true,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "image.flux_lora",
"object": "model",
"capability": "image_generation",
"name": "Flux (trained style)",
"description": "Flux with one of YOUR trained image styles (from POST /v1/image-styles or a style skill). Pass `loras: [{ id, scale? }]` with 1–3 completed image-style ids; the trigger word is added to the prompt automatically. Refuses to run without an adapter. Text-to-image only.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"1:1",
"16:9",
"9:16",
"4:3",
"3:4"
],
"max_count": 4
},
"capabilities": {
"text_to_output": true,
"image_to_output": false,
"reference_images": false,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "image.seedream_v45",
"object": "model",
"capability": "image_generation",
"name": "Seedream 4.5",
"description": "ByteDance Seedream 4.5 — strong product and ad visuals, photoreal.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"1:1",
"16:9",
"9:16"
],
"max_count": 4
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": true,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "image.seedream_v5_lite",
"object": "model",
"capability": "image_generation",
"name": "Seedream 5.0 Lite",
"description": "ByteDance Seedream 5.0 Lite — multilingual text rendering, web-search-aware.",
"status": "preview",
"is_default": false,
"limits": {
"aspect_ratios": [
"1:1",
"16:9",
"9:16"
],
"max_count": 4
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": true,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "image.seedream_v5_pro",
"object": "model",
"capability": "image_generation",
"name": "Seedream 5.0 Pro",
"description": "ByteDance Seedream 5.0 Pro — flagship photoreal image + multi-reference edit, up to 2K, up to 10 reference images.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"1:1",
"16:9",
"9:16"
],
"max_count": 6
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": true,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "image.qwen_image_2",
"object": "model",
"capability": "image_generation",
"name": "Qwen Image 2",
"description": "Alibaba Qwen Image 2 — strong typography, posters, 2K generation.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"1:1",
"16:9",
"9:16",
"4:3",
"3:4"
],
"max_count": 4
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": true,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "image.qwen_image_2_pro",
"object": "model",
"capability": "image_generation",
"name": "Qwen Image 2 Pro",
"description": "Premium Qwen Image 2 with enhanced detail.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"1:1",
"16:9",
"9:16",
"4:3",
"3:4"
],
"max_count": 4
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": true,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "image.qwen_image_3",
"object": "model",
"capability": "image_generation",
"name": "Qwen Image 3",
"description": "Alibaba Qwen Image 3 — bilingual (CN/EN) text rendering up to 2K. Edit mode takes 1-3 reference images, addressed as \"image 1\"..\"image 3\" in the prompt.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"1:1",
"16:9",
"9:16",
"4:3",
"3:4"
],
"max_count": 4,
"max_prompt_chars": 800,
"max_reference_images": 3
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": true,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "image.z_image_turbo",
"object": "model",
"capability": "image_generation",
"name": "Z-Image Turbo",
"description": "Alibaba Z-Image Turbo — 8-step distilled 6B model: photoreal output and clean EN/CN text in about a second, at the lowest price in the catalog. With `image_url` it runs image-to-image (`strength` 0-1, default 0.6 — the prompt describes the WHOLE result, not an edit instruction); add `mask_url` to inpaint only the white region.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"1:1",
"16:9",
"9:16",
"4:3",
"3:4",
"3:2",
"2:3",
"21:9"
],
"max_count": 4,
"max_reference_images": 1
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": false,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": true,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "image.z_image_base",
"object": "model",
"capability": "image_generation",
"name": "Z-Image Base",
"description": "Alibaba Z-Image Base — the undistilled foundation model (28 steps). Slower than Turbo but with wider stylistic range, real guidance control and `negative_prompt`. Text-to-image only.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"1:1",
"16:9",
"9:16",
"4:3",
"3:4",
"3:2",
"2:3",
"21:9"
],
"max_count": 4
},
"capabilities": {
"text_to_output": true,
"image_to_output": false,
"reference_images": false,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "image.z_image_controlnet",
"object": "model",
"capability": "image_generation",
"name": "Z-Image Turbo ControlNet",
"description": "Z-Image Turbo guided by the STRUCTURE of a control image. `image_url` is required; `control_mode` picks what is extracted from it — `canny` (edges, default), `depth`, `pose`, or `none` when the image is already a control map. `control_scale` (0-1, default 0.75) sets how tightly the result follows it.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"1:1",
"16:9",
"9:16",
"4:3",
"3:4",
"3:2",
"2:3",
"21:9"
],
"max_count": 4,
"max_reference_images": 1
},
"capabilities": {
"text_to_output": false,
"image_to_output": true,
"reference_images": false,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "image.z_image_tiling",
"object": "model",
"capability": "image_generation",
"name": "Z-Image Turbo Tiling",
"description": "Seamlessly tileable textures and patterns from Z-Image Turbo — edges wrap with no visible seam. `tiling_mode`: `both` (default), `horizontal` or `vertical`. Optional `image_url` re-tiles an existing image; add `mask_url` to repaint part of it.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"1:1",
"16:9",
"9:16",
"4:3",
"3:4"
],
"max_count": 4,
"max_reference_images": 1
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": false,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": true,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "image.recraft_v4_vector",
"object": "model",
"capability": "image_generation",
"name": "Recraft V4 Vector",
"description": "Recraft V4 vector output — a true SVG rather than a raster image. Logos, icons and flat illustration that has to scale cleanly.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"1:1",
"16:9",
"9:16",
"4:3",
"3:4"
],
"max_count": 4
},
"capabilities": {
"text_to_output": true,
"image_to_output": false,
"reference_images": false,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "image.recraft_v4_pro_vector",
"object": "model",
"capability": "image_generation",
"name": "Recraft V4 Pro Vector",
"description": "Premium Recraft V4 vector output — true SVG at the Pro tier’s fidelity.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"1:1",
"16:9",
"9:16",
"4:3",
"3:4"
],
"max_count": 4
},
"capabilities": {
"text_to_output": true,
"image_to_output": false,
"reference_images": false,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "image.recraft_v41",
"object": "model",
"capability": "image_generation",
"name": "Recraft V4.1",
"description": "Recraft V4.1 — sharper prompt control and cleaner composition than V4. Tuned for brand systems and editorial work.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"1:1",
"16:9",
"9:16",
"4:3",
"3:4"
],
"max_count": 4
},
"capabilities": {
"text_to_output": true,
"image_to_output": false,
"reference_images": false,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "image.recraft_v41_pro",
"object": "model",
"capability": "image_generation",
"name": "Recraft V4.1 Pro",
"description": "Recraft V4.1 at the Pro tier — high-resolution raster for large-format and production work.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"1:1",
"16:9",
"9:16",
"4:3",
"3:4"
],
"max_count": 4
},
"capabilities": {
"text_to_output": true,
"image_to_output": false,
"reference_images": false,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "image.recraft_v41_vector",
"object": "model",
"capability": "image_generation",
"name": "Recraft V4.1 Vector",
"description": "Recraft V4.1 vector output — true SVG.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"1:1",
"16:9",
"9:16",
"4:3",
"3:4"
],
"max_count": 4
},
"capabilities": {
"text_to_output": true,
"image_to_output": false,
"reference_images": false,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "image.recraft_v41_pro_vector",
"object": "model",
"capability": "image_generation",
"name": "Recraft V4.1 Pro Vector",
"description": "Recraft V4.1 Pro vector output — true SVG at the Pro tier’s fidelity.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"1:1",
"16:9",
"9:16",
"4:3",
"3:4"
],
"max_count": 4
},
"capabilities": {
"text_to_output": true,
"image_to_output": false,
"reference_images": false,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "image.recraft_v41_utility",
"object": "model",
"capability": "image_generation",
"name": "Recraft V4.1 Utility",
"description": "A faster, lighter V4.1 runtime for high-volume work — ideation, A/B exploration and content pipelines. Same price and parameters as image.recraft_v41; the difference is throughput.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"1:1",
"16:9",
"9:16",
"4:3",
"3:4"
],
"max_count": 4
},
"capabilities": {
"text_to_output": true,
"image_to_output": false,
"reference_images": false,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "image.recraft_v41_utility_pro",
"object": "model",
"capability": "image_generation",
"name": "Recraft V4.1 Utility Pro",
"description": "V4.1 Pro output on the faster Utility runtime — large-format work at pipeline scale. Same price and parameters as image.recraft_v41_pro.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"1:1",
"16:9",
"9:16",
"4:3",
"3:4"
],
"max_count": 4
},
"capabilities": {
"text_to_output": true,
"image_to_output": false,
"reference_images": false,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "image.recraft_v4_style",
"object": "model",
"capability": "image_generation",
"name": "Recraft V4 Styles",
"description": "Recraft V4 with a custom style. Supply a custom style either as `style_id` (trained earlier) or as 1-10 `image_urls` style references, which trains one inline and returns its `style_id` for reuse.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"1:1",
"16:9",
"9:16",
"4:3",
"3:4"
],
"max_count": 4,
"max_reference_images": 10
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": true,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "image.recraft_v4_style_pro",
"object": "model",
"capability": "image_generation",
"name": "Recraft V4 Styles Pro",
"description": "Recraft V4 Styles at the Pro tier. Supply a custom style either as `style_id` (trained earlier) or as 1-10 `image_urls` style references, which trains one inline and returns its `style_id` for reuse.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"1:1",
"16:9",
"9:16",
"4:3",
"3:4"
],
"max_count": 4,
"max_reference_images": 10
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": true,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "image.recraft_v4_style_vector",
"object": "model",
"capability": "image_generation",
"name": "Recraft V4 Styles Vector",
"description": "Recraft V4 Styles with true SVG output. Supply a custom style either as `style_id` (trained earlier) or as 1-10 `image_urls` style references, which trains one inline and returns its `style_id` for reuse.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"1:1",
"16:9",
"9:16",
"4:3",
"3:4"
],
"max_count": 4,
"max_reference_images": 10
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": true,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "image.recraft_v4_style_pro_vector",
"object": "model",
"capability": "image_generation",
"name": "Recraft V4 Styles Pro Vector",
"description": "Recraft V4 Styles, Pro tier, true SVG output. Supply a custom style either as `style_id` (trained earlier) or as 1-10 `image_urls` style references, which trains one inline and returns its `style_id` for reuse.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"1:1",
"16:9",
"9:16",
"4:3",
"3:4"
],
"max_count": 4,
"max_reference_images": 10
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": true,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "image.recraft_v4",
"object": "model",
"capability": "image_generation",
"name": "Recraft V4",
"description": "Design-grade image generation with reliable text rendering.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"1:1",
"16:9",
"9:16",
"4:3",
"3:4"
],
"max_count": 4
},
"capabilities": {
"text_to_output": true,
"image_to_output": false,
"reference_images": false,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "image.recraft_v4_pro",
"object": "model",
"capability": "image_generation",
"name": "Recraft V4 Pro",
"description": "Premium Recraft V4 — top quality for marketing/branding visuals.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"1:1",
"16:9",
"9:16",
"4:3",
"3:4"
],
"max_count": 4
},
"capabilities": {
"text_to_output": true,
"image_to_output": false,
"reference_images": false,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "image.grok_imagine",
"object": "model",
"capability": "image_generation",
"name": "Grok Imagine",
"description": "xAI Grok Imagine — stylized, strong prompt following.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"1:1",
"16:9",
"9:16"
],
"max_count": 4
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": true,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "image.grok_imagine_pro",
"object": "model",
"capability": "image_generation",
"name": "Grok Imagine Pro",
"description": "xAI Grok Imagine Pro (Quality mode) — sharper detail, stronger text rendering, up to 2K.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"1:1",
"16:9",
"9:16",
"4:3",
"3:4",
"3:2",
"2:3",
"2:1",
"1:2",
"20:9",
"9:20",
"19.5:9",
"9:19.5"
],
"max_count": 4,
"resolutions": [
"1K",
"2K"
]
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": true,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "image.grok_imagine_2",
"object": "model",
"capability": "image_generation",
"name": "Grok Imagine 2.0",
"description": "xAI Grok Imagine 2.0 — the latest Grok Imagine generation. Up to 2K, 13 aspect ratios, and a quality tier (low | medium, default medium). Edit accepts up to 3 reference images.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"1:1",
"16:9",
"9:16",
"4:3",
"3:4",
"3:2",
"2:3",
"2:1",
"1:2",
"20:9",
"9:20",
"19.5:9",
"9:19.5"
],
"max_count": 4,
"resolutions": [
"1K",
"2K"
],
"qualities": [
"low",
"medium"
],
"max_input_images": 3
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": true,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "image.muse_image",
"object": "model",
"capability": "image_generation",
"name": "Muse Image",
"description": "Meta Muse Image — faithful instruction-following with accurate fine detail (text, plots, QR codes). Edit mode does precise, localized changes and composes from up to 10 reference images. No resolution or quality control; omitting aspect_ratio lets Muse size the output from the prompt.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"21:9",
"16:9",
"4:3",
"3:2",
"1:1",
"2:3",
"3:4",
"9:16",
"9:21"
],
"max_count": 4,
"max_reference_images": 10
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": true,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "image.ideogram_v4_5",
"object": "model",
"capability": "image_generation",
"name": "Ideogram 4.5",
"description": "Ideogram 4.5 — posters, logos and designs with accurate typography: quote the exact words and mention the text early in the prompt. Quality low | medium | high (default medium), each its own price; 1K | 2K (default 2K), same price. Edit reads the first image as the source plus up to 4 references (3 with a mask), takes mask_url, and edit_precision: \"high\" (Precise Edit) restores the pixels the edit did not touch, at no extra cost.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"1:1",
"16:9",
"9:16",
"4:3",
"3:4",
"3:2",
"2:3",
"5:4",
"4:5",
"16:10",
"10:16",
"2:1",
"1:2",
"3:1",
"1:3"
],
"max_count": 4,
"resolutions": [
"1K",
"2K"
],
"qualities": [
"low",
"medium",
"high"
],
"max_reference_images": 5,
"edit_precisions": [
"regular",
"high"
]
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": true,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": true,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "video.flux_3",
"object": "model",
"capability": "video_generation",
"name": "Flux 3",
"description": "Black Forest Labs Flux 3 — frontier video with synchronized audio included at no extra cost. Routes to text/image-to-video, first-last-frame, keyframe pinning (keyframes[]), or extend (source_video_url). 5-20s, 720p or 1080p.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"auto",
"21:9",
"2:1",
"16:9",
"4:3",
"1:1",
"3:4",
"9:16"
],
"duration_seconds": [
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20
],
"resolutions": [
"720p",
"1080p"
],
"supports_audio": true,
"max_keyframes": 10,
"source_video_max_seconds": 15,
"source_video_max_mb": 50
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": false,
"source_video": true,
"motion_control": false,
"first_last_frame": true,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": true,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "video.flux_3_draft",
"object": "model",
"capability": "video_generation",
"name": "Flux 3 Draft",
"description": "Cheap 720p Flux 3 preview (~3.5x less than full quality). Returns a draft_cache_url alongside the video; pass that back to this model to render the same shot at full 1080p. Same four routing modes as Flux 3.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"auto",
"21:9",
"2:1",
"16:9",
"4:3",
"1:1",
"3:4",
"9:16"
],
"duration_seconds": [
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20
],
"resolutions": [
"720p"
],
"supports_audio": true,
"max_keyframes": 10,
"source_video_max_seconds": 15,
"source_video_max_mb": 50
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": false,
"source_video": true,
"motion_control": false,
"first_last_frame": true,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": true,
"video_to_video_reference": false,
"draft_enhance": true
}
},
{
"id": "video.flux_3_edit",
"object": "model",
"capability": "video_generation",
"name": "Flux 3 Edit",
"description": "Flux 3 video edit — re-renders a source clip from a text prompt while preserving its motion, timing and framing (restyle, regrade, change the weather, wardrobe or set). Requires source_video_url (MP4, under 15s and 50 MB); output is 720p at the clip's own length. No duration, aspect-ratio or resolution controls. Far cheaper per second than a fresh Flux 3 render.",
"status": "available",
"is_default": false,
"limits": {
"source_video_max_seconds": 15,
"source_video_max_mb": 50,
"resolutions": [
"720p"
]
},
"capabilities": {
"text_to_output": false,
"image_to_output": false,
"reference_images": false,
"source_video": true,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "video.veo_3_1",
"object": "model",
"capability": "video_generation",
"name": "Veo 3.1",
"description": "Google Veo 3.1 — premium text/image-to-video with native audio. Supports first-last-frame interpolation. Default.",
"status": "available",
"is_default": true,
"limits": {
"aspect_ratios": [
"16:9",
"9:16",
"1:1"
],
"duration_seconds": [
4,
5,
8
],
"supports_audio": true
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": true,
"source_video": false,
"motion_control": false,
"first_last_frame": true,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "video.veo_3_1_fast",
"object": "model",
"capability": "video_generation",
"name": "Veo 3.1 Fast",
"description": "Cheaper, faster Veo 3.1 variant. Supports first-last-frame interpolation.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"16:9",
"9:16",
"1:1"
],
"duration_seconds": [
4,
5,
8
],
"supports_audio": true
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": false,
"source_video": false,
"motion_control": false,
"first_last_frame": true,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "video.veo_3_1_lite",
"object": "model",
"capability": "video_generation",
"name": "Veo 3.1 Lite",
"description": "Lower-cost Lite variant of Veo 3.1. Supports first-last-frame interpolation.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"16:9",
"9:16",
"1:1"
],
"duration_seconds": [
4,
5,
8
],
"supports_audio": true
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": false,
"source_video": false,
"motion_control": false,
"first_last_frame": true,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "video.veo_3_1_extend",
"object": "model",
"capability": "video_generation",
"name": "Veo 3.1 Extend",
"description": "Extend an existing Veo-created video by up to 7 seconds. Requires source_video_url.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"16:9",
"9:16"
],
"duration_seconds": [
7
],
"supports_audio": true
},
"capabilities": {
"text_to_output": false,
"image_to_output": false,
"reference_images": false,
"source_video": true,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "video.veo_3",
"object": "model",
"capability": "video_generation",
"name": "Veo 3",
"description": "Veo 3 — high-quality cinematic generation with audio (predecessor to Veo 3.1).",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"16:9",
"9:16"
],
"duration_seconds": [
8
],
"supports_audio": true
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": false,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "video.gemini_omni_flash_v11",
"object": "model",
"capability": "video_generation",
"name": "Gemini Omni Flash 1.1",
"description": "Google Gemini Omni Flash 1.1 — adds a 360p-4k resolution ladder, an end-frame on image-to-video, and reference video clips. 3-10s, 16:9 or 9:16. Control pacing and audio in the prompt. Always generates its own audio (speech, ambience, music) — direct it in the prompt; `supports_audio: false` in limits means only that there is no separate audio on/off toggle, not that output is silent.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"16:9",
"9:16"
],
"duration_seconds": [
3,
4,
5,
6,
7,
8,
9,
10
],
"resolutions": [
"360p",
"720p",
"1080p",
"4k"
],
"reference_image_urls": 10,
"reference_video_urls": 3,
"supports_audio": false
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": true,
"source_video": true,
"motion_control": false,
"first_last_frame": false,
"end_frame": true,
"reference_media": true,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "video.gemini_omni_flash",
"object": "model",
"capability": "video_generation",
"name": "Gemini Omni Flash",
"description": "Google Gemini Omni Flash — fast, low-cost text/image-to-video. Supports reference images and video-to-video editing. 3-10s, 16:9 or 9:16. Control pacing and audio in the prompt. Always generates its own audio (speech, ambience, music) — direct it in the prompt; `supports_audio: false` in limits means only that there is no separate audio on/off toggle, not that output is silent.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"16:9",
"9:16"
],
"duration_seconds": [
3,
4,
5,
6,
7,
8,
9,
10
],
"supports_audio": false
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": true,
"source_video": true,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "video.veo_3_fast",
"object": "model",
"capability": "video_generation",
"name": "Veo 3 Fast",
"description": "Cheaper Veo 3 variant — same quality tier, faster turnaround.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"16:9",
"9:16"
],
"duration_seconds": [
8
],
"supports_audio": true
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": false,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "video.kling_o3",
"object": "model",
"capability": "video_generation",
"name": "Kling O3 Standard",
"description": "Kling O3 standard — smooth motion, strong subject consistency.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"16:9",
"9:16",
"1:1"
],
"duration_seconds": [
5,
10
],
"supports_audio": true
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": true,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": true,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": true,
"draft_enhance": false
}
},
{
"id": "video.kling_o3_pro",
"object": "model",
"capability": "video_generation",
"name": "Kling O3 Pro",
"description": "Pro tier of Kling O3 — better quality at higher cost. Supports video-to-video reference (use source_video_url + reference_image_urls).",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"16:9",
"9:16",
"1:1"
],
"duration_seconds": [
5,
10
],
"supports_audio": true
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": true,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": true,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": true,
"draft_enhance": false
}
},
{
"id": "video.kling_o3_4k",
"object": "model",
"capability": "video_generation",
"name": "Kling O3 4K",
"description": "Kling O3 at native 4K. Higher cost, top-tier quality. Also video-to-video at 4K: `source_video_url` + `reference_image_urls` restyles the clip while binding the references (3-15s, `duration` chosen by you); `source_video_url` ALONE is a source-preserving edit — same length and framing as the source (.mp4/.mov, 3-15s, 720-3840px, ≤200MB), billed per second of the SOURCE clip.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"16:9",
"9:16",
"1:1"
],
"duration_seconds": [
5,
10
],
"resolution": "4k",
"supports_audio": true
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": true,
"source_video": true,
"motion_control": false,
"first_last_frame": false,
"end_frame": true,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": true,
"draft_enhance": false
}
},
{
"id": "video.kling_v3",
"object": "model",
"capability": "video_generation",
"name": "Kling V3 Standard",
"description": "Kling V3 standard — text or image to video, 3-15s, with generated audio, an end frame on image-to-video, and multi-shot prompts. Use video.kling_v3_turbo for the faster, cheaper tier and video.kling_o3 for reference-to-video.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"16:9",
"9:16",
"1:1"
],
"duration_seconds": [
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15
],
"supports_audio": true
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": false,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": true,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "video.kling_v3_pro",
"object": "model",
"capability": "video_generation",
"name": "Kling V3 Pro",
"description": "Kling V3 pro — the higher-quality V3 tier. Text or image to video, 3-15s, generated audio, end frame on image-to-video, multi-shot prompts.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"16:9",
"9:16",
"1:1"
],
"duration_seconds": [
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15
],
"supports_audio": true
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": false,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": true,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "video.kling_v3_turbo",
"object": "model",
"capability": "video_generation",
"name": "Kling V3 Turbo Standard",
"description": "Kling 3.0 Turbo standard (720p) — the fast, cheaper Kling V3 tier. Text or image to video, 3–15s, multi-shot prompts. No end frame, no elements, no audio.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"16:9",
"9:16",
"1:1"
],
"duration_seconds": [
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15
],
"supports_audio": false
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": false,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "video.kling_v3_turbo_pro",
"object": "model",
"capability": "video_generation",
"name": "Kling V3 Turbo Pro",
"description": "Kling 3.0 Turbo pro (1080p) — fast Kling V3 at the standard-tier price. Text or image to video, 3–15s, multi-shot prompts. No end frame, no elements, no audio.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"16:9",
"9:16",
"1:1"
],
"duration_seconds": [
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15
],
"supports_audio": false
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": false,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "video.kling_v3_motion_control",
"object": "model",
"capability": "video_generation",
"name": "Kling V3 Motion Control",
"description": "Transfer motion from a reference video onto a character image. Requires both image_url (character) and source_video_url (motion reference).",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"16:9",
"9:16",
"1:1"
],
"duration_seconds": [
5
]
},
"capabilities": {
"text_to_output": false,
"image_to_output": false,
"reference_images": false,
"source_video": false,
"motion_control": true,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "video.kling_v3_pro_motion_control",
"object": "model",
"capability": "video_generation",
"name": "Kling V3 Pro Motion Control",
"description": "Pro-tier Kling V3 motion-control — higher quality character animation. Requires both image_url and source_video_url.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"16:9",
"9:16",
"1:1"
],
"duration_seconds": [
5
]
},
"capabilities": {
"text_to_output": false,
"image_to_output": false,
"reference_images": false,
"source_video": false,
"motion_control": true,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "video.kling_v3_4k",
"object": "model",
"capability": "video_generation",
"name": "Kling V3 4K",
"description": "Kling V3 at 4K resolution — the delivery tier. Text or image to video, 3-15s, generated audio, end frame on image-to-video.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"16:9",
"9:16",
"1:1"
],
"duration_seconds": [
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15
],
"resolution": "4k",
"supports_audio": true
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": false,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": true,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "video.kling_v26",
"object": "model",
"capability": "video_generation",
"name": "Kling 2.6",
"description": "Kling 2.6 — text/image to video. Kling 2.6 has a single generation tier; this alias resolves to the same endpoints as video.kling_v26_pro.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"16:9",
"9:16",
"1:1"
],
"duration_seconds": [
5,
10
]
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": false,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": true,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "video.kling_v26_pro",
"object": "model",
"capability": "video_generation",
"name": "Kling 2.6 Pro",
"description": "Kling 2.6 pro tier — higher quality.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"16:9",
"9:16",
"1:1"
],
"duration_seconds": [
5,
10
]
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": false,
"source_video": false,
"motion_control": true,
"first_last_frame": false,
"end_frame": true,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "video.kling_v26_motion_control",
"object": "model",
"capability": "video_generation",
"name": "Kling 2.6 Motion Control",
"description": "Motion-control variant of Kling 2.6 (legacy). Requires image_url + source_video_url.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"16:9",
"9:16",
"1:1"
],
"duration_seconds": [
5
]
},
"capabilities": {
"text_to_output": false,
"image_to_output": false,
"reference_images": false,
"source_video": false,
"motion_control": true,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "video.kling_v25_turbo",
"object": "model",
"capability": "video_generation",
"name": "Kling 2.5 Turbo Pro",
"description": "Faster Kling variant (legacy but reliable).",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"16:9",
"9:16",
"1:1"
],
"duration_seconds": [
5,
10
]
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": false,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "video.kling_v21_master",
"object": "model",
"capability": "video_generation",
"name": "Kling 2.1 Master",
"description": "Kling 2.1 Master (legacy) — enhanced quality.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"16:9",
"9:16",
"1:1"
],
"duration_seconds": [
5,
10
]
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": false,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "video.hailuo_03_max_multi_angle",
"object": "model",
"capability": "video_generation",
"name": "H3 Max Multi Angle",
"description": "H3 Max image-to-video on an explicit camera path: hand it ONE image and a `camera_path` preset (orbit, half_orbit, dolly_in, crane_up, top_down, spiral, hero_reveal, …) or 2-12 `camera_trajectory` keyframes of azimuth / elevation / distance, and it renders 5-15s of that move with the scene held rigid — product turnarounds, parallax reveals, virtual dolly shots. 480p/768p/1080p at the H3 Max rate (1080p bills 2x the 768p rate). Image-to-video ONLY: no text-to-video, no end frame, no references.",
"status": "available",
"is_default": false,
"limits": {
"duration_seconds": [
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15
],
"resolutions": [
"480p",
"768p",
"1080p"
],
"camera_paths": [
"orbit",
"orbit_reverse",
"half_orbit",
"quarter_orbit",
"dolly_in",
"dolly_out",
"crane_up",
"low_angle",
"top_down",
"arc_push",
"spiral",
"hero_reveal"
],
"camera_keyframes": {
"min": 2,
"max": 12
}
},
"capabilities": {
"text_to_output": false,
"image_to_output": true,
"reference_images": false,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": true,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "video.hailuo_03_max_styles",
"object": "model",
"capability": "video_generation",
"name": "H3 Max Styles",
"description": "H3 Max with a baked-in look: pick ONE `video_style` — `vhs` (VHS), `retro_toon_70s` (Retro Toon 70s), `low_poly` (Low Poly), `hand_drawn` (Hand Drawn), `16bit_pixel` (16-bit Pixel) — and it renders your prompt in that style, 5-15s at a fixed 768p with audio, one flat per-second rate for every style (resolution does not scale it). Text-to-video, or image-to-video from an optional `image_url` first frame (its ratio then sets the canvas and `aspect_ratio` is ignored). `video_style` is REQUIRED; `damage_level` (light / medium / heavy, default medium) is the VHS tape wear and is accepted on `vhs` only. A prompt is required — the style is applied to the scene you describe. No end frame, no references, no trained models, no resolution choice.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"21:9",
"16:9",
"4:3",
"1:1",
"3:4",
"9:16"
],
"duration_seconds": [
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15
],
"resolutions": [
"768p"
],
"video_styles": [
"vhs",
"retro_toon_70s",
"low_poly",
"hand_drawn",
"16bit_pixel"
],
"damage_levels": [
"light",
"medium",
"heavy"
],
"damage_level_styles": [
"vhs"
],
"prompt_max_length": 49800
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": false,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": true,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "video.hailuo_03_max_extend",
"object": "model",
"capability": "video_generation",
"name": "H3 Max Extend",
"description": "H3 Max Extend — continues an existing clip from a prompt. Pass `source_video_url` (1.625-60s, ≤50 MB) and a prompt describing what happens next; `duration` (5-15s) is the length of the NEW footage. `extend_output`: `extended` (default — the source plus the new footage as one clip) or `continuation` (the new footage only). `aspect_ratio` defaults to `auto` (follow the source). 480p/768p/1080p/2k on the H3 Max per-second ladder (1080p 2x, 2k 4x the 768p rate) plus a small source-clip token surcharge. No first frame, references or text-only mode.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"auto",
"21:9",
"16:9",
"4:3",
"1:1",
"3:4",
"9:16"
],
"duration_seconds": [
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15
],
"resolutions": [
"480p",
"768p",
"1080p",
"2k"
],
"extend_outputs": [
"extended",
"continuation"
],
"source_video_min_seconds": 1.625,
"source_video_max_seconds": 60,
"source_video_max_mb": 50,
"prompt_max_length": 50000
},
"capabilities": {
"text_to_output": false,
"image_to_output": false,
"reference_images": false,
"source_video": true,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "video.hailuo_03_max_3d",
"object": "model",
"capability": "video_generation",
"name": "H3 Max 3D to Video",
"description": "H3 Max 3D to Video — turns a 3D render (Blender, previs, greybox) into a photoreal clip that keeps its camera, timing, trajectories and object count. Pass `source_video_url` (≤15s, strict); the output matches its length and framing, so there is NO `duration` or `aspect_ratio` control. `prompt` is OPTIONAL scene intent (≤2000 chars). Optional `reference_image_urls` (≤8) set the look of every shot; without them the model generates up to `max_generated_reference_images` (1-8, default 2) appearance references itself. 480p/768p/1080p. Billed per request: a flat planning fee + the H3 Max per-second rate on the source length (5s minimum) + each generated reference + a source-clip token surcharge — call POST /v1/models/estimate-cost with the source_video_url for the exact number.",
"status": "available",
"is_default": false,
"limits": {
"resolutions": [
"480p",
"768p",
"1080p"
],
"max_reference_images": 8,
"max_generated_reference_images": {
"min": 1,
"max": 8,
"default": 2
},
"source_video_max_seconds": 15,
"prompt_max_length": 2000
},
"capabilities": {
"text_to_output": false,
"image_to_output": false,
"reference_images": false,
"source_video": true,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": true,
"draft_enhance": false
}
},
{
"id": "video.hailuo_03_max_insert",
"object": "model",
"capability": "video_generation",
"name": "H3 Max Insert",
"description": "H3 Max Insert — cuts a NEW scene into an existing clip, then hands back to the original footage. Pass `source_video_url` (≤60s, ≤50 MB) plus `insert_start_time` (where the new scene begins, ≥1.625s) and `insert_resume_time` (where the original picks up again: later than the start, within the first 60s and before the clip ends — leave some footage after it for the transition), both REQUIRED, in seconds into `source_video_url` as supplied (the source is never trimmed first). Guide the new scene with `prompt` and/or up to 9 `reference_image_urls` and 3 `reference_video_urls` (15s combined) — at least one is required. Returns the WHOLE edited clip: the lead-in up to the start, the new scene, then the source from the resume point on. `duration` (5-13s) is the length of the NEW scene only — the only seconds billed — whatever span it replaces; reference clips add a small token surcharge on their measured (trimmed) length. `color_match` (default true) grades the new scene to the source. 480p or 768p (480p bills 5/6 of the 768p rate). No aspect_ratio (the output follows the source), no audio toggle, no first frame, no reference audio.",
"status": "available",
"is_default": false,
"limits": {
"duration_seconds": [
5,
6,
7,
8,
9,
10,
11,
12,
13
],
"resolutions": [
"480p",
"768p"
],
"max_reference_images": 9,
"max_reference_videos": 3,
"max_reference_audio": 0,
"max_reference_video_seconds": 15,
"max_reference_video_seconds_total": 15,
"insert_min_start_seconds": 1.625,
"insert_max_time_seconds": 60,
"source_video_max_seconds": 60,
"source_video_max_mb": 50,
"prompt_max_length": 50000
},
"capabilities": {
"text_to_output": false,
"image_to_output": false,
"reference_images": true,
"source_video": true,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": true,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": true,
"draft_enhance": false
}
},
{
"id": "video.hailuo_03_max_recast",
"object": "model",
"capability": "video_generation",
"name": "H3 Max Recast",
"description": "H3 Max Recast — recasts the people in a video from up to 4 reference photos, keeping the motion, camera, cuts and sound. Pass `source_video_url` (5-30s, strict; no single shot longer than 15s) and `reference_image_urls` (1-4, one photo per new person — photo 1 replaces the leftmost main person, photo 2 the next, and so on), both REQUIRED. `prompt` is OPTIONAL (≤2000 chars): say who becomes whom, or what else to keep or change. The output keeps the source's length and framing, so there is NO `duration` or `aspect_ratio`. 768p or 1080p (default 1080p; 768p bills 2/3 of the 1080p rate). Billed per second of the SOURCE as measured server-side (rounded up, 5s minimum); the photos are free, and a source that cannot be measured is refused rather than guessed — call POST /v1/models/estimate-cost with the source_video_url for the exact number. No reference clips or audio.",
"status": "available",
"is_default": false,
"limits": {
"resolutions": [
"768p",
"1080p"
],
"min_reference_images": 1,
"max_reference_images": 4,
"source_video_min_seconds": 5,
"source_video_max_seconds": 30,
"source_video_max_shot_seconds": 15,
"prompt_max_length": 2000
},
"capabilities": {
"text_to_output": false,
"image_to_output": false,
"reference_images": true,
"source_video": true,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": true,
"draft_enhance": false
}
},
{
"id": "video.hailuo_03_max_turbo",
"object": "model",
"capability": "video_generation",
"name": "H3 Max Turbo",
"description": "The Turbo tier of H3 Max — the same 480p/768p/1080p output from text or a first frame (with optional last-frame keyframe), at half the H3 Max price per second (1080p bills 2x the 768p rate). Text-to-video and image-to-video only: there is no reference mode, so use video.hailuo_03_max for references and video.hailuo_03 for 2K.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"21:9",
"16:9",
"4:3",
"1:1",
"3:4",
"9:16"
],
"duration_seconds": [
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15
],
"resolutions": [
"480p",
"768p",
"1080p"
]
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": false,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": true,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "video.hailuo_03_max",
"object": "model",
"capability": "video_generation",
"name": "H3 Max",
"description": "A post-trained MiniMax H3 variant — stronger prompt adherence and higher throughput, from text, a first frame (with optional last-frame keyframe), or reference images/videos/audio. Renders 480p/768p/1080p (1080p bills 2x the 768p rate); use video.hailuo_03 for 2K.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"21:9",
"16:9",
"4:3",
"1:1",
"3:4",
"9:16"
],
"duration_seconds": [
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15
],
"resolutions": [
"480p",
"768p",
"1080p"
],
"reference_image_urls": 9,
"reference_video_urls": 3,
"reference_audio_urls": 3,
"reference_media_seconds": [
2,
15
]
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": true,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": true,
"reference_media": true,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "video.hailuo_03",
"object": "model",
"capability": "video_generation",
"name": "Hailuo 03",
"description": "MiniMax Hailuo 03 — 2K video from text, a first frame (with optional last-frame keyframe), or reference images/videos/audio. The only model that runs your TRAINED MODELS: pass `loras: [{ id, scale? }]` (up to 3, from POST /v1/loras) and the clip renders through the matching Hailuo 03 LoRA endpoint.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"21:9",
"16:9",
"4:3",
"1:1",
"3:4",
"9:16"
],
"duration_seconds": [
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15
],
"resolutions": [
"768p",
"2k"
],
"reference_image_urls": 9,
"reference_video_urls": 3,
"reference_audio_urls": 3,
"reference_media_seconds": [
2,
15
],
"loras": 3
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": true,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": true,
"reference_media": true,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "video.hailuo_23",
"object": "model",
"capability": "video_generation",
"name": "Hailuo 2.3",
"description": "MiniMax Hailuo 2.3 — dynamic video generation.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"16:9",
"9:16",
"1:1"
],
"duration_seconds": [
6,
10
]
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": false,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "video.hailuo_23_pro",
"object": "model",
"capability": "video_generation",
"name": "Hailuo 2.3 Pro",
"description": "MiniMax Hailuo 2.3 Pro tier.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"16:9",
"9:16",
"1:1"
],
"duration_seconds": [
6,
10
]
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": false,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "video.hailuo_02",
"object": "model",
"capability": "video_generation",
"name": "Hailuo 02",
"description": "MiniMax Hailuo 02 (legacy) — image-to-video standard tier.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"16:9",
"9:16",
"1:1"
],
"duration_seconds": [
6,
10
]
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": false,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": true,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "video.hailuo_02_fast",
"object": "model",
"capability": "video_generation",
"name": "Hailuo 02 Fast",
"description": "Faster Hailuo 02 image-to-video variant.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"16:9",
"9:16",
"1:1"
],
"duration_seconds": [
6,
10
]
},
"capabilities": {
"text_to_output": false,
"image_to_output": true,
"reference_images": false,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "video.hailuo_23_fast",
"object": "model",
"capability": "video_generation",
"name": "Hailuo 2.3 Fast",
"description": "Faster Hailuo 2.3 image-to-video standard tier.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"16:9",
"9:16",
"1:1"
],
"duration_seconds": [
6,
10
]
},
"capabilities": {
"text_to_output": false,
"image_to_output": true,
"reference_images": false,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "video.hailuo_23_fast_pro",
"object": "model",
"capability": "video_generation",
"name": "Hailuo 2.3 Fast Pro",
"description": "Faster Hailuo 2.3 pro-tier image-to-video.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"16:9",
"9:16",
"1:1"
],
"duration_seconds": [
6,
10
]
},
"capabilities": {
"text_to_output": false,
"image_to_output": true,
"reference_images": false,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "video.luma_dream_machine",
"object": "model",
"capability": "video_generation",
"name": "Luma Dream Machine",
"description": "Luma Dream Machine — fluid motion, distinctive style.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"16:9",
"9:16",
"1:1"
],
"duration_seconds": [
5,
9
]
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": false,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "video.wan_v22",
"object": "model",
"capability": "video_generation",
"name": "WAN 2.2",
"description": "WAN 2.2 — strong character animation.",
"status": "preview",
"is_default": false,
"limits": {
"aspect_ratios": [
"16:9",
"9:16",
"1:1"
],
"duration_seconds": [
5,
8
]
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": false,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "video.wan_25_preview",
"object": "model",
"capability": "video_generation",
"name": "WAN 2.5 Preview",
"description": "WAN 2.5 preview — newer than 2.2, may change without notice.",
"status": "preview",
"is_default": false,
"limits": {
"aspect_ratios": [
"16:9",
"9:16",
"1:1"
],
"duration_seconds": [
5,
8
]
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": false,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "video.wan_animate_replace",
"object": "model",
"capability": "video_generation",
"name": "WAN Animate (Replace)",
"description": "WAN animate-replace — swap subject in source video using a reference image. Requires image_url + source_video_url.",
"status": "preview",
"is_default": false,
"limits": {
"aspect_ratios": [
"16:9",
"9:16",
"1:1"
],
"duration_seconds": [
5
]
},
"capabilities": {
"text_to_output": false,
"image_to_output": false,
"reference_images": false,
"source_video": false,
"motion_control": true,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "video.wan_animate_move",
"object": "model",
"capability": "video_generation",
"name": "WAN Animate (Move)",
"description": "WAN animate-move — animate static images with natural motion from a reference video. Requires image_url + source_video_url.",
"status": "preview",
"is_default": false,
"limits": {
"aspect_ratios": [
"16:9",
"9:16",
"1:1"
],
"duration_seconds": [
5
]
},
"capabilities": {
"text_to_output": false,
"image_to_output": false,
"reference_images": false,
"source_video": false,
"motion_control": true,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "video.seedance_2_0",
"object": "model",
"capability": "video_generation",
"name": "Seedance 2.0",
"description": "ByteDance Seedance 2.0 — text/image/reference to video. Supports up to 4k.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"auto",
"21:9",
"16:9",
"4:3",
"1:1",
"3:4",
"9:16"
],
"duration_seconds": [
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15
],
"resolutions": [
"480p",
"720p",
"1080p",
"4k"
],
"supports_audio": true
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": true,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": true,
"reference_media": true,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": true,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "video.seedance_2_0_fast",
"object": "model",
"capability": "video_generation",
"name": "Seedance 2.0 Fast",
"description": "Faster, cheaper Seedance 2.0 variant. Caps at 720p.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"auto",
"21:9",
"16:9",
"4:3",
"1:1",
"3:4",
"9:16"
],
"duration_seconds": [
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15
],
"resolutions": [
"480p",
"720p"
],
"supports_audio": true
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": true,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": true,
"reference_media": true,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": true,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "video.seedance_2_0_mini",
"object": "model",
"capability": "video_generation",
"name": "Seedance 2.0 Mini",
"description": "Smallest, cheapest Seedance 2.0 variant. Caps at 720p; no bitrate_mode.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"auto",
"21:9",
"16:9",
"4:3",
"1:1",
"3:4",
"9:16"
],
"duration_seconds": [
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15
],
"resolutions": [
"480p",
"720p"
],
"supports_audio": true
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": true,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": true,
"reference_media": true,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "video.seedance_2_5",
"object": "model",
"capability": "video_generation",
"name": "Seedance 2.5",
"description": "ByteDance Seedance 2.5 — text/image/reference to video, and the engine behind Genfire Genjudo. 4-30s clips with native audio; reference-to-video takes up to 30 images, 10 videos, and 10 audio clips and a `task` of reference (motion transfer), editing (video edit) or extension. 480p/720p/1080p (no 4k) and no speed tiers. `draft: true` renders a 480p preview at the 480p price that POST /v1/videos/generations/{id}/final turns into the native 1080p final of the same shot within 7 days.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"auto",
"21:9",
"16:9",
"4:3",
"1:1",
"3:4",
"9:16"
],
"duration_seconds": [
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30
],
"resolutions": [
"480p",
"720p",
"1080p"
],
"supports_audio": true,
"max_reference_images": 30,
"max_reference_videos": 10,
"max_reference_audio": 10,
"min_reference_video_seconds": 2,
"max_reference_video_seconds": 30,
"max_reference_video_seconds_total": 30,
"video_tasks": [
"reference",
"editing",
"extension"
]
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": true,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": true,
"reference_media": true,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": true,
"bitrate_mode": false,
"draft": true,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "video.wan_3",
"object": "model",
"capability": "video_generation",
"name": "Wan 3.0",
"description": "Alibaba Wan 3.0 — text/image/reference to video. 2-30s clips with native synchronized audio; reference-to-video takes up to 10 images, 5 videos, and 5 audio clips. 480p/720p/1080p (default 1080p, no 4k) and no speed tiers.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"adaptive",
"16:9",
"4:3",
"1:1",
"3:4",
"9:16"
],
"duration_seconds": [
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30
],
"resolutions": [
"480p",
"720p",
"1080p"
],
"supports_audio": true,
"max_reference_images": 10,
"max_reference_videos": 5,
"max_reference_audio": 5
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": true,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": true,
"reference_media": true,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "video.wan_3_prime",
"object": "model",
"capability": "video_generation",
"name": "Wan 3.0 Prime",
"description": "Alibaba Wan 3.0 Prime — the faster, higher-fidelity Wan 3.0 tier at 1.4x the price. Identical inputs: text/image/reference to video, 2-30s, native audio, up to 10 image + 5 video + 5 audio references, 480p/720p/1080p.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"adaptive",
"16:9",
"4:3",
"1:1",
"3:4",
"9:16"
],
"duration_seconds": [
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30
],
"resolutions": [
"480p",
"720p",
"1080p"
],
"supports_audio": true,
"max_reference_images": 10,
"max_reference_videos": 5,
"max_reference_audio": 5
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": true,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": true,
"reference_media": true,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "video.grok_video",
"object": "model",
"capability": "video_generation",
"name": "Grok Imagine Video",
"description": "xAI Grok Imagine — high-fidelity text/image to video.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"16:9",
"4:3",
"3:2",
"1:1",
"2:3",
"3:4",
"9:16"
],
"duration_seconds": [
1,
2,
3,
4,
5,
6,
7,
8,
9,
10
],
"resolutions": [
"480p",
"720p"
]
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": true,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "video.grok_video_v15",
"object": "model",
"capability": "video_generation",
"name": "Grok Imagine Video v1.5",
"description": "xAI Grok Imagine v1.5 — text-to-video, image-to-video, or reference-to-video from up to 7 reference images.",
"status": "available",
"is_default": false,
"limits": {
"duration_seconds": [
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15
],
"resolutions": [
"480p",
"720p",
"1080p"
],
"aspect_ratios": [
"16:9",
"4:3",
"3:2",
"1:1",
"2:3",
"3:4",
"9:16"
]
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": true,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "video.grok_video_v15_lite",
"object": "model",
"capability": "video_generation",
"name": "Grok Imagine v1.5 Lite",
"description": "xAI Grok Imagine v1.5 Lite — the budget Grok v1.5: text-to-video or image-to-video, any whole second 1-15 (default 5), 480p / 720p / 1080p (default 720p). No reference images. aspect_ratio applies to text-to-video only; image-to-video follows the start image. 1080p bills 7x the 480p rate.",
"status": "available",
"is_default": false,
"limits": {
"duration_seconds": [
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15
],
"resolutions": [
"480p",
"720p",
"1080p"
],
"aspect_ratios": [
"16:9",
"4:3",
"3:2",
"1:1",
"2:3",
"3:4",
"9:16"
],
"max_prompt_length": 4096
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": false,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "video.grok_video_edit",
"object": "model",
"capability": "video_generation",
"name": "Grok Imagine Edit",
"description": "Edit existing videos with text prompts. Requires source_video_url.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"16:9",
"9:16",
"1:1"
],
"duration_seconds": [
4,
5,
8,
10
]
},
"capabilities": {
"text_to_output": false,
"image_to_output": false,
"reference_images": false,
"source_video": true,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "video.grok_video_extend",
"object": "model",
"capability": "video_generation",
"name": "Grok Imagine Extend",
"description": "Extend an existing video by 2–10s. Requires source_video_url.",
"status": "available",
"is_default": false,
"limits": {
"aspect_ratios": [
"16:9",
"9:16",
"1:1"
],
"duration_seconds": [
2,
5,
10
]
},
"capabilities": {
"text_to_output": false,
"image_to_output": false,
"reference_images": false,
"source_video": true,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "video.happy_horse",
"object": "model",
"capability": "video_generation",
"name": "Happy Horse v1.1",
"description": "Alibaba Happy Horse v1.1 — text/image/reference-to-video, plus video-edit.",
"status": "preview",
"is_default": false,
"limits": {
"aspect_ratios": [
"16:9",
"9:16",
"1:1",
"4:3",
"3:4",
"21:9",
"9:21",
"5:4",
"4:5"
],
"duration_seconds": [
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15
]
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": true,
"source_video": true,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "speech.elevenlabs_turbo_v2_5",
"object": "model",
"capability": "speech_generation",
"name": "ElevenLabs Turbo v2.5",
"description": "Legacy low-latency TTS — deprecated upstream in favour of Flash v2.5 (same price, lower latency). Still works when pinned.",
"status": "available",
"is_default": false,
"limits": {
"max_characters": 40000
}
},
{
"id": "speech.elevenlabs_flash_v2_5",
"object": "model",
"capability": "speech_generation",
"name": "ElevenLabs Flash v2.5",
"description": "Fastest ElevenLabs TTS (~75ms), lowest cost, 32 languages, up to 40,000 characters. Accepts speed, language_code, seed, previous_text/next_text and apply_text_normalization. A request that names no model and is longer than the default (speech.elevenlabs_v4_turbo) accepts runs here.",
"status": "available",
"is_default": false,
"limits": {
"max_characters": 40000
}
},
{
"id": "speech.elevenlabs_dialogue_v3",
"object": "model",
"capability": "speech_generation",
"name": "ElevenLabs Text to Dialogue (v3)",
"description": "Previous-generation Text to Dialogue on Eleven v3 (speech.elevenlabs_dialogue_v4 is the default). Multi-speaker conversation rendered as ONE audio file with matched prosody between lines. Send `dialogue: [{ text, voice_id }]` (up to 10 distinct ElevenLabs voices, 2000 characters total) instead of text + voice_id; lines accept v3 audio tags such as [whispers] or [laughs]. Optional stability (0 | 0.5 | 1), seed, language_code, with_timestamps (returns per-word timings + per-line voice segments). Billed like TTS on total characters.",
"status": "available",
"is_default": false,
"limits": {
"max_characters": 2000,
"max_voices": 10
}
},
{
"id": "speech.elevenlabs_dialogue_v4",
"object": "model",
"capability": "speech_generation",
"name": "ElevenLabs Text to Dialogue (v4)",
"description": "Multi-speaker conversation on Eleven v4 (ElevenLabs' recommended dialogue model) — the default dialogue model: `dialogue` sent with no model, or with any alias that is not dialogue-capable, runs here. Rendered as ONE audio file with matched prosody between lines. Send `dialogue: [{ text, voice_id }]` (up to 10 distinct ElevenLabs voices, 2000 characters total) instead of text + voice_id; lines accept audio tags such as [whispers] or [laughs]. Optional stability (any value 0–1), seed, language_code, with_timestamps (returns per-word timings + per-line voice segments). Billed like TTS on total characters.",
"status": "available",
"is_default": false,
"limits": {
"max_characters": 2000,
"max_voices": 10
}
},
{
"id": "speech.elevenlabs_v4",
"object": "model",
"capability": "speech_generation",
"name": "ElevenLabs v4",
"description": "Most expressive ElevenLabs voice model: audio tags such as [whispers] or [laughs], 85 languages, up to 10,000 characters per request. Voice settings are stability + similarity only — style, speed and speaker boost are ignored. Accepts language_code and seed.",
"status": "available",
"is_default": false,
"limits": {
"max_characters": 10000
}
},
{
"id": "speech.elevenlabs_v4_turbo",
"object": "model",
"capability": "speech_generation",
"name": "ElevenLabs v4 Turbo",
"description": "Default speech model. Eleven v4 expressiveness (audio tags, 85 languages) at ~100 ms median inference latency and half v4's cost; up to 10,000 characters per request (a request that names no model and is longer runs on speech.elevenlabs_flash_v2_5). Voice settings are stability + similarity only — style, speed and speaker boost are ignored; sending `speed` without a model uses speech.elevenlabs_flash_v2_5 automatically, as does a no-model request on one of your account's cloned ElevenLabs voices. `dialogue` requests sent with this alias run on Eleven v4 dialogue (speech.elevenlabs_dialogue_v4).",
"status": "available",
"is_default": true,
"limits": {
"max_characters": 10000
}
},
{
"id": "speech.elevenlabs_v3",
"object": "model",
"capability": "speech_generation",
"name": "ElevenLabs v3",
"description": "Previous-generation expressive voice model (audio tags such as [whispers]); up to 5,000 characters. Superseded by speech.elevenlabs_v4.",
"status": "available",
"is_default": false,
"limits": {
"max_characters": 5000
}
},
{
"id": "speech.elevenlabs_multilingual_v2",
"object": "model",
"capability": "speech_generation",
"name": "ElevenLabs Multilingual v2",
"description": "29 languages, high fidelity.",
"status": "available",
"is_default": false,
"limits": {
"max_characters": 10000
}
},
{
"id": "speech.seed_audio_1_0",
"object": "model",
"capability": "speech_generation",
"name": "Seed Audio 1.0",
"description": "ByteDance Seed Audio 1.0 — general text-to-audio: natural multilingual TTS plus full audio scenes (dialogue, ambience, radio dramas) from a prompt. voice_id is OPTIONAL and takes a Seed preset name (e.g. `vivi_mixed_en_zh_ja_es_id`, `mindy_en_es_id_pt_zh`, `kian_en_zh`, `sophie_en_zh`, `magnus_en_zh`) — NOT an ElevenLabs/cloned voice id; omit it to let the model narrate. Accepts up to 3 reference audio clips via audio_urls (reference them in the prompt as @Audio1–@Audio3) OR one reference image via image_url, plus speed/volume/pitch, output_format (wav|mp3|pcm|ogg_opus) and sample_rate. Billed per second (billed seconds ≈ ceil(text length / 15)).",
"status": "available",
"is_default": false,
"limits": {
"max_characters": 2048,
"max_reference_audio": 3
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": false,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "music.elevenlabs_music_v1",
"object": "model",
"capability": "music_generation",
"name": "ElevenLabs Music v1",
"description": "Legacy prompt-based music generation up to 10 minutes — deprecated upstream (ElevenLabs marks music_v1 deprecated; music.elevenlabs_music_v2_5 is the default). Also accepts a `composition_plan` (MusicPrompt: positive/negative_global_styles + sections[] with lyrics lines) instead of a prompt; `respect_sections_durations` controls how strictly section durations are enforced.",
"status": "available",
"is_default": false,
"limits": {
"max_duration_seconds": 600
}
},
{
"id": "music.elevenlabs_music_v2",
"object": "model",
"capability": "music_generation",
"name": "ElevenLabs Music v2",
"description": "ElevenLabs music_v2 — the previous-generation chunk-plan model, still available when pinned. Music generation up to 10 minutes from a prompt, or a chunk-based `composition_plan` (chunks[] with text incl. [Section]/{direction} markup, duration_ms, positive/negative_styles, optional per-chunk audio conditioning refs + `seed`). Pass `store_for_inpainting` to get a `song_id` back, then reference `{ song_id, range }` chunks in a later plan to regenerate only part of the song. Also scores a `video_url` (video-to-music) when one is supplied instead of a prompt. music.elevenlabs_music_v2_5 (the default) takes the same fields.",
"status": "available",
"is_default": false,
"limits": {
"max_duration_seconds": 600
}
},
{
"id": "music.elevenlabs_music_v2_5",
"object": "model",
"capability": "music_generation",
"name": "ElevenLabs Music v2.5",
"description": "ElevenLabs music_v2_5 (default) — the newest ElevenLabs music model (released 2026-09). A prompt up to 10 minutes, or a chunk-based `composition_plan` (chunks[] with text incl. [Section]/{direction} markup, duration_ms, positive/negative_styles, optional per-chunk audio conditioning refs + `seed`), `force_instrumental`, word timestamps and inpainting (`store_for_inpainting` → `song_id`, then `{ song_id, range }` chunks). Also scores a `video_url` (video-to-music) when one is supplied instead of a prompt. Same fields as music.elevenlabs_music_v2.",
"status": "available",
"is_default": true,
"limits": {
"max_duration_seconds": 600
}
},
{
"id": "music.lyria3_pro",
"object": "model",
"capability": "music_generation",
"name": "Lyria 3 Pro",
"description": "Google Lyria 3 Pro — full structured songs up to 3 minutes with vocals, lyrics, and multi-language support. Accepts an optional image_url for inspiration (no negative prompting). Flat per-generation fee (duration is not configurable).",
"status": "available",
"is_default": false,
"limits": {
"max_duration_seconds": 180,
"prompt_max_length": 5000
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": false,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "music.lyria_3_5",
"object": "model",
"capability": "music_generation",
"name": "Lyria 3.5",
"description": "Google Lyria 3.5 — full-length songs with vocals; writes and sings its own lyrics. Steer length and structure from the prompt (timestamps or a duration hint) — there is no duration parameter. Accepts an optional image_url for inspiration (no negative prompting). Flat per-generation fee whatever the length.",
"status": "available",
"is_default": false,
"limits": {
"prompt_max_length": 5000
},
"capabilities": {
"text_to_output": true,
"image_to_output": true,
"reference_images": false,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "music.minimax_music_3",
"object": "model",
"capability": "music_generation",
"name": "MiniMax Music 3",
"description": "MiniMax Music 3 — sings YOUR lyrics. `lyrics` is REQUIRED (structure tags like [verse]/[chorus] must each sit on their own line) alongside a `prompt` describing genre, BPM, key, vocals and arrangement. `duration_seconds` is an upper bound of 1-300 (default 60; the model may finish earlier) and billing is per second of that bound. Also accepts `num_inference_steps` (1-100, default 30), `guidance_scale` (0-20, default 1.7) and `seed`. Returns 44.1 kHz stereo WAV. No image input, no negative prompting, no composition_plan.",
"status": "available",
"is_default": false,
"limits": {
"max_duration_seconds": 300,
"prompt_max_length": 5000
},
"capabilities": {
"text_to_output": true,
"image_to_output": false,
"reference_images": false,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "sfx.elevenlabs_v1",
"object": "model",
"capability": "sound_effect_generation",
"name": "ElevenLabs SFX",
"description": "Sound effect generation up to 30s.",
"status": "available",
"is_default": true,
"limits": {
"max_duration_seconds": 30
}
},
{
"id": "transcription.whisper_v1",
"object": "model",
"capability": "transcription",
"name": "OpenAI Whisper v1",
"description": "Speech-to-text with word and segment timestamps. Accepts a direct audio/video URL or a YouTube URL. Async — returns a queued run; poll genfire_get_run for the transcript.",
"status": "available",
"is_default": true,
"limits": {
"max_file_mb": 500,
"max_duration_seconds": 7200
}
},
{
"id": "transcription.elevenlabs_scribe_v2",
"object": "model",
"capability": "transcription",
"name": "ElevenLabs Scribe v2",
"description": "ElevenLabs Scribe v2 speech-to-text: 90+ languages, word timestamps, speaker diarization (up to 32 speakers, `speaker_id` on every word), audio-event tags, `keyterms` vocabulary biasing (up to 1000 terms), `entity_detection` / `entity_redaction` (pii, phi, pci, …), `no_verbatim` filler removal and `detect_speaker_roles`. Same inputs as Whisper (audio_url / video_url / youtube_url); segments are grouped by speaker.",
"status": "available",
"is_default": false,
"limits": {
"max_file_mb": 500,
"max_duration_seconds": 7200,
"max_speakers": 32,
"max_keyterms": 1000
}
},
{
"id": "image_edit.bria_background_remove",
"object": "model",
"capability": "image_editing",
"name": "BRIA Background Remove",
"description": "Remove the background from an image. Returns a transparent PNG.",
"status": "available",
"is_default": true,
"limits": {
"input": "image_url"
}
},
{
"id": "video_upscale.topaz",
"object": "model",
"capability": "video_upscaling",
"name": "Topaz Video Upscale",
"description": "Upscale a video by 2x or 4x with Topaz (Proteus). Billed per second by output resolution. Async — returns a queued run; poll genfire_get_run for completion.",
"status": "available",
"is_default": true,
"limits": {
"scale_factors": [
2,
4
]
}
},
{
"id": "video_upscale.flux_video_upscale",
"object": "model",
"capability": "video_upscaling",
"name": "Flux Video Upscale",
"description": "Upscale a video 1.5x–3x with FLUX 3 super-resolution. Two modes: precise (source-faithful) and creative (adds detail, accepts an optional guiding prompt). Source must be MP4, at most 20s and 50MB. Billed per second of output by resolution and mode — materially pricier than Topaz. Async — returns a queued run; poll genfire_get_run for completion.",
"status": "available",
"is_default": false,
"limits": {
"scale_factors": [
1.5,
2,
2.5,
3
],
"min_scale_factor": 1.5,
"max_scale_factor": 3,
"max_duration_seconds": 20,
"max_file_mb": 50,
"modes": [
"precise",
"creative"
]
}
},
{
"id": "image_upscale.topaz_upscale_image",
"object": "model",
"capability": "image_upscaling",
"name": "Topaz Upscale",
"description": "Upscale an image by 2x or 4x. Async — returns a queued run; poll genfire_get_run for completion.",
"status": "available",
"is_default": true,
"limits": {
"scale_factors": [
2,
4
]
}
},
{
"id": "lipsync.lipsync_2_pro",
"object": "model",
"capability": "lipsync_generation",
"name": "Lipsync 2 Pro",
"description": "High-quality lip-sync at 480p or 720p. Default.",
"status": "available",
"is_default": true,
"limits": {
"resolutions": [
"480p",
"720p"
]
}
},
{
"id": "lipsync.sync_lipsync_v2_pro",
"object": "model",
"capability": "lipsync_generation",
"name": "Sync Lipsync v2 Pro",
"description": "Alternative lip-sync engine.",
"status": "available",
"is_default": false,
"limits": {
"resolutions": [
"480p",
"720p"
]
}
},
{
"id": "lipsync.sync_lipsync_v3",
"object": "model",
"capability": "lipsync_generation",
"name": "Sync Lipsync v3",
"description": "Premium lip-sync engine — higher fidelity than v2 Pro.",
"status": "available",
"is_default": false,
"limits": {
"resolutions": [
"480p",
"720p"
]
}
},
{
"id": "lipsync.h3_max_lipsync",
"object": "model",
"capability": "lipsync_generation",
"name": "H3 Max Lip Sync",
"description": "Animate a PHOTO to speech audio (send image_url instead of video_url). 480P–2K. Audio must be 5–14.8 s; longer audio is clipped at 14.8 s. No prompt — it follows the audio.",
"status": "available",
"is_default": false,
"limits": {
"resolutions": [
"480P",
"768P",
"1080P",
"2K"
],
"defaultResolution": "768P",
"minAudioSeconds": 5,
"maxAudioSeconds": 14.8,
"imageAspectRatioRange": [
0.4,
2.5
]
},
"capabilities": {
"text_to_output": false,
"image_to_output": true,
"reference_images": false,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "3d.meshy_v7",
"object": "model",
"capability": "model_3d_generation",
"name": "Meshy v7",
"description": "Convert one image (or 1–4 images of the same object from different angles) into a textured 3D model. Outputs GLB/FBX/OBJ/USDZ/BLEND/STL plus optional PBR maps, auto-rigging, and animation. Adds ultra_mode over v6 — higher-fidelity geometry with finer surface detail (single image only). Game-ready — GLB loads natively in three.js / model-viewer. Async — returns a queued run; poll genfire_get_run for the model URLs. Processing takes 5–10 minutes.",
"status": "available",
"is_default": true,
"limits": {
"max_images": 4,
"output_formats": [
"glb",
"fbx",
"obj",
"usdz",
"blend",
"stl"
],
"target_polycount": {
"min": 100,
"max": 300000,
"default": 30000
},
"topology": [
"quad",
"triangle"
],
"ultra_mode": "single image only"
},
"capabilities": {
"text_to_output": false,
"image_to_output": true,
"reference_images": true,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "3d.meshy_v6",
"object": "model",
"capability": "model_3d_generation",
"name": "Meshy v6",
"description": "Previous-generation Meshy. Same inputs and outputs as v7 minus ultra_mode — pin this only to reproduce earlier results. Converts one image (or 1–4 images of the same object from different angles) into a textured 3D model. Outputs GLB/FBX/OBJ/USDZ/BLEND/STL plus optional PBR maps, auto-rigging, and animation. Async — returns a queued run; poll genfire_get_run for the model URLs. Processing takes 5–10 minutes.",
"status": "available",
"is_default": false,
"limits": {
"max_images": 4,
"output_formats": [
"glb",
"fbx",
"obj",
"usdz",
"blend",
"stl"
],
"target_polycount": {
"min": 100,
"max": 300000,
"default": 30000
},
"topology": [
"quad",
"triangle"
]
},
"capabilities": {
"text_to_output": false,
"image_to_output": true,
"reference_images": true,
"source_video": false,
"motion_control": false,
"first_last_frame": false,
"end_frame": false,
"reference_media": false,
"camera_trajectory": false,
"video_styles": false,
"masked_inpaint": false,
"video_task": false,
"bitrate_mode": false,
"draft": false,
"keyframes": false,
"video_to_video_reference": false,
"draft_enhance": false
}
},
{
"id": "game.genfire_v1",
"object": "model",
"capability": "game_generation",
"name": "Genfire Games",
"description": "Describe a game and get a fully-playable browser game (self-contained HTML, Phaser/canvas/Three.js). The completed run carries a public play_url you can open or share. Iterate by passing game_id with a change prompt. Async — returns a queued run; the codegen runs on a worker (usually 1–3 min). Poll GET /runs/{id} until status is completed, then read output.play_url.",
"status": "available",
"is_default": true,
"limits": {
"output": "playable_html",
"shareable": true
}
},
{
"id": "app.genfire_v1",
"object": "model",
"capability": "app_generation",
"name": "Genfire App Builder",
"description": "Describe an app and get a working full-stack single-file web app (UI + in-browser data layer, hosted live). The completed run carries a public live_url you can open or share. Iterate by passing app_id with a change prompt. Async — returns a queued run; codegen runs on a worker (usually 1–3 min). Poll GET /runs/{id} until status is completed, then read output.live_url.",
"status": "available",
"is_default": true,
"limits": {
"output": "live_web_app",
"shareable": true
}
},
{
"id": "reel.faceless",
"object": "model",
"capability": "faceless_reel_generation",
"name": "Faceless Reel",
"description": "End-to-end vertical (9:16) short: LLM script → voiceover → style-locked images → music → captioned video. Driven by a niche preset + visual style; cost varies with duration and music — call POST /v1/faceless-reels/estimate-cost for a per-config estimate.",
"status": "available",
"is_default": true,
"limits": {
"aspect_ratios": [
"9:16"
],
"target_duration_sec": {
"min": 10,
"max": 120,
"default": null
},
"music_sources": [
"none",
"preset",
"ai",
"library"
],
"catalogs": [
"presets",
"styles",
"music-presets",
"caption-presets"
]
}
},
{
"id": "explainer.omni",
"object": "model",
"capability": "explainer_generation",
"name": "Explainer",
"description": "Long-form narrated explainer/documentary (20s–10min, 16:9 or 9:16): script → expressive voiceover → style-locked frames → Gemini Omni Flash video clips → composed film with optional captions. Pass `script` (structured beats) to author the entire creative contract with YOUR OWN model — narration, per-scene shot-specs, motion notes, render modes, reference routing, emphasis words and recurring cast — and Genfire only renders; or pass just `topic` and Genfire writes the script. Cost varies with duration — call POST /v1/explainers/estimate-cost first.",
"status": "available",
"is_default": true,
"limits": {
"aspect_ratios": [
"16:9",
"9:16"
],
"target_duration_sec": {
"min": 20,
"max": 600,
"default": 60
},
"music_sources": [
"none",
"preset",
"ai",
"library"
],
"script_beats": {
"min": 3,
"max": 100
},
"reference_images": {
"max": 8
},
"cast_members": {
"max": 3
},
"caption_modes": [
"full",
"keywords"
],
"caption_positions": [
"top",
"middle",
"bottom"
],
"catalogs": [
"styles"
]
}
},
{
"id": "music-video.omni",
"object": "model",
"capability": "music_video_generation",
"name": "Music Video",
"description": "Auto-produced AI music video (9:16 or 16:9) from a song: song → beat/section analysis → style-locked anchor frame → per-scene MiniMax H3 Max Turbo clips cut to the music, with performance shots lip-synced to the song itself (H3 Max Lip Sync, when the song has word timestamps) → composed video with optional karaoke lyric captions. Bring your own song via `song_url` (with optional lyrics/sections/word timestamps), or pass an inline `song` prompt and Genfire generates the track first (ElevenLabs Music v2.5, billed separately). Cost scales with song length and scene_density — call POST /v1/music-videos/estimate-cost first.",
"status": "available",
"is_default": true,
"limits": {
"aspect_ratios": [
"9:16",
"16:9"
],
"scene_densities": [
"low",
"medium",
"high"
],
"song_duration_sec": {
"min": 1,
"max": 300
},
"inline_song_duration_ms": {
"min": 10000,
"max": 600000
},
"reference_images": {
"max": 8
},
"catalogs": [
"styles"
]
}
},
{
"id": "picture-book.gpt-image-2",
"object": "model",
"capability": "picture_book_generation",
"name": "Picture Book",
"description": "A complete illustrated picture book from a story idea or script: the free planner writes/splits the text to the age band, then a style anchor, one reference sheet per cast member, every page and both covers render on GPT Image 2 (edit endpoint, anchor + sheets as references) so characters stay consistent. Text is typeset in post (default) or lettered by the model; print formats render at KDP trim + bleed and export as print-ready PDFs (interior, cover, ebook, images zip). Async: poll GET /v1/runs/:id (progress stages included), then read GET /v1/picture-books/:id. Call POST /v1/picture-books/estimate-cost first — cost scales with pages × quality.",
"status": "available",
"is_default": true,
"limits": {
"age_bands": [
"board",
"picture",
"early-reader"
],
"qualities": [
"low",
"medium"
],
"lettering_modes": [
"typeset",
"lettered"
],
"pages": {
"min": 4,
"max": 48
},
"cast": {
"max": 4
},
"export_kinds": [
"interior-pdf",
"cover-pdf",
"ebook-pdf",
"images-zip"
],
"catalogs": [
"styles",
"formats",
"age_bands"
]
}
}
]
}