> ## Documentation Index
> Fetch the complete documentation index at: https://docs.vidgo.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# FLUX 3 Max Text to Video

> The FLUX 3 Max Text to Video API generates 5–20 second videos from a text prompt at 720p or 1080p, with eight aspect ratios and optional native audio.

> [!TIP]
>
> 1. After submission, a `task_id` will be returned. If you provided a `callback_url`, when the task status becomes `finished` or `failed`, a POST request will be sent to the `callback_url`.
> 2. Regardless of whether `callback_url` is provided, you can retrieve the result through the unified [Query Task Status](https://docs.vidgo.ai/api-manual/task-management/status.md) endpoint.

FLUX 3 Max Text to Video turns a written prompt into a 5–20 second video at 720p or 1080p, with native audio generated in the same pass. Use it for social shorts, product teasers, concept shots and storyboard drafts when you have no source image.

FLUX 3 Max is a video model post-trained by fal in collaboration with Black Forest Labs on the FLUX 3 video base. Vidgo exposes it as three model IDs: [Text to Video](https://docs.vidgo.ai/api-manual/video-series/blackforestlabs-flux-3-max-text-to-video.md), [Image to Video](https://docs.vidgo.ai/api-manual/video-series/blackforestlabs-flux-3-max-image-to-video.md) and [Keyframes to Video](https://docs.vidgo.ai/api-manual/video-series/blackforestlabs-flux-3-max-keyframes-to-video.md).

## Models

* **blackforestlabs/flux-3-max/text-to-video** — Text-to-video with FLUX 3 Max, 5–20 seconds, 720p or 1080p, optional audio.

## Features

* Text-to-video from a single prompt, no image needed.
* Integer durations from 5 to 20 seconds.
* 720p or 1080p output.
* Eight aspect ratios, including cinematic `21:9` and `2:1`, vertical `9:16` and square `1:1`.
* Native audio on by default; describe ambience, effects or dialogue in the prompt.

## Required parameters

* `prompt` (string): The scene, the motion and the camera movement. When `sound` is on, you can also describe the sounds you want. Must not be blank.

## Optional parameters

* `duration` (integer): Output length in seconds, `5`–`20`. Default `5`.
* `resolution` (string): `720p` or `1080p`. Default `720p`.
* `aspect_ratio` (string): `auto`, `21:9`, `2:1`, `16:9`, `4:3`, `1:1`, `3:4` or `9:16`. Default `auto`.
* `sound` (boolean): Generate native audio with the video. Default `true`; set `false` for silent footage.

## Output

The finished task returns one MP4 video in the `files` array of [Query Task Status](https://docs.vidgo.ai/api-manual/task-management/status.md) and the callback payload.

## Examples

* **5-second 720p clip with audio**: a short prompt that also names the sounds (rain, traffic), `16:9`, `sound: true`.
* **15-second vertical 1080p clip, silent**: `9:16` for social feeds with `sound: false`, plus a `callback_url` to be notified on completion.

## Notes

* This ID accepts text only. To animate a start image, use [FLUX 3 Max Image to Video](https://docs.vidgo.ai/api-manual/video-series/blackforestlabs-flux-3-max-image-to-video.md). To pin images to specific frames, use [FLUX 3 Max Keyframes to Video](https://docs.vidgo.ai/api-manual/video-series/blackforestlabs-flux-3-max-keyframes-to-video.md).
* Fields not listed above, such as `image_urls` or `keyframes`, return 400. `model` and `callback_url` belong at the request root, not inside `input`.
* Credits are reserved at submission and depend on `resolution` and `duration`. The rate is the same for text-to-video, image-to-video and keyframes-to-video, and `sound` does not change it. A failed task is refunded in full. See the [pricing page](https://vidgo.ai/apis/api-pricing) for current rates.
* There is no 4K tier, no `seed` and no output longer than 20 seconds on this model.


## OpenAPI

````yaml api-manual/video-series/blackforestlabs-flux-3-max-text-to-video.json POST /api/generate/submit
openapi: 3.0.0
info:
  title: Vidgo API - FLUX 3 Max Text to Video
  description: >-
    The FLUX 3 Max Text to Video API generates 5–20 second videos from a text
    prompt at 720p or 1080p, with eight aspect ratios and optional native audio.
  version: 1.0.0
servers:
  - url: https://api.vidgo.ai
    description: Production server
security:
  - BearerAuth: []
paths:
  /api/generate/submit:
    post:
      tags:
        - Video Series
      summary: FLUX 3 Max Text to Video
      description: >-
        Send only the `input` fields listed for this model. Any other field,
        including `image_urls` or `keyframes`, returns 400.
      operationId: submit_blackforestlabs_flux_3_max_text_to_video
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - model
                - input
              properties:
                model:
                  type: string
                  description: Model ID. Use `blackforestlabs/flux-3-max/text-to-video`.
                  example: blackforestlabs/flux-3-max/text-to-video
                callback_url:
                  type: string
                  format: uri
                  nullable: true
                  description: >-
                    Optional public HTTP(S) endpoint that receives a POST when
                    the task becomes `finished` or `failed`. HTTPS is
                    recommended. Omit it, or send `null` or an empty string, to
                    disable callbacks.
                  example: https://your-domain.com/callback
                input:
                  type: object
                  required:
                    - prompt
                  properties:
                    prompt:
                      type: string
                      minLength: 1
                      example: >-
                        A paper boat drifts down a rain-soaked city gutter at
                        dusk, neon reflections rippling, slow tracking shot
                      description: >-
                        Describe the scene, the subject's motion, camera
                        movement and, if `sound` is on, the sounds or dialogue
                        you want. Must not be blank.
                    duration:
                      type: integer
                      minimum: 5
                      maximum: 20
                      default: 5
                      description: Output length in seconds (integer).
                    resolution:
                      type: string
                      enum:
                        - 720p
                        - 1080p
                      default: 720p
                      description: Output resolution. It sets the billing rate.
                    aspect_ratio:
                      type: string
                      enum:
                        - auto
                        - '21:9'
                        - '2:1'
                        - '16:9'
                        - '4:3'
                        - '1:1'
                        - '3:4'
                        - '9:16'
                      default: auto
                      description: >-
                        Output aspect ratio. `auto` lets the model choose: 16:9
                        for text-only prompts, the shape of the first image when
                        images are supplied.
                    sound:
                      type: boolean
                      default: true
                      description: >-
                        Generate native audio in the same pass. Set `false` for
                        a silent video. Does not change the price.
                  additionalProperties: false
                  description: Generation parameters.
            examples:
              basic:
                summary: 5-second 720p clip with audio
                value:
                  model: blackforestlabs/flux-3-max/text-to-video
                  input:
                    prompt: >-
                      A paper boat drifts down a rain-soaked city gutter at
                      dusk, neon reflections rippling, slow tracking shot, soft
                      rain and distant traffic
                    duration: 5
                    resolution: 720p
                    aspect_ratio: '16:9'
                    sound: true
              vertical_silent:
                summary: 15-second vertical 1080p clip, silent
                value:
                  model: blackforestlabs/flux-3-max/text-to-video
                  callback_url: https://your-domain.com/callback
                  input:
                    prompt: >-
                      A barista pours latte art in slow motion, overhead
                      close-up, warm cafe light
                    duration: 15
                    resolution: 1080p
                    aspect_ratio: '9:16'
                    sound: false
      responses:
        '200':
          description: Task submitted
          content:
            application/json:
              schema:
                type: object
                required:
                  - code
                  - data
                properties:
                  code:
                    type: integer
                    enum:
                      - 200
                    description: HTTP status code.
                  data:
                    type: object
                    required:
                      - task_id
                      - status
                      - created_time
                    properties:
                      task_id:
                        type: string
                        description: >-
                          Task ID. Use it with [Query Task
                          Status](/api-manual/task-management/status).
                      status:
                        type: string
                        enum:
                          - not_started
                        description: Initial task status.
                      created_time:
                        type: string
                        format: date-time
                        description: Time the task was created (ISO 8601).
              example:
                code: 200
                data:
                  task_id: task-unified-1762160000-abc123
                  status: not_started
                  created_time: '2026-11-03T10:30:00'
        '400':
          description: >-
            Invalid input, unsupported field, inaccessible media, or
            insufficient credits
          content:
            application/json:
              schema:
                type: object
                required:
                  - detail
                properties:
                  detail:
                    oneOf:
                      - type: string
                      - type: object
                        additionalProperties: true
                      - type: array
                        items: {}
                    description: Error message.
        '401':
          description: Invalid credentials
          content:
            application/json:
              schema:
                type: object
                required:
                  - detail
                properties:
                  detail:
                    oneOf:
                      - type: string
                      - type: object
                        additionalProperties: true
                      - type: array
                        items: {}
                    description: Error message.
        '403':
          description: Access denied
          content:
            application/json:
              schema:
                type: object
                required:
                  - detail
                properties:
                  detail:
                    oneOf:
                      - type: string
                      - type: object
                        additionalProperties: true
                      - type: array
                        items: {}
                    description: Error message.
        '404':
          description: Unknown or disabled model
          content:
            application/json:
              schema:
                type: object
                required:
                  - detail
                properties:
                  detail:
                    oneOf:
                      - type: string
                      - type: object
                        additionalProperties: true
                      - type: array
                        items: {}
                    description: Error message.
        '408':
          description: Request timed out
          content:
            text/plain:
              schema:
                type: string
              example: Request timeout
        '422':
          description: Invalid JSON or non-object request body
          content:
            application/json:
              schema:
                type: object
                required:
                  - detail
                properties:
                  detail:
                    oneOf:
                      - type: string
                      - type: object
                        additionalProperties: true
                      - type: array
                        items: {}
                    description: Error message.
        '429':
          description: Rate or API key credit limit exceeded
          content:
            application/json:
              schema:
                type: object
                required:
                  - detail
                properties:
                  detail:
                    oneOf:
                      - type: string
                      - type: object
                        additionalProperties: true
                      - type: array
                        items: {}
                    description: Error message.
        '500':
          description: Internal error
          content:
            application/json:
              schema:
                type: object
                required:
                  - detail
                properties:
                  detail:
                    oneOf:
                      - type: string
                      - type: object
                        additionalProperties: true
                      - type: array
                        items: {}
                    description: Error message.
        '502':
          description: Unable to create the upstream generation task
          content:
            application/json:
              schema:
                type: object
                required:
                  - detail
                properties:
                  detail:
                    oneOf:
                      - type: string
                      - type: object
                        additionalProperties: true
                      - type: array
                        items: {}
                    description: Error message.
        '503':
          description: The requested model is temporarily unavailable
          content:
            application/json:
              schema:
                type: object
                required:
                  - detail
                properties:
                  detail:
                    oneOf:
                      - type: string
                      - type: object
                        additionalProperties: true
                      - type: array
                        items: {}
                    description: Error message.
components:
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      bearerFormat: API Key
      description: >-
        All API endpoints require Bearer Token authentication


        Get your API Key:


        Go to **Dashboard → API Key** ([API Key Management
        Page](https://vidgo.ai/apis/dashboard/api-key)) to get your API Key


        Add it to the request header:


        ```

        Authorization: Bearer VIDGO_API_KEY

        ```

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.