GET

/v1/schemas/fal/video/fal-ai/sora-2/image-to-video

kind inputactivity videohash cde0fb64…extracted Jul 6, 2026version currentsource upstream spec ↗
fieldrecorded source
schemaSource linked above.
Source trace
95566be5c205faac1c7003c17bf7a9848f94a604624f8137b4a6b28c6f0355db
{
  "fetchedAt": 1783329138,
  "extractorVersion": "1",
  "verifiedAt": null
}

Request body

9 properties · 2 required · 0 $defs
propertytypedescriptionconstraints
image_url*stringThe URL of the image to use as the first frame
prompt*stringThe text prompt describing the video you want to generatelength ≥ 1 · length ≤ 5000
character_idsstring[]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
modelenumThe 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"
durationenumDuration of the generated video in seconds4 | 8 | 12 | 16 | 20 · default: 4
resolutionenumThe resolution of the generated videoauto | 720p · default: "auto"
delete_videobooleanWhether 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_ipbooleanIf 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_ratioenumThe aspect ratio of the generated videoauto | 9:16 | 16:9 · default: "auto"

Validate a payload

before you spend tokens
shell
$ 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", …}]}