List models
GET /v1/models — the catalogue, scoped to what your key can actually call.
GET
https://iranrouter.com/v1/modelsThe catalogue, scoped to what this key can call. Authenticated, because the list depends on the key.
curl https://iranrouter.com/v1/models -H "Authorization: Bearer ir-..."
{
"object": "list",
"data": [
{
"id": "openai/gpt-4o-mini",
"object": "model",
"display_name": "GPT-4o mini",
"author": { "slug": "openai", "name": "OpenAI" },
"architecture": { "input_modalities": ["text", "image"], "output_modalities": ["text"] },
"endpoint": "/v1/chat/completions",
"context_window": 128000,
"max_output_tokens": 16384,
"capabilities": { "tools": true, "vision": true, "json_schema": true },
"supported_parameters": ["tools", "vision", "json_schema"],
"pricing": { "input_rial_per_mtok": 1500000, "output_rial_per_mtok": 6000000, "currency": "IRR" },
"billed_from": "plan"
}
]
}| Field | Meaning |
|---|---|
id | Exactly the string you put in the model field. |
architecture | What the model takes and makes: text, image, audio, video, file, embeddings, transcription, speech, rerank. |
endpoint | The path this model answers on. Do not call an embedding model on chat/completions. null means a family not served yet. |
context_window | The input + output token ceiling. |
capabilities | Declared capabilities; supported_parameters is the list of the true keys. |
pricing | Input and output rates in Rial per million tokens. The other rates (cache, reasoning, image, audio, conditional prices) are on the model's page. |
billed_from | 'plan' draws the allowance, 'credit' bills the wallet. |
deprecated / sunset_at / successor | Only on a deprecated model: it works until sunset_at, then resolves to successor. |
GET
https://iranrouter.com/v1/models/{id}One model, in the same shape as a list row. The id contains a slash; do not encode the path: GET https://iranrouter.com/v1/models/openai/gpt-4o-mini. A model outside this key's list is a 404.
The public catalogue with Rial pricing and benchmarks is at the models page.