Models

List compatible LLM models

GET
/models/llm

Returns a cached, normalized OpenRouter catalog filtered to models that advertise strict structured output (structured_outputs + response_format), have valid finite provider-list cost (internally) that is converted to customer retail rates, produce text, and are not expired.

Default mode=suggested returns a short recommended subset. mode=search discovers the full compatible catalog with optional q / pagination. Field grounding and schema suggestion remain restricted to certified models.

Authorization

bearerAuth
AuthorizationBearer <token>

Existing Eigenpal API key presented as a bearer token.

In: header

Query Parameters

mode?string

suggested (default): short recommended subset. search: full compatible catalog filtered by q.

Default"suggested"

Value in

  • "suggested"
  • "search"
q?string

Case-insensitive substring match against id, label, or provider. Used with mode=search.

Lengthlength <= 200
page?integer

1-based page index when paginating search results.

Range1 <= value
Default1
limit?integer

Page size for search; ignored for suggested mode (bounded server-side).

Range1 <= value <= 100
Default25

Response Body

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/models/llm" \  -H "Authorization: Bearer $OPENPARSER_API_KEY"
{  "mode": "suggested",  "catalog_version": "string",  "fetched_at": "2019-08-24T14:15:22Z",  "stale": true,  "data": [    {      "id": "string",      "label": "string",      "provider": "string",      "created_at": "2019-08-24T14:15:22Z",      "context_length": 1,      "recommendation": "suggested",      "is_default": true,      "certified_grounding": true,      "certified_suggest": true,      "supports_grounding": true,      "supports_suggest": true,      "pricing_known": true,      "reasoning": {        "supported_efforts": [          "none"        ],        "default_effort": "none",        "mandatory": true,        "supports_max_tokens": true      },      "deprecated_at": "2019-08-24T14:15:22Z",      "pricing": {        "prompt_usd_per_1m": 0,        "completion_usd_per_1m": 0,        "basis": "customer_retail"      }    }  ],  "page": 1,  "limit": 1,  "total": 0,  "has_more": true}
{  "error": {    "code": "unauthorized",    "message": "invalid API key",    "request_id": "req_01h2example",    "retryable": false  }}
{  "error": {    "code": "forbidden",    "message": "API key lacks required scope",    "request_id": "req_01h2example",    "retryable": false  }}

{  "error": {    "code": "rate_limited",    "message": "request rate limit exceeded",    "request_id": "req_01h2example",    "retryable": true  }}