GET
/v1/schemas/fal/video/fal-ai/sora-2/text-to-video
Accept:
| field | recorded source |
|---|---|
| schema | Source linked above.Source trace0cf635294c6656bc20cd1e2b0008c9700f353671da68f4c4962660a88c9a8923{
"fetchedAt": 1783329138,
"extractorVersion": "1",
"verifiedAt": null
} |
Request body
8 properties · 1 required · 0 $defs| property | type | description | constraints |
|---|---|---|---|
| prompt* | string | The text prompt describing the video you want to generate | length ≥ 1 · length ≤ 5000 |
| character_ids | string[] | Up to two character IDs (from create-character) to use in the video. Refer to characters by name in the prompt. When set, only the OpenAI provider is used. | items ≤ 2 · nullable |
| model | enum | The model to use for the generation. When the default model is selected, the latest snapshot of the model will be used - otherwise, select a specific snapshot of the model. | sora-2 | sora-2-2025-12-08 | sora-2-2025-10-06 · default: "sora-2" |
| duration | enum | Duration of the generated video in seconds | 4 | 8 | 12 | 16 | 20 · default: 4 |
| resolution | const | The resolution of the generated video | "720p" · default: "720p" |
| delete_video | boolean | Whether to delete the video after generation for privacy reasons. If True, the video cannot be used for remixing and will be permanently deleted. | default: true |
| detect_and_block_ip | boolean | If enabled, the prompt (and image for image-to-video) will be checked for known intellectual property references and the request will be blocked if any are detected. | default: false |
| aspect_ratio | enum | The aspect ratio of the generated video | 9:16 | 16:9 · default: "16:9" |
Validate a payload
before you spend tokensshell
$ curl -X POST https://modelschemas.com/v1/validate \
-d '{"provider":"fal","endpointId":"fal-ai/sora-2/text-to-video","payload":{…}}'
→ {"valid": false, "errors": [{"path": "#", "keyword": "required", …}]}