MiniMax-H3-Max API

a general-purpose multimodal generation model. H3 understands unified context across text, images, video, and audio, generating video with native stereo sound, up to 15 seconds at 2K resolution

Provider

MiniMax

Billing

Provider cost

ScalingTensor price

Provider cost $0.05–0.08 / output second + input materials

Playground

Try MiniMax-H3-Max

Edit the params, add your API key and run the model here. The result plays on this page when the job completes.

Input

Used for this request only and never stored. Get a key

Running a request charges your wallet: Provider cost $0.05–0.08 / output second + input materials.

Output

preview

Request summary

Endpoint
POST /api/media/generate
Model ID
MiniMax-H3-Max
model
MiniMax-H3-Max
ratio
16:9
content
[{"text":"Epic space-opera theatrical teaser: a female captain stands alone before a massive observation window as the last fleet gathers and jumps away in a blinding flash, the bridge shaking, leaving her behind.","type":"text"}]
duration
5
resolution
768P

Need chat models, job lookups or the raw response? Open the full playground.

Pricing

MiniMax-H3-Max API pricing

Prices come from the live catalog. There is no subscription; each request is charged to your prepaid wallet.

ScalingTensor price

Provider cost

Live catalog price

Provider cost

$0.05–0.08 / output second + input materials

Compare all model prices

Shared balance

Add credits

Top up

One wallet and one API key for every model in the catalog. Top-ups start at $10 and are paid through Stripe.

Parameters

Input parameters

These parameters belong inside the request body's params object.

Input parameters
nametyperequireddescription
contentobject[]trueArray of multimodal input describing the information used to generate the video. Each element is distinguished by type (text / image_url / video_url / audio_url) and can be labeled with a role. Every request must include one non-empty text item (the prompt is required); otherwise a parameter error is returned.
resolutionenum<string>trueVideo resolution. Availability differs by model: MiniMax-H3:768P,2K; MiniMax-H3-Max:480P,768P (defaults to 768P; 2K is not supported). Available options:480P,768P,2K.
durationenum<integer>trueDuration of the generated video in seconds. Required, integer. Available values differ by model: MiniMax-H3:4–15; MiniMax-H3-Max:5–15 (4 seconds is not supported). Available options:4,5,6,7,8,9,10,11,12,13,14,15.
ratioenum<string>falseAspect ratio of the generated video. Defaults to adaptive (the most suitable ratio is chosen automatically based on the input; the actual ratio can be read from the ratio field of the query endpoint). Available values: adaptive,21:9,16:9,4:3,1:1,3:4,9:16.
extraobjectfalseAdditional generation options for MiniMax-H3-Max. Currently only prompt_expansion_mode is supported. If extra or this property is omitted, balanced is used. Do not pass balance, an empty string, a Boolean value, or other undeclared fields.
callback_urlstringfalseCallback URL for task status changes. Once configured, the MiniMax server first sends a verification request containing a challenge field (you must return the challenge unchanged within 3 seconds to complete verification); after verification succeeds, it POSTs an update to this URL whenever the task status changes. The push body has the same structure as the response of the Query Task endpoint.

When the job completes, GET /api/media/result returns the provider’s result, including the output URL, in data.resultData.

API

Call MiniMax-H3-Max from your code

Create a key in the console and call the API from your server using the apiKey header. Save data.jobId and poll GET /api/media/result?jobId=... with the same key; a code of 0 means success.

POST /api/media/generate
curl --request POST 'https://restapi.scalingtensor.com/api/media/generate' \
  --header 'apiKey: YOUR_API_KEY' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "model": "MiniMax-H3-Max",
  "params": {
    "model": "MiniMax-H3-Max",
    "ratio": "16:9",
    "content": [
      {
        "text": "Epic space-opera theatrical teaser: a female captain stands alone before a massive observation window as the last fleet gathers and jumps away in a blinding flash, the bridge shaking, leaving her behind.",
        "type": "text"
      }
    ],
    "duration": 5,
    "resolution": "768P"
  }
}'
const response = await fetch("https://restapi.scalingtensor.com/api/media/generate", {
  method: "POST",
  headers: {
    apiKey: process.env.SCALINGTENSOR_API_KEY,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    "model": "MiniMax-H3-Max",
    "params": {
      "model": "MiniMax-H3-Max",
      "ratio": "16:9",
      "content": [
        {
          "text": "Epic space-opera theatrical teaser: a female captain stands alone before a massive observation window as the last fleet gathers and jumps away in a blinding flash, the bridge shaking, leaving her behind.",
          "type": "text"
        }
      ],
      "duration": 5,
      "resolution": "768P"
    }
  }),
});

const result = await response.json();
if (!response.ok || result.code !== 0) {
  throw new Error(result.msg || `Request failed: ${response.status}`);
}
console.log(result.data); // Save data.jobId to query /api/media/result
import os
import requests

payload = {
    "model": "MiniMax-H3-Max",
    "params": {
        "model": "MiniMax-H3-Max",
        "ratio": "16:9",
        "content": [
            {
                "text": "Epic space-opera theatrical teaser: a female captain stands alone before a massive observation window as the last fleet gathers and jumps away in a blinding flash, the bridge shaking, leaving her behind.",
                "type": "text",
            },
        ],
        "duration": 5,
        "resolution": "768P",
    },
}

response = requests.post(
    "https://restapi.scalingtensor.com/api/media/generate",
    headers={"apiKey": os.environ["SCALINGTENSOR_API_KEY"]},
    json=payload,
    timeout=60,
)
result = response.json()
if result["code"] != 0:
    raise RuntimeError(result["msg"])
print(result["data"])  # Save data["jobId"] to query /api/media/result

API documentation · This page as Markdown · Markdown API reference

Related models

MiniMax-H3-Max API FAQ

How much does the MiniMax-H3-Max API cost?

MiniMax-H3-Max is billed at the provider's actual cost for each job ($0.05–0.08 / output second + input materials). The charge is deducted from your prepaid ScalingTensor wallet.

How do I call the MiniMax-H3-Max API?

Send POST /api/media/generate with "model": "MiniMax-H3-Max" and the parameters in a params object, using your apiKey header. The call returns a jobId. Poll GET /api/media/result?jobId=... until the status is completed, then read the output URL from the result.

Which parameters does MiniMax-H3-Max accept?

Required: content, resolution and duration. Optional: ratio, extra and callback_url. The parameter table on this page describes each one.

Do I need a MiniMax account to use MiniMax-H3-Max?

No. You call MiniMax-H3-Max with your ScalingTensor API key and pay from your ScalingTensor wallet. The same key works for every other model in the catalog.