ComfyUI Node

Download Video

The Node That Actually Saves Your MiniMax Video

By juemingai·Created about a year ago·Updated about a year ago· 6
Download Video
    • video_path
    api_key
    file_id
    filename_prefixminimax_video

    This is the last node in the MiniMax video pipeline, and its job is the one you actually want done: getting the finished video onto your disk. It takes the file_id that Check Video Status hands you, asks MiniMax where the file lives, and streams it down into your ComfyUI output folder with a sensible timestamped filename.

    The full chain in the ComfyUI-JM-MiniMax-API pack looks like this:

    video-generationcheck-video-statusdownload-video

    Fair question: why does this node exist at all when Check Video Status already hands you a video_url you could grab? Two reasons. First, this is the "official" path - it uses the file API with your file_id rather than a URL that may or may not outlive the job. Second, it does the boring housekeeping for you: sanitizes the filename, figures out the extension, streams in chunks with progress printed to the console, and drops the result in ComfyUI's output directory with a timestamp so you don't overwrite anything.

    How it works

    Two HTTP calls. First it GETs https://api.minimaxi.chat/v1/files/retrieve?file_id=... with your key in the auth header and pulls the download_url out of the response's file object. Then it streams the actual download in 8KB chunks, logging progress roughly every megabyte. If it can't tell the extension from the URL path, it defaults to .mp4 (it only trusts mp4/avi/mov/mkv/webm).

    The filename comes out as {filename_prefix}_{YYYYMMDD-HHMMSS}.{ext} - so with the default prefix you get minimax_video_20260816-143022.mp4 sitting in your output folder, ready for Preview Video, VHS, or whatever you pipe it into.

    Inputs and output

    Only three inputs, all strings:

    • api_key - the pack-wide MiniMax key.
    • file_id - wire this from Check Video Status. This is the one that matters, and it must be a file_id, not a video_url; the node won't know what to do with a plain URL here.
    • filename_prefix - defaults to minimax_video. Change it if you want something recognizable in your output folder.

    The single output is video_path - an absolute path to the saved file. That's it.

    Gotchas

    The obvious one: this node is only useful when you have a completed job's file_id, so it needs Check Video Status to have run successfully first. Don't try to run it standalone.

    The error handling mirrors the rest of the pack - the retrieve call maps MiniMax status codes to readable messages (1004 auth, 1008 no balance, 1002 rate limit). If the file isn't found or the download URL is empty, you get a clear "No download URL found" rather than a silent failure. One quirk: the API's file_id can carry stray whitespace if you pasted it, but the node strips it before calling, so that's handled.

    Install

    Part of the ComfyUI-JM-MiniMax-API pack - installing it gives you all eight nodes at once:

    cd ComfyUI/custom_nodes
    git clone https://github.com/synthetai/ComfyUI-JM-MiniMax-API
    pip install -r requirements.txt
    

    Or search "ComfyUI-JM-MiniMax-API" in ComfyUI Manager. Restart, and you're done. Dependencies are just requests and Pillow, and nothing renders locally - the whole point of this pack is that MiniMax's cloud does the work and this node just fetches the result. You'll need a MiniMax API key from their open platform to use it.

    CategoryJM-MiniMax-API/Video

    Inputs (3)

    NameTypeDefaultDescription
    api_keySTRING
    file_idSTRING
    filename_prefixSTRINGminimax_video

    Outputs (1)

    NameTypeDescription
    video_pathSTRING