# FLUX 3 Max

> Run FLUX 3 Max by falai online or via API. From $0.17 per second, no setup.

**URL:** https://inference.sh/apps/falai/flux-3-max
**Last updated:** 2026-10-20

---

FLUX 3 Max, post-trained FLUX 3 Video by fal and Black Forest Labs. Text-to-video, image-to-video with end frame, keyframes-to-video. 720p or 1080p, 5-20s, native audio.

- app: `falai/flux-3-max`
- maker: [falai](https://inference.sh/apps/falai.md)
- category: [video](https://inference.sh/apps/category/video.md)
- input → output: text → video, image → video
- tasks: [text to video](https://inference.sh/apps/tag/text-to-video.md), [image to video](https://inference.sh/apps/tag/image-to-video.md), [native audio](https://inference.sh/apps/tag/native-audio.md)
- price: $0.17/sec at 720p, $0.29/sec at 1080p
- runs via: api, javascript and python sdk, belt cli, mcp

## flux-3-max API Guide

### About
flux 3 max, post-trained flux 3 video by fal and black forest labs. text-to-video, image-to-video with end frame, keyframes-to-video. 720p or 1080p, 5-20s, native audio.

### 1. Calling the API

#### Install the Client

```bash
pip install inferencesh
```

#### Setup Your API Key
Set `INFERENCE_API_KEY` as an environment variable. Get your key from settings → api keys.

```bash
export INFERENCE_API_KEY="inf_your_key"
```

#### Run and Get Result

```python
import os
from inferencesh import inference

client = inference(api_key=os.environ["INFERENCE_API_KEY"])


result = client.run({
        "app": "falai/flux-3-max@7h031x8g",
        "input": {
            "prompt": "A cinematic tracking shot through a misty forest at dawn, golden light filtering through ancient trees."
        }
    })

print(result["output"])
```

#### Stream Live Updates

```python
import os
from inferencesh import inference

client = inference(api_key=os.environ["INFERENCE_API_KEY"])


## stream=True yields updates as they arrive
for update in client.run({
        "app": "falai/flux-3-max@7h031x8g",
        "input": {
            "prompt": "A cinematic tracking shot through a misty forest at dawn, golden light filtering through ancient trees."
        }
    }, stream=True):
    if update.get("progress"):
        print(f"progress: {update['progress']}%")
    if update.get("output"):
        print(f"output: {update['output']}")
```

### 2. Authentication
The API uses API keys for authentication. See the authentication docs for detailed setup instructions.

### 3. Files

#### Automatic Upload

```python
## local file paths are automatically uploaded
result = client.run({
    "app": "falai/flux-3-max@7h031x8g",
    "input": {
        "image": "/path/to/local/image.png",  # detected & uploaded
        "audio": "https://example.com/audio.mp3",  # url passed through
    }
})
```

#### Manual Upload

```python
## upload and get a hosted URL
file = client.files.upload("/path/to/file.png")
print(file.uri)  # https://cloud.inference.sh/...
```

### 4. Schema

#### Input
- **prompt** (string) *required*: Text prompt describing the video. For image modes, describe how the video unfolds from the image(s).
- **image** (string): First frame image for image-to-video (PNG, JPEG, or WebP).
- **end_image** (string): Optional last frame image (PNG, JPEG, or WebP). Requires image.
- **keyframes** (array): Keyframe images pinned to frame positions (max 10, unique frame_index values). Cannot combine with image or end_image.
- **duration** (integer): Video duration in seconds (5-20).
- **resolution** (string): Output resolution. 720p is cheaper and faster; 1080p for best quality.
- **aspect_ratio** (string): Aspect ratio. auto uses 16:9 for text-to-video and follows the first image otherwise.
- **generate_audio** (boolean): Generate a native soundtrack for the video.
- **reasoning_level** (string): How much effort to spend reasoning about the prompt. high is slower but follows the prompt more closely.
- **seed** (integer): Random seed for reproducible generation.

#### Output
- **seed** (integer): The seed used for generation.
- **video** (string): The generated video file.

## other video apps

- [H3 Max Styles](https://inference.sh/apps/falai/minimax-h3-max-styles.md): $0.08/sec (768P)
- [H3 Max Insert Video](https://inference.sh/apps/falai/minimax-h3-max-insert-video.md): $0.05/sec 480p, $0.06/sec 768p
- [H3 Max 3D to Video](https://inference.sh/apps/falai/minimax-h3-max-3d-to-video.md): $0.50/request + $0.05/sec (480P), $0.08/sec (768P), $0.16/sec (1080P) + $0.10/generated ref; 5s min
- [H3 Max Recast](https://inference.sh/apps/falai/minimax-h3-max-recast.md): $0.30/sec at 768P, $0.45/sec at 1080P
- [H3 Max Relight](https://inference.sh/apps/falai/minimax-h3-max-relight.md): $0.05/s 480P, $0.08/s 768P, $0.16/s 1080P, $0.32/s 2K; up to 15s/video

## faq

### how much does FLUX 3 Max cost?

$0.17/sec at 720p, $0.29/sec at 1080p. you pay per run from your inference shell credits. no subscription is required.

### how do I run FLUX 3 Max via api?

call falai/flux-3-max with the javascript or python sdk, the rest api, or `belt app run falai/flux-3-max` from a terminal. the api reference on this page lists every input.

### who makes FLUX 3 Max?

FLUX 3 Max is made by falai and runs on inference shell. every falai app is listed at https://inference.sh/apps/falai.

### can my agent use FLUX 3 Max?

yes. agents call it as a tool through the inference shell mcp server (https://api.inference.sh/mcp), the belt cli or the sdk, and pay per run like you do.

### what are the alternatives to FLUX 3 Max?

other video apps on inference shell include H3 Max Styles, H3 Max Insert Video, H3 Max 3D to Video, H3 Max Recast. they run through the same api, so switching is a one-line change.
