Skip to main content
Explore and browse 400+ models and providers on our website, or with our API. You can also subscribe to our RSS feed to stay updated on new models.

Query Parameters

The Models API supports query parameters to filter the list of models returned.

output_modalities

Filter models by their output capabilities. Accepts a comma-separated list of modalities or "all" to include every model regardless of output type. Examples:
The same parameter is available on the /v1/models/count endpoint so that counts stay consistent with list results.

supported_parameters

Filter models by the API parameters they support. For example, to find models that support tool calling:

sort

Sort models server-side before they’re returned. Accepts one of the following values: Models without data for the requested sort dimension (e.g. no pricing, no throughput heuristics) sort last. Omitting sort preserves the default ordering (backward compatible).

Single Model Lookup

Look up a single model’s full details without fetching the entire list:
The endpoint resolves aliases automatically. For example, anthropic/claude-3-5-sonnet redirects to the canonical anthropic/claude-3.5-sonnet and returns its data. Variant suffixes are also supported — append :free, :thinking, etc. to the slug:
Returns 404 if the model doesn’t exist and isn’t an alias for another model. The response shape wraps the same Model object used in the list endpoint:

Models API Standard

Our Models API makes the most important information about all LLMs freely available as soon as we confirm it.

API Response Schema

The Models API returns a standardized JSON response format that provides comprehensive metadata for each available model. This schema is cached at the edge and designed for reliable integration with production applications.

Root Response Object

Pagination
The list endpoint supports optional offset and limit query parameters. Pagination is opt-in: when both are omitted, the full list is returned and links.next is null. When you paginate, limit defaults to 500 (max 1000), and links.next contains the ready-to-use URL for the next page (or null on the last page):

Model Object Schema

Each model in the data array contains the following standardized fields:

Architecture Object

Pricing Object

All pricing values are in USD per token/request/unit. A value of "0" indicates the feature is free.
Pricing Overrides
Some endpoints charge different rates under certain conditions — for example, long-context pricing where requests above a token threshold cost more, or time-based pricing where peak hours have higher rates. These appear in the optional pricing.overrides array:
An entry applies when all of its condition fields match the request. When multiple entries apply, later entries win per key. Price keys absent from an entry inherit the base price. The top-level pricing keys always reflect the price that applies to a request under default conditions; overrides carries the conditional exceptions. For example, a model that charges $2.50/M input tokens normally and $5/M beyond 200K prompt tokens:
Time-window conditions express peak/off-peak pricing. The overrides array always lists every window — peak and off-peak — tiling the full 24-hour day, so the complete schedule is recoverable regardless of when the response was generated. For example, a model that charges half price between 16:30 and 00:30 UTC:

Top Provider Object

Benchmarks Object

Present only on models that have been evaluated in third-party benchmarks. Currently includes Design Arena rankings.
Rankings are computed among models listed on OpenRouter, not the full external leaderboard. Models without benchmark data omit the benchmarks field entirely.

Supported Parameters

The supported_parameters array indicates which OpenAI-compatible parameters work with each model:
  • tools - Function calling capabilities
  • tool_choice - Tool selection control
  • max_tokens - Response length limiting
  • temperature - Randomness control
  • top_p - Nucleus sampling
  • reasoning - Internal reasoning mode
  • include_reasoning - Include reasoning in response
  • structured_outputs - JSON schema enforcement
  • response_format - Output format specification
  • stop - Custom stop sequences
  • frequency_penalty - Repetition reduction
  • presence_penalty - Topic diversity
  • seed - Deterministic outputs
Different models tokenize text in different waysSome models break up text into chunks of multiple characters (GPT, Claude, Llama, etc), while others tokenize by character (PaLM). This means that token counts (and therefore costs) will vary between models, even when inputs and outputs are the same. Costs are displayed and billed according to the tokenizer for the model in use. You can use the usage field in the response to get the token counts for the input and output.
If there are models or providers you are interested in that OpenRouter doesn’t have, please tell us about them in our Discord channel.

For Providers

If you’re interested in working with OpenRouter, you can learn more on our providers page.