API reference · Lightricks

lightricks/ltx-2.3-22b/reference-video-to-video/lora

Integrate this model through SandBase's unified API, with production-ready schemas and examples.

VIDEOAsyncOpen model
Production endpoint

Send your first request

OpenAI-compatible endpoint with unified authentication and usage tracking.

POSThttps://api.sandbase.ai/v1/run
Model IDlightricks/ltx-2.3-22b/reference-video-to-video/lora
01

Input Schema

37 parameters · 2 required · 35 optional

ParameterTypeRequiredDescription
imagestringRequiredAn optional URL of an image to use as the first frame of the video.
promptstringRequiredThe prompt to generate the video from.
fpsnumberOptionalThe frames per second of the generated video. · Min: 1 · Max: 60 · Default: 24
seedintegerOptionalThe seed for the random number generator.
audiostringOptionalAn optional URL of an audio to use as the audio for the video. If not provided, any audio present in the input video will be used.
lorasobject[]OptionalThe LoRAs to use for the generation.
videostringOptionalThe URL of the video to reference.
end_imagestringOptionalThe URL of the image to use as the end of the video.
schedulerstringOptionalThe scheduler to use. · Options: ltx2, linear_quadratic, beta · Default: "ltx2"
ltx2linear_quadraticbeta
num_framesintegerOptionalThe number of frames to generate. · Min: 9 · Max: 481 · Default: 121
video_sizestringOptionalThe size of the generated video. · Options: auto, square_hd, square, portrait_4_3, portrait_16_9, landscape_4_3, landscape_16_9 · Default: "auto"
autosquare_hdsquareportrait_4_3portrait_16_9landscape_4_3landscape_16_9
camera_lorastringOptionalThe camera LoRA to use. This allows you to control the camera movement of the generated video more accurately than just prompting the model to move the camera. · Options: dolly_in, dolly_out, dolly_left, dolly_right, jib_up, jib_down, static, none · Default: "none"
dolly_indolly_outdolly_leftdolly_rightjib_upjib_downstaticnone
ic_lora_typestringOptionalThe IC LoRA type to use for the generation. · Options: match_preprocessor, union, detailer, none · Default: "union"
match_preprocessoruniondetailernone
preprocessorstringOptionalThe preprocessor to use for the generation. · Options: depth, canny, pose, none · Default: "none"
depthcannyposenone
video_qualitystringOptionalThe quality of the generated video. · Options: low, medium, high, maximum · Default: "high"
lowmediumhighmaximum
audio_strengthnumberOptionalAudio conditioning strength. Lower values represent more freedom given to the model to change the audio content. · Min: 0 · Max: 1 · Default: 1
generate_audiobooleanOptionalWhether to generate audio for the video. · Default: true
use_multiscalebooleanOptionalWhether to use multi-scale generation. If True, the model will generate the video at a smaller scale first, then use the smaller video to guide the generation of a video at or above your requested size. This results in better coherence and details. · Default: true
video_strengthnumberOptionalVideo conditioning strength. Lower values represent more freedom given to the model to change the video content. · Min: 0 · Max: 1 · Default: 1
audio_cfg_scalenumberOptionalThe Classifier-Free Guidance (CFG) scale for the audio. Higher values result in more consistent and focused audio content. · Min: 1 · Max: 20 · Default: 7
audio_stg_scalenumberOptionalThe Spatiotemporal Guidance (STG) scale for the audio. Higher values result in more consistent and focused audio content. · Min: 0 · Max: 20 · Default: 0
match_input_fpsbooleanOptionalWhen true, match the output FPS to the input video's FPS instead of using the default target FPS. · Default: true
video_cfg_scalenumberOptionalThe Classifier-Free Guidance (CFG) scale for the video. Higher values result in more consistent and focused video content. · Min: 1 · Max: 20 · Default: 3
video_stg_scalenumberOptionalThe Spatiotemporal Guidance (STG) scale for the video. Higher values result in more consistent and focused video content. · Min: 0 · Max: 20 · Default: 0
video_write_modestringOptionalThe write mode of the generated video. · Options: fast, balanced, small · Default: "balanced"
fastbalancedsmall
camera_lora_scalenumberOptionalThe scale of the camera LoRA to use. This allows you to control the camera movement of the generated video more accurately than just prompting the model to move the camera. · Min: 0 · Max: 1 · Default: 1
video_output_typestringOptionalThe output type of the generated video. · Options: X264 (.mp4), VP9 (.webm), PRORES4444 (.mov), GIF (.gif) · Default: "X264 (.mp4)"
X264 (.mp4)VP9 (.webm)PRORES4444 (.mov)GIF (.gif)
match_video_lengthbooleanOptionalWhen enabled, the number of frames will be calculated based on the video duration and FPS. When disabled, use the specified num_frames. · Default: true
num_inference_stepsintegerOptionalThe number of inference steps to use. · Min: 8 · Max: 50 · Default: 40
audio_modality_scalenumberOptionalThe modality scale for the audio. Controls the ratio between video and audio modalities. · Min: 0 · Max: 10 · Default: 3
use_restart_samplingbooleanOptionalWhether to use restart sampling. This will inject a small amount of noise during each denoising step, which can help improve the quality of the generated video. · Default: false
video_modality_scalenumberOptionalThe modality scale for the video. Controls the ratio between video and audio modalities. · Min: 0 · Max: 10 · Default: 3
audio_rescaling_scalenumberOptionalThe rescaling scale for the audio. Controls the ratio between classifier-free guidance and spatiotemporal guidance. · Min: 0 · Max: 1 · Default: 0.7
video_rescaling_scalenumberOptionalThe rescaling scale for the video. Controls the ratio between classifier-free guidance and spatiotemporal guidance. · Min: 0 · Max: 1 · Default: 0.7
gradient_estimation_gammanumberOptionalThe gamma of gradient estimation during denoising. Set to 0 to disable. · Min: 0 · Max: 10 · Default: 2
distill_lora_first_pass_scalenumberOptionalThe scale of the distill LoRA to use for the first pass. Set to 0 to disable. · Min: 0 · Max: 1 · Default: 0.2
distill_lora_second_pass_scalenumberOptionalThe scale of the distill LoRA to use for the second and subsequent passes. · Min: 0 · Max: 1 · Default: 0.5
02

Output Schema

FieldTypeDescription
idstringUnique identifier for the generation task
statusstringTask status: pending, running, completed, failed, timeout
modelstringModel used for the generation
outputsarrayArray of output items
outputs[].urlstringURL of the generated artifact
outputs[].content_typestringMIME type (e.g. image/png, video/mp4)
errorobject | nullError details if failed, null on success
error.typestringMachine-readable error type code
error.messagestringHuman-readable error description

Async Workflow

This model uses asynchronous execution. Submit a request and poll for the result.

  1. Submit — POST to /v1/run, receive an id
  2. Poll — GET /v1/run/{id} until status is completed, failed, or timeout
  3. Retrieve — Read outputs from the completed response
03

Code Examples

Ready-to-run snippets

# Step 1: Submit
curl -X POST https://api.sandbase.ai/v1/run \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -d '{
  "model": "lightricks/ltx-2.3-22b/reference-video-to-video/lora",
  "fps": 24,
  "video": "https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b/reference-video-to-video/lora/output_url_0.mp4",
  "prompt": "style: cinematic/realistic. A man wearing a baseball cap walks through a modern town. He holds a coffee cup.",
  "scheduler": "ltx2",
  "num_frames": 121,
  "video_size": "auto",
  "camera_lora": "none",
  "ic_lora_type": "union",
  "preprocessor": "none",
  "video_quality": "high",
  "audio_strength": 1,
  "generate_audio": true,
  "use_multiscale": true,
  "video_strength": 1,
  "audio_cfg_scale": 7,
  "audio_stg_scale": 0,
  "match_input_fps": true,
  "video_cfg_scale": 3,
  "video_stg_scale": 0,
  "video_write_mode": "balanced",
  "camera_lora_scale": 1,
  "video_output_type": "X264 (.mp4)",
  "match_video_length": true,
  "num_inference_steps": 40,
  "audio_modality_scale": 3,
  "use_restart_sampling": false,
  "video_modality_scale": 3,
  "audio_rescaling_scale": 0.7,
  "video_rescaling_scale": 0.7,
  "gradient_estimation_gamma": 2,
  "distill_lora_first_pass_scale": 0.2,
  "distill_lora_second_pass_scale": 0.5
}'

# Step 2: Poll result (replace <id>)
curl https://api.sandbase.ai/v1/run/<id> \
  -H "Authorization: Bearer YOUR_API_KEY"