TokenHot
HomeModelsConsoleDocumentationBlog
✓ English简体中文繁體中文日本語FrançaisРусскийTiếng Việt
TokenHot

One API. A model catalog. Usage-based billing.

Product

  • Models
  • Pricing
  • About
  • Support

Popular Models

  • GPT-5.6
  • Claude Opus 5
  • Claude Fable 5
  • Gemini 3.5 Flash
  • Claude Sonnet 5
  • DeepSeek V4 Pro
  • Kimi K3
  • Seedance 2.5

Model Providers

  • OpenAI
  • Anthropic
  • Google
  • DeepSeek
  • Qwen
  • ByteDance
  • Doubao
  • MiniMax
  • Z.ai (GLM)

Resources

  • Docs
  • Blog
  • Terms
  • Privacy
  • Refund Policy
  • hi@tokenhot.ai
  • LLMs.txt

Find us on

Product HuntToolifyThere's An AI For That
© 2026 NEXORA AI PTE. LTD. · Tokenhot
HomeBlogAPI GuidesMiniMax H3 API: Which Video Generation Mode Should You Use?
API Guides

MiniMax H3 API: Which Video Generation Mode Should You Use?

TTokenhot Team·October 26, 2026·7 min read
MiniMax H3 API: Which Video Generation Mode Should You Use?

A product photo can play two different parts in an AI video: it can define the opening frame, or it can be a reference for a newly composed shot. That choice matters before you write a long motion prompt. The MiniMax H3 API represents these jobs with different media roles, and the two sets of roles cannot be mixed in one request.

Choose text-to-video when you want to describe a new scene, image-to-video when a starting or ending frame matters, and reference-to-video when images, clips or audio should guide the shot. Through Tokenhot, all three use POST https://api.tokenhot.ai/v1/video/generations with model MiniMax-H3.

This guide explains that input decision using documentation checked on October 26, 2026. The JSON examples were validated offline; no H3 video, output-quality comparison or account charge was produced. It covers choosing and submitting an input, rather than promising a complete task-query and download integration.

Choose what your source material should do

What you need Scenario What to provide Aspect ratio
A new scene described in words Text-to-video, or t2va One non-empty text item A concrete ratio such as 16:9; not adaptive
Motion from a specified opening image, toward an ending image, or between both Image-to-video, or i2va Text and first_frame, last_frame, or both Determined by the image; treated as adaptive
A shot guided by visual or audio references Reference-to-video, or r2va Text with reference_image, reference_video, or reference_audio Defaults to adaptive; a concrete ratio is also allowed

The scenario labels describe the input combinations in the H3 reference. The examples below do not add a separate mode field: the distinction is expressed by the content items and their roles.

For a lamp on a desk, use an opening frame if that composition is the starting point you want to animate. Use reference material if you want to ask for a different shot guided by the assets. Those are prompt-design choices; neither is proof that the generated lamp, label or background will remain unchanged.

Start with text when you are exploring a scene

Text-to-video is the simplest input when you have a scene description but no image to anchor. For example:

{
  "model": "MiniMax-H3",
  "content": [
    {
      "type": "text",
      "text": "A white ceramic lamp on a wooden desk in soft afternoon light. The camera slowly moves closer in one continuous shot."
    }
  ],
  "duration": 6,
  "resolution": "768P",
  "ratio": "16:9"
}

Use one non-empty text item. For this text-only scenario, choose the ratio explicitly. Although the field's general default is adaptive, the scenario-specific rule does not allow it for text-to-video.

The documented output settings are 768P or 2K, and an integer duration from 4 to 15 seconds. These are requested settings, not measured delivery time or quality levels. The route documented here is MiniMax-H3; a catalog entry or comparison about H3 Max does not establish a model ID or interchangeable request for this route.

Use frames when the composition is already decided

If your lamp photo should be the opening image, assign it the first_frame role:

{
  "model": "MiniMax-H3",
  "content": [
    {"type": "text", "text": "Starting from this frame, slowly move the camera closer to the lamp while the desk remains still."},
    {
      "type": "image_url",
      "image_url": {"url": "https://example.com/your-lamp-opening.jpg"},
      "role": "first_frame"
    }
  ],
  "duration": 6,
  "resolution": "768P",
  "ratio": "adaptive"
}

Replace the example address with an image you may use that the service can retrieve. The role sits alongside type and image_url; it is not a property inside the URL object.

To specify an ending instead, use last_frame. To provide both positions, add a second image item with role: "last_frame". The documented limits allow one first-frame image and one last-frame image. Describe a plausible transition between them rather than expecting a prompt to reconcile unrelated views automatically.

Image-to-video takes its aspect ratio from the image: the reference says the ratio is always treated as adaptive. If a layout matters, prepare the source composition accordingly instead of relying on a conflicting landscape or portrait setting.

Use references when you want to guide a new shot

Reference-to-video can combine reference images, video and audio. An authored example might use a product image alongside a clip showing the desired kind of camera movement:

{
  "model": "MiniMax-H3",
  "content": [
    {"type": "text", "text": "Create a new desk scene featuring the lamp in the reference image. Use the reference clip to guide a slow camera move, with soft afternoon lighting."},
    {
      "type": "image_url",
      "image_url": {"url": "https://example.com/your-lamp-reference.jpg"},
      "role": "reference_image"
    },
    {
      "type": "video_url",
      "video_url": {"url": "https://example.com/your-camera-reference.mp4"},
      "role": "reference_video"
    }
  ],
  "duration": 6,
  "resolution": "768P",
  "ratio": "16:9"
}

The addresses are placeholders, and the prompt expresses the intended use of each reference. It is not evidence of a generated result or a promise of exact motion transfer.

For reference-to-video, ratio may be omitted to use adaptive, or set to a supported concrete value. For audio, use an audio_url item with role: "reference_audio". Video and audio inputs belong to this reference scenario, rather than first/last-frame generation.

Keep reference roles separate from frame roles. Once you include a reference_image, reference_video or reference_audio, do not also send first_frame or last_frame. If you need a fixed opening image, return to the frame example and remove the references. If the material should guide a fresh composition, keep the reference example and remove the fixed frame.

Prepare assets before submitting

The same H3 reference sets different limits for each asset type:

Asset Formats and size Count and duration
Images JPG/JPEG, PNG, WEBP, HEIC, HEIF; up to 30 MB each Up to nine reference images, or one first frame and one last frame in frame mode
Video references MP4/MOV, H.264/AVC or H.265/HEVC video, AAC or MP3 audio; up to 50 MB each Up to three; 2–15 seconds per clip and at most 15 seconds combined
Audio references WAV/MP3; up to 15 MB each Up to three; 2–15 seconds per file and at most 15 seconds combined

Images and videos must have width and height between 256 and 5760 pixels and an aspect ratio between 0.4 and 2.5. Reference videos also need 23.976–60 fps. The total request body must stay within 64 MB; the documentation recommends public URLs for large files and avoiding Base64 when possible. An allowed source-file size is not permission to embed every large asset into one oversized request.

Check that a URL returns the intended asset without your browser session. A page containing a preview, a local file path, and a retrievable media URL are different inputs. The source document describes other asset forms, but the examples here deliberately use public URLs so that the required files are visible in the request.

Submit the input you selected

After configuring an authorized account and key through the Tokenhot Quick Start, save one complete example as request.json in a new private job folder. Set TOKENHOT_API_KEY in your environment. With Bash and a recent cURL, submit once:

curl --silent --show-error --fail-with-body --max-time 120 \
  --request POST 'https://api.tokenhot.ai/v1/video/generations' \
  --header "Authorization: Bearer ${TOKENHOT_API_KEY:?Set TOKENHOT_API_KEY first}" \
  --header 'Content-Type: application/json' \
  --data-binary @request.json \
  --output submission.json

The creation documentation's response example contains a top-level task_id. Preserve it with the request and response. A task ID records a submitted job; it is not a playable video. If submission times out, establish whether a job exists before sending another potentially billable request.

Before relying on the result in an application, confirm the H3-applicable task-query endpoint, statuses and result fields with the service. The adjacent Hailuo query page does not explicitly identify H3, so this guide does not borrow its host or response parser, or substitute the Wan polling contract. That is the remaining integration step after selecting and submitting the input.

The useful choice comes first: are you inventing a scene, animating a specified frame, or guiding a new shot with references? Choose that job, then let its roles and aspect-ratio rules shape the request.

Back to Blog

Related Articles

Wan 3.0 API: How to Generate and Extend AI Videos

Wan 3.0 API: How to Generate and Extend AI Videos

October 26, 2026
Kling 3 API: First and Last Frames to a Saved Video

Kling 3 API: First and Last Frames to a Saved Video

October 10, 2026
Grok Imagine Video API: Animate a Product Image

Grok Imagine Video API: Animate a Product Image

October 18, 2026