A model name helps people recognize a candidate, while its API identifier selects a concrete route or selection rule. Preserve the identifier and host whenever you evaluate or deploy a model.
Definition with a live example
A display name is presentation text. An API identifier is the value sent in the request. A family groups related models. A snapshot identifies a version according to the provider’s naming convention, while an alias can refer to a target that changes over time. These distinctions affect repeatability, debugging and migration.
OpenRouter documents both API identifiers and canonical model metadata, plus latest-family aliases that resolve to current concrete targets. Official documentation.
| Model | Official identifier | Modalities | Context tokens | Input USD / 1M | Output USD / 1M | Status |
|---|---|---|---|---|---|---|
| kimi-k2.6 | kimi-k2.6 | text | 262,144 | $0.95 | $4 | Active |
| kimi-k2.7-code | kimi-k2.7-code | text | 262,144 | $0.95 | $4 | Active |
| kimi-k2.7-code-highspeed | kimi-k2.7-code-highspeed | text | 262,144 | $1.9 | $8 | Active |
| kimi-k3 | kimi-k3 | text | 1,048,576 | $3 | $15 | Active |
Last verified · Source ↗
The live list illustrates how status and identifier belong together. An old model can remain in a reference as a migration record while no longer being an active request target. Read the status and source before copying an identifier into code.
A snapshot is useful only within the provider’s support lifecycle. Its stable-looking name does not promise indefinite service. An alias can reduce manual version edits, but it also means a future request may use a different target. Choose the behavior intentionally and keep a record of the concrete model that actually served evaluation calls where the interface provides it.
The serving host also matters. A related model family can appear in a direct API, a hosting service and a router catalog. Each route has its own identifier and account conditions. A model migration record should identify both the model and the service path rather than treating similar display names as proof of identical behavior.

How it affects cost / limits / results
A model change can affect the request contract as well as answer quality. Inspect supported parameters, output parsing, tool behavior and media representation. A syntactically valid client call can still contain a field the new model does not support. Keep a minimal passing baseline before restoring the full application payload.
Preserve a fixed evaluation fixture and acceptance rule. If the prompt and model change simultaneously, the source of an improvement or regression becomes harder to identify. Change one meaningful layer, record the result and then continue. This creates a migration explanation that another developer can reproduce.
Use the cost calculator with the new model’s applicable categories while holding the old workload assumptions fixed. Then inspect whether the new model changes output length or the number of repair calls needed for an accepted task.
Check access, free offers and capacity as part of the same change. A dated snapshot and current alias can have different account conditions. A migration that passes a local output test can still fail later when a scheduled worker uses a different key scope or the old identifier remains in a fallback list.
Search every consumer of the old route: environment settings, saved presets, background jobs and fallback configuration. Keep a migration inventory and verify each launch path. A rarely used worker is still part of the deployment even if it does not fail during the first visible test.
Retain the old evidence after migration. The historical page or decision record should explain why the route changed and which checks passed. It should not present an unsupported retired model as a current recommendation, but it remains useful when an older integration needs diagnosis.
Provider differences
Moonshot’s Kimi model guide points to a catalog with explicit retired routes. Older moonshot-v1 examples therefore require an identifier and behavior migration.
OpenRouter model naming includes latest-family resolution. The response identifies the concrete target, which should be retained when the application permits a moving alias.
Alibaba Model Studio models include dated snapshots and current identifiers; the offer rules also treat some versioned entries independently for quota purposes.
These conventions should be read from the provider source rather than inferred from punctuation. A date-like suffix, latest label or numeric generation does not carry a universal cross-provider guarantee. Preserve exact strings in configuration and use an explicit mapping if your application offers user-friendly labels.
If a router supplies fallback, record the actual resolved candidate as well as the requested primary. An observed output may come from a replacement even when the visible application setting remains unchanged. That metadata is necessary for fair regression and cost analysis.
Common mistakes
Do not send a display label as though it were the API identifier. Copy the actual documented request value and verify it with the smallest call.
Do not assume latest means reproducible. If an evaluation must remain fixed, pin a supported concrete target and manage upgrades deliberately. If continuity is preferred, monitor target changes and rerun the relevant fixtures.
Do not assume a retired model can be restored by changing the SDK. Check the provider’s lifecycle notice and select an available replacement. A library update cannot create access to a route that no longer exists.
Do not change model, prompt, client version and tools in one untracked edit. Establish a passing baseline and make the change sequence explainable.
Do not forget old fallbacks and schedules. A migration is incomplete while an untested consumer can still select the retired route during the next incident or background run.
Last verified · Source ↗
Frequently asked questions
Is a display name the same as an API identifier?
Does a snapshot remain available forever?
What does a latest alias trade off?
What should be tested during migration?
Where can old identifiers remain?
Why record the resolved model?
Sources
- Kimi model lifecycle ↗
- OpenRouter latest aliases ↗
- OpenRouter model metadata ↗
- Model Studio versioned quota ↗
Last verified · Source ↗