{"models":[{"endpoint_id":"google/gemini-omni-flash/v1.2/extend","metadata":{"display_name":"Gemini Omni Flash 1.2 Extend Video","category":"video-to-video","description":"Gemini Omni Flash 1.2 is Google's multimodal video model. This endpoint continues an existing video from a text prompt, conditioning on its last 10 seconds and appending a new 3 to 10 second segment. Output resolution is selectable from 360p, 720p, 1080p, or 4K.","status":"active","tags":["extend","transform"],"updated_at":"2026-11-10T00:39:06.399Z","is_favorited":null,"thumbnail_url":"https://v3b.fal.media/files/b/0ab147ad/3B0cVqqGKQFPABIe-Qw_d.jpg","model_url":"https://fal.run/google/gemini-omni-flash/v1.2/extend","license_type":"commercial","date":"2026-11-05T18:37:23.852Z","group":{"key":"gemini-omni-12","label":"Extend Video"},"highlighted":false,"kind":"inference","pinned":false},"retires_at":null,"replacement":null,"openapi":{"openapi":"3.1.0","info":{"title":"Queue OpenAPI for google/gemini-omni-flash/v1.2/extend","version":"1.0.0","description":"The OpenAPI schema for the google/gemini-omni-flash/v1.2/extend queue.","x-fal-metadata":{"endpointId":"google/gemini-omni-flash/v1.2/extend","category":"video-to-video","thumbnailUrl":"https://v3b.fal.media/files/b/0ab147ad/3B0cVqqGKQFPABIe-Qw_d.jpg","playgroundUrl":"https://fal.ai/models/google/gemini-omni-flash/v1.2/extend","documentationUrl":"https://fal.ai/models/google/gemini-omni-flash/v1.2/extend/api","about":"Extend Video"}},"components":{"securitySchemes":{"apiKeyAuth":{"type":"apiKey","in":"header","name":"Authorization","description":"Fal Key"}},"schemas":{"QueueStatus":{"type":"object","properties":{"status":{"type":"string","enum":["IN_QUEUE","IN_PROGRESS","COMPLETED"]},"request_id":{"type":"string","description":"The request id."},"response_url":{"type":"string","description":"The response url."},"status_url":{"type":"string","description":"The status url."},"cancel_url":{"type":"string","description":"The cancel url."},"logs":{"type":"object","description":"The logs.","additionalProperties":true},"metrics":{"type":"object","description":"The metrics.","additionalProperties":true},"queue_position":{"type":"integer","description":"The queue position."}},"required":["status","request_id"]},"GeminiOmniFlashV12ExtendInput":{"required":["prompt","video_url"],"title":"Omni12FlashVideoExtendInput","properties":{"duration":{"title":"Duration","type":"integer","description":"The duration of the continuation, in seconds.","maximum":10,"minimum":3,"default":8},"video_url":{"title":"Video URL","type":"string","description":"URL of the video to extend. Any length is accepted; the model conditions on the last 10 seconds and appends the continuation.","examples":["https://storage.googleapis.com/falserverless/model_tests/video_models/mmaudio_input.mp4"]},"resolution":{"title":"Resolution","type":"string","description":"The resolution of the extended video.","enum":["360p","720p","1080p","4k"],"default":"720p"},"prompt":{"title":"Prompt","maxLength":20000,"type":"string","description":"The text prompt describing how the video should continue.","examples":["Continue the scene."]}},"type":"object","x-fal-order-properties":["prompt","video_url","resolution","duration"]},"GeminiOmniFlashV12ExtendOutput":{"properties":{"video":{"description":"The generated video.","$ref":"#/components/schemas/File"}},"title":"VideoOutput","x-fal-order-properties":["video"],"required":["video"],"type":"object"},"File":{"required":["url"],"x-fal-order-properties":["url","content_type","file_name","file_size"],"title":"File","properties":{"url":{"title":"Url","description":"The URL where the file can be downloaded from.","type":"string"},"file_name":{"examples":["z9RV14K95DvU.png"],"title":"File Name","description":"The name of the file. It will be auto-generated if not provided.","anyOf":[{"type":"string"},{"type":"null"}]},"file_size":{"examples":[4404019],"title":"File Size","description":"The size of the file in bytes.","anyOf":[{"type":"integer"},{"type":"null"}]},"content_type":{"examples":["image/png"],"title":"Content Type","description":"The mime type of the file.","anyOf":[{"type":"string"},{"type":"null"}]}},"type":"object"}}},"paths":{"/google/gemini-omni-flash/v1.2/extend/requests/{request_id}/status":{"get":{"parameters":[{"name":"request_id","in":"path","required":true,"schema":{"type":"string","description":"Request ID"}},{"name":"logs","in":"query","required":false,"schema":{"type":"number","description":"Whether to include logs (`1`) in the response or not (`0`)."}}],"responses":{"200":{"description":"The request status.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueueStatus"}}}}}}},"/google/gemini-omni-flash/v1.2/extend/requests/{request_id}/cancel":{"put":{"parameters":[{"name":"request_id","in":"path","required":true,"schema":{"type":"string","description":"Request ID"}}],"responses":{"200":{"description":"The request was cancelled.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was cancelled successfully."}}}}}}}}},"/google/gemini-omni-flash/v1.2/extend":{"post":{"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GeminiOmniFlashV12ExtendInput"}}}},"responses":{"200":{"description":"The request status.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueueStatus"}}}}}}},"/google/gemini-omni-flash/v1.2/extend/requests/{request_id}":{"get":{"parameters":[{"name":"request_id","in":"path","required":true,"schema":{"type":"string","description":"Request ID"}}],"responses":{"200":{"description":"Result of the request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GeminiOmniFlashV12ExtendOutput"}}}}}}}},"servers":[{"url":"https://queue.fal.run"}],"security":[{"apiKeyAuth":[]}]}},{"endpoint_id":"fal-ai/wan/v2.7/edit-video","metadata":{"display_name":"Wan","category":"video-to-video","description":"Wan 2.7 is the latest generation AI video model, delivering enhanced motion smoothness, superior scene fidelity, and greater visual coherence.","status":"active","tags":["stylized","transform","lipsync"],"updated_at":"2026-08-19T22:23:41.406Z","is_favorited":null,"thumbnail_url":"https://v3b.fal.media/files/b/0a94047a/Ji7eQ_y708vNP0EYe1FoP_076a3220a9c348c29eada5ca7d5946f1.jpg","model_url":"https://fal.run/fal-ai/wan/v2.7/edit-video","license_type":"commercial","date":"2026-03-28T20:00:01.187Z","group":{"key":"Wan27","label":"Edit Video"},"highlighted":false,"kind":"inference","pinned":false},"retires_at":null,"replacement":null,"openapi":{"openapi":"3.1.0","info":{"title":"Queue OpenAPI for fal-ai/wan/v2.7/edit-video","version":"1.0.0","description":"The OpenAPI schema for the fal-ai/wan/v2.7/edit-video queue.","x-fal-metadata":{"endpointId":"fal-ai/wan/v2.7/edit-video","category":"video-to-video","thumbnailUrl":"https://v3b.fal.media/files/b/0a94047a/Ji7eQ_y708vNP0EYe1FoP_076a3220a9c348c29eada5ca7d5946f1.jpg","playgroundUrl":"https://fal.ai/models/fal-ai/wan/v2.7/edit-video","documentationUrl":"https://fal.ai/models/fal-ai/wan/v2.7/edit-video/api","about":"Edit a video using WAN 2.7 Video Edit model.\n\nSupports:\n- Instruction-based editing (text prompt describes changes)\n- Reference image-based editing (prompt + reference image)\n- Video style transfer"}},"components":{"securitySchemes":{"apiKeyAuth":{"type":"apiKey","in":"header","name":"Authorization","description":"Fal Key"}},"schemas":{"QueueStatus":{"type":"object","properties":{"status":{"type":"string","enum":["IN_QUEUE","IN_PROGRESS","COMPLETED"]},"request_id":{"type":"string","description":"The request id."},"response_url":{"type":"string","description":"The response url."},"status_url":{"type":"string","description":"The status url."},"cancel_url":{"type":"string","description":"The cancel url."},"logs":{"type":"object","description":"The logs.","additionalProperties":true},"metrics":{"type":"object","description":"The metrics.","additionalProperties":true},"queue_position":{"type":"integer","description":"The queue position."}},"required":["status","request_id"]},"WanV27EditVideoInput":{"required":["prompt","video_url"],"type":"object","title":"Wan27VideoEditInput","description":"Input for Wan 2.7 video editing.\n\nSupports instruction-based editing, reference image-based editing,\nand video style transfer.","x-fal-order-properties":["prompt","video_url","reference_image_url","resolution","aspect_ratio","duration","audio_setting","seed","enable_safety_checker"],"properties":{"resolution":{"default":"1080p","title":"Resolution","description":"Output video resolution tier.","enum":["720p","1080p"],"type":"string"},"aspect_ratio":{"title":"Aspect Ratio","description":"Aspect ratio of the generated video. If not provided, uses the aspect ratio of the input video.","anyOf":[{"enum":["16:9","9:16","1:1","4:3","3:4"],"type":"string"},{"type":"null"}]},"duration":{"default":0,"title":"Duration","description":"Output video duration in seconds. Default 0 means match input video duration. When set (2-10), truncates from the start.","enum":[0,2,3,4,5,6,7,8,9,10],"type":"integer"},"prompt":{"type":"string","title":"Prompt","description":"Editing instruction or style transfer description.","examples":["Transform the entire scene into a beautiful watercolor painting style. Soft brushstrokes, flowing paint washes, visible paper texture. Colors should bleed and blend naturally like wet watercolor on paper."],"minLength":1},"seed":{"title":"Seed","description":"Random seed for reproducibility (0-2147483647).","anyOf":[{"type":"integer"},{"type":"null"}]},"reference_image_url":{"title":"Reference Image Url","description":"Reference image URL for reference-based editing.","anyOf":[{"ui":{"field":"image"},"type":"string"},{"type":"null"}]},"video_url":{"x-fal":{"timeout":30,"max_duration":10,"max_file_size":104857600,"min_duration":2},"title":"Video Url","description":"URL of the input video to edit. Format: MP4, MOV. Duration: 2-10s. Max 100 MB.\n\nMax file size: 100.0MB, Min duration: 2s, Max duration: 10s, Timeout: 30.0s","examples":["https://v3b.fal.media/files/b/0a940a70/s4jC3lmmbU8Q6xM-SFtWB_m5JJudvy.mp4"],"type":"string"},"audio_setting":{"default":"auto","title":"Audio Setting","description":"Audio handling. 'auto': model decides whether to regenerate audio. 'origin': preserve original audio from input video.","enum":["auto","origin"],"type":"string"},"enable_safety_checker":{"default":true,"title":"Enable Safety Checker","description":"Enable content moderation for input and output. Disabling it requires account authorization; unauthorized requests are always checked.","type":"boolean"}}},"WanV27EditVideoOutput":{"required":["video","seed"],"type":"object","title":"Wan27VideoEditOutput","description":"Output for Wan 2.7 video editing.","x-fal-order-properties":["video","seed","actual_prompt"],"properties":{"video":{"description":"The edited video file.","$ref":"#/components/schemas/VideoFile"},"actual_prompt":{"title":"Actual Prompt","description":"The actual prompt used if prompt rewriting was enabled.","anyOf":[{"type":"string"},{"type":"null"}]},"seed":{"title":"Seed","description":"The seed used for generation.","type":"integer"}}},"VideoFile":{"x-fal-order-properties":["url","content_type","file_name","file_size","width","height","fps","duration","num_frames"],"title":"VideoFile","properties":{"height":{"title":"Height","description":"The height of the video","anyOf":[{"type":"integer"},{"type":"null"}]},"fps":{"title":"Fps","description":"The FPS of the video","anyOf":[{"type":"number"},{"type":"null"}]},"duration":{"title":"Duration","description":"The duration of the video","anyOf":[{"type":"number"},{"type":"null"}]},"url":{"title":"Url","description":"The URL where the file can be downloaded from.","type":"string"},"width":{"title":"Width","description":"The width of the video","anyOf":[{"type":"integer"},{"type":"null"}]},"file_name":{"title":"File Name","examples":["z9RV14K95DvU.png"],"description":"The name of the file. It will be auto-generated if not provided.","anyOf":[{"type":"string"},{"type":"null"}]},"file_size":{"title":"File Size","examples":[4404019],"description":"The size of the file in bytes.","anyOf":[{"type":"integer"},{"type":"null"}]},"content_type":{"title":"Content Type","examples":["image/png"],"description":"The mime type of the file.","anyOf":[{"type":"string"},{"type":"null"}]},"num_frames":{"title":"Num Frames","description":"The number of frames in the video","anyOf":[{"type":"integer"},{"type":"null"}]}},"required":["url"],"type":"object"}}},"paths":{"/fal-ai/wan/v2.7/edit-video/requests/{request_id}/status":{"get":{"parameters":[{"name":"request_id","in":"path","required":true,"schema":{"type":"string","description":"Request ID"}},{"name":"logs","in":"query","required":false,"schema":{"type":"number","description":"Whether to include logs (`1`) in the response or not (`0`)."}}],"responses":{"200":{"description":"The request status.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueueStatus"}}}}}}},"/fal-ai/wan/v2.7/edit-video/requests/{request_id}/cancel":{"put":{"parameters":[{"name":"request_id","in":"path","required":true,"schema":{"type":"string","description":"Request ID"}}],"responses":{"200":{"description":"The request was cancelled.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was cancelled successfully."}}}}}}}}},"/fal-ai/wan/v2.7/edit-video":{"post":{"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WanV27EditVideoInput"}}}},"responses":{"200":{"description":"The request status.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueueStatus"}}}}}}},"/fal-ai/wan/v2.7/edit-video/requests/{request_id}":{"get":{"parameters":[{"name":"request_id","in":"path","required":true,"schema":{"type":"string","description":"Request ID"}}],"responses":{"200":{"description":"Result of the request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WanV27EditVideoOutput"}}}}}}}},"servers":[{"url":"https://queue.fal.run"}],"security":[{"apiKeyAuth":[]}]}},{"endpoint_id":"fal-ai/kling-video/o3/pro/video-to-video/reference","metadata":{"display_name":"Kling O3 Reference Video to Video [Pro]","category":"video-to-video","description":"Kling O3 Omni generates new shots guided by an input reference video, preserving cinematic language such as motion, and camera style to produce seamless scene continuity.","status":"active","tags":["video-to-video"],"updated_at":"2026-10-20T22:32:18.035Z","is_favorited":null,"thumbnail_url":"https://v3b.fal.media/files/b/0a8cfcc6/nZEmuKTIwd_QfJiUrK_Sj_54b1357c30cf425ba1811908f7085dfc.jpg","model_url":"https://fal.run/fal-ai/kling-video/o3/pro/video-to-video/reference","license_type":"commercial","date":"2026-02-04T15:48:44.935Z","group":{"key":"kling-o3","label":"Reference V2V (pro)"},"highlighted":false,"kind":"inference","pinned":false},"retires_at":null,"replacement":null,"openapi":{"openapi":"3.1.0","info":{"title":"Queue OpenAPI for fal-ai/kling-video/o3/pro/video-to-video/reference","version":"1.0.0","description":"The OpenAPI schema for the fal-ai/kling-video/o3/pro/video-to-video/reference queue.","x-fal-metadata":{"endpointId":"fal-ai/kling-video/o3/pro/video-to-video/reference","category":"video-to-video","thumbnailUrl":"https://v3b.fal.media/files/b/0a8cfcc6/nZEmuKTIwd_QfJiUrK_Sj_54b1357c30cf425ba1811908f7085dfc.jpg","playgroundUrl":"https://fal.ai/models/fal-ai/kling-video/o3/pro/video-to-video/reference","documentationUrl":"https://fal.ai/models/fal-ai/kling-video/o3/pro/video-to-video/reference/api","about":"O3 Pro Video To Video"}},"components":{"securitySchemes":{"apiKeyAuth":{"type":"apiKey","in":"header","name":"Authorization","description":"Fal Key"}},"schemas":{"QueueStatus":{"type":"object","properties":{"status":{"type":"string","enum":["IN_QUEUE","IN_PROGRESS","COMPLETED"]},"request_id":{"type":"string","description":"The request id."},"response_url":{"type":"string","description":"The response url."},"status_url":{"type":"string","description":"The status url."},"cancel_url":{"type":"string","description":"The cancel url."},"logs":{"type":"object","description":"The logs.","additionalProperties":true},"metrics":{"type":"object","description":"The metrics.","additionalProperties":true},"queue_position":{"type":"integer","description":"The queue position."}},"required":["status","request_id"]},"KlingVideoO3ProVideoToVideoReferenceInput":{"properties":{"image_urls":{"description":"Reference images for style/appearance. Reference in prompt as @Image1, @Image2, etc. Maximum 4 total (elements + reference images) when using video.","title":"Image Urls","examples":[["https://storage.googleapis.com/falserverless/example_inputs/kling-o3/pro-v2v-reference/image_url1.jpg","https://storage.googleapis.com/falserverless/example_inputs/kling-o3/pro-v2v-reference/image_url2.jpg"]],"anyOf":[{"type":"array","items":{"_fal_ui_field":"image","type":"string","limit_description":"Max file size: 50.0MB, Min width: 300px, Min height: 300px, Min aspect ratio: 0.40, Max aspect ratio: 2.50, Timeout: 20.0s","x-fal":{"max_file_size":52428800,"min_aspect_ratio":0.4,"min_height":300,"timeout":20,"min_width":300,"max_aspect_ratio":2.5},"ui":{"field":"image"}}},{"type":"null"}]},"aspect_ratio":{"enum":["auto","16:9","9:16","1:1"],"description":"Aspect ratio.","title":"Aspect Ratio","type":"string","default":"auto","examples":["auto"]},"elements":{"description":"Elements (characters/objects) to include. Reference in prompt as @Element1, @Element2.","title":"Elements","examples":[[{"frontal_image_url":"https://storage.googleapis.com/falserverless/example_inputs/kling-o3/pro-v2v-reference/element1_front.png","reference_image_urls":["https://storage.googleapis.com/falserverless/example_inputs/kling-o3/pro-v2v-reference/element1_reference1.png"]}]],"anyOf":[{"type":"array","items":{"$ref":"#/components/schemas/KlingV3ImageElementInput"}},{"type":"null"}]},"enable_safety_checker":{"description":"Disabling safety checks requires account authorization; unauthorized requests are always checked.","title":"Enable Safety Checker","type":"boolean","default":true},"duration":{"description":"Video duration in seconds (3-15s for reference video).","title":"Duration","examples":["5"],"anyOf":[{"enum":["3","4","5","6","7","8","9","10","11","12","13","14","15"],"type":"string"},{"type":"null"}]},"prompt":{"maxLength":2500,"description":"Text prompt for video generation. Reference video as @Video1.","title":"Prompt","examples":["Integrate @Element1 in the scene. Style video should be following watercolor style of @Image1"],"type":"string"},"video_url":{"description":"Reference video URL. Only .mp4/.mov formats, 3-15s duration, 720-3840px resolution, max 200MB.","title":"Video Url","limit_description":"Max file size: 200.0MB, Min width: 720px, Min height: 720px, Max width: 3840px, Max height: 3840px, Min duration: 3.0s, Max duration: 15.05s, Min FPS: 23.0, Max FPS: 60.0, Timeout: 30.0s","examples":["https://storage.googleapis.com/falserverless/example_inputs/kling-o3/pro-v2v-reference/video_reference.mp4"],"type":"string","_fal_ui_field":"video","x-fal":{"max_height":3840,"min_width":720,"min_fps":23,"timeout":30,"max_fps":60,"max_width":3840,"max_file_size":209715200,"max_duration":15.05,"min_height":720,"min_duration":3}},"shot_type":{"description":"The type of multi-shot video generation.","const":"customize","title":"Shot Type","default":"customize","type":"string"},"keep_audio":{"description":"Whether to keep the original audio from the reference video. ","title":"Keep Audio","examples":[false],"default":true,"type":"boolean"}},"required":["prompt","video_url"],"title":"O3ProReferenceVideoV2VInput","x-fal-order-properties":["enable_safety_checker","prompt","video_url","image_urls","keep_audio","elements","shot_type","aspect_ratio","duration"],"type":"object"},"KlingVideoO3ProVideoToVideoReferenceOutput":{"properties":{"video":{"description":"The generated video.","examples":[{"file_size":15809901,"file_name":"output.mp4","content_type":"video/mp4","url":"https://storage.googleapis.com/falserverless/example_outputs/kling-o3/pro-v2v-reference/output.mp4"}],"$ref":"#/components/schemas/File"}},"required":["video"],"title":"O3ProReferenceV2VOutput","x-fal-order-properties":["video"],"type":"object"},"KlingV3ImageElementInput":{"properties":{"frontal_image_url":{"description":"The frontal image of the element (main view).","title":"Frontal Image Url","anyOf":[{"x-fal":{"max_file_size":52428800,"min_aspect_ratio":0.4,"min_height":300,"timeout":20,"min_width":300,"max_aspect_ratio":2.5},"limit_description":"Max file size: 50.0MB, Min width: 300px, Min height: 300px, Min aspect ratio: 0.40, Max aspect ratio: 2.50, Timeout: 20.0s","type":"string","ui":{"field":"image"}},{"type":"null"}]},"reference_image_urls":{"description":"Additional reference images from different angles. 1-3 images supported. At least one image is required.","title":"Reference Image Urls","anyOf":[{"type":"array","items":{"_fal_ui_field":"image","type":"string","limit_description":"Max file size: 50.0MB, Min width: 300px, Min height: 300px, Min aspect ratio: 0.40, Max aspect ratio: 2.50, Timeout: 20.0s","x-fal":{"max_file_size":52428800,"min_aspect_ratio":0.4,"min_height":300,"timeout":20,"min_width":300,"max_aspect_ratio":2.5},"ui":{"field":"image"}}},{"type":"null"}]}},"title":"KlingV3ImageElementInput","type":"object","x-fal-order-properties":["frontal_image_url","reference_image_urls"]},"File":{"properties":{"file_size":{"description":"The size of the file in bytes.","title":"File Size","examples":[4404019],"anyOf":[{"type":"integer"},{"type":"null"}]},"file_name":{"description":"The name of the file. It will be auto-generated if not provided.","title":"File Name","examples":["z9RV14K95DvU.png"],"anyOf":[{"type":"string"},{"type":"null"}]},"content_type":{"description":"The mime type of the file.","title":"Content Type","examples":["image/png"],"anyOf":[{"type":"string"},{"type":"null"}]},"url":{"description":"The URL where the file can be downloaded from.","title":"Url","type":"string"}},"required":["url"],"title":"File","x-fal-order-properties":["url","content_type","file_name","file_size"],"type":"object"}}},"paths":{"/fal-ai/kling-video/o3/pro/video-to-video/reference/requests/{request_id}/status":{"get":{"parameters":[{"name":"request_id","in":"path","required":true,"schema":{"type":"string","description":"Request ID"}},{"name":"logs","in":"query","required":false,"schema":{"type":"number","description":"Whether to include logs (`1`) in the response or not (`0`)."}}],"responses":{"200":{"description":"The request status.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueueStatus"}}}}}}},"/fal-ai/kling-video/o3/pro/video-to-video/reference/requests/{request_id}/cancel":{"put":{"parameters":[{"name":"request_id","in":"path","required":true,"schema":{"type":"string","description":"Request ID"}}],"responses":{"200":{"description":"The request was cancelled.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was cancelled successfully."}}}}}}}}},"/fal-ai/kling-video/o3/pro/video-to-video/reference":{"post":{"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/KlingVideoO3ProVideoToVideoReferenceInput"}}}},"responses":{"200":{"description":"The request status.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueueStatus"}}}}}}},"/fal-ai/kling-video/o3/pro/video-to-video/reference/requests/{request_id}":{"get":{"parameters":[{"name":"request_id","in":"path","required":true,"schema":{"type":"string","description":"Request ID"}}],"responses":{"200":{"description":"Result of the request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/KlingVideoO3ProVideoToVideoReferenceOutput"}}}}}}}},"servers":[{"url":"https://queue.fal.run"}],"security":[{"apiKeyAuth":[]}]}},{"endpoint_id":"kling/v4/flash/reference-to-video","metadata":{"display_name":"Kling 4.0 Flash Reference to Video","category":"video-to-video","description":"Kling 4.0 Flash generates 720p videos from text prompts and image or video references, with durations from 3 to 20 seconds.","status":"active","tags":["kling","v4","flash","reference-to-video","audio"],"updated_at":"2026-11-04T19:25:53.092Z","is_favorited":null,"thumbnail_url":"https://v3b.fal.media/files/b/0aac4418/wEurA8fFrSmy6rP6jqYpn.jpg","model_url":"https://fal.run/kling/v4/flash/reference-to-video","license_type":"commercial","date":"2026-09-28T17:51:07.628Z","group":{"key":"kling-v4-flash","label":"Reference to Video"},"highlighted":false,"kind":"inference","pinned":false},"retires_at":null,"replacement":null,"openapi":{"openapi":"3.1.0","info":{"title":"Queue OpenAPI for kling/v4/flash/reference-to-video","version":"1.0.0","description":"The OpenAPI schema for the kling/v4/flash/reference-to-video queue.","x-fal-metadata":{"endpointId":"kling/v4/flash/reference-to-video","category":"video-to-video","thumbnailUrl":"https://v3b.fal.media/files/b/0aac4418/wEurA8fFrSmy6rP6jqYpn.jpg","playgroundUrl":"https://fal.ai/models/kling/v4/flash/reference-to-video","documentationUrl":"https://fal.ai/models/kling/v4/flash/reference-to-video/api","about":"Generate videos with Kling 4.0 Flash Reference to Video"}},"components":{"securitySchemes":{"apiKeyAuth":{"type":"apiKey","in":"header","name":"Authorization","description":"Fal Key"}},"schemas":{"QueueStatus":{"type":"object","properties":{"status":{"type":"string","enum":["IN_QUEUE","IN_PROGRESS","COMPLETED"]},"request_id":{"type":"string","description":"The request id."},"response_url":{"type":"string","description":"The response url."},"status_url":{"type":"string","description":"The status url."},"cancel_url":{"type":"string","description":"The cancel url."},"logs":{"type":"object","description":"The logs.","additionalProperties":true},"metrics":{"type":"object","description":"The metrics.","additionalProperties":true},"queue_position":{"type":"integer","description":"The queue position."}},"required":["status","request_id"]},"V4FlashReferenceToVideoInput":{"properties":{"image_urls":{"description":"Reference images, referenced as @Image1, @Image2, ... (max 10).","title":"Image Urls","examples":[["https://v3b.fal.media/files/b/0aad8e7f/Rqg-pv2QnjyCj_qyhkb1L_image_1.png","https://v3b.fal.media/files/b/0aad8e7f/tZbpEZhQSFIdaP-4bA7mZ_image_2.png","https://v3b.fal.media/files/b/0aad90a6/fUtkQcN-M0lfbW0d64cgI_image_3.png","https://v3b.fal.media/files/b/0aad8e7f/-qNeGnjPP6Xv0L811MyJg_image_4.png"]],"anyOf":[{"maxItems":10,"type":"array","items":{"_fal_ui_field":"image","type":"string","limit_description":"Max file size: 30.0MB, Min width: 300px, Min height: 300px, Min aspect ratio: 0.40, Max aspect ratio: 2.50, Timeout: 20.0s","x-fal":{"max_file_size":31457280,"min_aspect_ratio":0.4,"min_height":300,"timeout":20,"min_width":300,"max_aspect_ratio":2.5},"ui":{"field":"image"}}},{"type":"null"}]},"resolution":{"enum":["720p"],"description":"Output resolution. Flash is 720p only.","title":"Resolution","type":"string","default":"720p"},"aspect_ratio":{"enum":["auto","16:9","9:16","1:1","21:9"],"description":"Aspect ratio of the generated video. 'auto' adapts it to the references.","title":"Aspect Ratio","type":"string","default":"16:9"},"elements":{"description":"Characters/objects, referenced as @Element1, @Element2, ... (max 7). Up to 3 may be video elements. Flash does not accept voices.","title":"Elements","examples":[null],"anyOf":[{"maxItems":7,"type":"array","items":{"$ref":"#/components/schemas/KlingV4FlashElement"}},{"type":"null"}]},"duration":{"description":"Video duration in seconds (3-20).","type":"integer","title":"Duration","default":5,"examples":[10],"minimum":3,"maximum":20},"prompt":{"maxLength":26000,"description":"Text prompt. Reference inputs as @Image1, @Video1, @Element1, etc.","title":"Prompt","examples":["10-second macro product film for the fictional watchmaker AUREL, 16:9, black-velvet studio, one raking strip light. Four shots, hard cuts, slow and precise.\nREFERENCES: @Image1 locks the dial (grand-feu white enamel, slim blued leaf hands, polished baton indices, small seconds at six, 'AUREL' under twelve). @Image2 locks the movement seen through the caseback. @Image3 locks the case flank, brushed and polished bevels and the fluted crown. @Image4 is the end card - reproduce it exactly.\n0-3 s: @Image1. A motion-control slider glides slowly left to right across the dial at macro distance; the strip-light reflection travels across the domed sapphire; the blued small-seconds hand steps in fine six-beats-per-second increments.\n3-6 s: @Image2. Slow push-in on the movement; the balance wheel oscillates steadily (about three swings per second), the hairspring breathing; light rakes across the Geneva stripes and blued screws.\n6-8 s: @Image3. Locked-off extreme macro; the thin strip rim light travels slowly along the mirror-polished bevel and over the fluted crown, one bright glint running edge to edge across the dry steel.\n8-10 s: hard cut as the glint leaves the crown to the end card of @Image4, held perfectly still; 'AUREL' and 'CALIBRE 7' pixel-identical.\nAUDIO: close-mic mechanical ticking at six beats per second, crisp and dominant; a low warm analogue drone under it; a faint high metallic shimmer as the glint crosses the crown at about 7.8 s; one soft low piano note at 8 s that rings under the end card. No voice-over, no music beyond that note.\nLOCKS: same case, dial, hands and indices across shots; no numerals appearing on the dial; no text except the dial print and the end card.\nAVOID: any water, droplets, condensation or liquid anywhere, dial text drift or extra words, warped hands, hands moving at the wrong speed, a ticking quartz-style seconds jump on a sweep dial, lens flares, CG plastic look, fast cutting."],"type":"string"},"video_urls":{"description":"Reference videos (3-20s each, 20s combined with element videos), referenced as @Video1, @Video2, ... (max 5).","title":"Video Urls","examples":[null],"anyOf":[{"maxItems":5,"type":"array","items":{"_fal_ui_field":"video","type":"string","limit_description":"Max file size: 300.0MB, Min width: 700px, Min height: 700px, Max width: 4553px, Max height: 4553px, Min aspect ratio: 0.40, Max aspect ratio: 2.50, Min duration: 3.0s, Max duration: 20.05s, Min FPS: 23.9, Max FPS: 60.05, Timeout: 30.0s","x-fal":{"max_height":4553,"min_width":700,"min_aspect_ratio":0.4,"min_fps":23.9,"timeout":30,"max_fps":60.05,"max_aspect_ratio":2.5,"max_width":4553,"max_file_size":314572800,"max_duration":20.05,"min_height":700,"min_duration":3},"ui":{"field":"video"}}},{"type":"null"}]},"start_image_url":{"description":"Optional image to use as the first frame. Counts toward the image reference limit.","title":"Start Image Url","anyOf":[{"x-fal":{"max_file_size":31457280,"min_aspect_ratio":0.4,"min_height":300,"timeout":20,"min_width":300,"max_aspect_ratio":2.5},"limit_description":"Max file size: 30.0MB, Min width: 300px, Min height: 300px, Min aspect ratio: 0.40, Max aspect ratio: 2.50, Timeout: 20.0s","type":"string","ui":{"field":"image"}},{"type":"null"}]}},"required":["prompt"],"title":"FlashReferenceToVideoInput","x-fal-order-properties":["prompt","duration","start_image_url","image_urls","video_urls","elements","resolution","aspect_ratio"],"type":"object"},"V4FlashReferenceToVideoOutput":{"properties":{"video":{"description":"The generated video.","examples":[{"file_size":12186191,"file_name":"output.mp4","content_type":"video/mp4","url":"https://v3b.fal.media/files/b/0ab11f9f/7HQolYvL9QnowfKbZGQav_r2v.mp4"}],"$ref":"#/components/schemas/File"}},"required":["video"],"title":"FlashReferenceToVideoOutput","x-fal-order-properties":["video"],"type":"object"},"KlingV4FlashElement":{"properties":{"video_url":{"description":"A video of the element, used instead of images (3-8s).","title":"Video Url","anyOf":[{"x-fal":{"max_height":4553,"min_width":700,"min_aspect_ratio":0.4,"min_fps":23.9,"timeout":30,"max_fps":60.05,"max_aspect_ratio":2.5,"max_width":4553,"max_file_size":314572800,"max_duration":8.05,"min_height":700,"min_duration":3},"limit_description":"Max file size: 300.0MB, Min width: 700px, Min height: 700px, Max width: 4553px, Max height: 4553px, Min aspect ratio: 0.40, Max aspect ratio: 2.50, Min duration: 3.0s, Max duration: 8.05s, Min FPS: 23.9, Max FPS: 60.05, Timeout: 30.0s","type":"string","ui":{"field":"video"}},{"type":"null"}]},"frontal_image_url":{"description":"The frontal image of the element (main view).","title":"Frontal Image Url","anyOf":[{"x-fal":{"max_file_size":31457280,"min_aspect_ratio":0.4,"min_height":300,"timeout":20,"min_width":300,"max_aspect_ratio":2.5},"limit_description":"Max file size: 30.0MB, Min width: 300px, Min height: 300px, Min aspect ratio: 0.40, Max aspect ratio: 2.50, Timeout: 20.0s","type":"string","ui":{"field":"image"}},{"type":"null"}]},"reference_image_urls":{"description":"Additional views of the element from different angles (1-3).","title":"Reference Image Urls","anyOf":[{"maxItems":3,"type":"array","items":{"_fal_ui_field":"image","type":"string","limit_description":"Max file size: 30.0MB, Min width: 300px, Min height: 300px, Min aspect ratio: 0.40, Max aspect ratio: 2.50, Timeout: 20.0s","x-fal":{"max_file_size":31457280,"min_aspect_ratio":0.4,"min_height":300,"timeout":20,"min_width":300,"max_aspect_ratio":2.5},"ui":{"field":"image"}}},{"type":"null"}]}},"description":"A Kling 4.0 element without a bound voice; Flash takes no voices.","title":"KlingV4FlashElement","type":"object","x-fal-order-properties":["frontal_image_url","reference_image_urls","video_url"]},"File":{"properties":{"file_size":{"description":"The size of the file in bytes.","title":"File Size","examples":[4404019],"anyOf":[{"type":"integer"},{"type":"null"}]},"file_name":{"description":"The name of the file. It will be auto-generated if not provided.","title":"File Name","examples":["z9RV14K95DvU.png"],"anyOf":[{"type":"string"},{"type":"null"}]},"content_type":{"description":"The mime type of the file.","title":"Content Type","examples":["image/png"],"anyOf":[{"type":"string"},{"type":"null"}]},"url":{"description":"The URL where the file can be downloaded from.","title":"Url","type":"string"}},"required":["url"],"title":"File","x-fal-order-properties":["url","content_type","file_name","file_size"],"type":"object"}}},"paths":{"/kling/v4/flash/reference-to-video/requests/{request_id}/status":{"get":{"parameters":[{"name":"request_id","in":"path","required":true,"schema":{"type":"string","description":"Request ID"}},{"name":"logs","in":"query","required":false,"schema":{"type":"number","description":"Whether to include logs (`1`) in the response or not (`0`)."}}],"responses":{"200":{"description":"The request status.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueueStatus"}}}}}}},"/kling/v4/flash/reference-to-video/requests/{request_id}/cancel":{"put":{"parameters":[{"name":"request_id","in":"path","required":true,"schema":{"type":"string","description":"Request ID"}}],"responses":{"200":{"description":"The request was cancelled.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was cancelled successfully."}}}}}}}}},"/kling/v4/flash/reference-to-video":{"post":{"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/V4FlashReferenceToVideoInput"}}}},"responses":{"200":{"description":"The request status.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueueStatus"}}}}}}},"/kling/v4/flash/reference-to-video/requests/{request_id}":{"get":{"parameters":[{"name":"request_id","in":"path","required":true,"schema":{"type":"string","description":"Request ID"}}],"responses":{"200":{"description":"Result of the request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/V4FlashReferenceToVideoOutput"}}}}}}}},"servers":[{"url":"https://queue.fal.run"}],"security":[{"apiKeyAuth":[]}]}},{"endpoint_id":"fal-ai/workflow-utilities/auto-subtitle","metadata":{"display_name":"Workflow Utilities Auto Subtitle","category":"video-to-video","description":"Add automatic subtitles to videos","status":"active","tags":["auto-subtitle","captioning"],"updated_at":"2026-04-21T17:56:35.787Z","is_favorited":null,"thumbnail_url":"https://v3b.fal.media/files/b/zebra/-R1ZjOAerDNnOUrhWNeUv_22f1d53a808040bd99ec01459e4f9547.jpg","model_url":"https://fal.run/fal-ai/workflow-utilities/auto-subtitle","license_type":"commercial","date":"2025-11-04T14:48:45.210Z","highlighted":false,"kind":"inference","pinned":false},"retires_at":null,"replacement":null,"openapi":{"openapi":"3.1.0","info":{"title":"Queue OpenAPI for fal-ai/workflow-utilities/auto-subtitle","version":"1.0.0","description":"The OpenAPI schema for the fal-ai/workflow-utilities/auto-subtitle queue.","x-fal-metadata":{"endpointId":"fal-ai/workflow-utilities/auto-subtitle","category":"video-to-video","thumbnailUrl":"https://v3b.fal.media/files/b/zebra/-R1ZjOAerDNnOUrhWNeUv_22f1d53a808040bd99ec01459e4f9547.jpg","playgroundUrl":"https://fal.ai/models/fal-ai/workflow-utilities/auto-subtitle","documentationUrl":"https://fal.ai/models/fal-ai/workflow-utilities/auto-subtitle/api","about":"Automatically generate and add subtitles to video.\n\nUses speech-to-text to transcribe audio and adds karaoke-style subtitles with word-level\nhighlighting. Supports multiple languages, Google Fonts, and customizable styling including\nanimation effects. This endpoint:\n1. Validates video file (checks if it's a valid video, has audio, and is not corrupted)\n2. Extracts audio from video\n3. Transcribes audio with word-level timing\n4. Groups words into readable subtitle segments\n5. Adds styled subtitles to video with customizable font and colors"}},"components":{"securitySchemes":{"apiKeyAuth":{"type":"apiKey","in":"header","name":"Authorization","description":"Fal Key"}},"schemas":{"QueueStatus":{"type":"object","properties":{"status":{"type":"string","enum":["IN_QUEUE","IN_PROGRESS","COMPLETED"]},"request_id":{"type":"string","description":"The request id."},"response_url":{"type":"string","description":"The response url."},"status_url":{"type":"string","description":"The status url."},"cancel_url":{"type":"string","description":"The cancel url."},"logs":{"type":"object","description":"The logs.","additionalProperties":true},"metrics":{"type":"object","description":"The metrics.","additionalProperties":true},"queue_position":{"type":"integer","description":"The queue position."}},"required":["status","request_id"]},"WorkflowUtilitiesAutoSubtitleInput":{"type":"object","required":["video_url"],"x-fal-order-properties":["video_url","language","font_name","font_size","font_weight","font_color","highlight_color","stroke_width","stroke_color","background_color","background_opacity","position","y_offset","words_per_subtitle","enable_animation"],"description":"Input model for automatic subtitle generation and styling","title":"AutoSubtitleInput","properties":{"words_per_subtitle":{"minimum":1,"examples":[1,3,6,12],"type":"integer","default":3,"description":"Maximum number of words per subtitle segment. Use 1 for single-word display, 2-3 for short phrases, or 8-12 for full sentences.","title":"Words Per Subtitle","maximum":12},"font_color":{"type":"string","enum":["white","black","red","green","blue","yellow","orange","purple","pink","brown","gray","cyan","magenta"],"description":"Subtitle text color for non-active words","title":"Font Color","default":"white"},"position":{"type":"string","enum":["top","center","bottom"],"description":"Vertical position of subtitles","title":"Position","default":"bottom"},"background_opacity":{"maximum":1,"type":"number","default":0,"description":"Background opacity (0.0 = fully transparent, 1.0 = fully opaque)","title":"Background Opacity","minimum":0},"video_url":{"examples":["https://v3b.fal.media/files/b/kangaroo/oUCiZjQwEy6bIQdPUSLDF_output.mp4"],"type":"string","description":"URL of the video file to add automatic subtitles to","title":"Video Url","max_file_size":100000000},"font_weight":{"type":"string","enum":["normal","bold","black"],"description":"Font weight (TikTok style typically uses bold or black)","title":"Font Weight","default":"bold"},"enable_animation":{"type":"boolean","default":true,"description":"Enable animation effects for subtitles (bounce style entrance)","title":"Enable Animation"},"font_size":{"maximum":150,"type":"integer","default":100,"description":"Font size for subtitles (TikTok style uses larger text)","title":"Font Size","minimum":20},"language":{"examples":["en","es","fr","de","it","eng","spa","fra"],"type":"string","default":"en","description":"Language code for transcription (e.g., 'en', 'es', 'fr', 'de', 'it', 'pt', 'nl', 'ja', 'zh', 'ko') or 3-letter ISO code (e.g., 'eng', 'spa', 'fra')","title":"Language"},"y_offset":{"maximum":200,"type":"integer","default":75,"description":"Vertical offset in pixels (positive = move down, negative = move up)","title":"Y Offset","minimum":-200},"highlight_color":{"type":"string","enum":["white","black","red","green","blue","yellow","orange","purple","pink","brown","gray","cyan","magenta"],"description":"Color for the currently speaking word (karaoke-style highlight)","title":"Highlight Color","default":"purple"},"stroke_width":{"maximum":10,"type":"integer","default":3,"description":"Text stroke/outline width in pixels (0 for no stroke)","title":"Stroke Width","minimum":0},"stroke_color":{"type":"string","enum":["black","white","red","green","blue","yellow","orange","purple","pink","brown","gray","cyan","magenta"],"description":"Text stroke/outline color","title":"Stroke Color","default":"black"},"font_name":{"examples":["Montserrat","Poppins","Bebas Neue","Oswald","Inter","Roboto","BBH Sans Hegarty"],"type":"string","default":"Montserrat","description":"Any Google Font name from fonts.google.com (e.g., 'Montserrat', 'Poppins', 'BBH Sans Hegarty')","title":"Font Name"},"background_color":{"type":"string","enum":["black","white","red","green","blue","yellow","orange","purple","pink","brown","gray","cyan","magenta","none","transparent"],"description":"Background color behind text ('none' or 'transparent' for no background)","title":"Background Color","default":"none"}}},"WorkflowUtilitiesAutoSubtitleOutput":{"type":"object","required":["video","transcription","subtitle_count"],"x-fal-order-properties":["video","transcription","subtitle_count","words","transcription_metadata"],"description":"Output model for video with automatic subtitles","title":"AutoSubtitleOutput","properties":{"transcription_metadata":{"anyOf":[{"type":"object"},{"type":"null"}],"description":"Additional transcription metadata from ElevenLabs (language, segments, etc.)","title":"Transcription Metadata"},"subtitle_count":{"type":"integer","description":"Number of subtitle segments generated","title":"Subtitle Count"},"video":{"examples":[{"file_name":"output.mp4","file_size":16789234,"url":"https://v3b.fal.media/files/b/monkey/HPBSoe-QsAxSIkDh7Zn76_output.mp4","content_type":"video/mp4"}],"description":"The video with automatic subtitles","$ref":"#/components/schemas/File"},"transcription":{"type":"string","description":"Full transcription text","title":"Transcription"},"words":{"anyOf":[{"type":"array","items":{"type":"object"}},{"type":"null"}],"description":"Word-level timing information from transcription service","title":"Words"}}},"File":{"required":["url"],"x-fal-order-properties":["url","content_type","file_name","file_size"],"title":"File","type":"object","properties":{"file_name":{"anyOf":[{"type":"string"},{"type":"null"}],"examples":["z9RV14K95DvU.png"],"description":"The name of the file. It will be auto-generated if not provided.","title":"File Name"},"file_size":{"anyOf":[{"type":"integer"},{"type":"null"}],"examples":[4404019],"description":"The size of the file in bytes.","title":"File Size"},"url":{"type":"string","description":"The URL where the file can be downloaded from.","title":"Url"},"content_type":{"anyOf":[{"type":"string"},{"type":"null"}],"examples":["image/png"],"description":"The mime type of the file.","title":"Content Type"}}}}},"paths":{"/fal-ai/workflow-utilities/auto-subtitle/requests/{request_id}/status":{"get":{"parameters":[{"name":"request_id","in":"path","required":true,"schema":{"type":"string","description":"Request ID"}},{"name":"logs","in":"query","required":false,"schema":{"type":"number","description":"Whether to include logs (`1`) in the response or not (`0`)."}}],"responses":{"200":{"description":"The request status.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueueStatus"}}}}}}},"/fal-ai/workflow-utilities/auto-subtitle/requests/{request_id}/cancel":{"put":{"parameters":[{"name":"request_id","in":"path","required":true,"schema":{"type":"string","description":"Request ID"}}],"responses":{"200":{"description":"The request was cancelled.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was cancelled successfully."}}}}}}}}},"/fal-ai/workflow-utilities/auto-subtitle":{"post":{"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowUtilitiesAutoSubtitleInput"}}}},"responses":{"200":{"description":"The request status.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueueStatus"}}}}}}},"/fal-ai/workflow-utilities/auto-subtitle/requests/{request_id}":{"get":{"parameters":[{"name":"request_id","in":"path","required":true,"schema":{"type":"string","description":"Request ID"}}],"responses":{"200":{"description":"Result of the request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowUtilitiesAutoSubtitleOutput"}}}}}}}},"servers":[{"url":"https://queue.fal.run"}],"security":[{"apiKeyAuth":[]}]}},{"endpoint_id":"minimax/h3-max/3d-to-video","metadata":{"display_name":"H3 Max 3D to Video","category":"video-to-video","description":"Transform Blender renders and 3D previs into photorealistic video. H3 Max uses the source clip to guide scene layout, camera movement, and timing, with optional image references for appearance.","status":"active","tags":["3d","photorealistic","previs","video-to-video"],"updated_at":"2026-11-10T03:23:44.534Z","is_favorited":null,"thumbnail_url":"https://v3b.fal.media/files/b/0aaad6ca/MkosWDWpYq9MCbeM0oopg_e4SyohXH.png","model_url":"https://fal.run/minimax/h3-max/3d-to-video","license_type":"commercial","date":"2026-09-16T16:39:24.294Z","group":{"key":"hailuo-03-new-turbo","label":"3D to Video"},"highlighted":false,"kind":"inference","pinned":false},"retires_at":null,"replacement":null,"openapi":{"openapi":"3.1.0","info":{"title":"Queue OpenAPI for minimax/h3-max/3d-to-video","version":"1.0.0","description":"Turn Blender renders and 3D previs into photorealistic video with H3 Max. Upload a source clip to guide the scene layout, camera movement, motion, and edit timing. Add optional image references to guide the look of characters, objects, and environments.\n\nThe endpoint plans the source shots, generates opening references when needed, renders each shot, and assembles the final video.\n\n- Source video: up to 15 seconds.\n- Optional reference images: up to 8.\n- Output resolutions: 480P, 768P (default), and 1080P.\n- Control how many new reference images may be generated (1–8; default 2).\n\nThe source video provides visual guidance; exact geometry, camera paths, and motion are not guaranteed.","x-fal-metadata":{"endpointId":"minimax/h3-max/3d-to-video","category":"video-to-video","thumbnailUrl":"https://v3b.fal.media/files/b/0aaad6ca/MkosWDWpYq9MCbeM0oopg_e4SyohXH.png","playgroundUrl":"https://fal.ai/models/minimax/h3-max/3d-to-video","documentationUrl":"https://fal.ai/models/minimax/h3-max/3d-to-video/api","about":"Generate"}},"components":{"securitySchemes":{"apiKeyAuth":{"type":"apiKey","in":"header","name":"Authorization","description":"Fal Key"}},"schemas":{"QueueStatus":{"type":"object","properties":{"status":{"type":"string","enum":["IN_QUEUE","IN_PROGRESS","COMPLETED"]},"request_id":{"type":"string","description":"The request id."},"response_url":{"type":"string","description":"The response url."},"status_url":{"type":"string","description":"The status url."},"cancel_url":{"type":"string","description":"The cancel url."},"logs":{"type":"object","description":"The logs.","additionalProperties":true},"metrics":{"type":"object","description":"The metrics.","additionalProperties":true},"queue_position":{"type":"integer","description":"The queue position."}},"required":["status","request_id"]},"H3Max3dToVideoInput":{"x-fal-order-properties":["video_url","prompt","reference_image_urls","max_generated_reference_images","resolution","enable_safety_checker"],"title":"Input","properties":{"enable_safety_checker":{"default":true,"description":"Authorized callers may set false to request relaxed screening.","title":"Enable Safety Checker","type":"boolean"},"prompt":{"anyOf":[{"type":"string","maxLength":2000},{"type":"null"}],"description":"Optional clarification of what your proxies represent or how they move, for example: 'The moving block represents a running person.' Camera, trajectories, timing and object count remain defined by the video.","title":"Scene Intent"},"reference_image_urls":{"maxItems":8,"description":"Optional environment, subject, interior or detail references. When supplied, uses these images directly without visual planning or generating new images; Scene Intent is optional. Without references, automatically creates appearance references within your new-image limit. Camera and movement always come from the video.","title":"Reference Images","items":{"type":"string"},"type":"array"},"resolution":{"default":"768P","description":"Output quality. Duration is taken automatically from the video.","title":"Quality","enum":["480P","768P","1080P"],"type":"string"},"video_url":{"description":"Blender video, up to 15 seconds and 32 shots, at a public HTTPS URL.","title":"Video","type":"string"},"max_generated_reference_images":{"default":2,"maximum":8,"description":"Maximum NEW images to generate when no reference images are supplied. Ignored when reference images are supplied. Uses fewer when enough views are covered. Uncovered shots stay in the video.","title":"Maximum New References","minimum":1,"type":"integer"}},"type":"object","required":["video_url"]},"H3Max3dToVideoOutput":{"x-fal-order-properties":["video"],"title":"Output","properties":{"video":{"description":"The finished realistic video, matching the input duration.","$ref":"#/components/schemas/Video"}},"type":"object","required":["video"]},"Video":{"x-fal-order-properties":["url","content_type","file_name","file_size"],"title":"Video","properties":{"url":{"description":"The URL where the file can be downloaded from.","title":"Url","type":"string"},"file_size":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"The size of the file in bytes.","title":"File Size","examples":[4404019]},"file_name":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The name of the file. It will be auto-generated if not provided.","title":"File Name","examples":["z9RV14K95DvU.png"]},"content_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The mime type of the file.","title":"Content Type","examples":["image/png"]}},"type":"object","required":["url"]}}},"paths":{"/minimax/h3-max/3d-to-video/requests/{request_id}/status":{"get":{"parameters":[{"name":"request_id","in":"path","required":true,"schema":{"type":"string","description":"Request ID"}},{"name":"logs","in":"query","required":false,"schema":{"type":"number","description":"Whether to include logs (`1`) in the response or not (`0`)."}}],"responses":{"200":{"description":"The request status.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueueStatus"}}}}}}},"/minimax/h3-max/3d-to-video/requests/{request_id}/cancel":{"put":{"parameters":[{"name":"request_id","in":"path","required":true,"schema":{"type":"string","description":"Request ID"}}],"responses":{"200":{"description":"The request was cancelled.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was cancelled successfully."}}}}}}}}},"/minimax/h3-max/3d-to-video":{"post":{"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/H3Max3dToVideoInput"}}}},"responses":{"200":{"description":"The request status.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueueStatus"}}}}}}},"/minimax/h3-max/3d-to-video/requests/{request_id}":{"get":{"parameters":[{"name":"request_id","in":"path","required":true,"schema":{"type":"string","description":"Request ID"}}],"responses":{"200":{"description":"Result of the request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/H3Max3dToVideoOutput"}}}}}}}},"servers":[{"url":"https://queue.fal.run"}],"security":[{"apiKeyAuth":[]}]}},{"endpoint_id":"fal-ai/bytedance/dreamactor/v2","metadata":{"display_name":"Bytedance Dreamactor V2","category":"video-to-video","description":"Transfer motion from a video to characters in an image using Dreamactor v2. Great performance for non-human and multiple characters","status":"active","tags":["motion-control","dreamactor"],"updated_at":"2026-04-21T17:44:30.517Z","is_favorited":null,"thumbnail_url":"https://v3b.fal.media/files/b/0a8d637e/N5mi3-AcAN8uaBxsYdrtu_753b8ee0acc440c488d57f7197c12fc6.jpg","model_url":"https://fal.run/fal-ai/bytedance/dreamactor/v2","license_type":"commercial","date":"2026-02-06T12:48:06.506Z","highlighted":false,"kind":"inference","pinned":false},"retires_at":null,"replacement":null,"openapi":{"openapi":"3.1.0","info":{"title":"Queue OpenAPI for fal-ai/bytedance/dreamactor/v2","version":"1.0.0","description":"The OpenAPI schema for the fal-ai/bytedance/dreamactor/v2 queue.","x-fal-metadata":{"endpointId":"fal-ai/bytedance/dreamactor/v2","category":"video-to-video","thumbnailUrl":"https://v3b.fal.media/files/b/0a8d637e/N5mi3-AcAN8uaBxsYdrtu_753b8ee0acc440c488d57f7197c12fc6.jpg","playgroundUrl":"https://fal.ai/models/fal-ai/bytedance/dreamactor/v2","documentationUrl":"https://fal.ai/models/fal-ai/bytedance/dreamactor/v2/api","about":"Generate videos by animating a reference image using motion from a driving video with ByteDance's DreamActor M2.0 model.\n\nBy inputting a single image and a template video, this endpoint drives the character in the image\nto replicate the motion, facial expressions, and lip movements from the template video, while\npreserving the subject and background features of the input image consistently."}},"components":{"securitySchemes":{"apiKeyAuth":{"type":"apiKey","in":"header","name":"Authorization","description":"Fal Key"}},"schemas":{"QueueStatus":{"type":"object","properties":{"status":{"type":"string","enum":["IN_QUEUE","IN_PROGRESS","COMPLETED"]},"request_id":{"type":"string","description":"The request id."},"response_url":{"type":"string","description":"The response url."},"status_url":{"type":"string","description":"The status url."},"cancel_url":{"type":"string","description":"The cancel url."},"logs":{"type":"object","description":"The logs.","additionalProperties":true},"metrics":{"type":"object","description":"The metrics.","additionalProperties":true},"queue_position":{"type":"integer","description":"The queue position."}},"required":["status","request_id"]},"BytedanceDreamactorV2Input":{"properties":{"enable_safety_checker":{"default":true,"title":"Enable Safety Checker","description":"Authorized callers may set false to request relaxed screening.","type":"boolean"},"video_url":{"examples":["https://storage.googleapis.com/falserverless/example_outputs/omnihuman_output.mp4"],"title":"Video Url","description":"The URL of the driving template video providing motion, facial expressions, and lip movement reference. Max duration: 30 seconds. Format: mp4, mov or webm. Resolution: between 200x200 and 2048x1440. Supports full face and body driving.","type":"string"},"image_url":{"examples":["https://storage.googleapis.com/falserverless/example_inputs/omnihuman.png"],"title":"Image Url","description":"The URL of the reference image to animate. Supports real people, animation, pets, etc. Format: jpeg, jpg or png. Max size: 4.7 MB. Resolution: between 480x480 and 1920x1080 (larger images will be proportionally reduced).","type":"string"},"trim_first_second":{"default":true,"title":"Trim First Second","description":"Whether to crop the first second of the output video. The output has a 1-second transition at the beginning; enable this to remove it.","type":"boolean"}},"title":"DreamActor2Input","x-fal-order-properties":["image_url","video_url","trim_first_second","enable_safety_checker"],"type":"object","required":["image_url","video_url"]},"BytedanceDreamactorV2Output":{"properties":{"video":{"examples":[{"url":"https://v3b.fal.media/files/b/0a8d6313/ONsZwYeJrFqi1W1jbnfYF_9HU7tPvX1hUlMMxXCepTz_video%20(1)%20(1).mp4"}],"description":"Generated video file.","$ref":"#/components/schemas/File"}},"title":"DreamActor2Output","x-fal-order-properties":["video"],"type":"object","required":["video"]},"File":{"properties":{"file_size":{"anyOf":[{"type":"integer"},{"type":"null"}],"examples":[4404019],"title":"File Size","description":"The size of the file in bytes."},"url":{"title":"Url","description":"The URL where the file can be downloaded from.","type":"string"},"content_type":{"anyOf":[{"type":"string"},{"type":"null"}],"examples":["image/png"],"title":"Content Type","description":"The mime type of the file."},"file_name":{"anyOf":[{"type":"string"},{"type":"null"}],"examples":["z9RV14K95DvU.png"],"title":"File Name","description":"The name of the file. It will be auto-generated if not provided."}},"title":"File","x-fal-order-properties":["url","content_type","file_name","file_size"],"type":"object","required":["url"]}}},"paths":{"/fal-ai/bytedance/dreamactor/v2/requests/{request_id}/status":{"get":{"parameters":[{"name":"request_id","in":"path","required":true,"schema":{"type":"string","description":"Request ID"}},{"name":"logs","in":"query","required":false,"schema":{"type":"number","description":"Whether to include logs (`1`) in the response or not (`0`)."}}],"responses":{"200":{"description":"The request status.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueueStatus"}}}}}}},"/fal-ai/bytedance/dreamactor/v2/requests/{request_id}/cancel":{"put":{"parameters":[{"name":"request_id","in":"path","required":true,"schema":{"type":"string","description":"Request ID"}}],"responses":{"200":{"description":"The request was cancelled.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was cancelled successfully."}}}}}}}}},"/fal-ai/bytedance/dreamactor/v2":{"post":{"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BytedanceDreamactorV2Input"}}}},"responses":{"200":{"description":"The request status.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueueStatus"}}}}}}},"/fal-ai/bytedance/dreamactor/v2/requests/{request_id}":{"get":{"parameters":[{"name":"request_id","in":"path","required":true,"schema":{"type":"string","description":"Request ID"}}],"responses":{"200":{"description":"Result of the request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BytedanceDreamactorV2Output"}}}}}}}},"servers":[{"url":"https://queue.fal.run"}],"security":[{"apiKeyAuth":[]}]}},{"endpoint_id":"fal-ai/sam-3-1/video-rle","metadata":{"display_name":"Sam 3 1","category":"video-to-video","description":"SAM 3.1 builds comes with Object Multiplex, a shared-memory approach for joint multi-object tracking that delivers faster speeds with larger number of objects tracked.","status":"active","tags":["segmentation","mask","real-time"],"updated_at":"2026-10-20T22:36:10.070Z","is_favorited":null,"thumbnail_url":"https://v3b.fal.media/files/b/0a9443fd/-KUrT4NrhzwdSIGt_0W2u_5284543c5010453a92d55013584c1334.jpg","model_url":"https://fal.run/fal-ai/sam-3-1/video-rle","license_type":"commercial","date":"2026-03-30T16:44:14.182Z","group":{"key":"sam31","label":"Video to RLE"},"highlighted":false,"kind":"inference","pinned":false},"retires_at":null,"replacement":null,"openapi":{"openapi":"3.1.0","info":{"title":"Queue OpenAPI for fal-ai/sam-3-1/video-rle","version":"1.0.0","description":"The OpenAPI schema for the fal-ai/sam-3-1/video-rle queue.","x-fal-metadata":{"endpointId":"fal-ai/sam-3-1/video-rle","category":"video-to-video","thumbnailUrl":"https://v3b.fal.media/files/b/0a9443fd/-KUrT4NrhzwdSIGt_0W2u_5284543c5010453a92d55013584c1334.jpg","playgroundUrl":"https://fal.ai/models/fal-ai/sam-3-1/video-rle","documentationUrl":"https://fal.ai/models/fal-ai/sam-3-1/video-rle/api","about":"Segment Video Rle"}},"components":{"securitySchemes":{"apiKeyAuth":{"type":"apiKey","in":"header","name":"Authorization","description":"Fal Key"}},"schemas":{"QueueStatus":{"type":"object","properties":{"status":{"type":"string","enum":["IN_QUEUE","IN_PROGRESS","COMPLETED"]},"request_id":{"type":"string","description":"The request id."},"response_url":{"type":"string","description":"The response url."},"status_url":{"type":"string","description":"The status url."},"cancel_url":{"type":"string","description":"The cancel url."},"logs":{"type":"object","description":"The logs.","additionalProperties":true},"metrics":{"type":"object","description":"The metrics.","additionalProperties":true},"queue_position":{"type":"integer","description":"The queue position."}},"required":["status","request_id"]},"Sam31VideoRleInput":{"x-fal-order-properties":["video_url","mask_url","prompt","point_prompts","box_prompts","apply_mask","boundingbox_zip","detection_threshold","frame_index","max_num_objects","return_object_rles"],"title":"SAM31VideoRLEInput","properties":{"apply_mask":{"title":"Apply Mask","description":"Apply the mask on the video.","default":false,"type":"boolean"},"mask_url":{"title":"Mask Url","description":"The URL of the mask to be applied initially.","anyOf":[{"type":"string"},{"type":"null"}]},"frame_index":{"title":"Frame Index","description":"Frame index used for initial interaction when mask_url is provided.","default":0,"type":"integer"},"return_object_rles":{"title":"Return Object Rles","description":"Also return every tracked object's own mask in each frame, with an id the object keeps for the whole video. The merged rle is returned as before.","default":false,"type":"boolean"},"max_num_objects":{"title":"Max Num Objects","maximum":128,"minimum":1,"description":"Maximum number of objects to track in the video.","default":16,"type":"integer"},"video_url":{"title":"Video Url","examples":["https://v3b.fal.media/files/b/elephant/NQdDxB0Ddfo82SPLbhYDp_bedroom.mp4"],"description":"The URL of the video to be segmented.","type":"string"},"detection_threshold":{"title":"Detection Threshold","maximum":1,"minimum":0.01,"description":"Detection confidence threshold (0.0-1.0). Lower = more detections but less precise. Defaults: 0.5 for existing, 0.7 for new objects. Try 0.2-0.3 if text prompts fail.","default":0.5,"type":"number"},"boundingbox_zip":{"title":"Boundingbox Zip","description":"Return per-frame bounding box overlays as a zip archive.","default":false,"type":"boolean"},"point_prompts":{"items":{"$ref":"#/components/schemas/PointPrompt"},"title":"Point Prompts","description":"List of point prompts with frame indices.","default":[],"type":"array"},"box_prompts":{"items":{"$ref":"#/components/schemas/BoxPrompt"},"title":"Box Prompts","description":"List of box prompts with optional frame_index.","default":[],"type":"array"},"prompt":{"title":"Prompt","examples":["person","person, cloth"],"description":"Text prompt for segmentation. Use commas to track multiple objects (e.g., 'person, cloth').","default":"","type":"string"}},"required":["video_url"],"type":"object"},"Sam31VideoRleOutput":{"x-fal-order-properties":["rle","boundingbox_frames_zip","metadata","scores","boxes","objects"],"title":"SAM31VideoRLEOutput","properties":{"scores":{"title":"Scores","description":"Per-mask confidence scores when requested.","anyOf":[{"items":{"anyOf":[{"type":"number"},{"type":"null"}]},"type":"array"},{"type":"null"}]},"rle":{"title":"Rle","description":"Per-frame RLE masks, or a JSON file containing them in URL mode.","anyOf":[{"items":{"type":"string"},"type":"array"},{"$ref":"#/components/schemas/File"}]},"objects":{"title":"Objects","description":"With return_object_rles, each frame's tracked objects with their masks and ids, or a JSON file containing them in URL mode.","anyOf":[{"items":{"items":{"$ref":"#/components/schemas/ObjectRLE"},"type":"array"},"type":"array"},{"$ref":"#/components/schemas/File"},{"type":"null"}]},"boundingbox_frames_zip":{"description":"Zip file containing per-frame bounding box overlays.","anyOf":[{"$ref":"#/components/schemas/File"},{"type":"null"}]},"metadata":{"title":"Metadata","description":"Per-mask metadata when multiple RLEs are returned.","anyOf":[{"items":{"$ref":"#/components/schemas/MaskMetadata"},"type":"array"},{"type":"null"}]},"boxes":{"title":"Boxes","description":"Per-mask normalized bounding boxes [cx, cy, w, h] when requested.","anyOf":[{"items":{"anyOf":[{"items":{"type":"number"},"type":"array"},{"type":"null"}]},"type":"array"},{"type":"null"}]}},"required":["rle"],"type":"object"},"PointPrompt":{"x-fal-order-properties":["x","y","label","object_id","frame_index"],"title":"PointPrompt","properties":{"y":{"title":"Y","description":"Y Coordinate of the prompt","anyOf":[{"type":"integer"},{"type":"null"}]},"object_id":{"title":"Object Id","description":"Optional object identifier. Prompts sharing an object id refine the same object. When a text prompt is also given, the id selects which detected object the points refine.","anyOf":[{"type":"integer"},{"type":"null"}]},"x":{"title":"X","description":"X Coordinate of the prompt","anyOf":[{"type":"integer"},{"type":"null"}]},"frame_index":{"title":"Frame Index","description":"The frame index to interact with.","anyOf":[{"type":"integer"},{"type":"null"}]},"label":{"title":"Label","description":"1 for foreground, 0 for background","anyOf":[{"enum":[0,1],"type":"integer"},{"type":"null"}]}},"type":"object"},"BoxPrompt":{"x-fal-order-properties":["x_min","y_min","x_max","y_max","object_id","frame_index"],"title":"BoxPrompt","properties":{"frame_index":{"title":"Frame Index","description":"The frame index to interact with.","anyOf":[{"type":"integer"},{"type":"null"}]},"object_id":{"title":"Object Id","description":"Optional object identifier. Boxes sharing an object id refine the same object.","anyOf":[{"type":"integer"},{"type":"null"}]},"y_min":{"title":"Y Min","description":"Y Min Coordinate of the box","anyOf":[{"type":"integer"},{"type":"null"}]},"x_min":{"title":"X Min","description":"X Min Coordinate of the box","anyOf":[{"type":"integer"},{"type":"null"}]},"x_max":{"title":"X Max","description":"X Max Coordinate of the box","anyOf":[{"type":"integer"},{"type":"null"}]},"y_max":{"title":"Y Max","description":"Y Max Coordinate of the box","anyOf":[{"type":"integer"},{"type":"null"}]}},"type":"object"},"File":{"x-fal-order-properties":["url","content_type","file_name","file_size"],"title":"File","properties":{"file_size":{"title":"File Size","examples":[4404019],"description":"The size of the file in bytes.","anyOf":[{"type":"integer"},{"type":"null"}]},"url":{"title":"Url","description":"The URL where the file can be downloaded from.","type":"string"},"content_type":{"title":"Content Type","examples":["image/png"],"description":"The mime type of the file.","anyOf":[{"type":"string"},{"type":"null"}]},"file_name":{"title":"File Name","examples":["z9RV14K95DvU.png"],"description":"The name of the file. It will be auto-generated if not provided.","anyOf":[{"type":"string"},{"type":"null"}]}},"required":["url"],"type":"object"},"ObjectRLE":{"x-fal-order-properties":["object_id","rle","box"],"title":"ObjectRLE","properties":{"rle":{"title":"Rle","description":"Run Length Encoding of this object's mask.","type":"string"},"object_id":{"title":"Object Id","description":"The object's id, the same in every frame the object appears in.","type":"integer"},"box":{"title":"Box","description":"Bounding box of this object's mask in normalized cxcywh coordinates.","anyOf":[{"items":{"type":"number"},"type":"array"},{"type":"null"}]}},"required":["object_id","rle"],"type":"object"},"MaskMetadata":{"x-fal-order-properties":["index","score","box"],"title":"MaskMetadata","properties":{"index":{"title":"Index","description":"Index of the mask inside the model output.","type":"integer"},"score":{"title":"Score","description":"Score for this mask.","anyOf":[{"type":"number"},{"type":"null"}]},"box":{"title":"Box","description":"Bounding box for the mask in normalized cxcywh coordinates.","anyOf":[{"items":{"type":"number"},"type":"array"},{"type":"null"}]}},"required":["index"],"type":"object"}}},"paths":{"/fal-ai/sam-3-1/video-rle/requests/{request_id}/status":{"get":{"parameters":[{"name":"request_id","in":"path","required":true,"schema":{"type":"string","description":"Request ID"}},{"name":"logs","in":"query","required":false,"schema":{"type":"number","description":"Whether to include logs (`1`) in the response or not (`0`)."}}],"responses":{"200":{"description":"The request status.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueueStatus"}}}}}}},"/fal-ai/sam-3-1/video-rle/requests/{request_id}/cancel":{"put":{"parameters":[{"name":"request_id","in":"path","required":true,"schema":{"type":"string","description":"Request ID"}}],"responses":{"200":{"description":"The request was cancelled.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was cancelled successfully."}}}}}}}}},"/fal-ai/sam-3-1/video-rle":{"post":{"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Sam31VideoRleInput"}}}},"responses":{"200":{"description":"The request status.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueueStatus"}}}}}}},"/fal-ai/sam-3-1/video-rle/requests/{request_id}":{"get":{"parameters":[{"name":"request_id","in":"path","required":true,"schema":{"type":"string","description":"Request ID"}}],"responses":{"200":{"description":"Result of the request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Sam31VideoRleOutput"}}}}}}}},"servers":[{"url":"https://queue.fal.run"}],"security":[{"apiKeyAuth":[]}]}},{"endpoint_id":"luma/agent/ray/v3.2/video-to-video","metadata":{"display_name":"Luma Ray 3.2 Video to Video","category":"video-to-video","description":"Luma Ray 3.2 re-renders an existing video into new cinematic motion guided by a text prompt, preserving the source's look and movement while controlling resolution, duration, and HDR.","status":"active","tags":["stylized","transform","lipsync"],"updated_at":"2026-11-10T03:23:43.845Z","is_favorited":null,"thumbnail_url":"https://v3b.fal.media/files/b/0a9dd626/fDtx2FCaRxBnEQmyYu2DY_d03821f138c94cf3a2cf165a9aa389bf.jpg","model_url":"https://fal.run/luma/agent/ray/v3.2/video-to-video","license_type":"commercial","date":"2026-06-11T07:05:04.335Z","group":{"key":"ray-32","label":"Video Edit"},"highlighted":false,"kind":"inference","pinned":false},"retires_at":null,"replacement":null,"openapi":{"openapi":"3.1.0","info":{"title":"Queue OpenAPI for luma/agent/ray/v3.2/video-to-video","version":"1.0.0","description":"The OpenAPI schema for the luma/agent/ray/v3.2/video-to-video queue.","x-fal-metadata":{"endpointId":"luma/agent/ray/v3.2/video-to-video","category":"video-to-video","thumbnailUrl":"https://v3b.fal.media/files/b/0a9dd626/fDtx2FCaRxBnEQmyYu2DY_d03821f138c94cf3a2cf165a9aa389bf.jpg","playgroundUrl":"https://fal.ai/models/luma/agent/ray/v3.2/video-to-video","documentationUrl":"https://fal.ai/models/luma/agent/ray/v3.2/video-to-video/api","about":"ray-3.2 video-to-video editing via the Luma Agents API.\n\nEdits an existing source video according to the prompt (``video_edit``\noperation). ``loop`` does not apply to editing an existing clip, so —\nunlike text/image-to-video — there is no ``_reject_unsupported_video_options``\ncheck here."}},"components":{"securitySchemes":{"apiKeyAuth":{"type":"apiKey","in":"header","name":"Authorization","description":"Fal Key"}},"schemas":{"QueueStatus":{"type":"object","properties":{"status":{"type":"string","enum":["IN_QUEUE","IN_PROGRESS","COMPLETED"]},"request_id":{"type":"string","description":"The request id."},"response_url":{"type":"string","description":"The response url."},"status_url":{"type":"string","description":"The status url."},"cancel_url":{"type":"string","description":"The cancel url."},"logs":{"type":"object","description":"The logs.","additionalProperties":true},"metrics":{"type":"object","description":"The metrics.","additionalProperties":true},"queue_position":{"type":"integer","description":"The queue position."}},"required":["status","request_id"]},"AgentRayV32VideoToVideoInput":{"properties":{"start_image_url":{"anyOf":[{"type":"string"},{"type":"null"}],"examples":["https://storage.googleapis.com/falserverless/gallery/example_inputs_liuyifei.png"],"title":"Start Image Url","description":"Optional URL of an image to use as the edited video's first frame — e.g. a restyled version of the source's opening frame to steer the look of the edit. Leave unset to let the model derive the first frame from the source video."},"keyframes":{"anyOf":[{"maxItems":64,"minItems":1,"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Keyframes","description":"Multi-keyframe edit guide frames: up to 64 image URLs pinned at the source-frame positions given by keyframe_indexes. Mutually exclusive with start_image_url. Provide keyframes and keyframe_indexes together (same length)."},"enable_safety_checker":{"default":true,"title":"Enable Safety Checker","description":"Authorized callers may set false to request relaxed screening.","type":"boolean"},"edit_strength":{"anyOf":[{"enum":["adhere_1","adhere_2","adhere_3","flex_1","flex_2","flex_3","reimagine_1","reimagine_2","reimagine_3"],"type":"string"},{"type":"null"}],"title":"Edit Strength","description":"How closely the edit preserves the source video. 'adhere_*' stays closest to the source, 'flex_*' is balanced, and 'reimagine_*' diverges most. Leave unset to use Luma's default. Cannot be combined with auto_controls."},"duration":{"default":"5s","title":"Duration","enum":["5s","10s"],"description":"Duration of the edited video.","type":"string"},"controls":{"anyOf":[{"$ref":"#/components/schemas/RayEditControls"},{"type":"null"}],"description":"Per-signal conditioning controls (pose, depth, normals, trajectory, face) for finer control than edit_strength. Cannot be combined with auto_controls."},"hdr":{"default":false,"title":"Hdr","description":"Generate an HDR-encoded MP4. Requires HDR access on the account and a resolution of 720p or 1080p.","type":"boolean"},"user":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"User","description":"Optional opaque identifier for the end user making the request. Used only for abuse attribution; never interpreted by fal."},"exr_export":{"default":false,"title":"Exr Export","description":"Also export an EXR file alongside the MP4. Requires hdr=true and HDR access.","type":"boolean"},"auto_controls":{"default":false,"title":"Auto Controls","description":"Let the model derive the edit conditioning schedule from the source video. Cannot be combined with edit_strength.","type":"boolean"},"keyframe_indexes":{"anyOf":[{"maxItems":64,"minItems":1,"items":{"type":"integer"},"type":"array"},{"type":"null"}],"title":"Keyframe Indexes","description":"Source-video frame positions where each keyframes[i] is anchored. Non-negative, unique, and the same length as keyframes."},"video_url":{"minLength":1,"examples":["https://storage.googleapis.com/falserverless/example_inputs/birefnet-video-input.mp4"],"title":"Video Url","description":"URL of the source video to edit.","type":"string"},"resolution":{"default":"540p","title":"Resolution","enum":["540p","720p","1080p"],"description":"Resolution of the edited video. Higher resolutions cost more.","type":"string"},"prompt":{"minLength":1,"examples":["Restyle the footage as a hand-painted watercolor animation with soft pastel colors."],"title":"Prompt","description":"Text prompt describing how to edit the source video.","type":"string","maxLength":6000}},"title":"RayVideoToVideoRequest","x-fal-order-properties":["prompt","video_url","user","start_image_url","resolution","duration","edit_strength","auto_controls","hdr","exr_export","controls","keyframes","keyframe_indexes","enable_safety_checker"],"type":"object","required":["prompt","video_url"]},"AgentRayV32VideoToVideoOutput":{"properties":{"exr_file":{"anyOf":[{"$ref":"#/components/schemas/File"},{"type":"null"}],"description":"The generated EXR sidecar when exr_export is true. This may be a single EXR file or a ZIP package depending on Luma's export shape."},"video":{"description":"The generated video.","$ref":"#/components/schemas/File"}},"title":"VideoOutput","x-fal-order-properties":["video","exr_file"],"type":"object","required":["video"]},"RayEditControls":{"properties":{"depth":{"anyOf":[{"$ref":"#/components/schemas/RayEditDepthControl"},{"type":"null"}],"description":"Depth / scene-geometry conditioning."},"face":{"anyOf":[{"$ref":"#/components/schemas/RayEditFaceControl"},{"type":"null"}],"description":"Face-identity conditioning."},"trajectory":{"anyOf":[{"$ref":"#/components/schemas/RayEditTrajectoryControl"},{"type":"null"}],"description":"Motion-trajectory conditioning."},"pose":{"anyOf":[{"$ref":"#/components/schemas/RayEditPoseControl"},{"type":"null"}],"description":"Pose / skeleton conditioning."},"normals":{"anyOf":[{"$ref":"#/components/schemas/RayEditNormalsControl"},{"type":"null"}],"description":"Surface-normals conditioning."}},"title":"RayEditControls","x-fal-order-properties":["pose","depth","normals","trajectory","face"],"description":"Per-signal conditioning controls for ray-3.2 video editing.\n\nEach signal is optional; include only the signals you want to tune. Cannot\nbe combined with auto_controls. Mirrors the Luma Agents ``video.edit.controls``\nobject — see https://docs.agents.lumalabs.ai/api/resources/generations.","type":"object"},"File":{"properties":{"file_size":{"anyOf":[{"type":"integer"},{"type":"null"}],"examples":[4404019],"title":"File Size","description":"The size of the file in bytes."},"url":{"title":"Url","description":"The URL where the file can be downloaded from.","type":"string"},"content_type":{"anyOf":[{"type":"string"},{"type":"null"}],"examples":["image/png"],"title":"Content Type","description":"The mime type of the file."},"file_name":{"anyOf":[{"type":"string"},{"type":"null"}],"examples":["z9RV14K95DvU.png"],"title":"File Name","description":"The name of the file. It will be auto-generated if not provided."}},"title":"File","x-fal-order-properties":["url","content_type","file_name","file_size"],"type":"object","required":["url"]},"RayEditDepthControl":{"properties":{"enabled":{"default":true,"title":"Enabled","description":"Enable depth / scene-geometry conditioning for the edit.","type":"boolean"},"blur":{"anyOf":[{"minimum":0,"type":"number","maximum":1},{"type":"null"}],"title":"Blur","description":"Depth blur. Higher values allow more geometric freedom. Leave unset for the default."}},"title":"RayEditDepthControl","x-fal-order-properties":["enabled","blur"],"type":"object"},"RayEditFaceControl":{"properties":{"enabled":{"default":true,"title":"Enabled","description":"Enable face-identity conditioning for the edit.","type":"boolean"}},"title":"RayEditFaceControl","x-fal-order-properties":["enabled"],"type":"object"},"RayEditTrajectoryControl":{"properties":{"enabled":{"default":true,"title":"Enabled","description":"Enable motion-trajectory conditioning for the edit.","type":"boolean"},"sparsity":{"anyOf":[{"minimum":0,"type":"number","maximum":1},{"type":"null"}],"title":"Sparsity","description":"Motion-trajectory sparsity. Higher values use fewer motion anchors. Leave unset for the default."}},"title":"RayEditTrajectoryControl","x-fal-order-properties":["enabled","sparsity"],"type":"object"},"RayEditPoseControl":{"properties":{"enabled":{"default":true,"title":"Enabled","description":"Enable pose / skeleton conditioning for the edit.","type":"boolean"},"strength":{"anyOf":[{"enum":["precise","coarse"],"type":"string"},{"type":"null"}],"title":"Strength","description":"Pose conditioning precision. 'precise' follows the source pose tightly; 'coarse' allows more freedom. Leave unset for the default."}},"title":"RayEditPoseControl","x-fal-order-properties":["enabled","strength"],"type":"object"},"RayEditNormalsControl":{"properties":{"enabled":{"default":true,"title":"Enabled","description":"Enable surface-normals conditioning for the edit.","type":"boolean"},"augmentation":{"anyOf":[{"minimum":0,"type":"number","maximum":1},{"type":"null"}],"title":"Augmentation","description":"Surface-normals augmentation. Higher values allow more reinterpretation of surface geometry. Leave unset for the default."}},"title":"RayEditNormalsControl","x-fal-order-properties":["enabled","augmentation"],"type":"object"}}},"paths":{"/luma/agent/ray/v3.2/video-to-video/requests/{request_id}/status":{"get":{"parameters":[{"name":"request_id","in":"path","required":true,"schema":{"type":"string","description":"Request ID"}},{"name":"logs","in":"query","required":false,"schema":{"type":"number","description":"Whether to include logs (`1`) in the response or not (`0`)."}}],"responses":{"200":{"description":"The request status.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueueStatus"}}}}}}},"/luma/agent/ray/v3.2/video-to-video/requests/{request_id}/cancel":{"put":{"parameters":[{"name":"request_id","in":"path","required":true,"schema":{"type":"string","description":"Request ID"}}],"responses":{"200":{"description":"The request was cancelled.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was cancelled successfully."}}}}}}}}},"/luma/agent/ray/v3.2/video-to-video":{"post":{"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentRayV32VideoToVideoInput"}}}},"responses":{"200":{"description":"The request status.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueueStatus"}}}}}}},"/luma/agent/ray/v3.2/video-to-video/requests/{request_id}":{"get":{"parameters":[{"name":"request_id","in":"path","required":true,"schema":{"type":"string","description":"Request ID"}}],"responses":{"200":{"description":"Result of the request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentRayV32VideoToVideoOutput"}}}}}}}},"servers":[{"url":"https://queue.fal.run"}],"security":[{"apiKeyAuth":[]}]}},{"endpoint_id":"xai/grok-imagine-video/edit-video","metadata":{"display_name":"Grok Imagine Video","category":"video-to-video","description":"Edit videos using xAI's Grok Imagine","status":"active","tags":["video-edit","v2v","grok","xai"],"updated_at":"2026-10-20T22:14:33.831Z","is_favorited":null,"thumbnail_url":"https://v3b.fal.media/files/b/0a8a29af/LdzkePZifdyhKkL-fzyZm_f823bcaae85c4342ad20c800c9a2cef1.jpg","model_url":"https://fal.run/xai/grok-imagine-video/edit-video","license_type":"commercial","date":"2026-01-29T00:27:49.985Z","group":{"key":"grok-imagine-video","label":"Edit Video"},"highlighted":false,"kind":"inference","pinned":false},"retires_at":null,"replacement":null,"openapi":{"openapi":"3.1.0","info":{"title":"Queue OpenAPI for xai/grok-imagine-video/edit-video","version":"1.0.0","description":"The OpenAPI schema for the xai/grok-imagine-video/edit-video queue.","x-fal-metadata":{"endpointId":"xai/grok-imagine-video/edit-video","category":"video-to-video","thumbnailUrl":"https://v3b.fal.media/files/b/0a8a29af/LdzkePZifdyhKkL-fzyZm_f823bcaae85c4342ad20c800c9a2cef1.jpg","playgroundUrl":"https://fal.ai/models/xai/grok-imagine-video/edit-video","documentationUrl":"https://fal.ai/models/xai/grok-imagine-video/edit-video/api","about":"Edit a video based on a text description using Grok Imagine."}},"components":{"securitySchemes":{"apiKeyAuth":{"type":"apiKey","in":"header","name":"Authorization","description":"Fal Key"}},"schemas":{"QueueStatus":{"type":"object","properties":{"status":{"type":"string","enum":["IN_QUEUE","IN_PROGRESS","COMPLETED"]},"request_id":{"type":"string","description":"The request id."},"response_url":{"type":"string","description":"The response url."},"status_url":{"type":"string","description":"The status url."},"cancel_url":{"type":"string","description":"The cancel url."},"logs":{"type":"object","description":"The logs.","additionalProperties":true},"metrics":{"type":"object","description":"The metrics.","additionalProperties":true},"queue_position":{"type":"integer","description":"The queue position."}},"required":["status","request_id"]},"GrokImagineVideoEditVideoInput":{"x-fal-order-properties":["prompt","video_url","resolution","enable_safety_checker"],"title":"XAIVideoEditInput","type":"object","properties":{"enable_safety_checker":{"description":"Authorized callers may set false to request relaxed screening.","title":"Enable Safety Checker","type":"boolean","default":true},"video_url":{"description":"URL of the input video to edit. The video will be resized to a maximum area of 854x480 pixels and truncated to 8 seconds.","examples":["https://v3b.fal.media/files/b/0a8b9112/V5Z_NIPE3ppMDWivNo6_q_video_019.mp4"],"title":"Video URL","type":"string"},"resolution":{"description":"Resolution of the output video.","title":"Resolution","type":"string","default":"auto","enum":["auto","480p","720p"]},"prompt":{"description":"Text description of the desired edit.","maxLength":4096,"title":"Prompt","examples":["Colorize the video"],"type":"string"}},"required":["prompt","video_url"]},"GrokImagineVideoEditVideoOutput":{"x-fal-order-properties":["video"],"title":"XAIVideoEditOutput","type":"object","properties":{"video":{"description":"The generated video.","examples":[{"height":720,"file_name":"EuDrZuQTW9m1phBXOsauz_EpJH3s8X.mp4","num_frames":121,"url":"https://v3b.fal.media/files/b/0a8b9113/EuDrZuQTW9m1phBXOsauz_EpJH3s8X.mp4","duration":5.041667,"width":1280,"fps":24,"content_type":"video/mp4"}],"$ref":"#/components/schemas/VideoFile"}},"required":["video"]},"VideoFile":{"x-fal-order-properties":["url","content_type","file_name","file_size","width","height","fps","duration","num_frames"],"title":"VideoFile","type":"object","properties":{"height":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"The height of the video","title":"Height"},"file_name":{"anyOf":[{"type":"string"},{"type":"null"}],"examples":["z9RV14K95DvU.png"],"title":"File Name","description":"The name of the file. It will be auto-generated if not provided."},"num_frames":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"The number of frames in the video","title":"Num Frames"},"url":{"description":"The URL where the file can be downloaded from.","title":"Url","type":"string"},"file_size":{"anyOf":[{"type":"integer"},{"type":"null"}],"examples":[4404019],"title":"File Size","description":"The size of the file in bytes."},"width":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"The width of the video","title":"Width"},"duration":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The duration of the video","title":"Duration"},"fps":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The FPS of the video","title":"Fps"},"content_type":{"anyOf":[{"type":"string"},{"type":"null"}],"examples":["image/png"],"title":"Content Type","description":"The mime type of the file."}},"required":["url"]}}},"paths":{"/xai/grok-imagine-video/edit-video/requests/{request_id}/status":{"get":{"parameters":[{"name":"request_id","in":"path","required":true,"schema":{"type":"string","description":"Request ID"}},{"name":"logs","in":"query","required":false,"schema":{"type":"number","description":"Whether to include logs (`1`) in the response or not (`0`)."}}],"responses":{"200":{"description":"The request status.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueueStatus"}}}}}}},"/xai/grok-imagine-video/edit-video/requests/{request_id}/cancel":{"put":{"parameters":[{"name":"request_id","in":"path","required":true,"schema":{"type":"string","description":"Request ID"}}],"responses":{"200":{"description":"The request was cancelled.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was cancelled successfully."}}}}}}}}},"/xai/grok-imagine-video/edit-video":{"post":{"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GrokImagineVideoEditVideoInput"}}}},"responses":{"200":{"description":"The request status.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueueStatus"}}}}}}},"/xai/grok-imagine-video/edit-video/requests/{request_id}":{"get":{"parameters":[{"name":"request_id","in":"path","required":true,"schema":{"type":"string","description":"Request ID"}}],"responses":{"200":{"description":"Result of the request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GrokImagineVideoEditVideoOutput"}}}}}}}},"servers":[{"url":"https://queue.fal.run"}],"security":[{"apiKeyAuth":[]}]}}],"next_cursor":"Nw","has_more":true}
