Compare commits

..
3 Commits
Author SHA1 Message Date
OpenRouter Team faad3acf8d Commits included in this export:
- 5dbab2094bc744db4a90b3097520d897e5d0d634
  - 4c47d1af1735db18a1c1a7f463e801c7f71ad4e5

GitOrigin-RevId: 5dbab2094bc744db4a90b3097520d897e5d0d634
2026-02-08 06:52:31 +00:00
Shashank GoyalandGitHub b2098ff28e chore: sync from monorepo (#49) 2026-02-05 20:45:13 -05:00
OpenRouter Team 1cad51abb6 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
2026-02-05 23:15:21 +00:00
41 changed files with 771 additions and 458 deletions
+15 -11
View File
@@ -1,12 +1,12 @@
lockVersion: 2.0.0
id: cfd52247-6a25-4c6d-bbce-fe6fce0cd69d
management:
docChecksum: 86bc0c01844e23d7e1921008d13372b9
docChecksum: a8fed71df7458c6d948fc393e17aa9bc
docVersion: 1.0.0
speakeasyVersion: 1.666.0
generationVersion: 2.768.0
releaseVersion: 0.5.1
configChecksum: 7f34271a911f5490f6f17a4e27f8ef7f
releaseVersion: 0.7.0
configChecksum: fb83a92d2ee84da7390a12353d622d23
repoURL: https://github.com/OpenRouterTeam/python-sdk.git
installationURL: https://github.com/OpenRouterTeam/python-sdk.git
published: true
@@ -14,6 +14,7 @@ features:
python:
acceptHeaders: 3.0.0
additionalDependencies: 1.0.0
additionalProperties: 1.0.1
constsAndDefaults: 1.0.5
core: 5.23.13
defaultEnabledRetries: 0.2.0
@@ -424,10 +425,11 @@ generatedFiles:
- docs/components/schema17responsehealing.md
- docs/components/schema17web.md
- docs/components/schema19.md
- docs/components/schema19reasoningencrypted.md
- docs/components/schema19reasoningsummary.md
- docs/components/schema19reasoningtext.md
- docs/components/schema21.md
- docs/components/schema20.md
- docs/components/schema20reasoningencrypted.md
- docs/components/schema20reasoningsummary.md
- docs/components/schema20reasoningtext.md
- docs/components/schema22.md
- docs/components/schema3.md
- docs/components/schema5.md
- docs/components/schema5enum.md
@@ -447,6 +449,7 @@ generatedFiles:
- docs/components/toolresponsemessagecontent.md
- docs/components/toomanyrequestsresponseerrordata.md
- docs/components/topproviderinfo.md
- docs/components/trace.md
- docs/components/truncation.md
- docs/components/ttl.md
- docs/components/type.md
@@ -695,6 +698,7 @@ generatedFiles:
- src/openrouter/components/_schema14.py
- src/openrouter/components/_schema17.py
- src/openrouter/components/_schema19.py
- src/openrouter/components/_schema20.py
- src/openrouter/components/_schema5.py
- src/openrouter/components/activityitem.py
- src/openrouter/components/assistantmessage.py
@@ -987,7 +991,7 @@ examples:
"401":
application/json: {"error": {"code": 401, "message": "Missing Authentication header"}}
"403":
application/json: {"error": {"code": 403, "message": "Only provisioning keys can perform this operation"}}
application/json: {"error": {"code": 403, "message": "Only management keys can perform this operation"}}
"500":
application/json: {"error": {"code": 500, "message": "Internal Server Error"}}
getCredits:
@@ -998,7 +1002,7 @@ examples:
"401":
application/json: {"error": {"code": 401, "message": "Missing Authentication header"}}
"403":
application/json: {"error": {"code": 403, "message": "Only provisioning keys can perform this operation"}}
application/json: {"error": {"code": 403, "message": "Only management keys can perform this operation"}}
"500":
application/json: {"error": {"code": 500, "message": "Internal Server Error"}}
createCoinbaseCharge:
@@ -1232,7 +1236,7 @@ examples:
speakeasy-default-get-current-key:
responses:
"200":
application/json: {"data": {"label": "sk-or-v1-au7...890", "limit": 100, "usage": 25.5, "usage_daily": 25.5, "usage_weekly": 25.5, "usage_monthly": 25.5, "byok_usage": 17.38, "byok_usage_daily": 17.38, "byok_usage_weekly": 17.38, "byok_usage_monthly": 17.38, "is_free_tier": false, "is_provisioning_key": false, "limit_remaining": 74.5, "limit_reset": "monthly", "include_byok_in_limit": false, "rate_limit": {"requests": 1000, "interval": "1h", "note": "This field is deprecated and safe to ignore."}}}
application/json: {"data": {"label": "sk-or-v1-au7...890", "limit": 100, "usage": 25.5, "usage_daily": 25.5, "usage_weekly": 25.5, "usage_monthly": 25.5, "byok_usage": 17.38, "byok_usage_daily": 17.38, "byok_usage_weekly": 17.38, "byok_usage_monthly": 17.38, "is_free_tier": false, "is_management_key": false, "is_provisioning_key": false, "limit_remaining": 74.5, "limit_reset": "monthly", "include_byok_in_limit": false, "rate_limit": {"requests": 1000, "interval": "1h", "note": "This field is deprecated and safe to ignore."}}}
"401":
application/json: {"error": {"code": 401, "message": "Missing Authentication header"}}
"500":
@@ -1247,7 +1251,7 @@ examples:
"400":
application/json: {"error": {"code": 400, "message": "Invalid request parameters"}}
"403":
application/json: {"error": {"code": 403, "message": "Only provisioning keys can perform this operation"}}
application/json: {"error": {"code": 403, "message": "Only management keys can perform this operation"}}
"500":
application/json: {"error": {"code": 500, "message": "Internal Server Error"}}
createAuthKeysCode:
+1 -1
View File
@@ -31,7 +31,7 @@ generation:
skipResponseBodyAssertions: false
preApplyUnionDiscriminators: true
python:
version: 0.5.1
version: 0.7.0
additionalDependencies:
dev: {}
main: {}
+118 -52
View File
@@ -4094,6 +4094,25 @@ components:
A unique identifier for grouping related requests (e.g., a conversation or agent workflow) for
observability. If provided in both the request body and the x-session-id header, the body value takes
precedence. Maximum of 128 characters.
trace:
type: object
properties:
trace_id:
type: string
trace_name:
type: string
span_name:
type: string
generation_name:
type: string
parent_span_id:
type: string
additionalProperties:
nullable: true
description: >-
Metadata for observability and tracing. Known keys (trace_id, trace_name, span_name, generation_name,
parent_span_id) have special handling. Additional keys are passed through as custom metadata to configured
broadcast destinations.
description: Request schema for Responses endpoint
example:
model: anthropic/claude-4.5-sonnet-20250929
@@ -7191,6 +7210,25 @@ components:
A unique identifier for grouping related requests (e.g., a conversation or agent workflow) for
observability. If provided in both the request body and the x-session-id header, the body value takes
precedence. Maximum of 128 characters.
trace:
type: object
properties:
trace_id:
type: string
trace_name:
type: string
span_name:
type: string
generation_name:
type: string
parent_span_id:
type: string
additionalProperties:
nullable: true
description: >-
Metadata for observability and tracing. Known keys (trace_id, trace_name, span_name, generation_name,
parent_span_id) have special handling. Additional keys are passed through as custom metadata to configured
broadcast destinations.
models:
type: array
items:
@@ -7298,7 +7336,7 @@ components:
description: Error data for ForbiddenResponse
example:
code: 403
message: Only provisioning keys can perform this operation
message: Only management keys can perform this operation
ForbiddenResponse:
type: object
properties:
@@ -7313,7 +7351,7 @@ components:
example:
error:
code: 403
message: Only provisioning keys can perform this operation
message: Only management keys can perform this operation
CreateChargeRequest:
type: object
properties:
@@ -8532,6 +8570,20 @@ components:
type: string
maxLength: 128
__schema19:
type: object
properties:
trace_id:
type: string
trace_name:
type: string
span_name:
type: string
generation_name:
type: string
parent_span_id:
type: string
additionalProperties: {}
__schema20:
oneOf:
- type: object
properties:
@@ -8541,9 +8593,9 @@ components:
summary:
type: string
id:
$ref: '#/components/schemas/__schema20'
format:
$ref: '#/components/schemas/__schema21'
format:
$ref: '#/components/schemas/__schema22'
index:
$ref: '#/components/schemas/__schema11'
required:
@@ -8557,9 +8609,9 @@ components:
data:
type: string
id:
$ref: '#/components/schemas/__schema20'
format:
$ref: '#/components/schemas/__schema21'
format:
$ref: '#/components/schemas/__schema22'
index:
$ref: '#/components/schemas/__schema11'
required:
@@ -8579,19 +8631,19 @@ components:
- type: string
- type: 'null'
id:
$ref: '#/components/schemas/__schema20'
format:
$ref: '#/components/schemas/__schema21'
format:
$ref: '#/components/schemas/__schema22'
index:
$ref: '#/components/schemas/__schema11'
required:
- type
type: object
__schema20:
__schema21:
anyOf:
- type: string
- type: 'null'
__schema21:
__schema22:
anyOf:
- type: string
enum:
@@ -8602,7 +8654,7 @@ components:
- anthropic-claude-v1
- google-gemini-v1
- type: 'null'
__schema25:
__schema26:
anyOf:
- $ref: '#/components/schemas/ChatCompletionFinishReason'
- type: 'null'
@@ -8978,7 +9030,7 @@ components:
reasoning_details:
type: array
items:
$ref: '#/components/schemas/__schema19'
$ref: '#/components/schemas/__schema20'
images:
type: array
items:
@@ -9111,6 +9163,12 @@ components:
observability. If provided in both the request body and the x-session-id header, the body value takes
precedence. Maximum of 128 characters.
$ref: '#/components/schemas/__schema18'
trace:
description: >-
Metadata for observability and tracing. Known keys (trace_id, trace_name, span_name, generation_name,
parent_span_id) have special handling. Additional keys are passed through as custom metadata to configured
broadcast destinations.
$ref: '#/components/schemas/__schema19'
messages:
minItems: 1
type: array
@@ -9286,7 +9344,7 @@ components:
type: object
properties:
finish_reason:
$ref: '#/components/schemas/__schema25'
$ref: '#/components/schemas/__schema26'
index:
type: number
message:
@@ -9344,14 +9402,14 @@ components:
reasoning_details:
type: array
items:
$ref: '#/components/schemas/__schema19'
$ref: '#/components/schemas/__schema20'
ChatStreamingChoice:
type: object
properties:
delta:
$ref: '#/components/schemas/ChatStreamingMessageChunk'
finish_reason:
$ref: '#/components/schemas/__schema25'
$ref: '#/components/schemas/__schema26'
index:
type: number
logprobs:
@@ -9822,8 +9880,8 @@ paths:
operationId: getUserActivity
summary: Get user activity grouped by endpoint
description: >-
Returns user activity data grouped by endpoint for the last 30 (completed) UTC days. [Provisioning
key](/docs/guides/overview/auth/provisioning-api-keys) required.
Returns user activity data grouped by endpoint for the last 30 (completed) UTC days. [Management
key](/docs/guides/overview/auth/management-api-keys) required.
parameters:
- schema:
type: string
@@ -9874,7 +9932,7 @@ paths:
schema:
$ref: '#/components/schemas/UnauthorizedResponse'
'403':
description: Forbidden - Only provisioning keys can fetch activity
description: Forbidden - Only management keys can fetch activity
content:
application/json:
schema:
@@ -9893,8 +9951,8 @@ paths:
summary: Get remaining credits
operationId: getCredits
description: >-
Get total credits purchased and used for the authenticated user. [Provisioning
key](/docs/guides/overview/auth/provisioning-api-keys) required.
Get total credits purchased and used for the authenticated user. [Management
key](/docs/guides/overview/auth/management-api-keys) required.
responses:
'200':
description: Returns the total credits purchased and used
@@ -9934,7 +9992,7 @@ paths:
schema:
$ref: '#/components/schemas/UnauthorizedResponse'
'403':
description: Forbidden - Only provisioning keys can fetch credits
description: Forbidden - Only management keys can fetch credits
content:
application/json:
schema:
@@ -10957,8 +11015,8 @@ paths:
- API Keys
summary: List API keys
description: >-
List all API keys for the authenticated user. [Provisioning
key](/docs/guides/overview/auth/provisioning-api-keys) required.
List all API keys for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys)
required.
parameters:
- schema:
type: string
@@ -11158,8 +11216,8 @@ paths:
- API Keys
summary: Create a new API key
description: >-
Create a new API key for the authenticated user. [Provisioning
key](/docs/guides/overview/auth/provisioning-api-keys) required.
Create a new API key for the authenticated user. [Management
key](/docs/guides/overview/auth/management-api-keys) required.
requestBody:
content:
application/json:
@@ -11401,7 +11459,7 @@ paths:
tags:
- API Keys
summary: Update an API key
description: Update an existing API key. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
description: Update an existing API key. [Management key](/docs/guides/overview/auth/management-api-keys) required.
parameters:
- schema:
type: string
@@ -11644,7 +11702,7 @@ paths:
tags:
- API Keys
summary: Delete an API key
description: Delete an existing API key. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
description: Delete an existing API key. [Management key](/docs/guides/overview/auth/management-api-keys) required.
parameters:
- schema:
type: string
@@ -11702,7 +11760,7 @@ paths:
tags:
- API Keys
summary: Get a single API key
description: Get a single API key by hash. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
description: Get a single API key by hash. [Management key](/docs/guides/overview/auth/management-api-keys) required.
parameters:
- schema:
type: string
@@ -11900,8 +11958,8 @@ paths:
- Guardrails
summary: List guardrails
description: >-
List all guardrails for the authenticated user. [Provisioning
key](/docs/guides/overview/auth/provisioning-api-keys) required.
List all guardrails for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys)
required.
parameters:
- schema:
type: string
@@ -12057,8 +12115,8 @@ paths:
- Guardrails
summary: Create a guardrail
description: >-
Create a new guardrail for the authenticated user. [Provisioning
key](/docs/guides/overview/auth/provisioning-api-keys) required.
Create a new guardrail for the authenticated user. [Management
key](/docs/guides/overview/auth/management-api-keys) required.
requestBody:
content:
application/json:
@@ -12270,7 +12328,7 @@ paths:
tags:
- Guardrails
summary: Get a guardrail
description: Get a single guardrail by ID. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
description: Get a single guardrail by ID. [Management key](/docs/guides/overview/auth/management-api-keys) required.
parameters:
- schema:
type: string
@@ -12416,7 +12474,7 @@ paths:
tags:
- Guardrails
summary: Update a guardrail
description: Update an existing guardrail. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
description: Update an existing guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.
parameters:
- schema:
type: string
@@ -12631,7 +12689,7 @@ paths:
tags:
- Guardrails
summary: Delete a guardrail
description: Delete an existing guardrail. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
description: Delete an existing guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.
parameters:
- schema:
type: string
@@ -12685,8 +12743,8 @@ paths:
- Guardrails
summary: List all key assignments
description: >-
List all API key guardrail assignments for the authenticated user. [Provisioning
key](/docs/guides/overview/auth/provisioning-api-keys) required.
List all API key guardrail assignments for the authenticated user. [Management
key](/docs/guides/overview/auth/management-api-keys) required.
parameters:
- schema:
type: string
@@ -12784,8 +12842,8 @@ paths:
- Guardrails
summary: List all member assignments
description: >-
List all organization member guardrail assignments for the authenticated user. [Provisioning
key](/docs/guides/overview/auth/provisioning-api-keys) required.
List all organization member guardrail assignments for the authenticated user. [Management
key](/docs/guides/overview/auth/management-api-keys) required.
parameters:
- schema:
type: string
@@ -12878,8 +12936,8 @@ paths:
- Guardrails
summary: List key assignments for a guardrail
description: >-
List all API key assignments for a specific guardrail. [Provisioning
key](/docs/guides/overview/auth/provisioning-api-keys) required.
List all API key assignments for a specific guardrail. [Management
key](/docs/guides/overview/auth/management-api-keys) required.
parameters:
- schema:
type: string
@@ -12991,8 +13049,8 @@ paths:
- Guardrails
summary: Bulk assign keys to a guardrail
description: >-
Assign multiple API keys to a specific guardrail. [Provisioning
key](/docs/guides/overview/auth/provisioning-api-keys) required.
Assign multiple API keys to a specific guardrail. [Management
key](/docs/guides/overview/auth/management-api-keys) required.
parameters:
- schema:
type: string
@@ -13067,8 +13125,8 @@ paths:
- Guardrails
summary: List member assignments for a guardrail
description: >-
List all organization member assignments for a specific guardrail. [Provisioning
key](/docs/guides/overview/auth/provisioning-api-keys) required.
List all organization member assignments for a specific guardrail. [Management
key](/docs/guides/overview/auth/management-api-keys) required.
parameters:
- schema:
type: string
@@ -13175,8 +13233,8 @@ paths:
- Guardrails
summary: Bulk assign members to a guardrail
description: >-
Assign multiple organization members to a specific guardrail. [Provisioning
key](/docs/guides/overview/auth/provisioning-api-keys) required.
Assign multiple organization members to a specific guardrail. [Management
key](/docs/guides/overview/auth/management-api-keys) required.
parameters:
- schema:
type: string
@@ -13252,8 +13310,8 @@ paths:
- Guardrails
summary: Bulk unassign keys from a guardrail
description: >-
Unassign multiple API keys from a specific guardrail. [Provisioning
key](/docs/guides/overview/auth/provisioning-api-keys) required.
Unassign multiple API keys from a specific guardrail. [Management
key](/docs/guides/overview/auth/management-api-keys) required.
parameters:
- schema:
type: string
@@ -13328,8 +13386,8 @@ paths:
- Guardrails
summary: Bulk unassign members from a guardrail
description: >-
Unassign multiple organization members from a specific guardrail. [Provisioning
key](/docs/guides/overview/auth/provisioning-api-keys) required.
Unassign multiple organization members from a specific guardrail. [Management
key](/docs/guides/overview/auth/management-api-keys) required.
parameters:
- schema:
type: string
@@ -13461,9 +13519,14 @@ paths:
type: boolean
description: Whether this is a free tier API key
example: false
is_management_key:
type: boolean
description: Whether this is a management key
example: false
is_provisioning_key:
type: boolean
description: Whether this is a provisioning key
description: Whether this is a management key
deprecated: true
example: false
limit_remaining:
type: number
@@ -13522,6 +13585,7 @@ paths:
- byok_usage_weekly
- byok_usage_monthly
- is_free_tier
- is_management_key
- is_provisioning_key
- limit_remaining
- limit_reset
@@ -13540,6 +13604,7 @@ paths:
byok_usage_weekly: 17.38
byok_usage_monthly: 17.38
is_free_tier: false
is_management_key: false
is_provisioning_key: false
limit_remaining: 74.5
limit_reset: monthly
@@ -13564,6 +13629,7 @@ paths:
byok_usage_weekly: 17.38
byok_usage_monthly: 17.38
is_free_tier: false
is_management_key: false
is_provisioning_key: false
limit_remaining: 74.5
limit_reset: monthly
+98 -38
View File
@@ -4097,6 +4097,23 @@ components:
maxLength: 128
description: >-
A unique identifier for grouping related requests (e.g., a conversation or agent workflow) for observability. If provided in both the request body and the x-session-id header, the body value takes precedence. Maximum of 128 characters.
trace:
type: object
properties:
trace_id:
type: string
trace_name:
type: string
span_name:
type: string
generation_name:
type: string
parent_span_id:
type: string
additionalProperties:
nullable: true
description: >-
Metadata for observability and tracing. Known keys (trace_id, trace_name, span_name, generation_name, parent_span_id) have special handling. Additional keys are passed through as custom metadata to configured broadcast destinations.
description: Request schema for Responses endpoint
example:
model: anthropic/claude-4.5-sonnet-20250929
@@ -7209,6 +7226,23 @@ components:
maxLength: 128
description: >-
A unique identifier for grouping related requests (e.g., a conversation or agent workflow) for observability. If provided in both the request body and the x-session-id header, the body value takes precedence. Maximum of 128 characters.
trace:
type: object
properties:
trace_id:
type: string
trace_name:
type: string
span_name:
type: string
generation_name:
type: string
parent_span_id:
type: string
additionalProperties:
nullable: true
description: >-
Metadata for observability and tracing. Known keys (trace_id, trace_name, span_name, generation_name, parent_span_id) have special handling. Additional keys are passed through as custom metadata to configured broadcast destinations.
models:
type: array
items:
@@ -7316,7 +7350,7 @@ components:
description: Error data for ForbiddenResponse
example:
code: 403
message: Only provisioning keys can perform this operation
message: Only management keys can perform this operation
ForbiddenResponse:
type: object
properties:
@@ -7331,7 +7365,7 @@ components:
example:
error:
code: 403
message: Only provisioning keys can perform this operation
message: Only management keys can perform this operation
CreateChargeRequest:
type: object
properties:
@@ -8536,6 +8570,20 @@ components:
type: string
maxLength: 128
__schema19:
type: object
properties:
trace_id:
type: string
trace_name:
type: string
span_name:
type: string
generation_name:
type: string
parent_span_id:
type: string
additionalProperties: {}
__schema20:
oneOf:
- type: object
properties:
@@ -8545,9 +8593,9 @@ components:
summary:
type: string
id:
$ref: '#/components/schemas/__schema20'
format:
$ref: '#/components/schemas/__schema21'
format:
$ref: '#/components/schemas/__schema22'
index:
$ref: '#/components/schemas/__schema11'
required:
@@ -8561,9 +8609,9 @@ components:
data:
type: string
id:
$ref: '#/components/schemas/__schema20'
format:
$ref: '#/components/schemas/__schema21'
format:
$ref: '#/components/schemas/__schema22'
index:
$ref: '#/components/schemas/__schema11'
required:
@@ -8583,19 +8631,19 @@ components:
- type: string
- type: 'null'
id:
$ref: '#/components/schemas/__schema20'
format:
$ref: '#/components/schemas/__schema21'
format:
$ref: '#/components/schemas/__schema22'
index:
$ref: '#/components/schemas/__schema11'
required:
- type
type: object
__schema20:
__schema21:
anyOf:
- type: string
- type: 'null'
__schema21:
__schema22:
anyOf:
- type: string
enum:
@@ -8607,7 +8655,7 @@ components:
- google-gemini-v1
x-speakeasy-unknown-values: allow
- type: 'null'
__schema25:
__schema26:
anyOf:
- $ref: '#/components/schemas/ChatCompletionFinishReason'
- type: 'null'
@@ -8986,7 +9034,7 @@ components:
reasoning_details:
type: array
items:
$ref: '#/components/schemas/__schema19'
$ref: '#/components/schemas/__schema20'
images:
type: array
items:
@@ -9118,6 +9166,10 @@ components:
description: >-
A unique identifier for grouping related requests (e.g., a conversation or agent workflow) for observability. If provided in both the request body and the x-session-id header, the body value takes precedence. Maximum of 128 characters.
$ref: '#/components/schemas/__schema18'
trace:
description: >-
Metadata for observability and tracing. Known keys (trace_id, trace_name, span_name, generation_name, parent_span_id) have special handling. Additional keys are passed through as custom metadata to configured broadcast destinations.
$ref: '#/components/schemas/__schema19'
messages:
minItems: 1
type: array
@@ -9295,7 +9347,7 @@ components:
type: object
properties:
finish_reason:
$ref: '#/components/schemas/__schema25'
$ref: '#/components/schemas/__schema26'
index:
type: number
message:
@@ -9353,14 +9405,14 @@ components:
reasoning_details:
type: array
items:
$ref: '#/components/schemas/__schema19'
$ref: '#/components/schemas/__schema20'
ChatStreamingChoice:
type: object
properties:
delta:
$ref: '#/components/schemas/ChatStreamingMessageChunk'
finish_reason:
$ref: '#/components/schemas/__schema25'
$ref: '#/components/schemas/__schema26'
index:
type: number
logprobs:
@@ -9836,7 +9888,7 @@ paths:
operationId: getUserActivity
summary: Get user activity grouped by endpoint
description: >-
Returns user activity data grouped by endpoint for the last 30 (completed) UTC days. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
Returns user activity data grouped by endpoint for the last 30 (completed) UTC days. [Management key](/docs/guides/overview/auth/management-api-keys) required.
parameters:
- schema:
type: string
@@ -9887,7 +9939,7 @@ paths:
schema:
$ref: '#/components/schemas/UnauthorizedResponse'
'403':
description: Forbidden - Only provisioning keys can fetch activity
description: Forbidden - Only management keys can fetch activity
content:
application/json:
schema:
@@ -9909,7 +9961,7 @@ paths:
summary: Get remaining credits
operationId: getCredits
description: >-
Get total credits purchased and used for the authenticated user. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
Get total credits purchased and used for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys) required.
responses:
'200':
description: Returns the total credits purchased and used
@@ -9949,7 +10001,7 @@ paths:
schema:
$ref: '#/components/schemas/UnauthorizedResponse'
'403':
description: Forbidden - Only provisioning keys can fetch credits
description: Forbidden - Only management keys can fetch credits
content:
application/json:
schema:
@@ -10992,7 +11044,7 @@ paths:
- API Keys
summary: List API keys
description: >-
List all API keys for the authenticated user. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
List all API keys for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys) required.
parameters:
- schema:
type: string
@@ -11192,7 +11244,7 @@ paths:
- API Keys
summary: Create a new API key
description: >-
Create a new API key for the authenticated user. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
Create a new API key for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys) required.
requestBody:
content:
application/json:
@@ -11436,7 +11488,7 @@ paths:
tags:
- API Keys
summary: Update an API key
description: Update an existing API key. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
description: Update an existing API key. [Management key](/docs/guides/overview/auth/management-api-keys) required.
parameters:
- schema:
type: string
@@ -11679,7 +11731,7 @@ paths:
tags:
- API Keys
summary: Delete an API key
description: Delete an existing API key. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
description: Delete an existing API key. [Management key](/docs/guides/overview/auth/management-api-keys) required.
parameters:
- schema:
type: string
@@ -11737,7 +11789,7 @@ paths:
tags:
- API Keys
summary: Get a single API key
description: Get a single API key by hash. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
description: Get a single API key by hash. [Management key](/docs/guides/overview/auth/management-api-keys) required.
parameters:
- schema:
type: string
@@ -11938,7 +11990,7 @@ paths:
- Guardrails
summary: List guardrails
description: >-
List all guardrails for the authenticated user. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
List all guardrails for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys) required.
parameters:
- schema:
type: string
@@ -12095,7 +12147,7 @@ paths:
- Guardrails
summary: Create a guardrail
description: >-
Create a new guardrail for the authenticated user. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
Create a new guardrail for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys) required.
requestBody:
content:
application/json:
@@ -12312,7 +12364,7 @@ paths:
tags:
- Guardrails
summary: Get a guardrail
description: Get a single guardrail by ID. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
description: Get a single guardrail by ID. [Management key](/docs/guides/overview/auth/management-api-keys) required.
parameters:
- schema:
type: string
@@ -12459,7 +12511,7 @@ paths:
tags:
- Guardrails
summary: Update a guardrail
description: Update an existing guardrail. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
description: Update an existing guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.
parameters:
- schema:
type: string
@@ -12676,7 +12728,7 @@ paths:
tags:
- Guardrails
summary: Delete a guardrail
description: Delete an existing guardrail. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
description: Delete an existing guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.
parameters:
- schema:
type: string
@@ -12733,7 +12785,7 @@ paths:
- Guardrails
summary: List all key assignments
description: >-
List all API key guardrail assignments for the authenticated user. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
List all API key guardrail assignments for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys) required.
parameters:
- schema:
type: string
@@ -12834,7 +12886,7 @@ paths:
- Guardrails
summary: List all member assignments
description: >-
List all organization member guardrail assignments for the authenticated user. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
List all organization member guardrail assignments for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys) required.
parameters:
- schema:
type: string
@@ -12930,7 +12982,7 @@ paths:
- Guardrails
summary: List key assignments for a guardrail
description: >-
List all API key assignments for a specific guardrail. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
List all API key assignments for a specific guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.
parameters:
- schema:
type: string
@@ -13042,7 +13094,7 @@ paths:
- Guardrails
summary: Bulk assign keys to a guardrail
description: >-
Assign multiple API keys to a specific guardrail. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
Assign multiple API keys to a specific guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.
parameters:
- schema:
type: string
@@ -13120,7 +13172,7 @@ paths:
- Guardrails
summary: List member assignments for a guardrail
description: >-
List all organization member assignments for a specific guardrail. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
List all organization member assignments for a specific guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.
parameters:
- schema:
type: string
@@ -13227,7 +13279,7 @@ paths:
- Guardrails
summary: Bulk assign members to a guardrail
description: >-
Assign multiple organization members to a specific guardrail. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
Assign multiple organization members to a specific guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.
parameters:
- schema:
type: string
@@ -13306,7 +13358,7 @@ paths:
- Guardrails
summary: Bulk unassign keys from a guardrail
description: >-
Unassign multiple API keys from a specific guardrail. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
Unassign multiple API keys from a specific guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.
parameters:
- schema:
type: string
@@ -13384,7 +13436,7 @@ paths:
- Guardrails
summary: Bulk unassign members from a guardrail
description: >-
Unassign multiple organization members from a specific guardrail. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
Unassign multiple organization members from a specific guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.
parameters:
- schema:
type: string
@@ -13519,9 +13571,14 @@ paths:
type: boolean
description: Whether this is a free tier API key
example: false
is_management_key:
type: boolean
description: Whether this is a management key
example: false
is_provisioning_key:
type: boolean
description: Whether this is a provisioning key
description: Whether this is a management key
deprecated: true
example: false
limit_remaining:
type: number
@@ -13580,6 +13637,7 @@ paths:
- byok_usage_weekly
- byok_usage_monthly
- is_free_tier
- is_management_key
- is_provisioning_key
- limit_remaining
- limit_reset
@@ -13598,6 +13656,7 @@ paths:
byok_usage_weekly: 17.38
byok_usage_monthly: 17.38
is_free_tier: false
is_management_key: false
is_provisioning_key: false
limit_remaining: 74.5
limit_reset: monthly
@@ -13622,6 +13681,7 @@ paths:
byok_usage_weekly: 17.38
byok_usage_monthly: 17.38
is_free_tier: false
is_management_key: false
is_provisioning_key: false
limit_remaining: 74.5
limit_reset: monthly
+5 -5
View File
@@ -8,8 +8,8 @@ sources:
- latest
OpenRouter API:
sourceNamespace: open-router-chat-completions-api
sourceRevisionDigest: sha256:9d0580abfbe319bbd1e3d51fa921b5c97134ae4ef84ee4b1254beb0e92bf4fd9
sourceBlobDigest: sha256:8555ff45ab0e3c22ae07af40cc4581ef14107b4d62c38bde3c25512fd4aae199
sourceRevisionDigest: sha256:79b8d064e91a2614d9853eb640f9e7255a8b1e9614882641ab5c75ac071814d6
sourceBlobDigest: sha256:b74fe6d34af037172e5b80f6d03b85df45eb5360577027682ea7d3fd308e8293
tags:
- latest
- main
@@ -18,10 +18,10 @@ targets:
open-router:
source: OpenRouter API
sourceNamespace: open-router-chat-completions-api
sourceRevisionDigest: sha256:9d0580abfbe319bbd1e3d51fa921b5c97134ae4ef84ee4b1254beb0e92bf4fd9
sourceBlobDigest: sha256:8555ff45ab0e3c22ae07af40cc4581ef14107b4d62c38bde3c25512fd4aae199
sourceRevisionDigest: sha256:79b8d064e91a2614d9853eb640f9e7255a8b1e9614882641ab5c75ac071814d6
sourceBlobDigest: sha256:b74fe6d34af037172e5b80f6d03b85df45eb5360577027682ea7d3fd308e8293
codeSamplesNamespace: open-router-python-code-samples
codeSamplesRevisionDigest: sha256:e44fdec134bc5f249b3e785da067ea31d1bba8f9891bca0f6c19d7ace670ab11
codeSamplesRevisionDigest: sha256:ff5b83e50996943aaf26b9089fd02488fc49b8c5f742dc432135c8eeb69c7042
workflow:
workflowVersion: 1.0.0
speakeasyVersion: 1.666.0
+1 -1
View File
@@ -11,5 +11,5 @@
| `tool_calls` | List[[components.ChatMessageToolCall](../components/chatmessagetoolcall.md)] | :heavy_minus_sign: | N/A |
| `refusal` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A |
| `reasoning` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A |
| `reasoning_details` | List[[components.Schema19](../components/schema19.md)] | :heavy_minus_sign: | N/A |
| `reasoning_details` | List[[components.Schema20](../components/schema20.md)] | :heavy_minus_sign: | N/A |
| `images` | List[[components.Image](../components/image.md)] | :heavy_minus_sign: | N/A |
+1
View File
@@ -10,6 +10,7 @@
| `route` | [OptionalNullable[components.Route]](../components/route.md) | :heavy_minus_sign: | N/A |
| `user` | *Optional[str]* | :heavy_minus_sign: | N/A |
| `session_id` | *Optional[str]* | :heavy_minus_sign: | N/A |
| `trace` | [Optional[components.Schema19]](../components/schema19.md) | :heavy_minus_sign: | N/A |
| `messages` | List[[components.Message](../components/message.md)] | :heavy_check_mark: | N/A |
| `model` | *Optional[str]* | :heavy_minus_sign: | N/A |
| `models` | List[*str*] | :heavy_minus_sign: | N/A |
+1 -1
View File
@@ -10,4 +10,4 @@
| `reasoning` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A |
| `refusal` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A |
| `tool_calls` | List[[components.ChatStreamingMessageToolCall](../components/chatstreamingmessagetoolcall.md)] | :heavy_minus_sign: | N/A |
| `reasoning_details` | List[[components.Schema19](../components/schema19.md)] | :heavy_minus_sign: | N/A |
| `reasoning_details` | List[[components.Schema20](../components/schema20.md)] | :heavy_minus_sign: | N/A |
+1
View File
@@ -41,3 +41,4 @@ Request schema for Responses endpoint
| `plugins` | List[[components.Plugin](../components/plugin.md)] | :heavy_minus_sign: | Plugins you want to enable for this request, including their settings. | |
| `user` | *Optional[str]* | :heavy_minus_sign: | A unique identifier representing your end-user, which helps distinguish between different users of your app. This allows your app to identify specific users in case of abuse reports, preventing your entire app from being affected by the actions of individual users. Maximum of 128 characters. | |
| `session_id` | *Optional[str]* | :heavy_minus_sign: | A unique identifier for grouping related requests (e.g., a conversation or agent workflow) for observability. If provided in both the request body and the x-session-id header, the body value takes precedence. Maximum of 128 characters. | |
| `trace` | [Optional[components.Trace]](../components/trace.md) | :heavy_minus_sign: | Metadata for observability and tracing. Known keys (trace_id, trace_name, span_name, generation_name, parent_span_id) have special handling. Additional keys are passed through as custom metadata to configured broadcast destinations. | |
+9 -19
View File
@@ -1,23 +1,13 @@
# Schema19
## Supported Types
### `components.Schema19ReasoningSummary`
```python
value: components.Schema19ReasoningSummary = /* values here */
```
### `components.Schema19ReasoningEncrypted`
```python
value: components.Schema19ReasoningEncrypted = /* values here */
```
### `components.Schema19ReasoningText`
```python
value: components.Schema19ReasoningText = /* values here */
```
## Fields
| Field | Type | Required | Description |
| -------------------- | -------------------- | -------------------- | -------------------- |
| `trace_id` | *Optional[str]* | :heavy_minus_sign: | N/A |
| `trace_name` | *Optional[str]* | :heavy_minus_sign: | N/A |
| `span_name` | *Optional[str]* | :heavy_minus_sign: | N/A |
| `generation_name` | *Optional[str]* | :heavy_minus_sign: | N/A |
| `parent_span_id` | *Optional[str]* | :heavy_minus_sign: | N/A |
| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A |
+23
View File
@@ -0,0 +1,23 @@
# Schema20
## Supported Types
### `components.Schema20ReasoningSummary`
```python
value: components.Schema20ReasoningSummary = /* values here */
```
### `components.Schema20ReasoningEncrypted`
```python
value: components.Schema20ReasoningEncrypted = /* values here */
```
### `components.Schema20ReasoningText`
```python
value: components.Schema20ReasoningText = /* values here */
```
@@ -1,4 +1,4 @@
# Schema19ReasoningEncrypted
# Schema20ReasoningEncrypted
## Fields
@@ -8,5 +8,5 @@
| `type` | *Literal["reasoning.encrypted"]* | :heavy_check_mark: | N/A |
| `data` | *str* | :heavy_check_mark: | N/A |
| `id` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A |
| `format_` | [OptionalNullable[components.Schema21]](../components/schema21.md) | :heavy_minus_sign: | N/A |
| `format_` | [OptionalNullable[components.Schema22]](../components/schema22.md) | :heavy_minus_sign: | N/A |
| `index` | *Optional[float]* | :heavy_minus_sign: | N/A |
@@ -1,4 +1,4 @@
# Schema19ReasoningSummary
# Schema20ReasoningSummary
## Fields
@@ -8,5 +8,5 @@
| `type` | *Literal["reasoning.summary"]* | :heavy_check_mark: | N/A |
| `summary` | *str* | :heavy_check_mark: | N/A |
| `id` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A |
| `format_` | [OptionalNullable[components.Schema21]](../components/schema21.md) | :heavy_minus_sign: | N/A |
| `format_` | [OptionalNullable[components.Schema22]](../components/schema22.md) | :heavy_minus_sign: | N/A |
| `index` | *Optional[float]* | :heavy_minus_sign: | N/A |
@@ -1,4 +1,4 @@
# Schema19ReasoningText
# Schema20ReasoningText
## Fields
@@ -9,5 +9,5 @@
| `text` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A |
| `signature` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A |
| `id` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A |
| `format_` | [OptionalNullable[components.Schema21]](../components/schema21.md) | :heavy_minus_sign: | N/A |
| `format_` | [OptionalNullable[components.Schema22]](../components/schema22.md) | :heavy_minus_sign: | N/A |
| `index` | *Optional[float]* | :heavy_minus_sign: | N/A |
@@ -1,4 +1,4 @@
# Schema21
# Schema22
## Values
+15
View File
@@ -0,0 +1,15 @@
# Trace
Metadata for observability and tracing. Known keys (trace_id, trace_name, span_name, generation_name, parent_span_id) have special handling. Additional keys are passed through as custom metadata to configured broadcast destinations.
## Fields
| Field | Type | Required | Description |
| -------------------------- | -------------------------- | -------------------------- | -------------------------- |
| `trace_id` | *Optional[str]* | :heavy_minus_sign: | N/A |
| `trace_name` | *Optional[str]* | :heavy_minus_sign: | N/A |
| `span_name` | *Optional[str]* | :heavy_minus_sign: | N/A |
| `generation_name` | *Optional[str]* | :heavy_minus_sign: | N/A |
| `parent_span_id` | *Optional[str]* | :heavy_minus_sign: | N/A |
| `__pydantic_extra__` | Dict[str, *Nullable[Any]*] | :heavy_minus_sign: | N/A |
+1 -1
View File
@@ -7,5 +7,5 @@ Forbidden - Authentication successful but insufficient permissions
| Field | Type | Required | Description | Example |
| ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ |
| `error` | [components.ForbiddenResponseErrorData](../components/forbiddenresponseerrordata.md) | :heavy_check_mark: | Error data for ForbiddenResponse | {<br/>"code": 403,<br/>"message": "Only provisioning keys can perform this operation"<br/>} |
| `error` | [components.ForbiddenResponseErrorData](../components/forbiddenresponseerrordata.md) | :heavy_check_mark: | Error data for ForbiddenResponse | {<br/>"code": 403,<br/>"message": "Only management keys can perform this operation"<br/>} |
| `user_id` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | |
+2 -1
View File
@@ -18,7 +18,8 @@ Current API key information
| `byok_usage_weekly` | *float* | :heavy_check_mark: | External BYOK usage (in USD) for the current UTC week (Monday-Sunday) | 17.38 |
| `byok_usage_monthly` | *float* | :heavy_check_mark: | External BYOK usage (in USD) for current UTC month | 17.38 |
| `is_free_tier` | *bool* | :heavy_check_mark: | Whether this is a free tier API key | false |
| `is_provisioning_key` | *bool* | :heavy_check_mark: | Whether this is a provisioning key | false |
| `is_management_key` | *bool* | :heavy_check_mark: | Whether this is a management key | false |
| ~~`is_provisioning_key`~~ | *bool* | :heavy_check_mark: | : warning: ** DEPRECATED **: This will be removed in a future release, please migrate away from it as soon as possible.<br/><br/>Whether this is a management key | false |
| `limit_remaining` | *Nullable[float]* | :heavy_check_mark: | Remaining spending limit in USD | 74.5 |
| `limit_reset` | *Nullable[str]* | :heavy_check_mark: | Type of limit reset for the API key | monthly |
| `include_byok_in_limit` | *bool* | :heavy_check_mark: | Whether to include external BYOK usage in the credit limit | false |
+3 -3
View File
@@ -5,6 +5,6 @@ API key details
## Fields
| Field | Type | Required | Description | Example |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `data` | [operations.GetCurrentKeyData](../operations/getcurrentkeydata.md) | :heavy_check_mark: | Current API key information | {<br/>"label": "sk-or-v1-au7...890",<br/>"limit": 100,<br/>"usage": 25.5,<br/>"usage_daily": 25.5,<br/>"usage_weekly": 25.5,<br/>"usage_monthly": 25.5,<br/>"byok_usage": 17.38,<br/>"byok_usage_daily": 17.38,<br/>"byok_usage_weekly": 17.38,<br/>"byok_usage_monthly": 17.38,<br/>"is_free_tier": false,<br/>"is_provisioning_key": false,<br/>"limit_remaining": 74.5,<br/>"limit_reset": "monthly",<br/>"include_byok_in_limit": false,<br/>"expires_at": "2027-12-31T23:59:59Z",<br/>"rate_limit": {<br/>"requests": 1000,<br/>"interval": "1h",<br/>"note": "This field is deprecated and safe to ignore."<br/>}<br/>} |
| Field | Type | Required | Description | Example |
| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `data` | [operations.GetCurrentKeyData](../operations/getcurrentkeydata.md) | :heavy_check_mark: | Current API key information | {<br/>"label": "sk-or-v1-au7...890",<br/>"limit": 100,<br/>"usage": 25.5,<br/>"usage_daily": 25.5,<br/>"usage_weekly": 25.5,<br/>"usage_monthly": 25.5,<br/>"byok_usage": 17.38,<br/>"byok_usage_daily": 17.38,<br/>"byok_usage_weekly": 17.38,<br/>"byok_usage_monthly": 17.38,<br/>"is_free_tier": false,<br/>"is_management_key": false,<br/>"is_provisioning_key": false,<br/>"limit_remaining": 74.5,<br/>"limit_reset": "monthly",<br/>"include_byok_in_limit": false,<br/>"expires_at": "2027-12-31T23:59:59Z",<br/>"rate_limit": {<br/>"requests": 1000,<br/>"interval": "1h",<br/>"note": "This field is deprecated and safe to ignore."<br/>}<br/>} |
+1 -1
View File
@@ -11,7 +11,7 @@ Analytics and usage endpoints
## get_user_activity
Returns user activity data grouped by endpoint for the last 30 (completed) UTC days. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
Returns user activity data grouped by endpoint for the last 30 (completed) UTC days. [Management key](/docs/guides/overview/auth/management-api-keys) required.
### Example Usage
+5 -5
View File
@@ -16,7 +16,7 @@ API key management endpoints
## list
List all API keys for the authenticated user. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
List all API keys for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys) required.
### Example Usage
@@ -64,7 +64,7 @@ with OpenRouter(
## create
Create a new API key for the authenticated user. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
Create a new API key for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys) required.
### Example Usage
@@ -116,7 +116,7 @@ with OpenRouter(
## update
Update an existing API key. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
Update an existing API key. [Management key](/docs/guides/overview/auth/management-api-keys) required.
### Example Usage
@@ -170,7 +170,7 @@ with OpenRouter(
## delete
Delete an existing API key. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
Delete an existing API key. [Management key](/docs/guides/overview/auth/management-api-keys) required.
### Example Usage
@@ -218,7 +218,7 @@ with OpenRouter(
## get
Get a single API key by hash. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
Get a single API key by hash. [Management key](/docs/guides/overview/auth/management-api-keys) required.
### Example Usage
+1
View File
@@ -46,6 +46,7 @@ with OpenRouter(
| `route` | [OptionalNullable[components.Route]](../../components/route.md) | :heavy_minus_sign: | N/A |
| `user` | *Optional[str]* | :heavy_minus_sign: | N/A |
| `session_id` | *Optional[str]* | :heavy_minus_sign: | N/A |
| `trace` | [Optional[components.Schema19]](../../components/schema19.md) | :heavy_minus_sign: | N/A |
| `model` | *Optional[str]* | :heavy_minus_sign: | N/A |
| `models` | List[*str*] | :heavy_minus_sign: | N/A |
| `frequency_penalty` | *OptionalNullable[float]* | :heavy_minus_sign: | N/A |
+1 -1
View File
@@ -12,7 +12,7 @@ Credit management endpoints
## get_credits
Get total credits purchased and used for the authenticated user. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
Get total credits purchased and used for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys) required.
### Example Usage
+13 -13
View File
@@ -23,7 +23,7 @@ Guardrails endpoints
## list
List all guardrails for the authenticated user. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
List all guardrails for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys) required.
### Example Usage
@@ -70,7 +70,7 @@ with OpenRouter(
## create
Create a new guardrail for the authenticated user. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
Create a new guardrail for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys) required.
### Example Usage
@@ -123,7 +123,7 @@ with OpenRouter(
## get
Get a single guardrail by ID. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
Get a single guardrail by ID. [Management key](/docs/guides/overview/auth/management-api-keys) required.
### Example Usage
@@ -170,7 +170,7 @@ with OpenRouter(
## update
Update an existing guardrail. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
Update an existing guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.
### Example Usage
@@ -225,7 +225,7 @@ with OpenRouter(
## delete
Delete an existing guardrail. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
Delete an existing guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.
### Example Usage
@@ -272,7 +272,7 @@ with OpenRouter(
## list_key_assignments
List all API key guardrail assignments for the authenticated user. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
List all API key guardrail assignments for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys) required.
### Example Usage
@@ -319,7 +319,7 @@ with OpenRouter(
## list_member_assignments
List all organization member guardrail assignments for the authenticated user. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
List all organization member guardrail assignments for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys) required.
### Example Usage
@@ -366,7 +366,7 @@ with OpenRouter(
## list_guardrail_key_assignments
List all API key assignments for a specific guardrail. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
List all API key assignments for a specific guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.
### Example Usage
@@ -415,7 +415,7 @@ with OpenRouter(
## bulk_assign_keys
Assign multiple API keys to a specific guardrail. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
Assign multiple API keys to a specific guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.
### Example Usage
@@ -466,7 +466,7 @@ with OpenRouter(
## list_guardrail_member_assignments
List all organization member assignments for a specific guardrail. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
List all organization member assignments for a specific guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.
### Example Usage
@@ -515,7 +515,7 @@ with OpenRouter(
## bulk_assign_members
Assign multiple organization members to a specific guardrail. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
Assign multiple organization members to a specific guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.
### Example Usage
@@ -567,7 +567,7 @@ with OpenRouter(
## bulk_unassign_keys
Unassign multiple API keys from a specific guardrail. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
Unassign multiple API keys from a specific guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.
### Example Usage
@@ -618,7 +618,7 @@ with OpenRouter(
## bulk_unassign_members
Unassign multiple organization members from a specific guardrail. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
Unassign multiple organization members from a specific guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.
### Example Usage
+1
View File
@@ -75,6 +75,7 @@ with OpenRouter(
| `plugins` | List[[components.Plugin](../../components/plugin.md)] | :heavy_minus_sign: | Plugins you want to enable for this request, including their settings. | |
| `user` | *Optional[str]* | :heavy_minus_sign: | A unique identifier representing your end-user, which helps distinguish between different users of your app. This allows your app to identify specific users in case of abuse reports, preventing your entire app from being affected by the actions of individual users. Maximum of 128 characters. | |
| `session_id` | *Optional[str]* | :heavy_minus_sign: | A unique identifier for grouping related requests (e.g., a conversation or agent workflow) for observability. If provided in both the request body and the x-session-id header, the body value takes precedence. Maximum of 128 characters. | |
| `trace` | [Optional[components.Trace]](../../components/trace.md) | :heavy_minus_sign: | Metadata for observability and tracing. Known keys (trace_id, trace_name, span_name, generation_name, parent_span_id) have special handling. Additional keys are passed through as custom metadata to configured broadcast destinations. | |
| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | |
### Response
+1 -1
View File
@@ -1,6 +1,6 @@
[project]
name = "openrouter"
version = "0.5.1"
version = "0.7.0"
description = "Official Python Client SDK for OpenRouter."
authors = [{ name = "OpenRouter" },]
readme = "README-PYPI.md"
+2 -2
View File
@@ -3,10 +3,10 @@
import importlib.metadata
__title__: str = "openrouter"
__version__: str = "0.5.1"
__version__: str = "0.7.0"
__openapi_doc_version__: str = "1.0.0"
__gen_version__: str = "2.768.0"
__user_agent__: str = "speakeasy-sdk/python 0.5.1 2.768.0 1.0.0 openrouter"
__user_agent__: str = "speakeasy-sdk/python 0.7.0 2.768.0 1.0.0 openrouter"
try:
if __package__ is not None:
+2 -2
View File
@@ -25,7 +25,7 @@ class Analytics(BaseSDK):
) -> operations.GetUserActivityResponse:
r"""Get user activity grouped by endpoint
Returns user activity data grouped by endpoint for the last 30 (completed) UTC days. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
Returns user activity data grouped by endpoint for the last 30 (completed) UTC days. [Management key](/docs/guides/overview/auth/management-api-keys) required.
: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.
@@ -147,7 +147,7 @@ class Analytics(BaseSDK):
) -> operations.GetUserActivityResponse:
r"""Get user activity grouped by endpoint
Returns user activity data grouped by endpoint for the last 30 (completed) UTC days. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
Returns user activity data grouped by endpoint for the last 30 (completed) UTC days. [Management key](/docs/guides/overview/auth/management-api-keys) required.
: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.
+10 -10
View File
@@ -27,7 +27,7 @@ class APIKeys(BaseSDK):
) -> operations.ListResponse:
r"""List API keys
List all API keys for the authenticated user. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
List all API keys for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys) required.
: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.
@@ -147,7 +147,7 @@ class APIKeys(BaseSDK):
) -> operations.ListResponse:
r"""List API keys
List all API keys for the authenticated user. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
List all API keys for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys) required.
: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.
@@ -270,7 +270,7 @@ class APIKeys(BaseSDK):
) -> operations.CreateKeysResponse:
r"""Create a new API key
Create a new API key for the authenticated user. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
Create a new API key for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys) required.
:param name: Name for the new API key
:param http_referer: The app identifier should be your app's URL and is used as the primary identifier for rankings.
@@ -413,7 +413,7 @@ class APIKeys(BaseSDK):
) -> operations.CreateKeysResponse:
r"""Create a new API key
Create a new API key for the authenticated user. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
Create a new API key for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys) required.
:param name: Name for the new API key
:param http_referer: The app identifier should be your app's URL and is used as the primary identifier for rankings.
@@ -557,7 +557,7 @@ class APIKeys(BaseSDK):
) -> operations.UpdateKeysResponse:
r"""Update an API key
Update an existing API key. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
Update an existing API key. [Management key](/docs/guides/overview/auth/management-api-keys) required.
:param hash: The hash identifier of the API key to update
:param http_referer: The app identifier should be your app's URL and is used as the primary identifier for rankings.
@@ -708,7 +708,7 @@ class APIKeys(BaseSDK):
) -> operations.UpdateKeysResponse:
r"""Update an API key
Update an existing API key. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
Update an existing API key. [Management key](/docs/guides/overview/auth/management-api-keys) required.
:param hash: The hash identifier of the API key to update
:param http_referer: The app identifier should be your app's URL and is used as the primary identifier for rankings.
@@ -854,7 +854,7 @@ class APIKeys(BaseSDK):
) -> operations.DeleteKeysResponse:
r"""Delete an API key
Delete an existing API key. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
Delete an existing API key. [Management key](/docs/guides/overview/auth/management-api-keys) required.
:param hash: The hash identifier of the API key to delete
:param http_referer: The app identifier should be your app's URL and is used as the primary identifier for rankings.
@@ -976,7 +976,7 @@ class APIKeys(BaseSDK):
) -> operations.DeleteKeysResponse:
r"""Delete an API key
Delete an existing API key. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
Delete an existing API key. [Management key](/docs/guides/overview/auth/management-api-keys) required.
:param hash: The hash identifier of the API key to delete
:param http_referer: The app identifier should be your app's URL and is used as the primary identifier for rankings.
@@ -1098,7 +1098,7 @@ class APIKeys(BaseSDK):
) -> operations.GetKeyResponse:
r"""Get a single API key
Get a single API key by hash. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
Get a single API key by hash. [Management key](/docs/guides/overview/auth/management-api-keys) required.
:param hash: The hash identifier of the API key to retrieve
:param http_referer: The app identifier should be your app's URL and is used as the primary identifier for rankings.
@@ -1220,7 +1220,7 @@ class APIKeys(BaseSDK):
) -> operations.GetKeyResponse:
r"""Get a single API key
Get a single API key by hash. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
Get a single API key by hash. [Management key](/docs/guides/overview/auth/management-api-keys) required.
:param hash: The hash identifier of the API key to retrieve
:param http_referer: The app identifier should be your app's URL and is used as the primary identifier for rankings.
+26
View File
@@ -32,6 +32,9 @@ class Chat(BaseSDK):
route: OptionalNullable[components.Route] = UNSET,
user: Optional[str] = None,
session_id: Optional[str] = None,
trace: Optional[
Union[components.Schema19, components.Schema19TypedDict]
] = None,
model: Optional[str] = None,
models: Optional[List[str]] = None,
frequency_penalty: OptionalNullable[float] = UNSET,
@@ -93,6 +96,7 @@ class Chat(BaseSDK):
:param route:
:param user:
:param session_id:
:param trace:
:param model:
:param models:
:param frequency_penalty:
@@ -139,6 +143,9 @@ class Chat(BaseSDK):
route: OptionalNullable[components.Route] = UNSET,
user: Optional[str] = None,
session_id: Optional[str] = None,
trace: Optional[
Union[components.Schema19, components.Schema19TypedDict]
] = None,
model: Optional[str] = None,
models: Optional[List[str]] = None,
frequency_penalty: OptionalNullable[float] = UNSET,
@@ -200,6 +207,7 @@ class Chat(BaseSDK):
:param route:
:param user:
:param session_id:
:param trace:
:param model:
:param models:
:param frequency_penalty:
@@ -245,6 +253,9 @@ class Chat(BaseSDK):
route: OptionalNullable[components.Route] = UNSET,
user: Optional[str] = None,
session_id: Optional[str] = None,
trace: Optional[
Union[components.Schema19, components.Schema19TypedDict]
] = None,
model: Optional[str] = None,
models: Optional[List[str]] = None,
frequency_penalty: OptionalNullable[float] = UNSET,
@@ -306,6 +317,7 @@ class Chat(BaseSDK):
:param route:
:param user:
:param session_id:
:param trace:
:param model:
:param models:
:param frequency_penalty:
@@ -358,6 +370,7 @@ class Chat(BaseSDK):
route=route,
user=user,
session_id=session_id,
trace=utils.get_pydantic_model(trace, Optional[components.Schema19]),
messages=utils.get_pydantic_model(messages, List[components.Message]),
model=model,
models=models,
@@ -504,6 +517,9 @@ class Chat(BaseSDK):
route: OptionalNullable[components.Route] = UNSET,
user: Optional[str] = None,
session_id: Optional[str] = None,
trace: Optional[
Union[components.Schema19, components.Schema19TypedDict]
] = None,
model: Optional[str] = None,
models: Optional[List[str]] = None,
frequency_penalty: OptionalNullable[float] = UNSET,
@@ -565,6 +581,7 @@ class Chat(BaseSDK):
:param route:
:param user:
:param session_id:
:param trace:
:param model:
:param models:
:param frequency_penalty:
@@ -611,6 +628,9 @@ class Chat(BaseSDK):
route: OptionalNullable[components.Route] = UNSET,
user: Optional[str] = None,
session_id: Optional[str] = None,
trace: Optional[
Union[components.Schema19, components.Schema19TypedDict]
] = None,
model: Optional[str] = None,
models: Optional[List[str]] = None,
frequency_penalty: OptionalNullable[float] = UNSET,
@@ -672,6 +692,7 @@ class Chat(BaseSDK):
:param route:
:param user:
:param session_id:
:param trace:
:param model:
:param models:
:param frequency_penalty:
@@ -717,6 +738,9 @@ class Chat(BaseSDK):
route: OptionalNullable[components.Route] = UNSET,
user: Optional[str] = None,
session_id: Optional[str] = None,
trace: Optional[
Union[components.Schema19, components.Schema19TypedDict]
] = None,
model: Optional[str] = None,
models: Optional[List[str]] = None,
frequency_penalty: OptionalNullable[float] = UNSET,
@@ -778,6 +802,7 @@ class Chat(BaseSDK):
:param route:
:param user:
:param session_id:
:param trace:
:param model:
:param models:
:param frequency_penalty:
@@ -830,6 +855,7 @@ class Chat(BaseSDK):
route=route,
user=user,
session_id=session_id,
trace=utils.get_pydantic_model(trace, Optional[components.Schema19]),
messages=utils.get_pydantic_model(messages, List[components.Message]),
model=model,
models=models,
+35 -24
View File
@@ -33,16 +33,17 @@ if TYPE_CHECKING:
Schema17Web,
Schema17WebTypedDict,
)
from ._schema19 import (
Schema19,
Schema19ReasoningEncrypted,
Schema19ReasoningEncryptedTypedDict,
Schema19ReasoningSummary,
Schema19ReasoningSummaryTypedDict,
Schema19ReasoningText,
Schema19ReasoningTextTypedDict,
Schema19TypedDict,
Schema21,
from ._schema19 import Schema19, Schema19TypedDict
from ._schema20 import (
Schema20,
Schema20ReasoningEncrypted,
Schema20ReasoningEncryptedTypedDict,
Schema20ReasoningSummary,
Schema20ReasoningSummaryTypedDict,
Schema20ReasoningText,
Schema20ReasoningTextTypedDict,
Schema20TypedDict,
Schema22,
)
from ._schema5 import Schema5, Schema5Enum, Schema5TypedDict
from .activityitem import ActivityItem, ActivityItemTypedDict
@@ -496,6 +497,8 @@ if TYPE_CHECKING:
Provider,
ProviderTypedDict,
ServiceTier,
Trace,
TraceTypedDict,
Truncation,
)
from .openresponsesresponsetext import (
@@ -1499,14 +1502,16 @@ __all__ = [
"Schema17Web",
"Schema17WebTypedDict",
"Schema19",
"Schema19ReasoningEncrypted",
"Schema19ReasoningEncryptedTypedDict",
"Schema19ReasoningSummary",
"Schema19ReasoningSummaryTypedDict",
"Schema19ReasoningText",
"Schema19ReasoningTextTypedDict",
"Schema19TypedDict",
"Schema21",
"Schema20",
"Schema20ReasoningEncrypted",
"Schema20ReasoningEncryptedTypedDict",
"Schema20ReasoningSummary",
"Schema20ReasoningSummaryTypedDict",
"Schema20ReasoningText",
"Schema20ReasoningTextTypedDict",
"Schema20TypedDict",
"Schema22",
"Schema3",
"Schema5",
"Schema5Enum",
@@ -1539,6 +1544,8 @@ __all__ = [
"ToolResponseMessageTypedDict",
"TopProviderInfo",
"TopProviderInfoTypedDict",
"Trace",
"TraceTypedDict",
"Truncation",
"Type",
"TypeResponseCompleted",
@@ -1609,14 +1616,16 @@ _dynamic_imports: dict[str, str] = {
"Schema17Web": "._schema17",
"Schema17WebTypedDict": "._schema17",
"Schema19": "._schema19",
"Schema19ReasoningEncrypted": "._schema19",
"Schema19ReasoningEncryptedTypedDict": "._schema19",
"Schema19ReasoningSummary": "._schema19",
"Schema19ReasoningSummaryTypedDict": "._schema19",
"Schema19ReasoningText": "._schema19",
"Schema19ReasoningTextTypedDict": "._schema19",
"Schema19TypedDict": "._schema19",
"Schema21": "._schema19",
"Schema20": "._schema20",
"Schema20ReasoningEncrypted": "._schema20",
"Schema20ReasoningEncryptedTypedDict": "._schema20",
"Schema20ReasoningSummary": "._schema20",
"Schema20ReasoningSummaryTypedDict": "._schema20",
"Schema20ReasoningText": "._schema20",
"Schema20ReasoningTextTypedDict": "._schema20",
"Schema20TypedDict": "._schema20",
"Schema22": "._schema20",
"Schema5": "._schema5",
"Schema5Enum": "._schema5",
"Schema5TypedDict": "._schema5",
@@ -1981,6 +1990,8 @@ _dynamic_imports: dict[str, str] = {
"Provider": ".openresponsesrequest",
"ProviderTypedDict": ".openresponsesrequest",
"ServiceTier": ".openresponsesrequest",
"Trace": ".openresponsesrequest",
"TraceTypedDict": ".openresponsesrequest",
"Truncation": ".openresponsesrequest",
"OpenResponsesResponseText": ".openresponsesresponsetext",
"OpenResponsesResponseTextTypedDict": ".openresponsesresponsetext",
+26 -220
View File
@@ -1,235 +1,41 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
from openrouter.types import (
BaseModel,
Nullable,
OptionalNullable,
UNSET,
UNSET_SENTINEL,
UnrecognizedStr,
)
from openrouter.utils import get_discriminator, validate_const, validate_open_enum
from openrouter.types import BaseModel
import pydantic
from pydantic import Discriminator, Tag, model_serializer
from pydantic.functional_validators import AfterValidator, PlainValidator
from typing import Literal, Optional, Union
from typing_extensions import Annotated, NotRequired, TypeAliasType, TypedDict
from pydantic import ConfigDict
from typing import Any, Dict, Optional
from typing_extensions import NotRequired, TypedDict
Schema21 = Union[
Literal[
"unknown",
"openai-responses-v1",
"azure-openai-responses-v1",
"xai-responses-v1",
"anthropic-claude-v1",
"google-gemini-v1",
],
UnrecognizedStr,
]
class Schema19TypedDict(TypedDict):
trace_id: NotRequired[str]
trace_name: NotRequired[str]
span_name: NotRequired[str]
generation_name: NotRequired[str]
parent_span_id: NotRequired[str]
class Schema19ReasoningTextTypedDict(TypedDict):
type: Literal["reasoning.text"]
text: NotRequired[Nullable[str]]
signature: NotRequired[Nullable[str]]
id: NotRequired[Nullable[str]]
format_: NotRequired[Nullable[Schema21]]
index: NotRequired[float]
class Schema19(BaseModel):
model_config = ConfigDict(
populate_by_name=True, arbitrary_types_allowed=True, extra="allow"
)
__pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False)
trace_id: Optional[str] = None
class Schema19ReasoningText(BaseModel):
TYPE: Annotated[
Annotated[
Literal["reasoning.text"], AfterValidator(validate_const("reasoning.text"))
],
pydantic.Field(alias="type"),
] = "reasoning.text"
trace_name: Optional[str] = None
text: OptionalNullable[str] = UNSET
span_name: Optional[str] = None
signature: OptionalNullable[str] = UNSET
generation_name: Optional[str] = None
id: OptionalNullable[str] = UNSET
parent_span_id: Optional[str] = None
format_: Annotated[
Annotated[
OptionalNullable[Schema21], PlainValidator(validate_open_enum(False))
],
pydantic.Field(alias="format"),
] = UNSET
@property
def additional_properties(self):
return self.__pydantic_extra__
index: Optional[float] = None
@model_serializer(mode="wrap")
def serialize_model(self, handler):
optional_fields = ["text", "signature", "id", "format", "index"]
nullable_fields = ["text", "signature", "id", "format"]
null_default_fields = []
serialized = handler(self)
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
serialized.pop(k, None)
optional_nullable = k in optional_fields and k in nullable_fields
is_set = (
self.__pydantic_fields_set__.intersection({n})
or k in null_default_fields
) # pylint: disable=no-member
if val is not None and val != UNSET_SENTINEL:
m[k] = val
elif val != UNSET_SENTINEL and (
not k in optional_fields or (optional_nullable and is_set)
):
m[k] = val
return m
class Schema19ReasoningEncryptedTypedDict(TypedDict):
data: str
type: Literal["reasoning.encrypted"]
id: NotRequired[Nullable[str]]
format_: NotRequired[Nullable[Schema21]]
index: NotRequired[float]
class Schema19ReasoningEncrypted(BaseModel):
data: str
TYPE: Annotated[
Annotated[
Literal["reasoning.encrypted"],
AfterValidator(validate_const("reasoning.encrypted")),
],
pydantic.Field(alias="type"),
] = "reasoning.encrypted"
id: OptionalNullable[str] = UNSET
format_: Annotated[
Annotated[
OptionalNullable[Schema21], PlainValidator(validate_open_enum(False))
],
pydantic.Field(alias="format"),
] = UNSET
index: Optional[float] = None
@model_serializer(mode="wrap")
def serialize_model(self, handler):
optional_fields = ["id", "format", "index"]
nullable_fields = ["id", "format"]
null_default_fields = []
serialized = handler(self)
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
serialized.pop(k, None)
optional_nullable = k in optional_fields and k in nullable_fields
is_set = (
self.__pydantic_fields_set__.intersection({n})
or k in null_default_fields
) # pylint: disable=no-member
if val is not None and val != UNSET_SENTINEL:
m[k] = val
elif val != UNSET_SENTINEL and (
not k in optional_fields or (optional_nullable and is_set)
):
m[k] = val
return m
class Schema19ReasoningSummaryTypedDict(TypedDict):
summary: str
type: Literal["reasoning.summary"]
id: NotRequired[Nullable[str]]
format_: NotRequired[Nullable[Schema21]]
index: NotRequired[float]
class Schema19ReasoningSummary(BaseModel):
summary: str
TYPE: Annotated[
Annotated[
Literal["reasoning.summary"],
AfterValidator(validate_const("reasoning.summary")),
],
pydantic.Field(alias="type"),
] = "reasoning.summary"
id: OptionalNullable[str] = UNSET
format_: Annotated[
Annotated[
OptionalNullable[Schema21], PlainValidator(validate_open_enum(False))
],
pydantic.Field(alias="format"),
] = UNSET
index: Optional[float] = None
@model_serializer(mode="wrap")
def serialize_model(self, handler):
optional_fields = ["id", "format", "index"]
nullable_fields = ["id", "format"]
null_default_fields = []
serialized = handler(self)
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
serialized.pop(k, None)
optional_nullable = k in optional_fields and k in nullable_fields
is_set = (
self.__pydantic_fields_set__.intersection({n})
or k in null_default_fields
) # pylint: disable=no-member
if val is not None and val != UNSET_SENTINEL:
m[k] = val
elif val != UNSET_SENTINEL and (
not k in optional_fields or (optional_nullable and is_set)
):
m[k] = val
return m
Schema19TypedDict = TypeAliasType(
"Schema19TypedDict",
Union[
Schema19ReasoningSummaryTypedDict,
Schema19ReasoningEncryptedTypedDict,
Schema19ReasoningTextTypedDict,
],
)
Schema19 = Annotated[
Union[
Annotated[Schema19ReasoningSummary, Tag("reasoning.summary")],
Annotated[Schema19ReasoningEncrypted, Tag("reasoning.encrypted")],
Annotated[Schema19ReasoningText, Tag("reasoning.text")],
],
Discriminator(lambda m: get_discriminator(m, "type", "type")),
]
@additional_properties.setter
def additional_properties(self, value):
self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride]
+235
View File
@@ -0,0 +1,235 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
from openrouter.types import (
BaseModel,
Nullable,
OptionalNullable,
UNSET,
UNSET_SENTINEL,
UnrecognizedStr,
)
from openrouter.utils import get_discriminator, validate_const, validate_open_enum
import pydantic
from pydantic import Discriminator, Tag, model_serializer
from pydantic.functional_validators import AfterValidator, PlainValidator
from typing import Literal, Optional, Union
from typing_extensions import Annotated, NotRequired, TypeAliasType, TypedDict
Schema22 = Union[
Literal[
"unknown",
"openai-responses-v1",
"azure-openai-responses-v1",
"xai-responses-v1",
"anthropic-claude-v1",
"google-gemini-v1",
],
UnrecognizedStr,
]
class Schema20ReasoningTextTypedDict(TypedDict):
type: Literal["reasoning.text"]
text: NotRequired[Nullable[str]]
signature: NotRequired[Nullable[str]]
id: NotRequired[Nullable[str]]
format_: NotRequired[Nullable[Schema22]]
index: NotRequired[float]
class Schema20ReasoningText(BaseModel):
TYPE: Annotated[
Annotated[
Literal["reasoning.text"], AfterValidator(validate_const("reasoning.text"))
],
pydantic.Field(alias="type"),
] = "reasoning.text"
text: OptionalNullable[str] = UNSET
signature: OptionalNullable[str] = UNSET
id: OptionalNullable[str] = UNSET
format_: Annotated[
Annotated[
OptionalNullable[Schema22], PlainValidator(validate_open_enum(False))
],
pydantic.Field(alias="format"),
] = UNSET
index: Optional[float] = None
@model_serializer(mode="wrap")
def serialize_model(self, handler):
optional_fields = ["text", "signature", "id", "format", "index"]
nullable_fields = ["text", "signature", "id", "format"]
null_default_fields = []
serialized = handler(self)
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
serialized.pop(k, None)
optional_nullable = k in optional_fields and k in nullable_fields
is_set = (
self.__pydantic_fields_set__.intersection({n})
or k in null_default_fields
) # pylint: disable=no-member
if val is not None and val != UNSET_SENTINEL:
m[k] = val
elif val != UNSET_SENTINEL and (
not k in optional_fields or (optional_nullable and is_set)
):
m[k] = val
return m
class Schema20ReasoningEncryptedTypedDict(TypedDict):
data: str
type: Literal["reasoning.encrypted"]
id: NotRequired[Nullable[str]]
format_: NotRequired[Nullable[Schema22]]
index: NotRequired[float]
class Schema20ReasoningEncrypted(BaseModel):
data: str
TYPE: Annotated[
Annotated[
Literal["reasoning.encrypted"],
AfterValidator(validate_const("reasoning.encrypted")),
],
pydantic.Field(alias="type"),
] = "reasoning.encrypted"
id: OptionalNullable[str] = UNSET
format_: Annotated[
Annotated[
OptionalNullable[Schema22], PlainValidator(validate_open_enum(False))
],
pydantic.Field(alias="format"),
] = UNSET
index: Optional[float] = None
@model_serializer(mode="wrap")
def serialize_model(self, handler):
optional_fields = ["id", "format", "index"]
nullable_fields = ["id", "format"]
null_default_fields = []
serialized = handler(self)
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
serialized.pop(k, None)
optional_nullable = k in optional_fields and k in nullable_fields
is_set = (
self.__pydantic_fields_set__.intersection({n})
or k in null_default_fields
) # pylint: disable=no-member
if val is not None and val != UNSET_SENTINEL:
m[k] = val
elif val != UNSET_SENTINEL and (
not k in optional_fields or (optional_nullable and is_set)
):
m[k] = val
return m
class Schema20ReasoningSummaryTypedDict(TypedDict):
summary: str
type: Literal["reasoning.summary"]
id: NotRequired[Nullable[str]]
format_: NotRequired[Nullable[Schema22]]
index: NotRequired[float]
class Schema20ReasoningSummary(BaseModel):
summary: str
TYPE: Annotated[
Annotated[
Literal["reasoning.summary"],
AfterValidator(validate_const("reasoning.summary")),
],
pydantic.Field(alias="type"),
] = "reasoning.summary"
id: OptionalNullable[str] = UNSET
format_: Annotated[
Annotated[
OptionalNullable[Schema22], PlainValidator(validate_open_enum(False))
],
pydantic.Field(alias="format"),
] = UNSET
index: Optional[float] = None
@model_serializer(mode="wrap")
def serialize_model(self, handler):
optional_fields = ["id", "format", "index"]
nullable_fields = ["id", "format"]
null_default_fields = []
serialized = handler(self)
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
serialized.pop(k, None)
optional_nullable = k in optional_fields and k in nullable_fields
is_set = (
self.__pydantic_fields_set__.intersection({n})
or k in null_default_fields
) # pylint: disable=no-member
if val is not None and val != UNSET_SENTINEL:
m[k] = val
elif val != UNSET_SENTINEL and (
not k in optional_fields or (optional_nullable and is_set)
):
m[k] = val
return m
Schema20TypedDict = TypeAliasType(
"Schema20TypedDict",
Union[
Schema20ReasoningSummaryTypedDict,
Schema20ReasoningEncryptedTypedDict,
Schema20ReasoningTextTypedDict,
],
)
Schema20 = Annotated[
Union[
Annotated[Schema20ReasoningSummary, Tag("reasoning.summary")],
Annotated[Schema20ReasoningEncrypted, Tag("reasoning.encrypted")],
Annotated[Schema20ReasoningText, Tag("reasoning.text")],
],
Discriminator(lambda m: get_discriminator(m, "type", "type")),
]
@@ -1,7 +1,7 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
from ._schema19 import Schema19, Schema19TypedDict
from ._schema20 import Schema20, Schema20TypedDict
from .chatmessagecontentitem import (
ChatMessageContentItem,
ChatMessageContentItemTypedDict,
@@ -56,7 +56,7 @@ class AssistantMessageTypedDict(TypedDict):
tool_calls: NotRequired[List[ChatMessageToolCallTypedDict]]
refusal: NotRequired[Nullable[str]]
reasoning: NotRequired[Nullable[str]]
reasoning_details: NotRequired[List[Schema19TypedDict]]
reasoning_details: NotRequired[List[Schema20TypedDict]]
images: NotRequired[List[ImageTypedDict]]
@@ -76,7 +76,7 @@ class AssistantMessage(BaseModel):
reasoning: OptionalNullable[str] = UNSET
reasoning_details: Optional[List[Schema19]] = None
reasoning_details: Optional[List[Schema20]] = None
images: Optional[List[Image]] = None
@@ -3,6 +3,7 @@
from __future__ import annotations
from ._schema10 import Schema10, Schema10TypedDict
from ._schema17 import Schema17, Schema17TypedDict
from ._schema19 import Schema19, Schema19TypedDict
from ._schema5 import Schema5, Schema5TypedDict
from .chatstreamoptions import ChatStreamOptions, ChatStreamOptionsTypedDict
from .message import Message, MessageTypedDict
@@ -385,6 +386,7 @@ class ChatGenerationParamsTypedDict(TypedDict):
route: NotRequired[Nullable[Route]]
user: NotRequired[str]
session_id: NotRequired[str]
trace: NotRequired[Schema19TypedDict]
model: NotRequired[str]
models: NotRequired[List[str]]
frequency_penalty: NotRequired[Nullable[float]]
@@ -425,6 +427,8 @@ class ChatGenerationParams(BaseModel):
session_id: Optional[str] = None
trace: Optional[Schema19] = None
model: Optional[str] = None
models: Optional[List[str]] = None
@@ -481,6 +485,7 @@ class ChatGenerationParams(BaseModel):
"route",
"user",
"session_id",
"trace",
"model",
"models",
"frequency_penalty",
@@ -1,7 +1,7 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
from ._schema19 import Schema19, Schema19TypedDict
from ._schema20 import Schema20, Schema20TypedDict
from .chatstreamingmessagetoolcall import (
ChatStreamingMessageToolCall,
ChatStreamingMessageToolCallTypedDict,
@@ -27,7 +27,7 @@ class ChatStreamingMessageChunkTypedDict(TypedDict):
reasoning: NotRequired[Nullable[str]]
refusal: NotRequired[Nullable[str]]
tool_calls: NotRequired[List[ChatStreamingMessageToolCallTypedDict]]
reasoning_details: NotRequired[List[Schema19TypedDict]]
reasoning_details: NotRequired[List[Schema20TypedDict]]
class ChatStreamingMessageChunk(BaseModel):
@@ -41,7 +41,7 @@ class ChatStreamingMessageChunk(BaseModel):
tool_calls: Optional[List[ChatStreamingMessageToolCall]] = None
reasoning_details: Optional[List[Schema19]] = None
reasoning_details: Optional[List[Schema20]] = None
@model_serializer(mode="wrap")
def serialize_model(self, handler):
@@ -55,7 +55,7 @@ from openrouter.types import (
)
from openrouter.utils import get_discriminator, validate_const, validate_open_enum
import pydantic
from pydantic import Discriminator, Tag, model_serializer
from pydantic import ConfigDict, Discriminator, Tag, model_serializer
from pydantic.functional_validators import AfterValidator, PlainValidator
from typing import Any, Dict, List, Literal, Optional, Union
from typing_extensions import Annotated, NotRequired, TypeAliasType, TypedDict
@@ -517,6 +517,43 @@ Plugin = Annotated[
]
class TraceTypedDict(TypedDict):
r"""Metadata for observability and tracing. Known keys (trace_id, trace_name, span_name, generation_name, parent_span_id) have special handling. Additional keys are passed through as custom metadata to configured broadcast destinations."""
trace_id: NotRequired[str]
trace_name: NotRequired[str]
span_name: NotRequired[str]
generation_name: NotRequired[str]
parent_span_id: NotRequired[str]
class Trace(BaseModel):
r"""Metadata for observability and tracing. Known keys (trace_id, trace_name, span_name, generation_name, parent_span_id) have special handling. Additional keys are passed through as custom metadata to configured broadcast destinations."""
model_config = ConfigDict(
populate_by_name=True, arbitrary_types_allowed=True, extra="allow"
)
__pydantic_extra__: Dict[str, Nullable[Any]] = pydantic.Field(init=False)
trace_id: Optional[str] = None
trace_name: Optional[str] = None
span_name: Optional[str] = None
generation_name: Optional[str] = None
parent_span_id: Optional[str] = None
@property
def additional_properties(self):
return self.__pydantic_extra__
@additional_properties.setter
def additional_properties(self, value):
self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride]
class OpenResponsesRequestTypedDict(TypedDict):
r"""Request schema for Responses endpoint"""
@@ -564,6 +601,8 @@ class OpenResponsesRequestTypedDict(TypedDict):
r"""A unique identifier representing your end-user, which helps distinguish between different users of your app. This allows your app to identify specific users in case of abuse reports, preventing your entire app from being affected by the actions of individual users. Maximum of 128 characters."""
session_id: NotRequired[str]
r"""A unique identifier for grouping related requests (e.g., a conversation or agent workflow) for observability. If provided in both the request body and the x-session-id header, the body value takes precedence. Maximum of 128 characters."""
trace: NotRequired[TraceTypedDict]
r"""Metadata for observability and tracing. Known keys (trace_id, trace_name, span_name, generation_name, parent_span_id) have special handling. Additional keys are passed through as custom metadata to configured broadcast destinations."""
class OpenResponsesRequest(BaseModel):
@@ -664,6 +703,9 @@ class OpenResponsesRequest(BaseModel):
session_id: Optional[str] = None
r"""A unique identifier for grouping related requests (e.g., a conversation or agent workflow) for observability. If provided in both the request body and the x-session-id header, the body value takes precedence. Maximum of 128 characters."""
trace: Optional[Trace] = None
r"""Metadata for observability and tracing. Known keys (trace_id, trace_name, span_name, generation_name, parent_span_id) have special handling. Additional keys are passed through as custom metadata to configured broadcast destinations."""
@model_serializer(mode="wrap")
def serialize_model(self, handler):
optional_fields = [
@@ -701,6 +743,7 @@ class OpenResponsesRequest(BaseModel):
"plugins",
"user",
"session_id",
"trace",
]
nullable_fields = [
"instructions",
+2 -2
View File
@@ -24,7 +24,7 @@ class Credits(BaseSDK):
) -> operations.GetCreditsResponse:
r"""Get remaining credits
Get total credits purchased and used for the authenticated user. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
Get total credits purchased and used for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys) required.
: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.
@@ -138,7 +138,7 @@ class Credits(BaseSDK):
) -> operations.GetCreditsResponse:
r"""Get remaining credits
Get total credits purchased and used for the authenticated user. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
Get total credits purchased and used for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys) required.
: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.
+26 -26
View File
@@ -26,7 +26,7 @@ class Guardrails(BaseSDK):
) -> operations.ListGuardrailsResponse:
r"""List guardrails
List all guardrails for the authenticated user. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
List all guardrails for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys) required.
: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.
@@ -141,7 +141,7 @@ class Guardrails(BaseSDK):
) -> operations.ListGuardrailsResponse:
r"""List guardrails
List all guardrails for the authenticated user. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
List all guardrails for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys) required.
: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.
@@ -263,7 +263,7 @@ class Guardrails(BaseSDK):
) -> operations.CreateGuardrailResponse:
r"""Create a guardrail
Create a new guardrail for the authenticated user. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
Create a new guardrail for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys) required.
:param name: Name for the new guardrail
:param http_referer: The app identifier should be your app's URL and is used as the primary identifier for rankings.
@@ -409,7 +409,7 @@ class Guardrails(BaseSDK):
) -> operations.CreateGuardrailResponse:
r"""Create a guardrail
Create a new guardrail for the authenticated user. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
Create a new guardrail for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys) required.
:param name: Name for the new guardrail
:param http_referer: The app identifier should be your app's URL and is used as the primary identifier for rankings.
@@ -547,7 +547,7 @@ class Guardrails(BaseSDK):
) -> operations.GetGuardrailResponse:
r"""Get a guardrail
Get a single guardrail by ID. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
Get a single guardrail by ID. [Management key](/docs/guides/overview/auth/management-api-keys) required.
:param id: The unique identifier of the guardrail to retrieve
:param http_referer: The app identifier should be your app's URL and is used as the primary identifier for rankings.
@@ -664,7 +664,7 @@ class Guardrails(BaseSDK):
) -> operations.GetGuardrailResponse:
r"""Get a guardrail
Get a single guardrail by ID. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
Get a single guardrail by ID. [Management key](/docs/guides/overview/auth/management-api-keys) required.
:param id: The unique identifier of the guardrail to retrieve
:param http_referer: The app identifier should be your app's URL and is used as the primary identifier for rankings.
@@ -790,7 +790,7 @@ class Guardrails(BaseSDK):
) -> operations.UpdateGuardrailResponse:
r"""Update a guardrail
Update an existing guardrail. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
Update an existing guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.
:param id: The unique identifier of the guardrail to update
:param http_referer: The app identifier should be your app's URL and is used as the primary identifier for rankings.
@@ -944,7 +944,7 @@ class Guardrails(BaseSDK):
) -> operations.UpdateGuardrailResponse:
r"""Update a guardrail
Update an existing guardrail. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
Update an existing guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.
:param id: The unique identifier of the guardrail to update
:param http_referer: The app identifier should be your app's URL and is used as the primary identifier for rankings.
@@ -1089,7 +1089,7 @@ class Guardrails(BaseSDK):
) -> operations.DeleteGuardrailResponse:
r"""Delete a guardrail
Delete an existing guardrail. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
Delete an existing guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.
:param id: The unique identifier of the guardrail to delete
:param http_referer: The app identifier should be your app's URL and is used as the primary identifier for rankings.
@@ -1206,7 +1206,7 @@ class Guardrails(BaseSDK):
) -> operations.DeleteGuardrailResponse:
r"""Delete a guardrail
Delete an existing guardrail. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
Delete an existing guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.
:param id: The unique identifier of the guardrail to delete
:param http_referer: The app identifier should be your app's URL and is used as the primary identifier for rankings.
@@ -1324,7 +1324,7 @@ class Guardrails(BaseSDK):
) -> operations.ListKeyAssignmentsResponse:
r"""List all key assignments
List all API key guardrail assignments for the authenticated user. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
List all API key guardrail assignments for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys) required.
: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.
@@ -1441,7 +1441,7 @@ class Guardrails(BaseSDK):
) -> operations.ListKeyAssignmentsResponse:
r"""List all key assignments
List all API key guardrail assignments for the authenticated user. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
List all API key guardrail assignments for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys) required.
: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.
@@ -1558,7 +1558,7 @@ class Guardrails(BaseSDK):
) -> operations.ListMemberAssignmentsResponse:
r"""List all member assignments
List all organization member guardrail assignments for the authenticated user. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
List all organization member guardrail assignments for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys) required.
: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.
@@ -1675,7 +1675,7 @@ class Guardrails(BaseSDK):
) -> operations.ListMemberAssignmentsResponse:
r"""List all member assignments
List all organization member guardrail assignments for the authenticated user. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
List all organization member guardrail assignments for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys) required.
: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.
@@ -1793,7 +1793,7 @@ class Guardrails(BaseSDK):
) -> operations.ListGuardrailKeyAssignmentsResponse:
r"""List key assignments for a guardrail
List all API key assignments for a specific guardrail. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
List all API key assignments for a specific guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.
:param id: The unique identifier of the guardrail
:param http_referer: The app identifier should be your app's URL and is used as the primary identifier for rankings.
@@ -1918,7 +1918,7 @@ class Guardrails(BaseSDK):
) -> operations.ListGuardrailKeyAssignmentsResponse:
r"""List key assignments for a guardrail
List all API key assignments for a specific guardrail. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
List all API key assignments for a specific guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.
:param id: The unique identifier of the guardrail
:param http_referer: The app identifier should be your app's URL and is used as the primary identifier for rankings.
@@ -2042,7 +2042,7 @@ class Guardrails(BaseSDK):
) -> operations.BulkAssignKeysToGuardrailResponse:
r"""Bulk assign keys to a guardrail
Assign multiple API keys to a specific guardrail. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
Assign multiple API keys to a specific guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.
:param id: The unique identifier of the guardrail
:param key_hashes: Array of API key hashes to assign to the guardrail
@@ -2178,7 +2178,7 @@ class Guardrails(BaseSDK):
) -> operations.BulkAssignKeysToGuardrailResponse:
r"""Bulk assign keys to a guardrail
Assign multiple API keys to a specific guardrail. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
Assign multiple API keys to a specific guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.
:param id: The unique identifier of the guardrail
:param key_hashes: Array of API key hashes to assign to the guardrail
@@ -2315,7 +2315,7 @@ class Guardrails(BaseSDK):
) -> operations.ListGuardrailMemberAssignmentsResponse:
r"""List member assignments for a guardrail
List all organization member assignments for a specific guardrail. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
List all organization member assignments for a specific guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.
:param id: The unique identifier of the guardrail
:param http_referer: The app identifier should be your app's URL and is used as the primary identifier for rankings.
@@ -2440,7 +2440,7 @@ class Guardrails(BaseSDK):
) -> operations.ListGuardrailMemberAssignmentsResponse:
r"""List member assignments for a guardrail
List all organization member assignments for a specific guardrail. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
List all organization member assignments for a specific guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.
:param id: The unique identifier of the guardrail
:param http_referer: The app identifier should be your app's URL and is used as the primary identifier for rankings.
@@ -2564,7 +2564,7 @@ class Guardrails(BaseSDK):
) -> operations.BulkAssignMembersToGuardrailResponse:
r"""Bulk assign members to a guardrail
Assign multiple organization members to a specific guardrail. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
Assign multiple organization members to a specific guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.
:param id: The unique identifier of the guardrail
:param member_user_ids: Array of member user IDs to assign to the guardrail
@@ -2700,7 +2700,7 @@ class Guardrails(BaseSDK):
) -> operations.BulkAssignMembersToGuardrailResponse:
r"""Bulk assign members to a guardrail
Assign multiple organization members to a specific guardrail. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
Assign multiple organization members to a specific guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.
:param id: The unique identifier of the guardrail
:param member_user_ids: Array of member user IDs to assign to the guardrail
@@ -2836,7 +2836,7 @@ class Guardrails(BaseSDK):
) -> operations.BulkUnassignKeysFromGuardrailResponse:
r"""Bulk unassign keys from a guardrail
Unassign multiple API keys from a specific guardrail. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
Unassign multiple API keys from a specific guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.
:param id: The unique identifier of the guardrail
:param key_hashes: Array of API key hashes to unassign from the guardrail
@@ -2972,7 +2972,7 @@ class Guardrails(BaseSDK):
) -> operations.BulkUnassignKeysFromGuardrailResponse:
r"""Bulk unassign keys from a guardrail
Unassign multiple API keys from a specific guardrail. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
Unassign multiple API keys from a specific guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.
:param id: The unique identifier of the guardrail
:param key_hashes: Array of API key hashes to unassign from the guardrail
@@ -3108,7 +3108,7 @@ class Guardrails(BaseSDK):
) -> operations.BulkUnassignMembersFromGuardrailResponse:
r"""Bulk unassign members from a guardrail
Unassign multiple organization members from a specific guardrail. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
Unassign multiple organization members from a specific guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.
:param id: The unique identifier of the guardrail
:param member_user_ids: Array of member user IDs to unassign from the guardrail
@@ -3244,7 +3244,7 @@ class Guardrails(BaseSDK):
) -> operations.BulkUnassignMembersFromGuardrailResponse:
r"""Bulk unassign members from a guardrail
Unassign multiple organization members from a specific guardrail. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
Unassign multiple organization members from a specific guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.
:param id: The unique identifier of the guardrail
:param member_user_ids: Array of member user IDs to unassign from the guardrail
+13 -3
View File
@@ -137,8 +137,10 @@ class GetCurrentKeyDataTypedDict(TypedDict):
r"""External BYOK usage (in USD) for current UTC month"""
is_free_tier: bool
r"""Whether this is a free tier API key"""
is_management_key: bool
r"""Whether this is a management key"""
is_provisioning_key: bool
r"""Whether this is a provisioning key"""
r"""Whether this is a management key"""
limit_remaining: Nullable[float]
r"""Remaining spending limit in USD"""
limit_reset: Nullable[str]
@@ -187,8 +189,16 @@ class GetCurrentKeyData(BaseModel):
is_free_tier: bool
r"""Whether this is a free tier API key"""
is_provisioning_key: bool
r"""Whether this is a provisioning key"""
is_management_key: bool
r"""Whether this is a management key"""
is_provisioning_key: Annotated[
bool,
pydantic.Field(
deprecated="warning: ** DEPRECATED ** - This will be removed in a future release, please migrate away from it as soon as possible."
),
]
r"""Whether this is a management key"""
limit_remaining: Nullable[float]
r"""Remaining spending limit in USD"""
+14
View File
@@ -93,6 +93,7 @@ class Responses(BaseSDK):
] = None,
user: Optional[str] = None,
session_id: Optional[str] = None,
trace: Optional[Union[components.Trace, components.TraceTypedDict]] = None,
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
@@ -140,6 +141,7 @@ class Responses(BaseSDK):
:param plugins: Plugins you want to enable for this request, including their settings.
:param user: A unique identifier representing your end-user, which helps distinguish between different users of your app. This allows your app to identify specific users in case of abuse reports, preventing your entire app from being affected by the actions of individual users. Maximum of 128 characters.
:param session_id: A unique identifier for grouping related requests (e.g., a conversation or agent workflow) for observability. If provided in both the request body and the x-session-id header, the body value takes precedence. Maximum of 128 characters.
:param trace: Metadata for observability and tracing. Known keys (trace_id, trace_name, span_name, generation_name, parent_span_id) have special handling. Additional keys are passed through as custom metadata to configured broadcast destinations.
: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
@@ -222,6 +224,7 @@ class Responses(BaseSDK):
] = None,
user: Optional[str] = None,
session_id: Optional[str] = None,
trace: Optional[Union[components.Trace, components.TraceTypedDict]] = None,
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
@@ -269,6 +272,7 @@ class Responses(BaseSDK):
:param plugins: Plugins you want to enable for this request, including their settings.
:param user: A unique identifier representing your end-user, which helps distinguish between different users of your app. This allows your app to identify specific users in case of abuse reports, preventing your entire app from being affected by the actions of individual users. Maximum of 128 characters.
:param session_id: A unique identifier for grouping related requests (e.g., a conversation or agent workflow) for observability. If provided in both the request body and the x-session-id header, the body value takes precedence. Maximum of 128 characters.
:param trace: Metadata for observability and tracing. Known keys (trace_id, trace_name, span_name, generation_name, parent_span_id) have special handling. Additional keys are passed through as custom metadata to configured broadcast destinations.
: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
@@ -350,6 +354,7 @@ class Responses(BaseSDK):
] = None,
user: Optional[str] = None,
session_id: Optional[str] = None,
trace: Optional[Union[components.Trace, components.TraceTypedDict]] = None,
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
@@ -397,6 +402,7 @@ class Responses(BaseSDK):
:param plugins: Plugins you want to enable for this request, including their settings.
:param user: A unique identifier representing your end-user, which helps distinguish between different users of your app. This allows your app to identify specific users in case of abuse reports, preventing your entire app from being affected by the actions of individual users. Maximum of 128 characters.
:param session_id: A unique identifier for grouping related requests (e.g., a conversation or agent workflow) for observability. If provided in both the request body and the x-session-id header, the body value takes precedence. Maximum of 128 characters.
:param trace: Metadata for observability and tracing. Known keys (trace_id, trace_name, span_name, generation_name, parent_span_id) have special handling. Additional keys are passed through as custom metadata to configured broadcast destinations.
: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
@@ -466,6 +472,7 @@ class Responses(BaseSDK):
),
user=user,
session_id=session_id,
trace=utils.get_pydantic_model(trace, Optional[components.Trace]),
),
)
@@ -741,6 +748,7 @@ class Responses(BaseSDK):
] = None,
user: Optional[str] = None,
session_id: Optional[str] = None,
trace: Optional[Union[components.Trace, components.TraceTypedDict]] = None,
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
@@ -788,6 +796,7 @@ class Responses(BaseSDK):
:param plugins: Plugins you want to enable for this request, including their settings.
:param user: A unique identifier representing your end-user, which helps distinguish between different users of your app. This allows your app to identify specific users in case of abuse reports, preventing your entire app from being affected by the actions of individual users. Maximum of 128 characters.
:param session_id: A unique identifier for grouping related requests (e.g., a conversation or agent workflow) for observability. If provided in both the request body and the x-session-id header, the body value takes precedence. Maximum of 128 characters.
:param trace: Metadata for observability and tracing. Known keys (trace_id, trace_name, span_name, generation_name, parent_span_id) have special handling. Additional keys are passed through as custom metadata to configured broadcast destinations.
: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
@@ -870,6 +879,7 @@ class Responses(BaseSDK):
] = None,
user: Optional[str] = None,
session_id: Optional[str] = None,
trace: Optional[Union[components.Trace, components.TraceTypedDict]] = None,
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
@@ -917,6 +927,7 @@ class Responses(BaseSDK):
:param plugins: Plugins you want to enable for this request, including their settings.
:param user: A unique identifier representing your end-user, which helps distinguish between different users of your app. This allows your app to identify specific users in case of abuse reports, preventing your entire app from being affected by the actions of individual users. Maximum of 128 characters.
:param session_id: A unique identifier for grouping related requests (e.g., a conversation or agent workflow) for observability. If provided in both the request body and the x-session-id header, the body value takes precedence. Maximum of 128 characters.
:param trace: Metadata for observability and tracing. Known keys (trace_id, trace_name, span_name, generation_name, parent_span_id) have special handling. Additional keys are passed through as custom metadata to configured broadcast destinations.
: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
@@ -998,6 +1009,7 @@ class Responses(BaseSDK):
] = None,
user: Optional[str] = None,
session_id: Optional[str] = None,
trace: Optional[Union[components.Trace, components.TraceTypedDict]] = None,
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
@@ -1045,6 +1057,7 @@ class Responses(BaseSDK):
:param plugins: Plugins you want to enable for this request, including their settings.
:param user: A unique identifier representing your end-user, which helps distinguish between different users of your app. This allows your app to identify specific users in case of abuse reports, preventing your entire app from being affected by the actions of individual users. Maximum of 128 characters.
:param session_id: A unique identifier for grouping related requests (e.g., a conversation or agent workflow) for observability. If provided in both the request body and the x-session-id header, the body value takes precedence. Maximum of 128 characters.
:param trace: Metadata for observability and tracing. Known keys (trace_id, trace_name, span_name, generation_name, parent_span_id) have special handling. Additional keys are passed through as custom metadata to configured broadcast destinations.
: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
@@ -1114,6 +1127,7 @@ class Responses(BaseSDK):
),
user=user,
session_id=session_id,
trace=utils.get_pydantic_model(trace, Optional[components.Trace]),
),
)