← OpenRouterList

Models API

models.json is a small, sorted projection of current OpenRouter model data for agents and scripts. It contains per-million-token prices and explicit capability flags without descriptions, provider metadata or benchmark scores.

Data is checked twice a day. The updated value changes only when the source data changes. Validate the document with the JSON Schema.

Fields

FieldDescription
schema_versionMajor schema version, currently 1.
updatedUTC ISO 8601 time when the source data last changed.
sourceSource OpenRouter public models API URL.
countNumber of objects in models.
modelsModel objects sorted by id.
idExact OpenRouter model identifier.
nameHuman-readable model name.
urlOpenRouterList model page, or null for an unsafe path.
prompt_per_1mUSD per 1M prompt tokens; null for variable or unavailable pricing.
completion_per_1mUSD per 1M completion tokens; null for variable or unavailable pricing.
pricingfixed, free, variable, or unavailable.
context_lengthMaximum context window in tokens.
capabilitiesObject containing the five boolean flags below.
tool_callingBoth tools and tool_choice are advertised.
structured_outputsstructured_outputs is advertised.
reasoningreasoning or include_reasoning is advertised.
response_formatresponse_format is advertised.
web_searchweb_search_options is advertised.
input_modalitiesAccepted input modality names.
output_modalitiesProduced output modality names.
createdModel creation time as UTC ISO 8601, or null.
expiration_dateAnnounced retirement date, or null.

Examples

curl -s https://openrouterlist.jvrck.com/api/models.json
curl -s https://openrouterlist.jvrck.com/api/models.json |
  jq '.models[] | select(.capabilities.tool_calling)'

Stability

Within schema_version 1, fields are only added; existing fields are never renamed or removed. Consumers should ignore fields they do not recognise.

Code is MIT licensed. Data comes from OpenRouter’s public models API; benchmark scores are not republished.