Models & routing
Fusion
Send minirouter/fusion. MiniRouter balances price and quality, choosing a model and reasoning effort for your request.
Send a requestExamples read your key from MINIROUTER_KEY.
curl https://api.minirouter.sh/v1/chat/completions \
-H "Authorization: Bearer $MINIROUTER_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "minirouter/fusion",
"messages": [
{
"role": "user",
"content": "Explain an API gateway in one sentence."
}
],
"max_tokens": 256
}'How it chooses
- ReadTypeSafe Jev, in about half a second.A classifier reads the request.
- LabelTask type and complexity.
- PickUse the published frontier for that label.
- CheckThe same checks as Auto.Allowed, affordable, healthy, fits.
Task types
- CodingAny request with tools counts as coding.Code, agents, extraction.
- ReasoningMaths, analysis, planning.
- WritingDrafts, copy, long-form.
- ChatConversation and roleplay.
Complexity
- Light
- Lookups, rewrites, short answers.
- Mid
- Everyday multi-step work.
- Strong
- Hard reasoning, large changes.
- Frontier
- Expert-level work.
Variants
- minirouter/
fusion: cheap - Prioritises cost with a lower quality floor. Published picks.
- minirouter/
fusion - Balances quality above the floor against cost. Published picks.
- minirouter/
fusion: max - Prioritises quality within the latency budget. Published picks.
Available variants appear in /v1/models.
Pareto frontier
The frontier highlights model and reasoning-effort combinations where no cheaper option scores as well. Choose a task to compare estimated cost and benchmark quality.
Published picks
Each variant has 16 task-and-complexity cells. Its published frontier sets the model, effort and ordered fallbacks for each cell.
Candidates balance benchmark quality, estimated request cost and latency. Quality floors guide selection; when no candidate fits, constraints can relax. Fallbacks favour different labs.
Picks can change over time. Check each variant's published picks for its current models and fallbacks. Benchmark scores and cost estimates do not guarantee results for a particular request.
Reasoning effort
- Set for youSkipped where it would raise the amount held for the call. The model's default effort applies then.Fusion sends the effort in its published pick.
- Yours winsMessages requests keep the model's default effort.Send
reasoning,reasoning_effortorthinkand Fusion leaves it.
Response
- Chosen modelNamed in
modelandx-minirouter-model. - Why
x-minirouter-route-reason:task=code; tier=mid; effort=high. - PriceProvider cost plus 10%, classification included. If classification is unavailable, the Auto rate of 8% applies.
PrivacyFusion variants use the same classifier. Auto and named models do not send prompts to it.
- System prompt
- Yes, the first 2,000 characters.
- Latest user message
- Yes, up to 6,000 characters.
- Tool names
- Yes, up to 32.
- Tool results, images, replies
- Never.
Limits
- Endpoints
- Chat Completions, Responses and Messages.
- Conversations
- Labels are cached for 10 idle minutes. New turns keep the cached tier.
- Retry escalation
- Repeating a turn with the same
prompt_cache_keycan raise complexity one tier, up to Frontier. Without a session key, retries keep their tier.Use a distinct, nonemptyprompt_cache_keyfor each conversation, up to 512 characters. - Codex and Claude Code
- Both work. Codex lists Fusion first in its model picker.Context blocks the client adds are skipped, not classified.
- Classifier down
- Uses the router's published fallback candidates.
- Fallback lists
- Not combinable with
modelsorfallbacks. - No match
- 503
auto_unresolvable. Retry after 15 seconds.