Commits included in this export:

- 6ddaaa6989d725bbe966e45f7aed0c1bd72f9153
  - 4779741b6ba710b1299612b82e8544516bd9dd6a
  - 22083fcc8f58884d8212d6f3314b231c4ddd21cd
  - a925a620f97196d509e073a163caac053bd82316
  - 5c05d8829784601ffd151acef1a6978c266f913d
  - 6f4fff535fbf4274255c255ae23620b8e00e614f
  - ef358e96cb01e469b77d44683603a602b0813116
  - e6299b4ebfe5c2eed6c598771f0fd99f84555401
  - 24d3f0ee1c2aa19a62f7902836034080b9246813
  - 68922847c2969b773887310eb7aa9a814e199c5a
  - 729ee2338c39df22461526153e7f4ba868fd498e
  - e1074ff86fccf5e48406b7595298873106d3cc5a
  - 123bbdaf841d299162a82ee2573adfbb70a45b8f
  - ac457b8a8dad98fdf5ddcae8dd4711361cea3084
  - ea825199f4c59dd68fec01cf8d18a582963c9f25
  - 4d48e4f6bb936e785787314a965298da6b78fea0
  - 718729a573ee98893a4408d5a52ab4686661fe54
  - b867adcde6b64f3f2a11c4626254b39098e4b0b4
  - 21912c097b4066d109766c6b4492826595cd57c5
  - bc1ed85adc976a4634ca8a41b82e4fc2c39a864f
  - d145c89c941937a312ed1357590d2bfda9a3603d
  - 12f05b5dee397ead47cfcd545a7a2e3c7ff57524
  - dd28f75a19a015809797c7abf3f8758f7c37262e
  - c96e569781e07ab44172d9c69940ec17bafd81f4
  - c9d5a90e3c2b5077a2bdd49773f1a46d1a5a79c7
  - 58b08f87116ceab9076de2fdc0a4c74c919b44c4

GitOrigin-RevId: 6ddaaa6989d725bbe966e45f7aed0c1bd72f9153
This commit is contained in:
OpenRouter Team
2026-02-05 23:15:21 +00:00
parent 0c791b04d1
commit 1cad51abb6
247 changed files with 8079 additions and 4566 deletions
+116 -8
View File
@@ -15,6 +15,8 @@ class Models(BaseSDK):
def count(
self,
*,
http_referer: Optional[str] = None,
x_title: Optional[str] = None,
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
@@ -22,6 +24,11 @@ class Models(BaseSDK):
) -> components.ModelsCountResponse:
r"""Get total count of available models
:param http_referer: The app identifier should be your app's URL and is used as the primary identifier for rankings.
This is used to track API usage per application.
:param x_title: The app display name allows you to customize how your app appears in OpenRouter's dashboard.
:param retries: Override the default retry configuration for this method
:param server_url: Override the default server URL for this method
:param timeout_ms: Override the default request timeout configuration for this method in milliseconds
@@ -36,18 +43,28 @@ class Models(BaseSDK):
base_url = server_url
else:
base_url = self._get_url(base_url, url_variables)
request = operations.ListModelsCountRequest(
http_referer=http_referer,
x_title=x_title,
)
req = self._build_request(
method="GET",
path="/models/count",
base_url=base_url,
url_variables=url_variables,
request=None,
request=request,
request_body_required=False,
request_has_path_params=False,
request_has_query_params=True,
user_agent_header="user-agent",
accept_header_value="application/json",
http_headers=http_headers,
_globals=operations.ListModelsCountGlobals(
http_referer=self.sdk_configuration.globals.http_referer,
x_title=self.sdk_configuration.globals.x_title,
),
security=self.sdk_configuration.security,
allow_empty_value=None,
timeout_ms=timeout_ms,
@@ -100,6 +117,8 @@ class Models(BaseSDK):
async def count_async(
self,
*,
http_referer: Optional[str] = None,
x_title: Optional[str] = None,
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
@@ -107,6 +126,11 @@ class Models(BaseSDK):
) -> components.ModelsCountResponse:
r"""Get total count of available models
:param http_referer: The app identifier should be your app's URL and is used as the primary identifier for rankings.
This is used to track API usage per application.
:param x_title: The app display name allows you to customize how your app appears in OpenRouter's dashboard.
:param retries: Override the default retry configuration for this method
:param server_url: Override the default server URL for this method
:param timeout_ms: Override the default request timeout configuration for this method in milliseconds
@@ -121,18 +145,28 @@ class Models(BaseSDK):
base_url = server_url
else:
base_url = self._get_url(base_url, url_variables)
request = operations.ListModelsCountRequest(
http_referer=http_referer,
x_title=x_title,
)
req = self._build_request_async(
method="GET",
path="/models/count",
base_url=base_url,
url_variables=url_variables,
request=None,
request=request,
request_body_required=False,
request_has_path_params=False,
request_has_query_params=True,
user_agent_header="user-agent",
accept_header_value="application/json",
http_headers=http_headers,
_globals=operations.ListModelsCountGlobals(
http_referer=self.sdk_configuration.globals.http_referer,
x_title=self.sdk_configuration.globals.x_title,
),
security=self.sdk_configuration.security,
allow_empty_value=None,
timeout_ms=timeout_ms,
@@ -185,6 +219,8 @@ class Models(BaseSDK):
def list(
self,
*,
http_referer: Optional[str] = None,
x_title: Optional[str] = None,
category: Optional[operations.Category] = None,
supported_parameters: Optional[str] = None,
retries: OptionalNullable[utils.RetryConfig] = UNSET,
@@ -194,6 +230,11 @@ class Models(BaseSDK):
) -> components.ModelsListResponse:
r"""List all models and their properties
:param http_referer: The app identifier should be your app's URL and is used as the primary identifier for rankings.
This is used to track API usage per application.
:param x_title: The app display name allows you to customize how your app appears in OpenRouter's dashboard.
:param category: Filter models by use case category
:param supported_parameters:
:param retries: Override the default retry configuration for this method
@@ -212,6 +253,8 @@ class Models(BaseSDK):
base_url = self._get_url(base_url, url_variables)
request = operations.GetModelsRequest(
http_referer=http_referer,
x_title=x_title,
category=category,
supported_parameters=supported_parameters,
)
@@ -228,6 +271,10 @@ class Models(BaseSDK):
user_agent_header="user-agent",
accept_header_value="application/json",
http_headers=http_headers,
_globals=operations.GetModelsGlobals(
http_referer=self.sdk_configuration.globals.http_referer,
x_title=self.sdk_configuration.globals.x_title,
),
security=self.sdk_configuration.security,
allow_empty_value=None,
timeout_ms=timeout_ms,
@@ -285,6 +332,8 @@ class Models(BaseSDK):
async def list_async(
self,
*,
http_referer: Optional[str] = None,
x_title: Optional[str] = None,
category: Optional[operations.Category] = None,
supported_parameters: Optional[str] = None,
retries: OptionalNullable[utils.RetryConfig] = UNSET,
@@ -294,6 +343,11 @@ class Models(BaseSDK):
) -> components.ModelsListResponse:
r"""List all models and their properties
:param http_referer: The app identifier should be your app's URL and is used as the primary identifier for rankings.
This is used to track API usage per application.
:param x_title: The app display name allows you to customize how your app appears in OpenRouter's dashboard.
:param category: Filter models by use case category
:param supported_parameters:
:param retries: Override the default retry configuration for this method
@@ -312,6 +366,8 @@ class Models(BaseSDK):
base_url = self._get_url(base_url, url_variables)
request = operations.GetModelsRequest(
http_referer=http_referer,
x_title=x_title,
category=category,
supported_parameters=supported_parameters,
)
@@ -328,6 +384,10 @@ class Models(BaseSDK):
user_agent_header="user-agent",
accept_header_value="application/json",
http_headers=http_headers,
_globals=operations.GetModelsGlobals(
http_referer=self.sdk_configuration.globals.http_referer,
x_title=self.sdk_configuration.globals.x_title,
),
security=self.sdk_configuration.security,
allow_empty_value=None,
timeout_ms=timeout_ms,
@@ -389,14 +449,23 @@ class Models(BaseSDK):
operations.ListModelsUserSecurity,
operations.ListModelsUserSecurityTypedDict,
],
http_referer: Optional[str] = None,
x_title: Optional[str] = None,
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
http_headers: Optional[Mapping[str, str]] = None,
) -> components.ModelsListResponse:
r"""List models filtered by user provider preferences
r"""List models filtered by user provider preferences, privacy settings, and guardrails
List models filtered by user provider preferences, [privacy settings](https://openrouter.ai/docs/guides/privacy/logging), and [guardrails](https://openrouter.ai/docs/guides/features/guardrails). If requesting through `eu.openrouter.ai/api/v1/...` the results will be filtered to models that satisfy [EU in-region routing](https://openrouter.ai/docs/guides/privacy/logging#enterprise-eu-in-region-routing).
:param security:
:param http_referer: The app identifier should be your app's URL and is used as the primary identifier for rankings.
This is used to track API usage per application.
:param x_title: The app display name allows you to customize how your app appears in OpenRouter's dashboard.
:param retries: Override the default retry configuration for this method
:param server_url: Override the default server URL for this method
:param timeout_ms: Override the default request timeout configuration for this method in milliseconds
@@ -411,18 +480,28 @@ class Models(BaseSDK):
base_url = server_url
else:
base_url = self._get_url(base_url, url_variables)
request = operations.ListModelsUserRequest(
http_referer=http_referer,
x_title=x_title,
)
req = self._build_request(
method="GET",
path="/models/user",
base_url=base_url,
url_variables=url_variables,
request=None,
request=request,
request_body_required=False,
request_has_path_params=False,
request_has_query_params=True,
user_agent_header="user-agent",
accept_header_value="application/json",
http_headers=http_headers,
_globals=operations.ListModelsUserGlobals(
http_referer=self.sdk_configuration.globals.http_referer,
x_title=self.sdk_configuration.globals.x_title,
),
security=utils.get_pydantic_model(
security, operations.ListModelsUserSecurity
),
@@ -447,7 +526,7 @@ class Models(BaseSDK):
security_source=get_security_from_env(security, components.Security),
),
request=req,
error_status_codes=["401", "4XX", "500", "5XX"],
error_status_codes=["401", "404", "4XX", "500", "5XX"],
retry_config=retry_config,
)
@@ -459,6 +538,11 @@ class Models(BaseSDK):
errors.UnauthorizedResponseErrorData, http_res
)
raise errors.UnauthorizedResponseError(response_data, http_res)
if utils.match_response(http_res, "404", "application/json"):
response_data = unmarshal_json_response(
errors.NotFoundResponseErrorData, http_res
)
raise errors.NotFoundResponseError(response_data, http_res)
if utils.match_response(http_res, "500", "application/json"):
response_data = unmarshal_json_response(
errors.InternalServerResponseErrorData, http_res
@@ -484,14 +568,23 @@ class Models(BaseSDK):
operations.ListModelsUserSecurity,
operations.ListModelsUserSecurityTypedDict,
],
http_referer: Optional[str] = None,
x_title: Optional[str] = None,
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
http_headers: Optional[Mapping[str, str]] = None,
) -> components.ModelsListResponse:
r"""List models filtered by user provider preferences
r"""List models filtered by user provider preferences, privacy settings, and guardrails
List models filtered by user provider preferences, [privacy settings](https://openrouter.ai/docs/guides/privacy/logging), and [guardrails](https://openrouter.ai/docs/guides/features/guardrails). If requesting through `eu.openrouter.ai/api/v1/...` the results will be filtered to models that satisfy [EU in-region routing](https://openrouter.ai/docs/guides/privacy/logging#enterprise-eu-in-region-routing).
:param security:
:param http_referer: The app identifier should be your app's URL and is used as the primary identifier for rankings.
This is used to track API usage per application.
:param x_title: The app display name allows you to customize how your app appears in OpenRouter's dashboard.
:param retries: Override the default retry configuration for this method
:param server_url: Override the default server URL for this method
:param timeout_ms: Override the default request timeout configuration for this method in milliseconds
@@ -506,18 +599,28 @@ class Models(BaseSDK):
base_url = server_url
else:
base_url = self._get_url(base_url, url_variables)
request = operations.ListModelsUserRequest(
http_referer=http_referer,
x_title=x_title,
)
req = self._build_request_async(
method="GET",
path="/models/user",
base_url=base_url,
url_variables=url_variables,
request=None,
request=request,
request_body_required=False,
request_has_path_params=False,
request_has_query_params=True,
user_agent_header="user-agent",
accept_header_value="application/json",
http_headers=http_headers,
_globals=operations.ListModelsUserGlobals(
http_referer=self.sdk_configuration.globals.http_referer,
x_title=self.sdk_configuration.globals.x_title,
),
security=utils.get_pydantic_model(
security, operations.ListModelsUserSecurity
),
@@ -542,7 +645,7 @@ class Models(BaseSDK):
security_source=get_security_from_env(security, components.Security),
),
request=req,
error_status_codes=["401", "4XX", "500", "5XX"],
error_status_codes=["401", "404", "4XX", "500", "5XX"],
retry_config=retry_config,
)
@@ -554,6 +657,11 @@ class Models(BaseSDK):
errors.UnauthorizedResponseErrorData, http_res
)
raise errors.UnauthorizedResponseError(response_data, http_res)
if utils.match_response(http_res, "404", "application/json"):
response_data = unmarshal_json_response(
errors.NotFoundResponseErrorData, http_res
)
raise errors.NotFoundResponseError(response_data, http_res)
if utils.match_response(http_res, "500", "application/json"):
response_data = unmarshal_json_response(
errors.InternalServerResponseErrorData, http_res