MiniMax Provider Guide
MiniMax is a Tier-2 catalog provider: its integration is one JSON file
(src/lib/providers/catalog/minimax.json) rather than hand-written code.
That file is the source of truth for everything on this page.
Verification status: this entry is docs-verified only, not yet live-verified. MiniMax's
GET https://api.minimax.io/v1/modelsanswers HTTP 401 without a key, so the model ids come from MiniMax's public docs and the roster has not been checked. No account was created and no API key was used to build the entry.evidence.liveMatrixisnulluntil someone runs the live capability matrix with a real key (see Verification status below).
Key Facts
- Provider id:
minimax - Protocol: OpenAI-compatible (
/chat/completions) — MiniMax's own OpenAI SDK page setsOPENAI_BASE_URL=https://api.minimax.io/v1and callsclient.chat.completions.create - Base URL:
https://api.minimax.io/v1 - Default model:
MiniMax-M3 - Models in catalog: 9 — the nine ids in the Supported Models table of the
OpenAI SDK page, which are also the
modelenum of the Chat Completions reference (roster not verified) - Streaming: supported — the Chat Completions reference documents
stream("Whether to use streaming output, defaults tofalse. When set totrue, the response will be returned in chunks.") - Tool calling:
model-dependent— the Chat Completions reference liststools("Function tools are supported.") and returnstool_calls; none of it was exercised. Withmodel-dependent, NeuroLink falls back to its model-registry default per model - Tools while streaming: not declared (
false) - Structured output: not declared (
false) - Structured output + tools together: not declared (
false) — no combined probe was run without credentials - Embeddings: not declared
- Thinking: the catalog
capabilities.thinkingisfalse, and the entry sets none of MiniMax'sthinking,reasoning_effortorreasoning_splitrequest parameters. The Chat Completions reference says ofMiniMax-M3: "adaptive thinking is on by default", and ofMiniMax-M3.1-Flash-Preview: "always thinks". The OpenAI SDK page says ofmax_tokens: "Thinking tokens count toward it too, so a value that is too small yieldsfinish_reason: "length"with an emptycontent." - Vision:
trueforMiniMax-M3andMiniMax-M3.1-Flash-Preview, where the OpenAI SDK page says "Image and video inputs are supported byMiniMax-M3.1-Flash-PreviewandMiniMax-M3through OpenAI-compatible message content parts" - Billing:
free-tier— the schema's closest value, see Billing below - Key format: not validated by NeuroLink (
apiKeyFormat: null)
Quick Start
1. Get an API key
- Visit: https://platform.minimax.io/login?source=platform_docs and register or log in (https://platform.minimax.io/docs/guides/quickstart-preparation)
- Pay-as-you-go: open API Keys > Create new secret key at https://platform.minimax.io/user-center/basic-information/interface-key and copy the API Key (https://platform.minimax.io/docs/guides/quickstart-preparation)
- Token Plan: view your Subscription Key at https://platform.minimax.io/user-center/payment/token-plan. MiniMax-M3.1-Flash-Preview is stated as available only through Token Plan and MiniMax Code for now, and the Subscription Key is stated as not interchangeable with pay-as-you-go API Keys (https://platform.minimax.io/docs/api-reference/text-openai-api, https://platform.minimax.io/docs/token-plan/intro)
- Billing as the vendor words it: "Pay-as-you-go uses standard Open Platform API Keys and consumes your account balance by actual usage." (https://platform.minimax.io/docs/guides/pricing-paygo) and "New users without subscription can try the free quota from Pay-as-you-go" (https://platform.minimax.io/docs/solutions/eigent, a tutorial dated January 23, 2026)
- Set
MINIMAX_API_KEYin your .env file
2. Configure
export MINIMAX_API_KEY=your-api-key
export MINIMAX_MODEL=MiniMax-M3 # optional — overrides the default model
export MINIMAX_BASE_URL=https://api.minimax.io/v1 # optional — proxy or self-hosted gateway
3. Use it
import { NeuroLink } from "@juspay/neurolink";
const neurolink = new NeuroLink();
const result = await neurolink.generate({
input: { text: "Explain context windows in one paragraph." },
provider: "minimax",
model: "MiniMax-M3",
});
console.log(result.content);
# CLI
npx @juspay/neurolink generate "Hello" --provider minimax
Per-request credentials work as they do for every provider:
await neurolink.generate({
input: { text: "Hello" },
provider: "minimax",
credentials: { minimax: { apiKey: process.env.MINIMAX_API_KEY } },
});
Billing
MiniMax's pay-as-you-go pricing page (https://platform.minimax.io/docs/guides/pricing-paygo) says: "Pay-as-you-go uses standard Open Platform API Keys and consumes your account balance by actual usage." The Prerequisites page (https://platform.minimax.io/docs/guides/quickstart-preparation) says: "For pay-as-you-go, access Billing/Balance to top up if needed." MiniMax's Eigent tutorial (https://platform.minimax.io/docs/solutions/eigent, dated January 23, 2026 and written for MiniMax M2.1) says: "New users without subscription can try the free quota from Pay-as-you-go".
The catalog schema has no unknown billing value, so the entry records
free-tier as the closest value. It is not a MiniMax statement of terms.
Models
| Model | Context | Max output | Vision | $/M in · out (cache read) | Notes |
|---|---|---|---|---|---|
MiniMax-M3 ⭐ | 1,000,000 | 524,288 | yes | $0.30 / $1.20 ($0.06) | NeuroLink default. "Frontier multimodal coding model with 1M context window". Prices are the Standard tab, "≤ 512k input tokens", with $0.60 / $2.40 / $0.12 struck through beside them and the label "Permanent 50% off"; "> 512k input tokens" is $0.60 / $2.40 ($0.12), with $1.20 / $4.80 / $0.24 struck through. Priority tab: "Pricing is 1.5x standard." RPM 200, TPM 10,000,000. |
MiniMax-M3.1-Flash-Preview | 1,000,000 | 524,288 | yes | — | "Frontier multimodal coding model with 1M context window and tunable thinking depth". "MiniMax-M3.1-Flash-Preview is available only through Token Plan and MiniMax Code for now." Not in the fallback chain. |
MiniMax-M2.7 | 204,800 | 204,800 | no | $0.3 / $1.2 ($0.06) | "Beginning the journey of recursive self-improvement". Cache write $0.375. RPM 500, TPM 20,000,000. |
MiniMax-M2.7-highspeed | 204,800 | 204,800 | no | $0.6 / $2.4 ($0.06) | "M2.7 Highspeed: Same performance, faster and more agile (output speed approximately 100 tps)". Cache write $0.375. RPM 500, TPM 20,000,000. |
MiniMax-M2.5 | 204,800 | 204,800 | no | $0.3 / $1.2 ($0.03) | "Peak Performance. Ultimate Value. Master the Complex". Listed under "Legacy Models". Cache write $0.375. |
MiniMax-M2.5-highspeed | 204,800 | 204,800 | no | $0.6 / $2.4 ($0.03) | "M2.5 highspeed: Same performance, faster and more agile (output speed approximately 100 tps)". Listed under "Legacy Models". Cache write $0.375. |
MiniMax-M2.1 | 204,800 | 204,800 | no | $0.3 / $1.2 ($0.03) | "Powerful Multi-Language Programming Capabilities with Comprehensively Enhanced Programming Experience". Listed under "Legacy Models". Cache write $0.375. |
MiniMax-M2.1-highspeed | 204,800 | 204,800 | no | $0.6 / $2.4 ($0.03) | "Faster and More Agile (output speed approximately 100 tps)". Listed under "Legacy Models". Cache write $0.375. |
MiniMax-M2 | 204,800 | not set | no | $0.3 / $1.2 ($0.03) | "Agentic capabilities, Advanced reasoning". Listed under "Legacy Models". Cache write $0.375. Max output is not set; see the paragraph below the table. |
Context windows come from the Supported Models table of the OpenAI SDK page
(https://platform.minimax.io/docs/api-reference/text-openai-api, retrieved
2026-09-29). Max output figures come from the max_completion_tokens
description in the Chat Completions reference
(https://platform.minimax.io/docs/api-reference/text-chat-openai): "the maximum
is 524288 (512K)" for MiniMax-M3.1-Flash-Preview and MiniMax-M3, and "the
maximum is 204800 (200K)" for other models. Prices come from the pay-as-you-go
pricing page (https://platform.minimax.io/docs/guides/pricing-paygo, retrieved
2026-09-29); the MiniMax-M2.5, MiniMax-M2.5-highspeed, MiniMax-M2.1,
MiniMax-M2.1-highspeed and MiniMax-M2 rows sit in that page's Legacy Models
section. Rate limits come from
https://platform.minimax.io/docs/guides/rate-limits.
MiniMax-M2 has no max output figure in the catalog. The Models page
(https://platform.minimax.io/docs/guides/models-intro), under Legacy Models,
lists "Maximum Output: 128k tokens (including CoT)" for MiniMax-M2, while the
Chat Completions reference says "the maximum is 204800 (200K)" for models other
than MiniMax-M3.1-Flash-Preview and MiniMax-M3. The two pages give different
figures, so the field is left unset for this id.
vision: true is set where the OpenAI SDK page states image input.
vision: false is set for MiniMax-M2.7, MiniMax-M2.7-highspeed,
MiniMax-M2.5, MiniMax-M2.5-highspeed, MiniMax-M2.1,
MiniMax-M2.1-highspeed and MiniMax-M2. The Anthropic API page
(https://platform.minimax.io/docs/api-reference/text-anthropic-api, retrieved
2026-09-29) says in its messages row: "The M2.7, M2.5, M2.1, and M2 series
support text and tool-call content blocks only; they do not support image or
video input".
models.defaultContextWindow (204,800) and models.defaultMaxOutputTokens
(65,536) apply to ids outside the catalog. 204,800 is the context window the
OpenAI SDK page lists for the MiniMax-M2.x models, and 65,536 is the
recommended max_completion_tokens the Chat Completions reference gives for
models other than MiniMax-M3.1-Flash-Preview and MiniMax-M3.
Fallback order when the default is unavailable:
MiniMax-M2.7 → MiniMax-M2.7-highspeed → MiniMax-M2.5 →
MiniMax-M2.5-highspeed → MiniMax-M2.1 → MiniMax-M2.1-highspeed →
MiniMax-M2. The runtime fallback model name is set explicitly to
MiniMax-M2.7. MiniMax-M3.1-Flash-Preview is in the catalog but not in the
fallback chain, because the vendor states it is available only through Token
Plan and MiniMax Code for now.
Status values: production is a value the schema requires, not a MiniMax
statement; preview is used for the one id the vendor names Preview.
Reasoning output
The OpenAI SDK page says: "For native OpenAI API with MiniMax-M3.1-Flash-Preview
MiniMax-M3 MiniMax-M2.7 MiniMax-M2.7-highspeed MiniMax-M2.5
MiniMax-M2.5-highspeed MiniMax-M2.1 MiniMax-M2.1-highspeed MiniMax-M2
models, the content field will contain <think> tag content, which must be
preserved completely", and separately: "MiniMax-M3.1-Flash-Preview provides the
model's thinking content separately through the reasoning_content field,
which must also be preserved completely".
The same page lists reasoning_split as an "Output-format switch": "When true,
thinking content is separated into the reasoning_content field; when false,
thinking stays inside content wrapped in <think> tags." This catalog entry
does not send reasoning_split.
Verification status
Tier-2 onboarding requires evidence before a provider is accepted, and
pnpm run verify:provider-onboarding gates it in CI. This is what the
catalog currently records for MiniMax — docs-verified only, not
live-verified:
| Probe | Result |
|---|---|
| Roster | unauthenticated GET https://api.minimax.io/v1/models answers HTTP 401 without a key (2026-09-29), so model ids are taken from the OpenAI SDK page (retrieved 2026-09-29); roster not verified |
| Auth-failure shape | unauthenticated GET https://api.minimax.io/v1/models returned HTTP 401 with body {"type":"error","error":{"type":"authorized_error","message":"login fail: Please carry the API secret key in the 'Authorization' field of the request header (1004)","http_code":"401"},"request_id":"…"} (2026-09-29). An unauthenticated GET https://api.minimax.io/v1/chat/completions returned HTTP 404 with content-type: text/plain and the body 404 page not found. No POST was sent, so errorRules match status 401 and the vendor's documented messages |
| Billing | public pay-as-you-go pricing page, Prerequisites page and Eigent tutorial quoted in Billing above, 2026-09-29 — the schema has no unknown value, so free-tier is the closest value |
| Tools / structured output | function calling is documented on the Chat Completions reference and the OpenAI SDK page; nothing was exercised live, and no combined tools+schema request was sent — structuredOutputWithTools stays false |
| Live capability sweep | not run. evidence.liveMatrix is null. Before treating this provider as production-ready, run npx tsx test/continuous-test-suite-provider-matrix.ts --provider=minimax with a real key and record the result. |
Do not treat this entry as equivalent to a live-verified Tier-2 provider
(e.g. FriendliAI, Novita AI) until that live matrix has been run and
evidence.liveMatrix is filled in.
Troubleshooting
Causes and fixes in quotation marks are MiniMax's wording, with the page named.
| Symptom | Cause | Fix |
|---|---|---|
HTTP 401 with login fail: Please carry the API secret key in the 'Authorization' field of the request header (1004) | The error-code table lists 1004 as "not authorized / token not match group / cookie is missing, log in again" (errorcode page) | "please check your API Key and make sure it is correct and active." (https://platform.minimax.io/docs/api-reference/errorcode) |
| Error 1008 "insufficient balance" | Listed in the error-code table | "Please check your account balance." (https://platform.minimax.io/docs/api-reference/errorcode) |
| Error 1002 "rate limit" | Listed in the error-code table | "Please retry your requests later." (https://platform.minimax.io/docs/api-reference/errorcode) |
Empty content with finish_reason: "length" | "Thinking tokens count toward it too" (OpenAI SDK page, max_tokens row) | "If generation stops due to length, try increasing this value." (Chat Completions reference, max_completion_tokens) |
MiniMax-M3.1-Flash-Preview selected | "MiniMax-M3.1-Flash-Preview is available only through Token Plan and MiniMax Code for now." (https://platform.minimax.io/docs/guides/text-generation) | "Get your Subscription Key" (https://platform.minimax.io/docs/guides/text-generation) |
Error after setting temperature above 2 | "The temperature parameter range is [0, 2], recommended value: 1.0, values outside this range will return an error" (OpenAI SDK page) | "recommended value: 1.0" (OpenAI SDK page) |
See also
- Provider setup overview
- All providers
- Tier-2 onboarding — how this provider's JSON becomes a working integration
- Provider feature compatibility
- MiniMax pages this entry was built from: OpenAI SDK, Chat Completions, Anthropic API, Models, Model Invocation, Pay as You Go, Rate Limits, Error Codes, Prerequisites, Token Plan Overview