# Flux 3 Image to Video - Core.Today AI API > FLUX.3 is Black Forest Labs' frontier video model. This endpoint animates a single still image into coherent, natural motion at 720p or 1080p for 5-20 seconds, with synchronized audio generated alongside the video and a tunable safety tolerance. - **Provider**: Black Forest Labs - **Model ID**: blackforestlabs/flux-3/image-to-video - **Category**: Video Generation - **Credits**: 1980 per 5s 720p video — billed per second (720p 395/s, 1080p 674/s) - **Speed**: Medium - **Quality**: Ultra ## Features - 1080p output — the highest resolution tier among our image-to-video endpoints with native audio - 5-20 second durations, billed per second - Audio generated alongside the video rather than dubbed afterwards - Eight aspect ratios from 21:9 to 9:16, or auto - Adjustable safety tolerance from 0 (strictest) to 4 (most permissive) ## Use Cases - 1080p hero clips for landing pages and paid placements where 720p is not enough - Animating key art or a product still into a short cinematic shot - Ambient b-roll generated from an existing photograph, with matching ambient sound - Motion tests at 720p before committing to a 1080p final render ## API Endpoint Base URL: https://api.core.today/v1 Create Prediction: POST /predictions Get Status: GET /predictions/{job_id} ## Authentication Header: X-API-Key: YOUR_API_KEY ## Input Parameters ### Required - **prompt**: string - The text prompt describing the video you want to generate. - **image_url**: string - URL of the image the video starts from (PNG, JPEG, or WebP). - **duration**: integer - Duration of the generated video in seconds (5-20). Required — upstream also accepts "auto", but the resulting length is unknown at request time and cannot be billed accurately, so this gateway requires an explicit duration. ### Optional - **resolution**: string (default: 720p) - Resolution of the generated video. Options: 720p, 1080p - **aspect_ratio**: string (default: auto) - Aspect ratio of the generated video. 'auto' lets the model choose. Options: auto, 21:9, 2:1, 16:9, 4:3, 1:1, 3:4, 9:16 - **generate_audio**: boolean (default: true) - Whether to generate audio for the video. - **safety_tolerance**: integer (default: 2) - The safety tolerance level for the generated video. 0 is the strictest and 4 is the most permissive. ## Examples ### Single continuous shot from a still Animate a photograph into one unbroken 5-second take at 720p, with ambient sound generated alongside. ```json { "model": "blackforestlabs/flux-3/image-to-video", "input": { "prompt": "A red panda walks along a mossy log in a sunlit forest, one continuous unbroken shot. Ambient birdsong and rustling leaves.", "image_url": "https://storage.googleapis.com/falserverless/example_inputs/veo31_i2v_input.jpg", "duration": 5, "resolution": "720p", "aspect_ratio": "auto", "generate_audio": true } } ``` ### 1080p hero clip Render the final cut at 1080p in a 16:9 frame once the motion has been validated at 720p. ```json { "model": "blackforestlabs/flux-3/image-to-video", "input": { "prompt": "Slow dolly-in on a ceramic coffee cup as steam rises, morning light through a window, shallow depth of field.", "image_url": "https://example.com/product-still.jpg", "duration": 8, "resolution": "1080p", "aspect_ratio": "16:9", "generate_audio": true } } ``` ## Response Format ```json { "job_id": "abc123", "status": "pending | processing | completed | failed", "result": "URL or data (when completed)" } ``` ## Usage Flow 1. POST /predictions with model and input -> receive job_id 2. GET /predictions/{job_id} -> poll until status is completed or failed 3. Result contains output URL(s) ## Tips - Validate the motion at 720p first — 1080p costs roughly 1.7x per second for the same duration. - Billing is per second of output, so an 8-second clip costs about 60% more than a 5-second one. - Describe one continuous camera move rather than a sequence of cuts; this endpoint animates a single still and holds up best on unbroken shots. - safety_tolerance defaults to 2. Lower it for brand-safe placements; raise it only when a legitimate prompt is being over-filtered. ## Documentation https://fal.ai/models/blackforestlabs/flux-3/image-to-video