GET
/v1/schemas/fal/video/fal-ai/sora-2/image-to-video
Accept:
| field | recorded source |
|---|---|
| schema | Source linked above.Source trace95566be5c205faac1c7003c17bf7a9848f94a604624f8137b4a6b28c6f0355db{
"fetchedAt": 1783329138,
"extractorVersion": "1",
"verifiedAt": null
} |
Request body
9 properties · 2 required · 0 $defs| property | type | description | constraints |
|---|---|---|---|
| image_url* | string | The URL of the image to use as the first frame | |
| 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 | enum | The resolution of the generated video | auto | 720p · default: "auto" |
| 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 | auto | 9:16 | 16:9 · default: "auto" |
Validate a payload
before you spend tokensshell
$ curl -X POST https://modelschemas.com/v1/validate \
-d '{"provider":"fal","endpointId":"fal-ai/sora-2/image-to-video","payload":{…}}'
→ {"valid": false, "errors": [{"path": "#", "keyword": "required", …}]}