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
+90 -22
View File
@@ -17,6 +17,8 @@ class OAuth(BaseSDK):
self,
*,
code: str,
http_referer: Optional[str] = None,
x_title: Optional[str] = None,
code_verifier: Optional[str] = None,
code_challenge_method: OptionalNullable[
operations.ExchangeAuthCodeForAPIKeyCodeChallengeMethod
@@ -31,6 +33,11 @@ class OAuth(BaseSDK):
Exchange an authorization code from the PKCE flow for a user-controlled API key
:param code: The authorization code received from the OAuth redirect
: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 code_verifier: The code verifier if code_challenge was used in the authorization request
:param code_challenge_method: The method used to generate the code challenge
:param retries: Override the default retry configuration for this method
@@ -49,9 +56,13 @@ class OAuth(BaseSDK):
base_url = self._get_url(base_url, url_variables)
request = operations.ExchangeAuthCodeForAPIKeyRequest(
code=code,
code_verifier=code_verifier,
code_challenge_method=code_challenge_method,
http_referer=http_referer,
x_title=x_title,
request_body=operations.ExchangeAuthCodeForAPIKeyRequestBody(
code=code,
code_verifier=code_verifier,
code_challenge_method=code_challenge_method,
),
)
req = self._build_request(
@@ -66,13 +77,17 @@ class OAuth(BaseSDK):
user_agent_header="user-agent",
accept_header_value="application/json",
http_headers=http_headers,
_globals=operations.ExchangeAuthCodeForAPIKeyGlobals(
http_referer=self.sdk_configuration.globals.http_referer,
x_title=self.sdk_configuration.globals.x_title,
),
security=self.sdk_configuration.security,
get_serialized_body=lambda: utils.serialize_request_body(
request,
request.request_body,
False,
False,
"json",
operations.ExchangeAuthCodeForAPIKeyRequest,
operations.ExchangeAuthCodeForAPIKeyRequestBody,
),
allow_empty_value=None,
timeout_ms=timeout_ms,
@@ -138,6 +153,8 @@ class OAuth(BaseSDK):
self,
*,
code: str,
http_referer: Optional[str] = None,
x_title: Optional[str] = None,
code_verifier: Optional[str] = None,
code_challenge_method: OptionalNullable[
operations.ExchangeAuthCodeForAPIKeyCodeChallengeMethod
@@ -152,6 +169,11 @@ class OAuth(BaseSDK):
Exchange an authorization code from the PKCE flow for a user-controlled API key
:param code: The authorization code received from the OAuth redirect
: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 code_verifier: The code verifier if code_challenge was used in the authorization request
:param code_challenge_method: The method used to generate the code challenge
:param retries: Override the default retry configuration for this method
@@ -170,9 +192,13 @@ class OAuth(BaseSDK):
base_url = self._get_url(base_url, url_variables)
request = operations.ExchangeAuthCodeForAPIKeyRequest(
code=code,
code_verifier=code_verifier,
code_challenge_method=code_challenge_method,
http_referer=http_referer,
x_title=x_title,
request_body=operations.ExchangeAuthCodeForAPIKeyRequestBody(
code=code,
code_verifier=code_verifier,
code_challenge_method=code_challenge_method,
),
)
req = self._build_request_async(
@@ -187,13 +213,17 @@ class OAuth(BaseSDK):
user_agent_header="user-agent",
accept_header_value="application/json",
http_headers=http_headers,
_globals=operations.ExchangeAuthCodeForAPIKeyGlobals(
http_referer=self.sdk_configuration.globals.http_referer,
x_title=self.sdk_configuration.globals.x_title,
),
security=self.sdk_configuration.security,
get_serialized_body=lambda: utils.serialize_request_body(
request,
request.request_body,
False,
False,
"json",
operations.ExchangeAuthCodeForAPIKeyRequest,
operations.ExchangeAuthCodeForAPIKeyRequestBody,
),
allow_empty_value=None,
timeout_ms=timeout_ms,
@@ -259,6 +289,8 @@ class OAuth(BaseSDK):
self,
*,
callback_url: str,
http_referer: Optional[str] = None,
x_title: Optional[str] = None,
code_challenge: Optional[str] = None,
code_challenge_method: Optional[
operations.CreateAuthKeysCodeCodeChallengeMethod
@@ -275,6 +307,11 @@ class OAuth(BaseSDK):
Create an authorization code for the PKCE flow to generate a user-controlled API key
:param callback_url: The callback URL to redirect to after authorization. Note, only https URLs on ports 443 and 3000 are allowed.
: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 code_challenge: PKCE code challenge for enhanced security
:param code_challenge_method: The method used to generate the code challenge
:param limit: Credit limit for the API key to be created
@@ -295,11 +332,15 @@ class OAuth(BaseSDK):
base_url = self._get_url(base_url, url_variables)
request = operations.CreateAuthKeysCodeRequest(
callback_url=callback_url,
code_challenge=code_challenge,
code_challenge_method=code_challenge_method,
limit=limit,
expires_at=expires_at,
http_referer=http_referer,
x_title=x_title,
request_body=operations.CreateAuthKeysCodeRequestBody(
callback_url=callback_url,
code_challenge=code_challenge,
code_challenge_method=code_challenge_method,
limit=limit,
expires_at=expires_at,
),
)
req = self._build_request(
@@ -314,9 +355,17 @@ class OAuth(BaseSDK):
user_agent_header="user-agent",
accept_header_value="application/json",
http_headers=http_headers,
_globals=operations.CreateAuthKeysCodeGlobals(
http_referer=self.sdk_configuration.globals.http_referer,
x_title=self.sdk_configuration.globals.x_title,
),
security=self.sdk_configuration.security,
get_serialized_body=lambda: utils.serialize_request_body(
request, False, False, "json", operations.CreateAuthKeysCodeRequest
request.request_body,
False,
False,
"json",
operations.CreateAuthKeysCodeRequestBody,
),
allow_empty_value=None,
timeout_ms=timeout_ms,
@@ -382,6 +431,8 @@ class OAuth(BaseSDK):
self,
*,
callback_url: str,
http_referer: Optional[str] = None,
x_title: Optional[str] = None,
code_challenge: Optional[str] = None,
code_challenge_method: Optional[
operations.CreateAuthKeysCodeCodeChallengeMethod
@@ -398,6 +449,11 @@ class OAuth(BaseSDK):
Create an authorization code for the PKCE flow to generate a user-controlled API key
:param callback_url: The callback URL to redirect to after authorization. Note, only https URLs on ports 443 and 3000 are allowed.
: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 code_challenge: PKCE code challenge for enhanced security
:param code_challenge_method: The method used to generate the code challenge
:param limit: Credit limit for the API key to be created
@@ -418,11 +474,15 @@ class OAuth(BaseSDK):
base_url = self._get_url(base_url, url_variables)
request = operations.CreateAuthKeysCodeRequest(
callback_url=callback_url,
code_challenge=code_challenge,
code_challenge_method=code_challenge_method,
limit=limit,
expires_at=expires_at,
http_referer=http_referer,
x_title=x_title,
request_body=operations.CreateAuthKeysCodeRequestBody(
callback_url=callback_url,
code_challenge=code_challenge,
code_challenge_method=code_challenge_method,
limit=limit,
expires_at=expires_at,
),
)
req = self._build_request_async(
@@ -437,9 +497,17 @@ class OAuth(BaseSDK):
user_agent_header="user-agent",
accept_header_value="application/json",
http_headers=http_headers,
_globals=operations.CreateAuthKeysCodeGlobals(
http_referer=self.sdk_configuration.globals.http_referer,
x_title=self.sdk_configuration.globals.x_title,
),
security=self.sdk_configuration.security,
get_serialized_body=lambda: utils.serialize_request_body(
request, False, False, "json", operations.CreateAuthKeysCodeRequest
request.request_body,
False,
False,
"json",
operations.CreateAuthKeysCodeRequestBody,
),
allow_empty_value=None,
timeout_ms=timeout_ms,