Supported models
How the model catalog works, how to list it, and how new models roll out.
Dynoyard exposes a curated catalog of frontier OSS models behind one endpoint. You don’t manage providers or versions — you call a stable dynoyard-side slug and we route it to the best upstream.
The canonical list
The catalog evolves as new models ship, so the canonical source is always live, not this page:
GET /v1/models— the models enabled on your org, in OpenRouter-compatible shape (id, context length, pricing, capabilities).- Pricing page — the same catalog with per-token rates, billed per request from prepaid credits.
curl https://<your-org>.dynoyard.app/v1/models \
-H "Authorization: Bearer sk-dyno-XXXX"
Families (mid-2026)
| Family | Maker | Notes |
|---|---|---|
| Kimi | Moonshot | Long-context, thinking-mode reasoning |
| MiMo | Xiaomi | Reasoning, strong price/performance |
| DeepSeek | DeepSeek | R1-style reasoning |
| Qwen | Alibaba | Flagship qwen-max, fast qwen-plus, MoE variants |
| GLM | Zhipu | General + agentic |
Exact ids and which are enabled on your org always come from
/v1/models — don’t hardcode this table.
Capabilities
Each model in /v1/models carries a capabilities array so your SDK
or router can light up the right features:
| Capability | Meaning |
|---|---|
tools | OpenAI-style function/tool calling |
streaming | Server-Sent Events streaming |
reasoning | Emits reasoning_content (thinking mode) |
vision | Accepts image content blocks (provider-dependent) |
This mirrors OpenRouter’s supported_parameters, so catalog-aware
tooling (LiteLLM, openrouter-*) reads it without translation.
Slug stability & new models
- Slugs are stable. Once a model id is published, your
modelfield keeps working — we don’t rename underneath you. - New models appear automatically in
/v1/models. No client code change, no new key, no new endpoint — switch by changing themodelfield. - Per-key restriction. Scope a key to a subset of the catalog with allowed models (see authentication).
Choosing a model per request
One key, one endpoint, switch models inline:
for model in ["kimi-k2-thinking", "mimo-v2-5-pro", "qwen-max-3-7"]:
resp = client.chat.completions.create(
model=model,
messages=[{"role": "user", "content": "one-liner intro"}],
)
print(model, "→", resp.choices[0].message.content[:80])