API Free WeekHundreds of APIs are free to call this week.Browse free APIs

Flux 3 Keyframes to Video

bfl/flux-3/keyframes-to-video

Flux 3 Keyframes To Video is BFL's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.

Base price
$0.85USD / run
Execution
async
Model type
video
Input fields
6
Production route

Try the model

Playground

Open playground
Input
The text prompt describing the video you want to generate.
Output aspect ratio. Follows the input when omitted. Allowed values: 21:9, 2:1, 16:9, 4:3, 1:1, 3:4, 9:16.
Resolution of the generated video. Allowed values: 720p, 1080p.
Video duration in seconds (5-20). Allowed values: 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20.
Whether to generate audio for the video.
Keyframe images pinned to frame positions in the generated video. Up to 10 keyframes with unique `frame_index` values.
OutputReady

Your output will appear here

Complete the inputs, then click Run.

Model card

Specifications

Pricing

Base price
$0.85 / run

Context & modalities

Input
Schema-defined
Output
video

Capabilities

Chat
Not supported
Vision
Not supported
Reasoning
Not supported
Structured output
Not supported
Function calling
Not supported
Audio input
Not supported

Access

Provider
BFL
Model ID
bfl/flux-3/keyframes-to-video
Execution
async
API
Unified Run API
Endpoint
/v1/run

API README

Flux 3 Keyframes to Video

Flux 3 Keyframes To Video belongs at the motion design across several visual milestones stage of a visual workflow. Rather than treating the model as an isolated demonstration, teams can place it inside briefing, review, selection, and handoff practices where multiple approved moments give editors more authority over the arc of a sequence than a single starting frame can provide. This positioning clarifies why the model earns a place in a real creative pipeline and what kind of decision it helps people make.

A practical use of Flux 3 Keyframes To Video is complex transformations, staged product reveals, character performance beats, and sequences that must visit several planned compositions. Begin by agreeing on the creative objective and review criteria, prepare only the source material needed for that objective, and compare results against audience, brand, editorial, and production needs. Technical request choices remain documented below so the prose can stay focused on planning and creative value.

Highlights

Multi-anchor consistency. Preserves important subjects and scene attributes across several supplied key moments.

Controlled temporal interpolation. Generates plausible action and camera movement between specified frame positions.

Sequence-level storytelling. Connects separated moments into a readable progression rather than isolated transitions.

Event-synchronized audio. Produces dialogue, effects, and ambience that track the generated action between keyframes. FLUX 3 jointly models video and sound, grounding visual action, speech, effects, and ambience in one evolving scene.

Pricing

OptionPrice
720p per second$0.17
1080p per second$0.29
5 seconds at 720p$0.85

Billed per requested second of video.

When to Use

✅ Good fit❌ Consider alternatives
The model's named workflow matches the source material and intended outputA different input modality or model route is required
A managed asynchronous result is suitable for the production pipelineA synchronous, interactive editor is essential
The documented controls cover the required duration, framing, or formatThe project needs controls outside this endpoint's schema
Creative iteration benefits from a repeatable request structureExact deterministic pixels, frames, geometry, or samples are mandatory
A finished downloadable media asset is the desired deliverableEditable source layers or a native project file are required

Prompt Guide

For generation, state the intended result first, then add the subject or source treatment, progression, style, and delivery constraints. Keep one creative variable per phrase, use the documented field names for controls, and change one setting at a time when comparing results.

{
  "aspect_ratio": "21:9",
  "duration": 5,
  "prompt": "A red panda walks along a mossy log in a sunlit forest, one continuous unbroken shot. Ambient birdsong and rustling leaves.",
  "resolution": "720p"
}

Technical Specs

SpecValue
Model IDbfl/flux-3/keyframes-to-video
Inputsaspect_ratio, duration, generate_audio, keyframes, prompt, resolution
Required inputsprompt
Output fieldscontent_type, url
ExecutionAsync (submit, then poll for result)
Duration5 / 6 / 7 / 8 / 9 / 10 / 11 / 12 / 13 / 14 / 15 / 16 / 17 / 18 / 19 / 20
Resolution720p / 1080p
Aspect Ratio21:9 / 16:9 / 3:2 / 4:3 / 5:4 / 1:1 / 4:5 / 3:4 / 2:3 / 9:16

Related Models

Start building

Send your first request

OpenAI-compatible endpoint with unified authentication and usage tracking.

Production API
Unified Run API endpoint
https://api.sandbase.ai/v1/run
Model ID
bfl/flux-3/keyframes-to-video
# The quoted heredoc keeps Unicode and shell metacharacters unchanged.
result=$(curl --fail-with-body --silent \
  -X POST "https://api.sandbase.ai/v1/run" \
  -H "Authorization: Bearer $SANDBASE_API_KEY" \
  -H "Content-Type: application/json" \
  --data-binary @- <<'SANDBASE_JSON'
{
  "model": "bfl/flux-3/keyframes-to-video",
  "prompt": "A red panda walks along a mossy log in a sunlit forest, one continuous unbroken shot. Ambient birdsong and rustling leaves.",
  "duration": 5,
  "keyframes": [
    {
      "image_url": "https://storage.googleapis.com/falserverless/example_inputs/veo31-flf2v-input-1.jpeg",
      "frame_index": 0
    },
    {
      "image_url": "https://storage.googleapis.com/falserverless/example_inputs/veo31-flf2v-input-2.jpeg",
      "frame_index": 120
    }
  ],
  "resolution": "720p",
  "generate_audio": true
}
SANDBASE_JSON
)
run_id=$(printf '%s' "$result" | jq -r .id)
for attempt in $(seq 1 120); do
  status=$(printf '%s' "$result" | jq -r .status)
  case "$status" in completed|failed|timeout) break ;; esac
  sleep 2
  result=$(curl --fail-with-body --silent \
    -H "Authorization: Bearer $SANDBASE_API_KEY" \
    "https://api.sandbase.ai/v1/run/$run_id")
done
status=$(printf '%s' "$result" | jq -r .status)
[ "$status" = completed ] || { echo "Generation ended: $status" >&2; exit 1; }
printf '%s\n' "$result"

Choose your model

Compare models

All image & video models
ModelTypeDefault priceReleased
BFLVideo$0.85 / runAug 4, 2026
BFLVideo$0.85 / runAug 4, 2026
BFLVideo$0.85 / runAug 4, 2026
BFLVideo$0.85 / runAug 4, 2026
BFLVideo$2.05 / runAug 4, 2026
BFLVideo$0.30 / runAug 4, 2026

Questions

FAQ

How do I call BFL Flux 3 Keyframes to Video through SandBase?

Create a SandBase API key, then send requests with the model ID "bfl/flux-3/keyframes-to-video" to Unified Run API (/v1/run) at https://api.sandbase.ai. The request examples on this page show the exact payload.

Do I need a separate BFL account?

No. One SandBase API key and balance gives you access to BFL Flux 3 Keyframes to Video and the other models in the catalog; you do not need to sign up with BFL separately.