Skip to content

List models

GET https://inference.inferel.ai/v1/models

Returns the models currently servable on the platform in the OpenAI list format, each with its live per-token price. The catalog changes as providers and capacity are added, so query this endpoint rather than hardcoding model lists — a model appears here only when it has at least one healthy serving endpoint.

Terminal window
curl https://inference.inferel.ai/v1/models \
-H "Authorization: Bearer $INFEREL_API_KEY"
{
"object": "list",
"data": [
{
"id": "claude-sonnet-4.6",
"name": "claude-sonnet-4.6",
"object": "model",
"owned_by": "inference",
"pricing": {
"prompt": "0.000003",
"completion": "0.000015",
"input_cache_read": "0.0000003",
"input_cache_write": "0.00000375",
"request": "0",
"image": "0",
"currency": "USD",
"unit": "per_token"
}
}
]
}

Model IDs are namespaced as provider/model-name Legacy maker-prefixed ids (anthropic/claude-opus-4.8) and official Anthropic dashed/dated ids (claude-opus-4-8) are still accepted on every endpoint — existing integrations keep working unchanged.

(e.g. claude-opus-4.8, gpt-5.5, gemini-3.5-flash, Kimi-K2.6). Use the id value verbatim as the model field in inference requests.

Prices are USD per token as decimal strings — the OpenRouter-compatible shape, so tools that already read that format work unchanged. Multiply by 1,000,000 for the per-million-token rate quoted in the console ("0.000003"$3.00 / 1M).

FieldMeaning
promptInput (prompt) tokens.
completionOutput (completion) tokens.
input_cache_readCached input tokens read from a prompt cache.
input_cache_writeInput tokens written to a prompt cache.
request / imagePer-request and per-image surcharges. Always "0" today.
currencyAlways "USD".
unitAlways "per_token".

These are the same prices your usage is billed at: the endpoint reads the billing system’s own price table, so the published rate and the charged rate share one source. Prices are cached for up to a minute, so a very recent price change may take that long to appear. See Prompt caching for how cached tokens are counted.

Models that have no published price omit the pricing object; they are still listed and still servable. The endpoint works without a key — supply your API key to get prices that include any discounts negotiated for your organization.

When your organization has a per-model discount, an authenticated request returns the discounted price in the top-level fields and adds the pre-discount rates under list, plus the percentage applied:

{
"id": "claude-sonnet-4.6",
"pricing": {
"prompt": "0.0000021",
"completion": "0.0000105",
"discount_percent": 30,
"list": {
"prompt": "0.000003",
"completion": "0.000015",
"input_cache_read": "0.0000003",
"input_cache_write": "0.00000375"
},
"currency": "USD",
"unit": "per_token"
}
}

Without a key (or without a discount) there is no list block — the top-level prices are the list prices.

By default only base model IDs are returned. Organizations with resource group access can pass ?variants=all to also list each model’s pool variants (<model>-<pool>) with their pool metadata and multiplier-adjusted pricing. Callers without pool access get the base list, whether or not the parameter is set.

Terminal window
curl "https://inference.inferel.ai/v1/models?variants=all" \
-H "Authorization: Bearer $INFEREL_API_KEY"

Per-model pricing is also shown on the Billing page of the console, alongside any discounts applied to your organization — see Models & pricing.