{"models":[{"endpoint_id":"fal-ai/thinksound","metadata":{"display_name":"ThinkSound","category":"video-to-video","description":"Generate realistic audio for a video with an optional text prompt and combine","status":"active","tags":["audio-generation","video-to-audio"],"updated_at":"2026-04-21T17:55:03.612Z","is_favorited":null,"thumbnail_url":"https://storage.googleapis.com/fal_cdn/fal/Sound-3.jpg","model_url":"https://fal.run/fal-ai/thinksound","license_type":"commercial","date":"2025-07-01T20:56:42.665Z","group":{"key":"thinksound","label":"Video-to-Video"},"highlighted":false,"kind":"inference","duration_estimate":1,"pinned":false},"openapi":{"openapi":"3.0.4","info":{"title":"Queue OpenAPI for fal-ai/thinksound","version":"1.0.0","description":"The OpenAPI schema for the fal-ai/thinksound queue.","x-fal-metadata":{"endpointId":"fal-ai/thinksound","category":"video-to-video","thumbnailUrl":"https://storage.googleapis.com/fal_cdn/fal/Sound-3.jpg","playgroundUrl":"https://fal.ai/models/fal-ai/thinksound","documentationUrl":"https://fal.ai/models/fal-ai/thinksound/api","about":"Generate audio from a video URL and a prompt.\n:param input: Input data containing video URL, prompt, and seed.\n:param response: FastAPI response object.\n:return: Output containing the generated audio file."}},"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"]},"ThinksoundInput":{"type":"object","properties":{"video_url":{"type":"string","description":"The URL of the video to generate the audio for.","title":"Video Url","examples":["https://storage.googleapis.com/falserverless/example_inputs/thinksound-input.mp4"]},"cfg_scale":{"type":"number","default":5,"minimum":1,"title":"CFG Scale","description":"The classifier-free guidance scale for audio generation.","examples":[5],"maximum":20},"prompt":{"type":"string","description":"A prompt to guide the audio generation. If not provided, it will be extracted from the video.","title":"Prompt","default":""},"num_inference_steps":{"type":"integer","default":24,"minimum":2,"title":"Number of Inference Steps","description":"The number of inference steps for audio generation.","examples":[24],"maximum":100},"seed":{"description":"The seed for the random number generator","anyOf":[{"type":"integer"},{"type":"null"}],"title":"Seed"}},"required":["video_url"],"title":"Input","x-fal-order-properties":["video_url","prompt","seed","num_inference_steps","cfg_scale"]},"ThinksoundOutput":{"type":"object","properties":{"video":{"description":"The generated video with audio.","$ref":"#/components/schemas/File","examples":[{"url":"https://storage.googleapis.com/falserverless/example_outputs/thinksound-output.mp4"}]},"prompt":{"type":"string","description":"The prompt used to generate the audio.","title":"Prompt","examples":["An acoustic guitar being played indoors."]}},"required":["video","prompt"],"title":"Output","x-fal-order-properties":["video","prompt"]},"File":{"type":"object","properties":{"file_name":{"description":"The name of the file. It will be auto-generated if not provided.","anyOf":[{"type":"string"},{"type":"null"}],"title":"File Name","examples":["z9RV14K95DvU.png"]},"url":{"type":"string","description":"The URL where the file can be downloaded from.","title":"Url"},"file_size":{"description":"The size of the file in bytes.","anyOf":[{"type":"integer"},{"type":"null"}],"title":"File Size","examples":[4404019]},"content_type":{"description":"The mime type of the file.","anyOf":[{"type":"string"},{"type":"null"}],"title":"Content Type","examples":["image/png"]}},"required":["url"],"title":"File","x-fal-order-properties":["url","content_type","file_name","file_size"]}}},"paths":{"/fal-ai/thinksound/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/thinksound/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/thinksound":{"post":{"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ThinksoundInput"}}}},"responses":{"200":{"description":"The request status.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueueStatus"}}}}}}},"/fal-ai/thinksound/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/ThinksoundOutput"}}}}}}}},"servers":[{"url":"https://queue.fal.run"}],"security":[{"apiKeyAuth":[]}]}},{"endpoint_id":"fal-ai/sam2/video","metadata":{"display_name":"Segment Anything Model 2","category":"video-to-video","description":"SAM 2 is a model for segmenting images and videos in real-time.","status":"active","tags":["segmentation","mask","real-time"],"updated_at":"2026-04-21T17:54:28.639Z","is_favorited":null,"thumbnail_url":"https://storage.googleapis.com/falserverless/gallery/sam2.gif","model_url":"https://fal.run/fal-ai/sam2/video","date":"2024-08-15T00:00:00.000Z","group":{"key":"sam2","label":"Video to Video"},"highlighted":false,"pinned":false},"openapi":{"openapi":"3.0.4","info":{"title":"Queue OpenAPI for fal-ai/sam2/video","version":"1.0.0","description":"The OpenAPI schema for the fal-ai/sam2/video queue.","x-fal-metadata":{"endpointId":"fal-ai/sam2/video","category":"video-to-video","thumbnailUrl":"https://storage.googleapis.com/falserverless/gallery/sam2.gif","playgroundUrl":"https://fal.ai/models/fal-ai/sam2/video","documentationUrl":"https://fal.ai/models/fal-ai/sam2/video/api","about":"Segment 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"]},"Sam2VideoInput":{"title":"SAM2VideoRLEInput","properties":{"box_prompts":{"items":{"$ref":"#/components/schemas/BoxPrompt"},"title":"Box Prompts","examples":[[{"x_max":500,"y_max":400,"y_min":0,"x_min":300,"frame_index":0}]],"default":[],"type":"array","description":"Coordinates for boxes"},"boundingbox_zip":{"title":"Boundingbox Zip","default":false,"type":"boolean","description":"Return per-frame bounding box overlays as a zip archive."},"apply_mask":{"title":"Apply Mask","default":false,"type":"boolean","description":"Apply the mask on the video."},"prompts":{"items":{"$ref":"#/components/schemas/PointPrompt"},"title":"Prompts","examples":[[{"label":1,"x":210,"frame_index":0,"y":350},{"label":1,"x":250,"frame_index":0,"y":220}]],"default":[],"type":"array","description":"List of prompts to segment the video"},"mask_url":{"title":"Mask Url","anyOf":[{"type":"string"},{"type":"null"}],"description":"The URL of the mask to be applied initially."},"video_url":{"title":"Video Url","examples":["https://drive.google.com/uc?id=1iOFYbNITYwrebBBp9kaEGhBndFSRLz8k"],"type":"string","description":"The URL of the video to be segmented."}},"type":"object","x-fal-order-properties":["video_url","mask_url","prompts","box_prompts","apply_mask","boundingbox_zip"],"required":["video_url"]},"Sam2VideoOutput":{"title":"SAM2VideoOutput","properties":{"video":{"$ref":"#/components/schemas/File","description":"The segmented video."},"boundingbox_frames_zip":{"anyOf":[{"$ref":"#/components/schemas/File"},{"type":"null"}],"description":"Zip file containing per-frame bounding box overlays."}},"type":"object","x-fal-order-properties":["video","boundingbox_frames_zip"],"required":["video"]},"BoxPrompt":{"title":"BoxPrompt","properties":{"x_max":{"title":"X Max","default":0,"type":"integer","description":"X Max Coordinate of the prompt"},"y_max":{"title":"Y Max","default":0,"type":"integer","description":"Y Max Coordinate of the prompt"},"y_min":{"title":"Y Min","default":0,"type":"integer","description":"Y Min Coordinate of the box"},"x_min":{"title":"X Min","default":0,"type":"integer","description":"X Min Coordinate of the box"},"frame_index":{"title":"Frame Index","default":0,"type":"integer","description":"The frame index to interact with."}},"type":"object","x-fal-order-properties":["x_min","y_min","x_max","y_max","frame_index"]},"PointPrompt":{"title":"PointPrompt","properties":{"label":{"title":"Label","enum":[0,1],"default":1,"type":"integer","description":"Label of the prompt. 1 for foreground, 0 for background"},"x":{"title":"X","default":305,"type":"integer","description":"X Coordinate of the prompt"},"frame_index":{"title":"Frame Index","default":0,"type":"integer","description":"The frame index to interact with."},"y":{"title":"Y","default":350,"type":"integer","description":"Y Coordinate of the prompt"}},"type":"object","x-fal-order-properties":["x","y","label","frame_index"]},"File":{"title":"File","properties":{"file_name":{"title":"File Name","examples":["z9RV14K95DvU.png"],"anyOf":[{"type":"string"},{"type":"null"}],"description":"The name of the file. It will be auto-generated if not provided."},"url":{"title":"Url","type":"string","description":"The URL where the file can be downloaded from."},"content_type":{"title":"Content Type","examples":["image/png"],"anyOf":[{"type":"string"},{"type":"null"}],"description":"The mime type of the file."},"file_size":{"title":"File Size","examples":[4404019],"anyOf":[{"type":"integer"},{"type":"null"}],"description":"The size of the file in bytes."}},"type":"object","x-fal-order-properties":["url","content_type","file_name","file_size"],"required":["url"]}}},"paths":{"/fal-ai/sam2/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/sam2/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/sam2/video":{"post":{"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Sam2VideoInput"}}}},"responses":{"200":{"description":"The request status.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueueStatus"}}}}}}},"/fal-ai/sam2/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/Sam2VideoOutput"}}}}}}}},"servers":[{"url":"https://queue.fal.run"}],"security":[{"apiKeyAuth":[]}]}},{"endpoint_id":"fal-ai/heygen/v3/lipsync/speed","metadata":{"display_name":"Heygen Lipsync - Speed","category":"video-to-video","description":"Replace or dub audio on an existing video with fast audio-only lip-sync.\n","status":"active","tags":["stylized","transform","lipsync"],"updated_at":"2026-04-26T23:11:58.879Z","is_favorited":null,"thumbnail_url":"https://v3b.fal.media/files/b/0a9638b7/j0B3GftjEw-3e9otUPh5M_47dfe43e428a49259eb6c58f30e4ccfb.jpg","model_url":"https://fal.run/fal-ai/heygen/v3/lipsync/speed","license_type":"commercial","date":"2026-04-14T12:48:49.164Z","group":{"key":"heygen-lipsync-v3","label":"Lipsync - Speed"},"highlighted":false,"kind":"inference","pinned":false},"openapi":{"openapi":"3.0.4","info":{"title":"Queue OpenAPI for fal-ai/heygen/v3/lipsync/speed","version":"1.0.0","description":"The OpenAPI schema for the fal-ai/heygen/v3/lipsync/speed queue.","x-fal-metadata":{"endpointId":"fal-ai/heygen/v3/lipsync/speed","category":"video-to-video","thumbnailUrl":"https://v3b.fal.media/files/b/0a9638b7/j0B3GftjEw-3e9otUPh5M_47dfe43e428a49259eb6c58f30e4ccfb.jpg","playgroundUrl":"https://fal.ai/models/fal-ai/heygen/v3/lipsync/speed","documentationUrl":"https://fal.ai/models/fal-ai/heygen/v3/lipsync/speed/api","about":"Lip-sync a video using Speed mode — faster processing.\n\nBilled per second of output video ($0.0500/s)."}},"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"]},"HeygenV3LipsyncSpeedInput":{"properties":{"enable_dynamic_duration":{"title":"Enable Dynamic Duration","description":"Allow duration adjustment to match the new audio.","default":true,"type":"boolean"},"title":{"title":"Title","description":"Optional title for the lipsync job.","anyOf":[{"type":"string"},{"type":"null"}]},"video_url":{"title":"Video Url","description":"URL of the source video to lip-sync.","examples":["https://v3b.fal.media/files/b/0a9004c7/FM7Q5tK2b59x66Bl8HC0Z_vt-lang-en.mp4"],"type":"string"},"end_time":{"title":"End Time","description":"End time in seconds for partial lipsync.","anyOf":[{"type":"number","minimum":0},{"type":"null"}]},"disable_music_track":{"title":"Disable Music Track","description":"Remove background music from the source video.","default":false,"type":"boolean"},"enable_speech_enhancement":{"title":"Enable Speech Enhancement","description":"Enhance the replacement audio quality.","default":false,"type":"boolean"},"enable_caption":{"title":"Enable Caption","description":"Generate captions in the output video.","default":false,"type":"boolean"},"start_time":{"title":"Start Time","description":"Start time in seconds for partial lipsync.","anyOf":[{"type":"number","minimum":0},{"type":"null"}]},"audio_url":{"title":"Audio Url","description":"URL of the replacement audio file.","examples":["https://v3b.fal.media/files/b/example/new_audio.mp3"],"type":"string"}},"description":"Base request for lip-syncing a video (mode is determined by the endpoint).","required":["video_url","audio_url"],"type":"object","title":"V3LipsyncBaseRequest","x-fal-order-properties":["video_url","audio_url","title","enable_caption","enable_dynamic_duration","disable_music_track","enable_speech_enhancement","start_time","end_time"]},"HeygenV3LipsyncSpeedOutput":{"properties":{"caption_file":{"description":"Generated caption file when enable_caption is enabled and HeyGen returns one.","anyOf":[{"$ref":"#/components/schemas/File"},{"type":"null"}]},"video":{"$ref":"#/components/schemas/File","description":"The lip-synced video file with new audio synced.","examples":[{"url":"https://v3b.fal.media/files/b/0a8f61f5/SwAbhEQ0tNLthNkyTqCRn_overdubbed.mp4"}]}},"description":"Output from the Lipsync API.","required":["video"],"type":"object","title":"V3LipsyncOutput","x-fal-order-properties":["video","caption_file"]},"File":{"properties":{"url":{"title":"Url","description":"The URL where the file can be downloaded from.","type":"string"},"file_name":{"title":"File Name","description":"The name of the file. It will be auto-generated if not provided.","examples":["z9RV14K95DvU.png"],"anyOf":[{"type":"string"},{"type":"null"}]},"file_size":{"title":"File Size","description":"The size of the file in bytes.","examples":[4404019],"anyOf":[{"type":"integer"},{"type":"null"}]},"content_type":{"title":"Content Type","description":"The mime type of the file.","examples":["image/png"],"anyOf":[{"type":"string"},{"type":"null"}]}},"title":"File","required":["url"],"type":"object","x-fal-order-properties":["url","content_type","file_name","file_size"]}}},"paths":{"/fal-ai/heygen/v3/lipsync/speed/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/heygen/v3/lipsync/speed/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/heygen/v3/lipsync/speed":{"post":{"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HeygenV3LipsyncSpeedInput"}}}},"responses":{"200":{"description":"The request status.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueueStatus"}}}}}}},"/fal-ai/heygen/v3/lipsync/speed/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/HeygenV3LipsyncSpeedOutput"}}}}}}}},"servers":[{"url":"https://queue.fal.run"}],"security":[{"apiKeyAuth":[]}]}},{"endpoint_id":"veed/video-background-removal/green-screen","metadata":{"display_name":"Video Background Removal","category":"video-to-video","description":"Remove background from videos filmed using chromakey, with automatic green spill suppression for clean, professional edges.","status":"active","tags":[],"updated_at":"2026-08-20T22:02:47.146Z","is_favorited":null,"thumbnail_url":"https://v3b.fal.media/files/b/kangaroo/2dnJmbIsYHIB4aBpIgI0L_0044788dd750470589b08c44e7dc1087.jpg","model_url":"https://fal.run/veed/video-background-removal/green-screen","license_type":"commercial","date":"2025-11-28T16:14:11.401Z","group":{"key":"video-background-removal","label":"Video To Video [green-screen]"},"highlighted":false,"kind":"inference","pinned":false},"openapi":{"openapi":"3.0.4","info":{"title":"Queue OpenAPI for veed/video-background-removal/green-screen","version":"1.0.0","description":"The OpenAPI schema for the veed/video-background-removal/green-screen queue.","x-fal-metadata":{"endpointId":"veed/video-background-removal/green-screen","category":"video-to-video","thumbnailUrl":"https://v3b.fal.media/files/b/kangaroo/2dnJmbIsYHIB4aBpIgI0L_0044788dd750470589b08c44e7dc1087.jpg","playgroundUrl":"https://fal.ai/models/veed/video-background-removal/green-screen","documentationUrl":"https://fal.ai/models/veed/video-background-removal/green-screen/api","about":"Infer Green Screen"}},"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"]},"VideoBackgroundRemovalGreenScreenInput":{"type":"object","x-fal-order-properties":["video_url","output_codec","spill_suppression_strength"],"properties":{"output_codec":{"type":"string","enum":["vp9","h264"],"default":"vp9","title":"Output Codec","description":"Single VP9 video with alpha channel or two videos (rgb and alpha) in H264 format. H264 is recommended for better RGB quality."},"spill_suppression_strength":{"anyOf":[{"type":"number","minimum":0,"maximum":1},{"type":"null"}],"default":0.8,"title":"Spill Suppression Strength","description":"Increase the value if green spots remain in the video, decrease if color changes are noticed on the extracted subject."},"video_url":{"format":"uri","maxLength":2083,"examples":["https://v3b.fal.media/files/b/0a849c38/zoA0frujpZUkj07NtXytv_jessica.mp4"],"title":"Video Url","type":"string","minLength":1}},"required":["video_url"],"title":"GreenScreenRembgInput"},"VideoBackgroundRemovalGreenScreenOutput":{"type":"object","x-fal-order-properties":["video"],"properties":{"video":{"examples":[[{"content_type":"video/webm","url":"https://v3b.fal.media/files/b/0a849c48/MFOmvAhK4vvUsFsMVmw0P_output.webm"}]],"type":"array","title":"Video","items":{"$ref":"#/components/schemas/File"}}},"required":["video"],"title":"GreenScreenRembgOutput"},"File":{"type":"object","x-fal-order-properties":["url","content_type","file_name","file_size"],"properties":{"content_type":{"anyOf":[{"type":"string"},{"type":"null"}],"examples":["image/png"],"description":"The mime type of the file.","title":"Content Type"},"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"},"url":{"type":"string","description":"The URL where the file can be downloaded from.","title":"Url"},"file_size":{"anyOf":[{"type":"integer"},{"type":"null"}],"examples":[4404019],"description":"The size of the file in bytes.","title":"File Size"}},"required":["url"],"title":"File"}}},"paths":{"/veed/video-background-removal/green-screen/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"}}}}}}},"/veed/video-background-removal/green-screen/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."}}}}}}}}},"/veed/video-background-removal/green-screen":{"post":{"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VideoBackgroundRemovalGreenScreenInput"}}}},"responses":{"200":{"description":"The request status.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueueStatus"}}}}}}},"/veed/video-background-removal/green-screen/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/VideoBackgroundRemovalGreenScreenOutput"}}}}}}}},"servers":[{"url":"https://queue.fal.run"}],"security":[{"apiKeyAuth":[]}]}},{"endpoint_id":"fal-ai/luma-dream-machine/ray-2/reframe","metadata":{"display_name":"Luma Ray 2 Reframe","category":"video-to-video","description":"Adjust and enhance videos with Ray-2 Reframe. This advanced tool seamlessly reframes videos to your desired aspect ratio, intelligently inpainting missing regions to ensure realistic visuals and coherent motion, delivering exceptional quality and creative flexibility.","status":"active","tags":["reframe","outpaint"],"updated_at":"2026-04-21T17:51:39.909Z","is_favorited":null,"thumbnail_url":"https://storage.googleapis.com/falserverless/gallery/luma-dream-machine-ray-2.webp","model_url":"https://fal.run/fal-ai/luma-dream-machine/ray-2/reframe","license_type":"commercial","date":"2025-06-03T15:50:57.754Z","group":{"key":"luma-dream-machine","label":"Reframe (Ray 2)"},"highlighted":false,"kind":"inference","pinned":false},"openapi":{"openapi":"3.0.4","info":{"title":"Queue OpenAPI for fal-ai/luma-dream-machine/ray-2/reframe","version":"1.0.0","description":"The OpenAPI schema for the fal-ai/luma-dream-machine/ray-2/reframe queue.","x-fal-metadata":{"endpointId":"fal-ai/luma-dream-machine/ray-2/reframe","category":"video-to-video","thumbnailUrl":"https://storage.googleapis.com/falserverless/gallery/luma-dream-machine-ray-2.webp","playgroundUrl":"https://fal.ai/models/fal-ai/luma-dream-machine/ray-2/reframe","documentationUrl":"https://fal.ai/models/fal-ai/luma-dream-machine/ray-2/reframe/api","about":"Ray2 Reframe 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"]},"LumaDreamMachineRay2ReframeInput":{"x-fal-order-properties":["video_url","aspect_ratio","image_url","grid_position_x","grid_position_y","prompt","x_end","x_start","y_end","y_start"],"properties":{"aspect_ratio":{"examples":["9:16"],"description":"The aspect ratio of the reframed video","type":"string","enum":["1:1","16:9","9:16","4:3","3:4","21:9","9:21"],"title":"Aspect Ratio"},"y_end":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"End Y coordinate for reframing","title":"Y End"},"grid_position_x":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"X position of the grid for reframing","title":"Grid Position X"},"x_end":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"End X coordinate for reframing","title":"X End"},"y_start":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"Start Y coordinate for reframing","title":"Y Start"},"prompt":{"anyOf":[{"minLength":1,"type":"string","maxLength":5000},{"type":"null"}],"description":"Optional prompt for reframing","title":"Prompt"},"grid_position_y":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"Y position of the grid for reframing","title":"Grid Position Y"},"x_start":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"Start X coordinate for reframing","title":"X Start"},"video_url":{"examples":["https://v3.fal.media/files/zebra/9aDde3Te2kuJYHdR0Kz8R_output.mp4"],"description":"URL of the input video to reframe","type":"string","title":"Video Url"},"image_url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Optional URL of the first frame image for reframing","title":"Image Url"}},"type":"object","required":["video_url","aspect_ratio"],"title":"ReframeVideoRequest"},"LumaDreamMachineRay2ReframeOutput":{"x-fal-order-properties":["video"],"properties":{"video":{"examples":[{"url":"https://v3.fal.media/files/lion/L9nkXSW1MCj2oDimeJ4w5_output.mp4"}],"$ref":"#/components/schemas/File","description":"URL of the reframed video"}},"type":"object","required":["video"],"title":"ReframeOutput"},"File":{"x-fal-order-properties":["url","content_type","file_name","file_size"],"properties":{"file_size":{"examples":[4404019],"anyOf":[{"type":"integer"},{"type":"null"}],"description":"The size of the file in bytes.","title":"File Size"},"url":{"description":"The URL where the file can be downloaded from.","type":"string","title":"Url"},"content_type":{"examples":["image/png"],"anyOf":[{"type":"string"},{"type":"null"}],"description":"The mime type of the file.","title":"Content Type"},"file_name":{"examples":["z9RV14K95DvU.png"],"anyOf":[{"type":"string"},{"type":"null"}],"description":"The name of the file. It will be auto-generated if not provided.","title":"File Name"}},"type":"object","required":["url"],"title":"File"}}},"paths":{"/fal-ai/luma-dream-machine/ray-2/reframe/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/luma-dream-machine/ray-2/reframe/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/luma-dream-machine/ray-2/reframe":{"post":{"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LumaDreamMachineRay2ReframeInput"}}}},"responses":{"200":{"description":"The request status.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueueStatus"}}}}}}},"/fal-ai/luma-dream-machine/ray-2/reframe/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/LumaDreamMachineRay2ReframeOutput"}}}}}}}},"servers":[{"url":"https://queue.fal.run"}],"security":[{"apiKeyAuth":[]}]}},{"endpoint_id":"fal-ai/bernini-r/reference-edit-video","metadata":{"display_name":"Bernini-R Reference Edit Video","category":"video-to-video","description":"Edit a video guided by reference images with Bernini-R, bringing an object, material, background, style, or weather from a reference image into your video.","status":"active","tags":["edit","reference","transform"],"updated_at":"2026-07-01T04:56:00.169Z","is_favorited":null,"thumbnail_url":"https://v3b.fal.media/files/b/0a9d8233/HjxyBEnMK-Hg5zdp7rqvj_fe33464759ce4900be125ea15e254a6c.jpg","model_url":"https://fal.run/fal-ai/bernini-r/reference-edit-video","license_type":"commercial","date":"2026-06-08T19:21:38.206Z","group":{"key":"bernini-r","label":"Reference Edit Video"},"highlighted":false,"kind":"inference","pinned":false},"openapi":{"openapi":"3.0.4","info":{"title":"Queue OpenAPI for fal-ai/bernini-r/reference-edit-video","version":"1.0.0","description":"For every second of 848px (default) video you generated, you will be charged $0.08/second. Your request will be scaled by resolution along the longest edge. The scaling multiplier is given by 0.5 for ≤576px, 1 for 848px, and 2 for 1280px.","x-fal-metadata":{"endpointId":"fal-ai/bernini-r/reference-edit-video","category":"video-to-video","thumbnailUrl":"https://v3b.fal.media/files/b/0a9d8233/HjxyBEnMK-Hg5zdp7rqvj_fe33464759ce4900be125ea15e254a6c.jpg","playgroundUrl":"https://fal.ai/models/fal-ai/bernini-r/reference-edit-video","documentationUrl":"https://fal.ai/models/fal-ai/bernini-r/reference-edit-video/api","about":"Reference Edit 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"]},"BerniniRReferenceEditVideoInput":{"required":["prompt","video_url","reference_image_urls"],"title":"ReferenceEditVideoInput","properties":{"num_frames":{"title":"Num Frames","default":81,"description":"Number of frames. Snapped internally to 4k+1.","maximum":121,"type":"integer","minimum":5},"num_inference_steps":{"title":"Num Inference Steps","default":30,"description":"Number of denoising steps.","maximum":50,"type":"integer","minimum":1},"seed":{"title":"Seed","anyOf":[{"type":"integer"},{"type":"null"}],"description":"Seed for reproducibility. Random when omitted."},"acceleration":{"title":"Acceleration","default":"none","enum":["none","regular"],"description":"Acceleration level. 'regular' enables MagCache step-skipping for faster generation at a small quality cost; 'none' (default) runs the full denoising schedule.","type":"string"},"video_url":{"title":"Video Url","description":"Source video to edit.","type":"string","examples":["https://storage.googleapis.com/falserverless/example_inputs/seedance_pro_i2v.mp4"]},"prompt":{"title":"Prompt","description":"Text prompt or editing instruction.","type":"string","examples":["A cute corgi leaping in a sunny park, Van Gogh oil-painting style."]},"negative_prompt":{"title":"Negative Prompt","anyOf":[{"type":"string"},{"type":"null"}],"description":"Negative prompt. Defaults to the standard Wan2.2 negative prompt."},"enable_prompt_expansion":{"title":"Enable Prompt Expansion","default":false,"description":"Rewrite the prompt with an LLM before generation. The model is tuned on enhanced prompts; off by default.","type":"boolean"},"max_image_size":{"title":"Max Image Size","default":848,"description":"Long-edge size (px). Sets the output size for generation tasks and caps source/reference media for editing tasks.","maximum":1280,"type":"integer","minimum":256},"reference_image_urls":{"title":"Reference Image Urls","description":"Reference image(s) guiding the edit; up to 5.","items":{"type":"string","_fal_ui_field":"image"},"type":"array","maxItems":5,"examples":[["https://storage.googleapis.com/falserverless/example_inputs/birefnet-input.jpeg"]],"minItems":1},"frames_per_second":{"title":"Frames Per Second","default":16,"description":"Output frames per second.","maximum":30,"type":"integer","minimum":4}},"x-fal-order-properties":["prompt","negative_prompt","num_inference_steps","max_image_size","seed","enable_prompt_expansion","num_frames","frames_per_second","acceleration","video_url","reference_image_urls"],"type":"object"},"BerniniRReferenceEditVideoOutput":{"required":["video","seed"],"title":"VideoOutput","properties":{"video":{"description":"Generated / edited video.","$ref":"#/components/schemas/File"},"actual_prompt":{"title":"Actual Prompt","anyOf":[{"type":"string"},{"type":"null"}],"description":"The final prompt after expansion (set only when prompt expansion ran)."},"seed":{"title":"Seed","description":"Seed used for generation.","type":"integer"}},"x-fal-order-properties":["video","seed","actual_prompt"],"type":"object"},"File":{"required":["url"],"title":"File","properties":{"file_size":{"title":"File Size","anyOf":[{"type":"integer"},{"type":"null"}],"description":"The size of the file in bytes.","examples":[4404019]},"file_name":{"title":"File Name","anyOf":[{"type":"string"},{"type":"null"}],"description":"The name of the file. It will be auto-generated if not provided.","examples":["z9RV14K95DvU.png"]},"url":{"title":"Url","description":"The URL where the file can be downloaded from.","type":"string"},"content_type":{"title":"Content Type","anyOf":[{"type":"string"},{"type":"null"}],"description":"The mime type of the file.","examples":["image/png"]}},"x-fal-order-properties":["url","content_type","file_name","file_size"],"type":"object"}}},"paths":{"/fal-ai/bernini-r/reference-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/bernini-r/reference-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/bernini-r/reference-edit-video":{"post":{"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BerniniRReferenceEditVideoInput"}}}},"responses":{"200":{"description":"The request status.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueueStatus"}}}}}}},"/fal-ai/bernini-r/reference-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/BerniniRReferenceEditVideoOutput"}}}}}}}},"servers":[{"url":"https://queue.fal.run"}],"security":[{"apiKeyAuth":[]}]}},{"endpoint_id":"decart/lucy2-vton/realtime","metadata":{"display_name":"Lucy 2.1 VTON Realtime","category":"video-to-video","description":"Realtime Try On experience with Decart Lucy 2.1 VTON","status":"active","tags":[],"updated_at":"2026-08-26T20:55:32.901Z","is_favorited":null,"thumbnail_url":"https://v3b.fal.media/files/b/0a8dec83/HYSrrZyh0t83bYaiRt7jK_01253b85d4d54911b45e23f8cfeafd69.jpg","model_url":"https://fal.run/decart/lucy2-vton/realtime","license_type":"commercial","date":"2026-04-29T10:30:43.526Z","highlighted":false,"kind":"inference","pinned":false},"openapi":{"openapi":"3.0.4","info":{"title":"Queue OpenAPI for decart/lucy2-vton/realtime","version":"1.0.0","description":"The OpenAPI schema for the decart/lucy2-vton/realtime queue.","x-fal-metadata":{"endpointId":"decart/lucy2-vton/realtime","category":"video-to-video","thumbnailUrl":"https://v3b.fal.media/files/b/0a8dec83/HYSrrZyh0t83bYaiRt7jK_01253b85d4d54911b45e23f8cfeafd69.jpg","playgroundUrl":"https://fal.ai/models/decart/lucy2-vton/realtime","documentationUrl":"https://fal.ai/models/decart/lucy2-vton/realtime/api"}},"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"]},"Lucy2VtonRealtimeInput":{"description":"Input model for the Lucy 2 RT signaling proxy.\n\nUses extra=\"allow\" so WebRTC signaling messages ({type: \"offer\", sdp: ...})\npass validation alongside application messages. The schema exposes prompt,\nimage_url, and reference_image_url for playground form rendering.","title":"Lucy2RealtimeInput","type":"object","properties":{"reference_image_url":{"anyOf":[{"ui":{"field":"url"},"type":"string"},{"type":"null"}],"description":"Reference image URL or data URI. When set, Lucy 2 will use this as a character reference for the transformation.","default":"https://v3b.fal.media/files/b/0a985506/y57_APcgGHlPxOOHIOqYO_15129.png","title":"Reference Image Url"},"prompt":{"description":"Text prompt for the real-time transformation.","type":"string","default":"Substitute the current top with the outfit from the reference image, matching its color, material, and fit","title":"Prompt"},"image_url":{"description":"Image data URI or HTTP(S) URL for realtime frame input. Data URI format: data:image/<type>;base64,...","type":"string","default":"","title":"Image Url"}},"x-fal-order-properties":["prompt","image_url","reference_image_url"],"additionalProperties":true},"Lucy2VtonRealtimeOutput":{"type":"object","additionalProperties":true}}},"paths":{"/decart/lucy2-vton/realtime/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"}}}}}}},"/decart/lucy2-vton/realtime/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."}}}}}}}}},"/decart/lucy2-vton/realtime":{"post":{"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Lucy2VtonRealtimeInput"}}}},"responses":{"200":{"description":"The request status.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueueStatus"}}}}}}},"/decart/lucy2-vton/realtime/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/Lucy2VtonRealtimeOutput"}}}}}}}},"servers":[{"url":"https://queue.fal.run"}],"security":[{"apiKeyAuth":[]}]}},{"endpoint_id":"topaz/sdr-to-hdr/video","metadata":{"display_name":"Topaz Sdr To Hdr Video","category":"video-to-video","description":"Professional SDR-to-HDR conversion powered by Topaz Labs. Hyperion 2.5 redistributes luminance and color while preserving detail in text, faces and motion. Best for giving flat SDR footage a true HDR look.","status":"active","tags":["Sdr","video","hdr"],"updated_at":"2026-09-05T01:07:15.958Z","is_favorited":null,"thumbnail_url":"https://v3b.fal.media/files/b/0aa5f408/lYPF0zAsvN4YNzqdxmndB.jpg","model_url":"https://fal.run/topaz/sdr-to-hdr/video","license_type":"commercial","date":"2026-08-11T21:02:27.760Z","highlighted":false,"kind":"inference","pinned":false},"openapi":{"openapi":"3.0.4","info":{"title":"Queue OpenAPI for topaz/sdr-to-hdr/video","version":"1.0.0","description":"The OpenAPI schema for the topaz/sdr-to-hdr/video queue.","x-fal-metadata":{"endpointId":"topaz/sdr-to-hdr/video","category":"video-to-video","thumbnailUrl":"https://v3b.fal.media/files/b/0aa5f408/lYPF0zAsvN4YNzqdxmndB.jpg","playgroundUrl":"https://fal.ai/models/topaz/sdr-to-hdr/video","documentationUrl":"https://fal.ai/models/topaz/sdr-to-hdr/video/api","about":"# Topaz SDR to HDR (Hyperion 2.5)\n\nAutomatically converts SDR footage into HDR, redistributing\nluminance and color across tonal ranges while preserving detail in\ntext, faces and motion. Resolution and frame rate are kept from the\nsource.\n\nVideos are limited to 5 minutes."}},"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"]},"SdrToHdrVideoInput":{"x-fal-order-properties":["video_url","output_format"],"properties":{"output_format":{"description":"Output container/codec: mp4 delivers 10-bit H265 HDR10; prores delivers 10-bit ProRes 422 HQ in a .mov, Topaz's recommended format for grading and mastering workflows (much larger files).","type":"string","enum":["mp4","prores"],"default":"mp4","title":"Output Format"},"video_url":{"examples":["https://v3.fal.media/files/kangaroo/y5-1YTGpun17eSeggZMzX_video-1733468228.mp4"],"description":"URL of the SDR video to convert to HDR","type":"string","title":"Video Url"}},"type":"object","title":"VideoSdrToHdrRequest","required":["video_url"]},"SdrToHdrVideoOutput":{"x-fal-order-properties":["video"],"properties":{"video":{"examples":[{"url":"https://v3.fal.media/files/penguin/ztj_LB4gQlW6HIfVs8zX4_upscaled.mp4"}],"$ref":"#/components/schemas/File","description":"The upscaled video file"}},"type":"object","title":"VideoUpscaleOutput","required":["video"]},"File":{"x-fal-order-properties":["url","content_type","file_name","file_size"],"properties":{"file_size":{"examples":[4404019],"anyOf":[{"type":"integer"},{"type":"null"}],"description":"The size of the file in bytes.","title":"File Size"},"url":{"description":"The URL where the file can be downloaded from.","type":"string","title":"Url"},"content_type":{"examples":["image/png"],"anyOf":[{"type":"string"},{"type":"null"}],"description":"The mime type of the file.","title":"Content Type"},"file_name":{"examples":["z9RV14K95DvU.png"],"anyOf":[{"type":"string"},{"type":"null"}],"description":"The name of the file. It will be auto-generated if not provided.","title":"File Name"}},"type":"object","title":"File","required":["url"]}}},"paths":{"/topaz/sdr-to-hdr/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"}}}}}}},"/topaz/sdr-to-hdr/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."}}}}}}}}},"/topaz/sdr-to-hdr/video":{"post":{"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SdrToHdrVideoInput"}}}},"responses":{"200":{"description":"The request status.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueueStatus"}}}}}}},"/topaz/sdr-to-hdr/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/SdrToHdrVideoOutput"}}}}}}}},"servers":[{"url":"https://queue.fal.run"}],"security":[{"apiKeyAuth":[]}]}},{"endpoint_id":"fal-ai/wan-vace-14b/depth","metadata":{"display_name":"Wan VACE 14B","category":"video-to-video","description":"VACE is a video generation model that uses a source image, mask, and video to create prompted videos with controllable sources.","status":"active","tags":["image-to-video","video-to-video","text-to-video"],"updated_at":"2026-04-21T17:56:14.226Z","is_favorited":null,"thumbnail_url":"https://storage.googleapis.com/fal_cdn/fal/Sound-1.jpg","model_url":"https://fal.run/fal-ai/wan-vace-14b/depth","license_type":"commercial","date":"2025-06-18T19:17:12.449Z","group":{"key":"wan-vace-14b","label":"Depth"},"highlighted":false,"kind":"inference","duration_estimate":1,"pinned":false},"openapi":{"openapi":"3.0.4","info":{"title":"Queue OpenAPI for fal-ai/wan-vace-14b/depth","version":"1.0.0","description":"The OpenAPI schema for the fal-ai/wan-vace-14b/depth queue.","x-fal-metadata":{"endpointId":"fal-ai/wan-vace-14b/depth","category":"video-to-video","thumbnailUrl":"https://storage.googleapis.com/fal_cdn/fal/Sound-1.jpg","playgroundUrl":"https://fal.ai/models/fal-ai/wan-vace-14b/depth","documentationUrl":"https://fal.ai/models/fal-ai/wan-vace-14b/depth/api","about":"Endpoint for generating video from depth maps."}},"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"]},"WanVace14bDepthInput":{"required":["prompt","video_url"],"properties":{"enable_auto_downsample":{"default":false,"title":"Enable Auto Downsample","examples":[false],"type":"boolean","description":"If true, the model will automatically temporally downsample the video to an appropriate frame length for the model, then will interpolate it back to the original frame length."},"seed":{"title":"Seed","anyOf":[{"type":"integer"},{"type":"null"}],"description":"Random seed for reproducibility. If None, a random seed is chosen."},"auto_downsample_min_fps":{"maximum":60,"title":"Auto Downsample Min FPS","examples":[15],"default":15,"minimum":1,"type":"number","description":"The minimum frames per second to downsample the video to. This is used to help determine the auto downsample factor to try and find the lowest detail-preserving downsample factor. The default value is appropriate for most videos, if you are using a video with very fast motion, you may need to increase this value. If your video has a very low amount of motion, you could decrease this value to allow for higher downsampling and thus longer sequences."},"interpolator_model":{"default":"film","title":"Interpolator Model","examples":["film"],"enum":["rife","film"],"type":"string","description":"The model to use for frame interpolation. Options are 'rife' or 'film'."},"aspect_ratio":{"default":"auto","title":"Aspect Ratio","enum":["auto","16:9","1:1","9:16"],"type":"string","description":"Aspect ratio of the generated video."},"sampler":{"default":"unipc","title":"Sampler","examples":["unipc"],"enum":["unipc","dpm++","euler"],"type":"string","description":"Sampler to use for video generation."},"last_frame_url":{"title":"Last Frame URL","anyOf":[{"type":"string"},{"type":"null"}],"description":"URL to the last frame of the video. If provided, the model will use this frame as a reference."},"ref_image_urls":{"title":"Reference Image URLs","items":{"type":"string"},"type":"array","description":"URLs to source reference image. If provided, the model will use this image as reference."},"frames_per_second":{"default":16,"title":"Frames per Second","anyOf":[{"maximum":30,"minimum":5,"type":"integer"},{"type":"null"}],"description":"Frames per second of the generated video. Must be between 5 to 30. Ignored if match_input_frames_per_second is true."},"first_frame_url":{"title":"First Frame URL","anyOf":[{"type":"string"},{"type":"null"}],"description":"URL to the first frame of the video. If provided, the model will use this frame as a reference."},"video_url":{"title":"Video URL","examples":["https://storage.googleapis.com/falserverless/example_inputs/wan-vace-depth-video.mp4"],"type":"string","description":"URL to the source video file. Required for depth task."},"guidance_scale":{"maximum":10,"title":"Guidance Scale","examples":[5],"default":5,"minimum":1,"type":"number","description":"Guidance scale for classifier-free guidance. Higher values encourage the model to generate images closely related to the text prompt."},"prompt":{"title":"Prompt","examples":["A confident woman strides toward the camera down a sun-drenched, empty street. Her vibrant summer dress, a flowing emerald green with delicate white floral embroidery, billows slightly in the gentle breeze.  She carries a stylish, woven straw bag, its natural tan contrasting beautifully with the dress. The dress's fabric shimmers subtly, catching the light. The white embroidery is intricate, each tiny flower meticulously detailed.  Her expression is focused, yet relaxed, radiating self-assuredness. Her auburn hair, partially pulled back in a loose braid, catches the sunlight, creating warm highlights. The street itself is paved with warm, grey cobblestones, reflecting the bright sun. The mood is optimistic and serene, emphasizing the woman's independence and carefree spirit. High resolution 4k"],"type":"string","description":"The text prompt to guide video generation."},"num_interpolated_frames":{"maximum":5,"title":"Number of Interpolated Frames","examples":[0],"default":0,"minimum":0,"type":"integer","description":"Number of frames to interpolate between the original frames. A value of 0 means no interpolation."},"transparency_mode":{"default":"content_aware","title":"Transparency Mode","examples":["content_aware"],"enum":["content_aware","white","black"],"type":"string","description":"The transparency mode to apply to the first and last frames. This controls how the transparent areas of the first and last frames are filled."},"shift":{"maximum":15,"title":"Shift","default":5,"minimum":1,"type":"number","description":"Shift parameter for video generation."},"resolution":{"default":"auto","title":"Resolution","enum":["auto","240p","360p","480p","580p","720p"],"type":"string","description":"Resolution of the generated video."},"num_frames":{"maximum":241,"title":"Number of Frames","default":81,"minimum":17,"type":"integer","description":"Number of frames to generate. Must be between 81 to 241 (inclusive)."},"num_inference_steps":{"maximum":50,"title":"Number of Inference Steps","default":30,"minimum":2,"type":"integer","description":"Number of inference steps for sampling. Higher values give better quality but take longer."},"enable_prompt_expansion":{"default":false,"title":"Enable Prompt Expansion","examples":[false],"type":"boolean","description":"Whether to enable prompt expansion."},"acceleration":{"default":"regular","title":"Acceleration","examples":["regular"],"anyOf":[{"enum":["none","low","regular"],"type":"string"},{"type":"null"}],"description":"Acceleration to use for inference. Options are 'none' or 'regular'. Accelerated inference will very slightly affect output, but will be significantly faster."},"sync_mode":{"default":false,"title":"Sync Mode","examples":[false],"type":"boolean","description":"If `True`, the media will be returned as a data URI and the output data won't be available in the request history."},"enable_safety_checker":{"default":false,"title":"Enable Safety Checker","examples":[true],"type":"boolean","description":"If set to true, the safety checker will be enabled. Disabling it requires account authorization; unauthorized requests are always checked."},"match_input_num_frames":{"default":false,"title":"Match Input Number of Frames","examples":[false],"type":"boolean","description":"If true, the number of frames in the generated video will match the number of frames in the input video. If false, the number of frames will be determined by the num_frames parameter."},"video_quality":{"default":"high","title":"Video Quality","examples":["high"],"enum":["low","medium","high","maximum"],"type":"string","description":"The quality of the generated video."},"return_frames_zip":{"default":false,"title":"Return Frames Zip","examples":[false],"type":"boolean","description":"If true, also return a ZIP file containing all generated frames."},"negative_prompt":{"default":"letterboxing, borders, black bars, bright colors, overexposed, static, blurred details, subtitles, style, artwork, painting, picture, still, overall gray, worst quality, low quality, JPEG compression residue, ugly, incomplete, extra fingers, poorly drawn hands, poorly drawn faces, deformed, disfigured, malformed limbs, fused fingers, still picture, cluttered background, three legs, many people in the background, walking backwards","title":"Negative Prompt","examples":["letterboxing, borders, black bars, bright colors, overexposed, static, blurred details, subtitles, style, artwork, painting, picture, still, overall gray, worst quality, low quality, JPEG compression residue, ugly, incomplete, extra fingers, poorly drawn hands, poorly drawn faces, deformed, disfigured, malformed limbs, fused fingers, still picture, cluttered background, three legs, many people in the background, walking backwards"],"type":"string","description":"Negative prompt for video generation."},"video_write_mode":{"default":"balanced","title":"Video Write Mode","examples":["balanced"],"enum":["fast","balanced","small"],"type":"string","description":"The write mode of the generated video."},"preprocess":{"default":false,"title":"Preprocess","examples":[false],"description":"Whether to preprocess the input video.","type":"boolean"},"temporal_downsample_factor":{"maximum":5,"title":"Temporal Downsample Factor","examples":[0],"default":0,"minimum":0,"type":"integer","description":"Temporal downsample factor for the video. This is an integer value that determines how many frames to skip in the video. A value of 0 means no downsampling. For each downsample factor, one upsample factor will automatically be applied."},"match_input_frames_per_second":{"default":false,"title":"Match Input Frames Per Second","examples":[false],"type":"boolean","description":"If true, the frames per second of the generated video will match the input video. If false, the frames per second will be determined by the frames_per_second parameter."}},"title":"WanVACEDepthRequest","x-fal-order-properties":["prompt","negative_prompt","match_input_num_frames","num_frames","match_input_frames_per_second","frames_per_second","seed","resolution","aspect_ratio","num_inference_steps","guidance_scale","sampler","shift","video_url","ref_image_urls","first_frame_url","last_frame_url","enable_safety_checker","enable_prompt_expansion","preprocess","acceleration","video_quality","video_write_mode","num_interpolated_frames","temporal_downsample_factor","enable_auto_downsample","auto_downsample_min_fps","interpolator_model","sync_mode","transparency_mode","return_frames_zip"],"type":"object"},"WanVace14bDepthOutput":{"required":["video","prompt","seed"],"properties":{"seed":{"title":"Seed","type":"integer","description":"The seed used for generation."},"video":{"examples":[{"url":"https://storage.googleapis.com/falserverless/example_outputs/wan-vace-depth-output.mp4"}],"$ref":"#/components/schemas/VideoFile","description":"The generated depth video file."},"frames_zip":{"anyOf":[{"$ref":"#/components/schemas/File"},{"type":"null"}],"description":"ZIP archive of all video frames if requested."},"prompt":{"title":"Prompt","type":"string","description":"The prompt used for generation."}},"title":"WanVACEDepthResponse","x-fal-order-properties":["video","prompt","seed","frames_zip"],"type":"object"},"VideoFile":{"required":["url"],"properties":{"url":{"title":"Url","type":"string","description":"The URL where the file can be downloaded from."},"num_frames":{"title":"Num Frames","anyOf":[{"type":"integer"},{"type":"null"}],"description":"The number of frames in the video"},"file_name":{"title":"File Name","examples":["z9RV14K95DvU.png"],"anyOf":[{"type":"string"},{"type":"null"}],"description":"The name of the file. It will be auto-generated if not provided."},"duration":{"title":"Duration","anyOf":[{"type":"number"},{"type":"null"}],"description":"The duration of the video"},"height":{"title":"Height","anyOf":[{"type":"integer"},{"type":"null"}],"description":"The height of the video"},"file_size":{"title":"File Size","examples":[4404019],"anyOf":[{"type":"integer"},{"type":"null"}],"description":"The size of the file in bytes."},"content_type":{"title":"Content Type","examples":["image/png"],"anyOf":[{"type":"string"},{"type":"null"}],"description":"The mime type of the file."},"fps":{"title":"Fps","anyOf":[{"type":"number"},{"type":"null"}],"description":"The FPS of the video"},"width":{"title":"Width","anyOf":[{"type":"integer"},{"type":"null"}],"description":"The width of the video"}},"title":"VideoFile","x-fal-order-properties":["url","content_type","file_name","file_size","width","height","fps","duration","num_frames"],"type":"object"},"File":{"required":["url"],"properties":{"url":{"title":"Url","type":"string","description":"The URL where the file can be downloaded from."},"file_size":{"title":"File Size","examples":[4404019],"anyOf":[{"type":"integer"},{"type":"null"}],"description":"The size of the file in bytes."},"file_name":{"title":"File Name","examples":["z9RV14K95DvU.png"],"anyOf":[{"type":"string"},{"type":"null"}],"description":"The name of the file. It will be auto-generated if not provided."},"content_type":{"title":"Content Type","examples":["image/png"],"anyOf":[{"type":"string"},{"type":"null"}],"description":"The mime type of the file."}},"title":"File","x-fal-order-properties":["url","content_type","file_name","file_size"],"type":"object"}}},"paths":{"/fal-ai/wan-vace-14b/depth/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-vace-14b/depth/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-vace-14b/depth":{"post":{"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WanVace14bDepthInput"}}}},"responses":{"200":{"description":"The request status.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueueStatus"}}}}}}},"/fal-ai/wan-vace-14b/depth/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/WanVace14bDepthOutput"}}}}}}}},"servers":[{"url":"https://queue.fal.run"}],"security":[{"apiKeyAuth":[]}]}},{"endpoint_id":"fal-ai/auto-caption","metadata":{"display_name":"Auto-Captioner","category":"video-to-video","description":"Automatically generates text captions for your videos from the audio as per text colour/font specifications","status":"active","tags":["captioning","video"],"updated_at":"2026-04-21T17:44:16.482Z","is_favorited":null,"thumbnail_url":"https://storage.googleapis.com/falserverless/gallery/caption_thumbnail.webp","model_url":"https://fal.run/fal-ai/auto-caption","date":"2025-01-03T00:00:00.000Z","highlighted":false,"pinned":false},"openapi":{"openapi":"3.0.4","info":{"title":"Queue OpenAPI for fal-ai/auto-caption","version":"1.0.0","description":"The OpenAPI schema for the fal-ai/auto-caption queue.","x-fal-metadata":{"endpointId":"fal-ai/auto-caption","category":"video-to-video","thumbnailUrl":"https://storage.googleapis.com/falserverless/gallery/caption_thumbnail.webp","playgroundUrl":"https://fal.ai/models/fal-ai/auto-caption","documentationUrl":"https://fal.ai/models/fal-ai/auto-caption/api","about":"Caption"}},"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"]},"AutoCaptionInput":{"required":["video_url"],"type":"object","title":"CaptionInput","x-fal-order-properties":["video_url","txt_color","txt_font","font_size","stroke_width","left_align","top_align","refresh_interval","text_case"],"properties":{"video_url":{"description":"URL to the .mp4 video with audio. Only videos of size <400MB are allowed.","type":"string","title":"Video Url"},"txt_color":{"description":"Colour of the text. Can be a RGB tuple, a color name, or an hexadecimal notation.","type":"string","title":"Txt Color","default":"white"},"top_align":{"description":"Top-to-bottom alignment of the text. Can be a string ('top', 'center', 'bottom') or a float (0.0-1.0)","title":"Top Align","default":"center","anyOf":[{"type":"string"},{"type":"number"}]},"font_size":{"description":"Size of text in generated captions.","type":"integer","title":"Font Size","default":24},"refresh_interval":{"minimum":0.5,"description":"Number of seconds the captions should stay on screen. A higher number will also result in more text being displayed at once.","type":"number","title":"Refresh Interval","default":1.5,"maximum":3},"stroke_width":{"description":"Width of the text strokes in pixels","type":"integer","title":"Stroke Width","default":1},"txt_font":{"description":"Font for generated captions. Choose one in 'Arial','Standard','Garamond', 'Times New Roman','Georgia', or pass a url to a .ttf file","type":"string","title":"Txt Font","default":"Standard"},"text_case":{"description":"Capitalization to apply to subtitle text. 'upper' converts text to UPPERCASE, 'lower' converts to lowercase, and 'default' preserves the original casing produced by the speech recognizer.","type":"string","title":"Text Case","default":"default","enum":["default","upper","lower"]},"left_align":{"description":"Left-to-right alignment of the text. Can be a string ('left', 'center', 'right') or a float (0.0-1.0)","title":"Left Align","default":"center","anyOf":[{"type":"string"},{"type":"number"}]}}},"AutoCaptionOutput":{"required":["video_url"],"type":"object","title":"Output","x-fal-order-properties":["video_url"],"properties":{"video_url":{"description":"URL to the caption .mp4 video.","type":"string","title":"Video Url"}}}}},"paths":{"/fal-ai/auto-caption/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/auto-caption/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/auto-caption":{"post":{"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AutoCaptionInput"}}}},"responses":{"200":{"description":"The request status.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueueStatus"}}}}}}},"/fal-ai/auto-caption/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/AutoCaptionOutput"}}}}}}}},"servers":[{"url":"https://queue.fal.run"}],"security":[{"apiKeyAuth":[]}]}}],"next_cursor":"MTI","has_more":true}
