MiniMax API access — OpenAI-compatible, one key

MiniMax's M-series rides the same OpenAI-compatible base URL as everything else on DaoXE — no separate SDK, no Chinese-console signup dance. One key, catalogue IDs, verifiable.

Updated 2026-09-15

DaoXE fronts MiniMax's M-series through the standard OpenAI shape: POST /v1/chat/completions with a MiniMax model ID; /v1/responses is available on IDs that support it. Existing OpenAI SDK code works unchanged — only the base URL and key change. Where the real cost split comes from: cheapest APIs guide.

Call MiniMax through DaoXE#

Chat path: /v1/chat/completions with Authorization: Bearer. MiniMax reasoning IDs think by default — on M2.x thinking cannot be disabled. extra_body={"reasoning_split": True} does not toggle thinking; it moves the chain of thought into reasoning_details instead of leaving it fused into content.

bash
curl --fail-with-body --show-error --silent \
  https://daoxe.com/v1/chat/completions \
  -H "Authorization: Bearer ${DAOXE_API_KEY}" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "YOUR_EXACT_MODEL_ID",
    "max_tokens": 64,
    "messages": [{"role": "user", "content": "Say hello in one sentence."}]
  }'
python
# MiniMax reasoning IDs think by DEFAULT; on M2.x thinking cannot be turned
# off. reasoning_split only changes WHERE the thinking lands - without it the
# chain of thought stays fused into the text.
from openai import OpenAI

client = OpenAI(base_url="https://daoxe.com/v1", api_key="YOUR_DAOXE_KEY")
r = client.chat.completions.create(
    model="YOUR_EXACT_MODEL_ID",   # a MiniMax-* id from GET /v1/models
    messages=[{"role": "user", "content": "2+2? Think briefly, then answer."}],
    extra_body={"reasoning_split": True},
)
msg = r.choices[0].message
details = getattr(msg, "reasoning_details", None)  # thinking, when split is on
print(details[0]["text"] if details else None)
print(msg.content)                                 # final answer

How MiniMax exposes reasoning#

MiniMax reasoning IDs think by default: on MiniMax's OpenAI-compatible API the M3 thinking control defaults to {"type": "adaptive"} — the model decides when to think — and for M2.x models thinking cannot be disabled at all. Separating the chain of thought from the answer is a different, independent switch: pass extra_body={"reasoning_split": True} and the thinking arrives in reasoning_details; without the flag it stays fused into content. The split flag never turns thinking on or off — if your pipeline needs machine-separable reasoning, set it on every call rather than hoping the default holds.

MiniMax-specific notes#

  • Thinking is on by default; M2.x cannot turn it off. On MiniMax's OpenAI-compatible API the M3 thinking control defaults to adaptive, and for M2.x thinking cannot be disabled at all. reasoning_split does not toggle thinking — it only controls whether the chain of thought lands in a separate field or stays fused into content.
  • Protocol surfaces on the upstream. MiniMax's own API exposes an Anthropic Messages-compatible surface; whether a given relay path carries it is exactly the kind of thing to verify — test one Messages call before committing a client to it.
  • Exact IDs from the live list. M-series versions move (M3 / M2.7 / M2.5 today); copy IDs from GET /v1/models, not from launch posts.

What it costs#

One balance, one top-up rate

Top-up runs at a flat 1 RMB = $1 of credit on every payment method, and each model then bills at its own USD rate — live per-model rates are on the live pricing page. That rate is the same on Alipay, WeChat Pay, USDT, bank card (Visa · Mastercard), Apple Pay and Google Pay — one balance, shared by every model in the catalog, with no plan to choose and no monthly minimum. Rates are account-scoped and do change, so confirm with one small top-up rather than trusting a number in a guide.

Verify you actually get the model#

Prove the endpoint works before blaming the client — if this fails, no setting will fix it:

bash
export DAOXE_API_KEY="your_api_key"

# List the exact model IDs your account can call
curl --fail-with-body --show-error --silent \
  https://daoxe.com/v1/models \
  -H "Authorization: Bearer ${DAOXE_API_KEY}"

Confirm connectivity, then diff a fixed prompt at temperature 0 against the official MiniMax API to make sure the tier matches:

Verify us — don't trust us

Point the open benchmark at DaoXE and at the official API and compare at temperature 0. Then learn to detect model swapping so a cheaper endpoint can't quietly swap you to a smaller model.

Frequently asked questions#

Do I need a MiniMax console account?

No — MiniMax models ride on your single DaoXE key with normal catalogue IDs from GET /v1/models.

Why is there no separate thinking field?

Set extra_body={"reasoning_split": True}; the flag only controls where the thinking lands, not whether the model thinks — MiniMax reasoning IDs think by default, and M2.x cannot turn thinking off.

Which endpoints work for MiniMax?

OpenAI-compatible chat (/v1/chat/completions), Responses on supporting IDs, and Anthropic-shape Messages on IDs that declare it.

How much does MiniMax cost here?

Per-model, account-scoped — see live pricing. Top-up is a flat 1 RMB = $1 of credit on every payment method.

Try DaoXE — and benchmark it yourself

One key for GPT, Claude, Gemini, DeepSeek and more. Point the open benchmark at us and compare — don't take our word for it.