---
title: "Structured output verification"
description: "Explore tested JSON Schema and JSON mode support by model and provider."
canonical_url: "https://minirouter.sh/docs/structured-output/verification"
markdown_url: "https://minirouter.sh/docs/structured-output/verification.md"
last_updated: "2026-09-15"
---

# Structured output verification

See which models passed JSON Schema and JSON mode checks.

## Coverage

| Check | Passed | Tested |
| --- | --- | --- |
| JSON Schema | 153 models | 213 models |
| JSON mode | 129 models | 213 models |
| Streaming sample | 18 provider families | 20 provider families |

These are recorded test results. Check the [public catalog](https://minirouter.sh/api/v1/models)
for current support. Streaming samples do not test every model.

## How we test

1. **Match a schema:** A strict schema required a nested country object, a climate enum and at least two landmarks, with no extra properties. The prompt did not mention JSON. All three responses had to parse and match.
2. **Return plain JSON:** Pairs that passed the schema checks were tested with json_object. Only bare, parseable JSON passed.
3. **Join streamed output:** Streamed deltas were joined and checked as JSON. This sampled each provider family, not every model. Failed samples did not remove non-streaming qualification.

Each request selected one provider with a 2000-token output limit. Transient
failures and inconsistent results were retried once.

252 model/provider pairs passed JSON Schema; 198
also passed JSON mode. 206 pairs were unqualified in this run.

The failed stream samples were DeepInfra with `alibaba/qwen-3-32b` and Baseten
with `deepseek/deepseek-v4-pro-0813`. DO Gradient was not tested; Darkbloom
was not qualified for Chat structured output.

## Model results

Providers listed under Schema and JSON passed that check. An em dash means no
passing result was recorded. The stream column repeats a provider-family sample,
not a separate streaming test of that model.

`http` records an unsuccessful request; `http 0` means no HTTP response.
`ignored` means the output did not meet the check. These observations do not
establish permanent lack of support.

| Model | JSON Schema providers | JSON mode providers | Provider-family stream sample | Unqualified providers (reason) |
| --- | --- | --- | --- | --- |
| `alibaba/qwen-3-14b` | — | — | — | deepinfra (ignored (prose)) |
| `alibaba/qwen-3-30b` | — | — | — | deepinfra (ignored (prose)) |
| `alibaba/qwen-3-32b` | bedrock, deepinfra | deepinfra | bedrock ok, deepinfra failed | alibaba (http 400) |
| `alibaba/qwen-3.6-max-preview` | — | — | — | alibaba (http 400) |
| `alibaba/qwen3-235b-a22b-thinking` | alibaba, deepinfra | alibaba, deepinfra | alibaba ok, deepinfra failed | novita (http 400) |
| `alibaba/qwen3-coder` | — | — | — | alibaba (http 400), deepinfra (http 400), novita (http 0), vertex (ignored (wrong_keys)) |
| `alibaba/qwen3-coder-30b-a3b` | bedrock | — | bedrock ok | novita (ignored (no_content)) |
| `alibaba/qwen3-coder-next` | bedrock | bedrock | bedrock ok | — |
| `alibaba/qwen3-coder-plus` | — | — | — | alibaba (http 400) |
| `alibaba/qwen3-max` | alibaba | alibaba | alibaba ok | novita (http 400) |
| `alibaba/qwen3-max-preview` | alibaba | alibaba | alibaba ok | — |
| `alibaba/qwen3-max-thinking` | alibaba | alibaba | alibaba ok | — |
| `alibaba/qwen3-next-80b-a3b-instruct` | deepinfra | deepinfra | deepinfra failed | alibaba (http 400), novita (http 400), vertex (ignored (wrong_keys)) |
| `alibaba/qwen3-next-80b-a3b-thinking` | — | — | — | alibaba (http 400), novita (http 400), vertex (ignored (wrong_keys)) |
| `alibaba/qwen3-vl-235b-a22b-instruct` | alibaba, deepinfra | alibaba, deepinfra | alibaba ok, deepinfra failed | — |
| `alibaba/qwen3-vl-instruct` | alibaba, deepinfra | alibaba, deepinfra | alibaba ok, deepinfra failed | novita (ignored (wrong_keys)) |
| `alibaba/qwen3-vl-thinking` | alibaba | alibaba | alibaba ok | novita (http 400) |
| `alibaba/qwen3.5-flash` | — | — | — | alibaba (http 400) |
| `alibaba/qwen3.5-plus` | — | — | — | alibaba (http 400) |
| `alibaba/qwen3.6-27b` | — | — | — | alibaba (http 400) |
| `alibaba/qwen3.6-plus` | — | — | — | alibaba (http 400), togetherai (http 503) |
| `alibaba/qwen3.7-flash` | alibaba | alibaba | alibaba ok | — |
| `alibaba/qwen3.7-max` | alibaba | alibaba | alibaba ok | — |
| `alibaba/qwen3.7-plus` | alibaba | alibaba | alibaba ok | fireworks (http 400), togetherai (http 400) |
| `alibaba/qwen3.8-2.4t-a95b` | deepinfra, fireworks | deepinfra, fireworks | deepinfra failed, fireworks ok | gmicloud (http 400), modal (ignored (wrong_keys)), novita (http 400), runinfra (http 400), togetherai (ignored (wrong_keys)) |
| `alibaba/qwen3.8-27b` | deepinfra | deepinfra | deepinfra failed | alibaba (ignored (not_object)), morph (ignored (wrong_keys)), novita (http 400), parasail (ignored (wrong_keys)), runinfra (ignored (wrong_keys)) |
| `alibaba/qwen3.8-flash` | alibaba | alibaba | alibaba ok | — |
| `alibaba/qwen3.8-max` | alibaba | alibaba | alibaba ok | — |
| `alibaba/qwen3.8-max-0902` | alibaba | alibaba | alibaba ok | — |
| `amazon/nova-2-lite` | bedrock | — | bedrock ok | — |
| `amazon/nova-lite` | bedrock | — | bedrock ok | — |
| `amazon/nova-micro` | bedrock | — | bedrock ok | — |
| `amazon/nova-pro` | bedrock | — | bedrock ok | — |
| `anthropic/claude-3-haiku` | bedrock | — | bedrock ok | vertexAnthropic (http 500) |
| `anthropic/claude-fable-5` | anthropic, bedrock, vertexAnthropic | — | anthropic ok, bedrock ok, vertexAnthropic ok | — |
| `anthropic/claude-haiku-4.5` | anthropic, bedrock, claudeaws, vertexAnthropic | — | anthropic ok, bedrock ok, claudeaws ok, vertexAnthropic ok | — |
| `anthropic/claude-opus-4` | vertexAnthropic | — | vertexAnthropic ok | — |
| `anthropic/claude-opus-4.5` | anthropic, bedrock, vertexAnthropic | — | anthropic ok, bedrock ok, vertexAnthropic ok | — |
| `anthropic/claude-opus-4.6` | anthropic, bedrock, vertexAnthropic | — | anthropic ok, bedrock ok, vertexAnthropic ok | — |
| `anthropic/claude-opus-4.7` | anthropic, bedrock, vertexAnthropic | bedrock | anthropic ok, bedrock ok, vertexAnthropic ok | — |
| `anthropic/claude-opus-4.8` | anthropic, bedrock, claudeaws, vertexAnthropic | — | anthropic ok, bedrock ok, claudeaws ok, vertexAnthropic ok | — |
| `anthropic/claude-opus-4.8-fast` | anthropic | — | anthropic ok | — |
| `anthropic/claude-opus-5` | anthropic, bedrock, claudeaws, vertexAnthropic | — | anthropic ok, bedrock ok, claudeaws ok, vertexAnthropic ok | — |
| `anthropic/claude-opus-5-fast` | anthropic | — | anthropic ok | — |
| `anthropic/claude-sonnet-4` | bedrock, vertexAnthropic | — | bedrock ok, vertexAnthropic ok | — |
| `anthropic/claude-sonnet-4.5` | anthropic, bedrock, vertexAnthropic | — | anthropic ok, bedrock ok, vertexAnthropic ok | — |
| `anthropic/claude-sonnet-4.6` | anthropic, bedrock, claudeaws, vertexAnthropic | — | anthropic ok, bedrock ok, claudeaws ok, vertexAnthropic ok | — |
| `anthropic/claude-sonnet-5` | anthropic, bedrock, claudeaws, vertexAnthropic | — | anthropic ok, bedrock ok, claudeaws ok, vertexAnthropic ok | — |
| `arcee-ai/trinity-large-thinking` | — | — | — | arcee-ai (ignored (wrong_keys)) |
| `bytedance/seed-1.6` | — | — | — | bytedance (http 400) |
| `bytedance/seed-1.8` | — | — | — | bytedance (http 400) |
| `cohere/command-a` | — | — | — | cohere (http 400) |
| `deepseek/deepseek-r1` | deepinfra | deepinfra | deepinfra failed | bedrock (http 400) |
| `deepseek/deepseek-v3.1` | deepinfra | deepinfra | deepinfra failed | novita (http 404), sambanova (http 503) |
| `deepseek/deepseek-v3.1-terminus` | — | — | — | novita (ignored (wrong_keys)) |
| `deepseek/deepseek-v3.2` | bedrock, deepinfra | deepinfra | bedrock ok, deepinfra failed | deepseek (http 400), novita (ignored (wrong_keys)) |
| `deepseek/deepseek-v3.2-thinking` | bedrock, deepinfra | deepinfra | bedrock ok, deepinfra failed | novita (ignored (wrong_keys)) |
| `deepseek/deepseek-v4-flash-vision-exp` | deepinfra, fireworks | deepinfra, fireworks | deepinfra failed, fireworks ok | deepseek (http 400), novita (http 400) |
| `deepseek/deepseek-v4-pro` | alibaba, azure, deepinfra, deepseek | alibaba, azure, deepinfra, deepseek | alibaba ok, azure ok, deepinfra failed, deepseek ok | baseten (ignored (prose)), fireworks (http 400), novita (ignored (wrong_keys)), togetherai (http 400) |
| `deepseek/deepseek-v4-pro-0813` | alibaba, baseten, deepinfra, deepseek, fireworks | alibaba, baseten, deepinfra, deepseek, fireworks | alibaba ok, baseten failed, deepinfra failed, deepseek ok, fireworks ok | digitalocean (ignored (wrong_keys)), gmicloud (http 400), novita (ignored (wrong_keys)), parasail (ignored (wrong_keys)), runinfra (http 400), streamlake (ignored (wrong_keys)) |
| `deepseek/deepseek-v4.1-flash` | deepseek | deepseek | deepseek ok | — |
| `google/gemini-2.5-flash` | google, vertex | google, vertex | google ok, vertex ok | — |
| `google/gemini-2.5-flash-lite` | google, vertex | google, vertex | google ok, vertex ok | — |
| `google/gemini-2.5-pro` | google, vertex | google, vertex | google ok, vertex ok | — |
| `google/gemini-3-flash` | google, vertex | google, vertex | google ok, vertex ok | — |
| `google/gemini-3.1-flash-lite` | google, vertex | google, vertex | google ok, vertex ok | — |
| `google/gemini-3.1-pro-preview` | google, vertex | google, vertex | google ok, vertex ok | — |
| `google/gemini-3.5-flash` | google, vertex | google, vertex | google ok, vertex ok | — |
| `google/gemini-3.5-flash-lite` | google, vertex | google, vertex | google ok, vertex ok | — |
| `google/gemini-3.6-flash` | google, vertex | google, vertex | google ok, vertex ok | — |
| `google/gemini-3.7-flash` | google, vertex | google, vertex | google ok, vertex ok | — |
| `google/gemma-4-26b-a4b-it` | — | — | — | novita (ignored (wrong_keys)), parasail (ignored (wrong_keys)), vertex (ignored (wrong_keys)) |
| `google/gemma-4-31b-it` | — | — | — | cerebras (http 400), friendli (http 429), novita (ignored (wrong_keys)), parasail (ignored (prose)), togetherai (ignored (wrong_keys)) |
| `inception/mercury-2` | — | — | — | inception (ignored (wrong_keys)) |
| `inception/mercury-2.5` | — | — | — | inception (ignored (wrong_keys)) |
| `inception/mercury-coder-small` | — | — | — | inception (ignored (wrong_keys)) |
| `inclusionai/ling-3.0-flash` | — | — | — | novita (http 400) |
| `interfaze/interfaze-beta` | interfaze | interfaze | interfaze ok | — |
| `kwaipilot/kat-coder-air-v2.5` | — | — | — | streamlake (http 400) |
| `kwaipilot/kat-coder-pro-v1` | — | — | — | novita (http 404) |
| `kwaipilot/kat-coder-pro-v2` | — | — | — | streamlake (http 400) |
| `kwaipilot/kat-coder-pro-v2.5` | — | — | — | streamlake (http 400) |
| `meta/llama-3.1-70b` | — | — | — | bedrock (http 400), deepinfra (ignored (prose)) |
| `meta/llama-3.1-8b` | — | — | — | bedrock (http 400), deepinfra (http 400), groq (http 400), novita (ignored (wrong_keys)) |
| `meta/llama-3.3-70b` | — | — | — | bedrock (http 400), groq (http 400) |
| `meta/llama-4-maverick` | deepinfra | deepinfra | deepinfra failed | bedrock (http 400) |
| `meta/llama-4-scout` | — | — | — | bedrock (http 400), deepinfra (ignored (prose)) |
| `meta/muse-spark-1.1` | — | — | — | meta (ignored (no_content)) |
| `meta/muse-spark-1.2` | — | — | — | meta (ignored (no_content)) |
| `meta/muse-spark-1.2-contributor` | — | — | — | meta (ignored (no_content)) |
| `minimax/minimax-m2` | — | — | — | minimax (ignored (no_content)), novita (ignored (prose)) |
| `minimax/minimax-m2.1` | bedrock | — | bedrock ok | minimax (ignored (no_content)), novita (ignored (prose)) |
| `minimax/minimax-m2.1-lightning` | — | — | — | minimax (ignored (no_content)) |
| `minimax/minimax-m2.5` | bedrock | bedrock | bedrock ok | blackbox (http 400), deepinfra (http 400), minimax (ignored (no_content)), nebius (http 404), parasail (http 400) |
| `minimax/minimax-m2.5-highspeed` | minimax | minimax | minimax ok | novita (ignored (prose)) |
| `minimax/minimax-m2.7` | — | — | — | fireworks (http 400), minimax (ignored (no_content)), novita (ignored (prose)) |
| `minimax/minimax-m2.7-highspeed` | — | — | — | minimax (ignored (no_content)) |
| `minimax/minimax-m3` | fireworks | fireworks | fireworks ok | minimax (ignored (no_content)), nebius (ignored (wrong_keys)) |
| `mistral/codestral` | mistral | mistral | mistral ok | — |
| `mistral/ministral-14b` | mistral | mistral | mistral ok | — |
| `mistral/ministral-3b` | mistral | mistral | mistral ok | — |
| `mistral/ministral-8b` | mistral | mistral | mistral ok | — |
| `mistral/mistral-large-3` | mistral | mistral | mistral ok | — |
| `mistral/mistral-medium-3.5` | mistral | mistral | mistral ok | — |
| `mistral/mistral-nemo` | deepinfra | deepinfra | deepinfra failed | mistral (http 400), novita (ignored (wrong_keys)) |
| `mistral/mistral-small` | mistral | mistral | mistral ok | — |
| `moonshotai/kimi-k2` | — | — | — | novita (http 400) |
| `moonshotai/kimi-k2-thinking` | deepinfra | deepinfra | deepinfra failed | — |
| `moonshotai/kimi-k2.5` | — | — | — | bedrock (ignored (prose)), moonshotai (http 404), novita (ignored (prose)) |
| `moonshotai/kimi-k2.6` | baseten, fireworks | baseten, fireworks | baseten failed, fireworks ok | moonshotai (ignored (prose)), novita (ignored (prose)), togetherai (http 400) |
| `moonshotai/kimi-k2.7-code` | fireworks, moonshotai | fireworks, moonshotai | fireworks ok, moonshotai ok | baseten (http 429), deepinfra (ignored (no_content)) |
| `moonshotai/kimi-k2.7-code-highspeed` | moonshotai | moonshotai | moonshotai ok | fireworks (http 400) |
| `moonshotai/kimi-k3` | baseten, fireworks, moonshotai | baseten, fireworks, moonshotai | baseten failed, fireworks ok, moonshotai ok | morph (ignored (wrong_keys)), nebius (ignored (wrong_keys)), togetherai (ignored (wrong_keys)) |
| `moonshotai/kimi-k3-fast` | fireworks | fireworks | fireworks ok | morph (ignored (wrong_keys)), wafer (ignored (wrong_keys)) |
| `morph/morph-v3-fast` | — | — | — | morph (ignored (wrong_keys)) |
| `morph/morph-v3-large` | — | — | — | morph (ignored (wrong_keys)) |
| `nvidia/nemotron-3-nano-30b-a3b` | — | — | — | deepinfra (http 405) |
| `nvidia/nemotron-3-super-120b-a12b` | bedrock | — | bedrock ok | — |
| `nvidia/nemotron-3-ultra-550b-a55b` | baseten, deepinfra | baseten, deepinfra | baseten failed, deepinfra failed | blackbox (http 400), togetherai (http 400) |
| `nvidia/nemotron-3.5-lightning` | deepinfra, fireworks | deepinfra, fireworks | deepinfra failed, fireworks ok | runinfra (ignored (wrong_keys)) |
| `nvidia/nemotron-nano-12b-v2-vl` | deepinfra | deepinfra | deepinfra failed | bedrock (ignored (no_content)) |
| `nvidia/nemotron-nano-9b-v2` | — | — | — | bedrock (ignored (no_content)), deepinfra (http 405) |
| `openai/gpt-3.5-turbo` | — | — | — | openai (http 400) |
| `openai/gpt-4-turbo` | — | — | — | openai (http 400) |
| `openai/gpt-4.1` | azure, openai | azure, openai | azure ok, openai ok | — |
| `openai/gpt-4.1-fast` | openai | openai | openai ok | — |
| `openai/gpt-4.1-mini` | azure, openai | azure, openai | azure ok, openai ok | — |
| `openai/gpt-4.1-mini-fast` | openai | openai | openai ok | — |
| `openai/gpt-4.1-nano` | azure, openai | azure, openai | azure ok, openai ok | — |
| `openai/gpt-4.1-nano-fast` | openai | openai | openai ok | — |
| `openai/gpt-4o` | azure, openai | azure, openai | azure ok, openai ok | — |
| `openai/gpt-4o-fast` | openai | openai | openai ok | — |
| `openai/gpt-4o-mini` | azure, openai | azure, openai | azure ok, openai ok | — |
| `openai/gpt-4o-mini-fast` | openai | openai | openai ok | — |
| `openai/gpt-5` | azure | azure | azure ok | openai (ignored (no_content)) |
| `openai/gpt-5-codex` | azure | azure | azure ok | — |
| `openai/gpt-5-fast` | openai | openai | openai ok | — |
| `openai/gpt-5-mini` | azure, openai | azure, openai | azure ok, openai ok | — |
| `openai/gpt-5-mini-fast` | openai | openai | openai ok | — |
| `openai/gpt-5-nano` | openai | openai | openai ok | azure (ignored (no_content)) |
| `openai/gpt-5-pro` | — | — | — | openai (http 429) |
| `openai/gpt-5.1-codex` | azure | azure | azure ok | — |
| `openai/gpt-5.1-codex-max` | azure | azure | azure ok | — |
| `openai/gpt-5.1-codex-mini` | azure | azure | azure ok | — |
| `openai/gpt-5.1-thinking` | azure, openai | azure, openai | azure ok, openai ok | — |
| `openai/gpt-5.1-thinking-fast` | openai | openai | openai ok | — |
| `openai/gpt-5.2` | azure, openai | azure, openai | azure ok, openai ok | — |
| `openai/gpt-5.2-codex` | azure | azure | azure ok | — |
| `openai/gpt-5.2-fast` | openai | openai | openai ok | — |
| `openai/gpt-5.2-pro` | openai | openai | openai ok | — |
| `openai/gpt-5.3-codex` | azure, openai | azure, openai | azure ok, openai ok | — |
| `openai/gpt-5.3-codex-fast` | openai | openai | openai ok | — |
| `openai/gpt-5.4` | azure, openai | azure, openai | azure ok, openai ok | — |
| `openai/gpt-5.4-fast` | openai | openai | openai ok | — |
| `openai/gpt-5.4-mini` | azure, openai | azure, openai | azure ok, openai ok | — |
| `openai/gpt-5.4-mini-fast` | openai | openai | openai ok | — |
| `openai/gpt-5.4-nano` | azure, openai | azure, openai | azure ok, openai ok | — |
| `openai/gpt-5.4-pro` | azure, openai | azure, openai | azure ok, openai ok | — |
| `openai/gpt-5.5` | azure, bedrock, openai | azure, bedrock, openai | azure ok, bedrock ok, openai ok | — |
| `openai/gpt-5.5-fast` | openai | openai | openai ok | — |
| `openai/gpt-5.6-luna` | azure, bedrock, openai | azure, bedrock, openai | azure ok, bedrock ok, openai ok | — |
| `openai/gpt-5.6-luna-fast` | openai | openai | openai ok | — |
| `openai/gpt-5.6-sol` | azure, bedrock, openai | azure, bedrock, openai | azure ok, bedrock ok, openai ok | — |
| `openai/gpt-5.6-sol-fast` | openai | openai | openai ok | — |
| `openai/gpt-5.6-terra` | azure, bedrock, openai | azure, bedrock, openai | azure ok, bedrock ok, openai ok | — |
| `openai/gpt-5.6-terra-fast` | openai | openai | openai ok | — |
| `openai/gpt-6-astra-fast` | azure, openai | azure, openai | azure ok, openai ok | — |
| `openai/gpt-oss-120b` | baseten, bedrock, cerebras, fireworks | baseten, bedrock, cerebras, fireworks | baseten failed, bedrock ok, cerebras ok, fireworks ok | groq (http 498), nebius (ignored (wrong_keys)), parasail (ignored (wrong_keys)), togetherai (ignored (wrong_keys)) |
| `openai/gpt-oss-20b` | bedrock, deepinfra | bedrock, deepinfra | bedrock ok, deepinfra failed | fireworks (http 400), groq (http 498), novita (ignored (wrong_keys)), parasail (ignored (wrong_keys)), togetherai (ignored (prose)) |
| `openai/gpt-oss-safeguard-120b` | bedrock | — | bedrock ok | — |
| `openai/gpt-oss-safeguard-20b` | — | — | — | groq (http 498) |
| `openai/o1` | azure, openai | azure, openai | azure ok, openai ok | — |
| `openai/o3` | openai | openai | openai ok | — |
| `openai/o3-fast` | openai | openai | openai ok | — |
| `openai/o3-mini` | azure, openai | azure, openai | azure ok, openai ok | — |
| `openai/o3-pro` | openai | openai | openai ok | — |
| `openai/o4-mini` | azure, openai | azure, openai | azure ok, openai ok | — |
| `openai/o4-mini-fast` | openai | openai | openai ok | — |
| `poolside/laguna-s-2.1` | — | — | — | poolside (ignored (prose)) |
| `poolside/laguna-s-2.1-free` | — | — | — | poolside (ignored (prose)) |
| `sakana/fugu-ultra` | — | — | — | sakana (http 403) |
| `sakana/namazu` | — | — | — | sakana (http 403) |
| `spacexai/grok-4.20-multi-agent` | — | — | — | xai (ignored (prose)) |
| `spacexai/grok-4.20-multi-agent-beta` | xai | xai | xai ok | — |
| `spacexai/grok-4.20-non-reasoning` | vertex, xai | vertex, xai | vertex ok, xai ok | — |
| `spacexai/grok-4.20-non-reasoning-beta` | xai | xai | xai ok | — |
| `spacexai/grok-4.20-reasoning` | vertex, xai | vertex, xai | vertex ok, xai ok | — |
| `spacexai/grok-4.20-reasoning-beta` | xai | xai | xai ok | — |
| `spacexai/grok-4.3` | vertex, xai | vertex, xai | vertex ok, xai ok | — |
| `spacexai/grok-4.5` | xai | xai | xai ok | — |
| `spacexai/grok-build-0.1` | xai | xai | xai ok | — |
| `stepfun/step-3.5-flash` | — | — | — | deepinfra (http 405) |
| `stepfun/step-3.7-flash` | — | — | — | stepfun (ignored (wrong_keys)) |
| `tencent/hy3` | deepinfra | deepinfra | deepinfra failed | novita (http 400) |
| `thinkingmachines/inkling` | — | — | — | baseten (ignored (prose)), togetherai (ignored (wrong_keys)) |
| `thinkingmachines/inkling-small` | deepinfra | deepinfra | deepinfra failed | baseten (ignored (prose)), togetherai (ignored (wrong_keys)) |
| `xiaomi/mimo-v2.5` | deepinfra | deepinfra | deepinfra failed | xiaomi (ignored (wrong_keys)) |
| `xiaomi/mimo-v2.5-pro` | deepinfra | deepinfra | deepinfra failed | xiaomi (ignored (wrong_keys)) |
| `zai/glm-4.5` | — | — | — | zai (ignored (wrong_keys)) |
| `zai/glm-4.5-air` | — | — | — | zai (ignored (wrong_keys)) |
| `zai/glm-4.5v` | — | — | — | novita (ignored (wrong_keys)), zai (ignored (wrong_keys)) |
| `zai/glm-4.6` | deepinfra | deepinfra | deepinfra failed | novita (ignored (wrong_keys)), zai (ignored (wrong_keys)) |
| `zai/glm-4.7` | baseten, bedrock | baseten | baseten failed, bedrock ok | cerebras (http 400), deepinfra (ignored (no_content)), novita (ignored (wrong_keys)), zai (ignored (wrong_keys)) |
| `zai/glm-4.7-flash` | bedrock | — | bedrock ok | zai (http 429) |
| `zai/glm-4.7-flashx` | — | — | — | zai (ignored (wrong_keys)) |
| `zai/glm-5` | bedrock | — | bedrock ok | deepinfra (http 400), novita (ignored (wrong_keys)), parasail (http 400), zai (ignored (wrong_keys)) |
| `zai/glm-5-turbo` | — | — | — | zai (ignored (wrong_keys)) |
| `zai/glm-5.1` | deepinfra | deepinfra | deepinfra failed | novita (ignored (wrong_keys)), zai (ignored (wrong_keys)) |
| `zai/glm-5.2` | alibaba, baseten, deepinfra, fireworks, friendli | alibaba, baseten, deepinfra, fireworks, friendli | alibaba ok, baseten failed, deepinfra failed, fireworks ok, friendli ok | crusoe (http 404), digitalocean (ignored (wrong_keys)), morph (ignored (wrong_keys)), nebius (http 0), novita (ignored (wrong_keys)), parasail (ignored (wrong_keys)), runware (ignored (wrong_keys)), streamlake (ignored (wrong_keys)), togetherai (ignored (wrong_keys)), wafer (http 400), zai (ignored (wrong_keys)) |
| `zai/glm-5.2-fast` | alibaba, baseten, fireworks | alibaba, baseten, fireworks | alibaba ok, baseten failed, fireworks ok | wafer (http 400) |
| `zai/glm-5.3` | baseten, deepinfra, fireworks, friendli | baseten, deepinfra, fireworks, friendli | baseten failed, deepinfra failed, fireworks ok, friendli ok | blackbox (ignored (wrong_keys)), digitalocean (ignored (wrong_keys)), gmicloud (ignored (wrong_keys)), modal (ignored (wrong_keys)), morph (ignored (wrong_keys)), novita (ignored (wrong_keys)), parasail (http 429), runware (ignored (wrong_keys)), togetherai (ignored (wrong_keys)), wafer (ignored (wrong_keys)), zai (ignored (wrong_keys)) |
| `zai/glm-5.3-fast` | baseten | baseten | baseten failed | — |
| `zai/glm-5v-turbo` | — | — | — | zai (ignored (wrong_keys)) |

See the [structured output guide](https://minirouter.sh/docs/structured-output) for request examples.
