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.
Production endpoint
Send your first request
OpenAI-compatible endpoint with unified authentication and usage tracking.
POST
https://api.sandbase.ai/v1/runModel ID
lightricks/ltx-2.3-22b/reference-video-to-video/lora01
Input Schema
37 parameters · 2 required · 35 optional
| Parameter | Type | Required | Description |
|---|---|---|---|
image | string | Required | An optional URL of an image to use as the first frame of the video. |
prompt | string | Required | The prompt to generate the video from. |
fps | number | Optional | The frames per second of the generated video. · Min: 1 · Max: 60 · Default: 24 |
seed | integer | Optional | The seed for the random number generator. |
audio | string | Optional | An 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. |
loras | object[] | Optional | The LoRAs to use for the generation. |
video | string | Optional | The URL of the video to reference. |
end_image | string | Optional | The URL of the image to use as the end of the video. |
scheduler | string | Optional | The scheduler to use. · Options: ltx2, linear_quadratic, beta · Default: "ltx2" ltx2linear_quadraticbeta |
num_frames | integer | Optional | The number of frames to generate. · Min: 9 · Max: 481 · Default: 121 |
video_size | string | Optional | The 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_lora | string | Optional | 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. · 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_type | string | Optional | The IC LoRA type to use for the generation. · Options: match_preprocessor, union, detailer, none · Default: "union" match_preprocessoruniondetailernone |
preprocessor | string | Optional | The preprocessor to use for the generation. · Options: depth, canny, pose, none · Default: "none" depthcannyposenone |
video_quality | string | Optional | The quality of the generated video. · Options: low, medium, high, maximum · Default: "high" lowmediumhighmaximum |
audio_strength | number | Optional | Audio conditioning strength. Lower values represent more freedom given to the model to change the audio content. · Min: 0 · Max: 1 · Default: 1 |
generate_audio | boolean | Optional | Whether to generate audio for the video. · Default: true |
use_multiscale | boolean | Optional | Whether 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_strength | number | Optional | Video conditioning strength. Lower values represent more freedom given to the model to change the video content. · Min: 0 · Max: 1 · Default: 1 |
audio_cfg_scale | number | Optional | The 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_scale | number | Optional | The 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_fps | boolean | Optional | When true, match the output FPS to the input video's FPS instead of using the default target FPS. · Default: true |
video_cfg_scale | number | Optional | The 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_scale | number | Optional | The 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_mode | string | Optional | The write mode of the generated video. · Options: fast, balanced, small · Default: "balanced" fastbalancedsmall |
camera_lora_scale | number | Optional | The 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_type | string | Optional | The 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_length | boolean | Optional | When 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_steps | integer | Optional | The number of inference steps to use. · Min: 8 · Max: 50 · Default: 40 |
audio_modality_scale | number | Optional | The modality scale for the audio. Controls the ratio between video and audio modalities. · Min: 0 · Max: 10 · Default: 3 |
use_restart_sampling | boolean | Optional | Whether 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_scale | number | Optional | The modality scale for the video. Controls the ratio between video and audio modalities. · Min: 0 · Max: 10 · Default: 3 |
audio_rescaling_scale | number | Optional | The rescaling scale for the audio. Controls the ratio between classifier-free guidance and spatiotemporal guidance. · Min: 0 · Max: 1 · Default: 0.7 |
video_rescaling_scale | number | Optional | The rescaling scale for the video. Controls the ratio between classifier-free guidance and spatiotemporal guidance. · Min: 0 · Max: 1 · Default: 0.7 |
gradient_estimation_gamma | number | Optional | The gamma of gradient estimation during denoising. Set to 0 to disable. · Min: 0 · Max: 10 · Default: 2 |
distill_lora_first_pass_scale | number | Optional | The 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_scale | number | Optional | The scale of the distill LoRA to use for the second and subsequent passes. · Min: 0 · Max: 1 · Default: 0.5 |
02
Output Schema
| Field | Type | Description |
|---|---|---|
id | string | Unique identifier for the generation task |
status | string | Task status: pending, running, completed, failed, timeout |
model | string | Model used for the generation |
outputs | array | Array of output items |
outputs[].url | string | URL of the generated artifact |
outputs[].content_type | string | MIME type (e.g. image/png, video/mp4) |
error | object | null | Error details if failed, null on success |
error.type | string | Machine-readable error type code |
error.message | string | Human-readable error description |
Async Workflow
This model uses asynchronous execution. Submit a request and poll for the result.
- Submit — POST to /v1/run, receive an
id - Poll — GET /v1/run/{id} until status is
completed,failed, ortimeout - Retrieve — Read
outputsfrom 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"
