Response · 200
{
"object": "generation_settings",
"active": "openrouter",
"providers": [
{
"id": "mock",
"label": "Mock (no model)",
"blurb": "Writes real jobs and variations without calling anything. The default, and useful for building a board out before spending money.",
"needs_key": false,
"key_set": true,
"key_hint": "",
"model": "mock",
"resolution": "720p",
"models": [
{
"id": "mock",
"label": "Mock"
}
],
"resolutions": [
{
"value": "720p",
"label": "720p"
}
],
"native_aspect_ratios": [
"9:16",
"4:5",
"1:1",
"16:9"
],
"duration_note": "Any duration.",
"billing_note": "Free — nothing is generated."
},
{
"id": "google-veo",
"label": "Google Veo",
"blurb": "The model behind Google Flow, called with your own Gemini API key. Generates its own audio, so voiceover scripts are worth sending.",
"needs_key": true,
"key_set": false,
"key_hint": "",
"model": "veo-3.1-generate-preview",
"resolution": "720p",
"models": [
{
"id": "veo-3.1-generate-preview",
"label": "Veo 3.1 — highest quality"
},
{
"id": "veo-3.1-fast",
"label": "Veo 3.1 Fast — quicker, cheaper"
},
{
"id": "veo-3.1-lite",
"label": "Veo 3.1 Lite — cheapest"
}
],
"resolutions": [
{
"value": "720p",
"label": "720p"
},
{
"value": "1080p",
"label": "1080p"
}
],
"native_aspect_ratios": [
"9:16",
"16:9"
],
"duration_note": "4, 6 or 8 second clips.",
"billing_note": "Billed per second to the key's Google Cloud project. A Google AI Pro or Ultra subscription covers the Gemini app and Flow, not the API — this is a separate charge, and Flow credits cannot be spent here."
},
{
"id": "fal-seedance",
"label": "Seedance (via fal)",
"blurb": "ByteDance Seedance on fal's queue API. Takes frames as URLs and covers more ratios and durations than Veo, so less of the board gets squared up.",
"needs_key": true,
"key_set": false,
"key_hint": "",
"model": "pro",
"resolution": "720p",
"models": [
{
"id": "pro",
"label": "Seedance 1 Pro — highest quality"
},
{
"id": "lite",
"label": "Seedance 1 Lite — quicker, cheaper"
}
],
"resolutions": [
{
"value": "480p",
"label": "480p"
},
{
"value": "720p",
"label": "720p"
},
{
"value": "1080p",
"label": "1080p"
}
],
"native_aspect_ratios": [
"9:16",
"1:1",
"16:9"
],
"duration_note": "Whole seconds, 2 to 12.",
"billing_note": "Metered pay-as-you-go on your fal account, billed per second of video. There is no subscription tier that covers it."
},
{
"id": "openrouter",
"label": "OpenRouter Video",
"blurb": "One OpenRouter key for its video catalogue. The picker starts with Seedance; agents may use any current /videos/models id, with capabilities discovered at run time.",
"needs_key": true,
"key_set": true,
"key_hint": "sk-or-…9f0e",
"model": "bytedance/seedance-2.0-fast",
"resolution": "720p",
"models": [
{
"id": "bytedance/seedance-2.0",
"label": "Seedance 2.0 — highest quality"
},
{
"id": "bytedance/seedance-2.0-fast",
"label": "Seedance 2.0 Fast — quicker, cheaper"
},
{
"id": "bytedance/seedance-2.0-mini",
"label": "Seedance 2.0 Mini — economical"
},
{
"id": "bytedance/seedance-2.5",
"label": "Seedance 2.5 — long-form"
},
{
"id": "bytedance/seedance-1-5-pro",
"label": "Seedance 1.5 Pro — audio-visual"
}
],
"resolutions": [
{
"value": "480p",
"label": "480p"
},
{
"value": "720p",
"label": "720p"
},
{
"value": "1080p",
"label": "1080p"
},
{
"value": "4K",
"label": "4K"
}
],
"native_aspect_ratios": [
"9:16",
"1:1",
"16:9"
],
"duration_note": "Discovered from the selected model at run time (Seedance presets span 4–30 seconds).",
"billing_note": "Metered against your OpenRouter credits. Price and supported inputs vary by model; Storyboard checks the live model catalogue before each run and reports every parameter substitution."
}
]
}