Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 10 additions & 11 deletions .speakeasy/gen.lock
Original file line number Diff line number Diff line change
@@ -1,19 +1,19 @@
lockVersion: 2.0.0
id: c48cf606-fb42-4a45-9c23-8f0555307828
management:
docChecksum: 0563d6db7704a27f3b7a3beff8e602b3
docChecksum: b8ef8e6acc081583a4b4b5280d5bc66a
docVersion: 1.0.0
speakeasyVersion: 1.787.0
generationVersion: 2.914.0
releaseVersion: 1.2.6
configChecksum: 05ae5cc8c6d5b877a33c4e2e32c287e9
releaseVersion: 1.2.7
configChecksum: aa1b9118eec5df8f4c5665a1e53972cd
repoURL: https://github.com/OpenRouterTeam/python-sdk.git
installationURL: https://github.com/OpenRouterTeam/python-sdk.git
published: true
persistentEdits:
generation_id: cd46820e-de2a-481a-8817-f7dc33080f11
pristine_commit_hash: 5355199f997528a92ceb1f3f42c4397c90c9c430
pristine_tree_hash: 88a204ba1ded098bf077de095915e0893d2a3a08
generation_id: bca11b04-b80d-49be-a6bd-00fc34f50538
pristine_commit_hash: c713a8d5543ed7cc25eb572945a4a4c5ea574510
pristine_tree_hash: ec331e7667fa75e32ef857f3c3ad74172c54ce23
features:
python:
acceptHeaders: 3.0.0
Expand Down Expand Up @@ -8163,8 +8163,8 @@ trackedFiles:
pristine_git_object: 3e38f1a929f7d6b1d6de74604aa87e3d8f010544
pyproject.toml:
id: 5d07e7d72637
last_write_checksum: sha1:7d46ef8090d156637d78acb4572fce19c2dfca3a
pristine_git_object: 3a5ee39e26552427fbfee31d044fa1a2403e9bb9
last_write_checksum: sha1:b9b202e55e8f133fe617f5a90f83911d10664e1e
pristine_git_object: 11ae0f2796eb8bb374a0e12ab2cbcb284f6a1c34
scripts/prepare_readme.py:
id: e0c5957a6035
last_write_checksum: sha1:77f44b60b98bc126557ec27391f91dfba764bb54
Expand All @@ -8191,8 +8191,8 @@ trackedFiles:
pristine_git_object: 86713cfea633e09d33b3d4e65281071fe20e6137
src/openrouter/_version.py:
id: d8d15ad6c586
last_write_checksum: sha1:3ab3cae82bacc5b29e795e4ae0476e3a305fa10f
pristine_git_object: 5c8bfcc8c2dba49f06b2d7e2c5cb57787224c2f1
last_write_checksum: sha1:f80f256266c26716757ffd8846abb566c67c9557
pristine_git_object: 9e7f35935b8f44c86d1f2c350d6179a3b5bdfe58
src/openrouter/alpha.py:
id: 306c4d93308d
last_write_checksum: sha1:0c25a52ed5fb688ec1e923e4e82bcfc9cae49465
Expand Down Expand Up @@ -14955,4 +14955,3 @@ examples:
"502":
application/json: {"error": {"code": 409, "message": "That question is no longer waiting for an answer."}}
examplesVersion: 1.0.2
releaseNotes: "## Python SDK Changes:\n* `open_router.byok.update()`: `error.status[403]` **Added**\n* `open_router.interns.list_interns()`: \n * `request.starting_after` **Added**\n * `response.next_cursor` **Added**\n"
2 changes: 1 addition & 1 deletion .speakeasy/gen.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ generation:
documentation: mintlify
preApplyUnionDiscriminators: true
python:
version: 1.2.6
version: 1.2.7
additionalDependencies:
dev: {}
main: {}
Expand Down
203 changes: 203 additions & 0 deletions .speakeasy/out.openapi.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -43314,6 +43314,209 @@ paths:
- $ref: "#/components/parameters/AppIdentifier"
- $ref: "#/components/parameters/AppDisplayName"
- $ref: "#/components/parameters/AppCategories"
/systemone:
post:
description: 'TypeSafe SDK compatible alias for `POST /api/alpha/decisions`. Accepts the same request body and returns the same response. Bare TypeSafe model IDs such as `jev-1.13` and `jev-latest` are mapped onto the `typesafe/` namespace.'
operationId: 'createSystemone'
requestBody:
content:
application/json:
example:
model: 'typesafe/jev-1.13'
questions:
is_bug:
criteria:
'false': 'The customer is asking a question or requesting a feature.'
'true': 'The customer describes broken or unexpected product behavior.'
instructions: 'Is the customer reporting a software defect?'
type: 'noul'
team:
criteria:
account: 'Login, permissions, or profile issues.'
frontend: 'Rendering, layout, or browser compatibility issues.'
payments: 'Checkout, billing, or payment processing issues.'
instructions: 'Which team should own this ticket?'
type: 'choice'
urgency:
criteria:
- 'Can wait for the next release'
- 'Should be fixed this week'
- 'Blocking revenue right now'
instructions: 'How urgent is this ticket?'
type: 'score'
state:
customer_tier: 'enterprise'
ticket: 'My checkout page shows a blank screen after I click Pay. I have tried two browsers.'
schema:
$ref: '#/components/schemas/DecisionsRequest'
required: true
responses:
'200':
content:
application/json:
example:
answers:
is_bug:
noul: 0.96
type: 'noul'
team:
choice: 'payments'
confidence: 0.75
probabilities:
account: 0
frontend: 0.16
payments: 0.84
type: 'choice'
urgency:
confidence: 0.99
legend:
'0': 'Can wait for the next release'
'1': 'Should be fixed this week'
'2': 'Blocking revenue right now'
probabilities:
'0': 0
'1': 0.01
'2': 0.99
score: 1.99
type: 'score'
id: 'gen-dec-1789738314-X5e5eKGQdvR9rblyX250'
model: 'typesafe/jev-1.13-20260917'
provider: 'TypeSafe'
usage:
cost: 0.000019992
input_tokens: 476
output_tokens: 70
schema:
$ref: '#/components/schemas/DecisionsResponse'
description: 'Decisions response'
'400':
content:
application/json:
example:
error:
code: 400
message: 'Invalid request parameters'
schema:
$ref: '#/components/schemas/BadRequestResponse'
description: 'Bad Request - Invalid request parameters or malformed input'
'401':
content:
application/json:
example:
error:
code: 401
message: 'Missing Authentication header'
schema:
$ref: '#/components/schemas/UnauthorizedResponse'
description: 'Unauthorized - Authentication required or invalid credentials'
'402':
content:
application/json:
example:
error:
code: 402
message: 'Insufficient credits. Add more using https://openrouter.ai/credits'
schema:
$ref: '#/components/schemas/PaymentRequiredResponse'
description: 'Payment Required - Insufficient credits or quota to complete request'
'403':
content:
application/json:
example:
error:
code: 403
message: 'Only management keys can perform this operation'
schema:
$ref: '#/components/schemas/ForbiddenResponse'
description: 'Forbidden - Authentication successful but insufficient permissions'
'404':
content:
application/json:
example:
error:
code: 404
message: 'Resource not found'
schema:
$ref: '#/components/schemas/NotFoundResponse'
description: 'Not Found - Resource does not exist'
'413':
content:
application/json:
example:
error:
code: 413
message: 'Request payload too large'
schema:
$ref: '#/components/schemas/PayloadTooLargeResponse'
description: 'Payload Too Large - Request payload exceeds size limits'
'429':
content:
application/json:
example:
error:
code: 429
message: 'Rate limit exceeded'
schema:
$ref: '#/components/schemas/TooManyRequestsResponse'
description: 'Too Many Requests - Rate limit exceeded'
'500':
content:
application/json:
example:
error:
code: 500
message: 'Internal Server Error'
schema:
$ref: '#/components/schemas/InternalServerResponse'
description: 'Internal Server Error - Unexpected server error'
'502':
content:
application/json:
example:
error:
code: 502
message: 'Provider returned error'
schema:
$ref: '#/components/schemas/BadGatewayResponse'
description: 'Bad Gateway - Provider/upstream API failure'
'503':
content:
application/json:
example:
error:
code: 503
message: 'Service temporarily unavailable'
schema:
$ref: '#/components/schemas/ServiceUnavailableResponse'
description: 'Service Unavailable - Service temporarily unavailable'
'524':
content:
application/json:
example:
error:
code: 524
message: 'Request timed out. Please try again later.'
schema:
$ref: '#/components/schemas/EdgeNetworkTimeoutResponse'
description: 'Infrastructure Timeout - Provider request timed out at edge network'
'529':
content:
application/json:
example:
error:
code: 529
message: 'Provider returned error'
schema:
$ref: '#/components/schemas/ProviderOverloadedResponse'
description: 'Provider Overloaded - Provider is temporarily overloaded'
summary: 'Submit a System One request (TypeSafe SDK compatible alias)'
tags:
- 'alpha.decisions'
x-speakeasy-ignore: true
parameters:
- $ref: "#/components/parameters/AppIdentifier"
- $ref: "#/components/parameters/AppDisplayName"
- $ref: "#/components/parameters/AppCategories"
/vault/interns/{internId}/secrets:
get:
description: 'Lists secret metadata stored for one intern. Responses contain names, bound hosts, fingerprints and creation times, never secret values. Results are ordered by name and paginated with `limit` and `offset`. The scope is selected by the API key: workspace routes act on the key''s active workspace and intern routes act on one intern inside that workspace. There is no default workspace and no fallback to another scope. Every vault route, including reads, requires access to the Intern API programme and returns 404 outside it. Requests on regional hostnames such as `eu.openrouter.ai` are refused. [API key](/docs/api-reference/authentication) required.'
Expand Down
10 changes: 5 additions & 5 deletions .speakeasy/workflow.lock
Original file line number Diff line number Diff line change
Expand Up @@ -2,19 +2,19 @@ speakeasyVersion: 1.787.0
sources:
OpenRouter API:
sourceNamespace: open-router-chat-completions-api
sourceRevisionDigest: sha256:c66839243c891c6f582939dd68bc390fd56629095966346707bd300524c73e39
sourceBlobDigest: sha256:0b66f3175e7b0f14ae3b22216c39295715cfd827ce73f569c2d4b012c4b91418
sourceRevisionDigest: sha256:a6fb2582d267b7a3ea83cae1439a32e175a0f65079851685be4ad94d684f4689
sourceBlobDigest: sha256:b48edb241b574a295970dc9757ce399f317bdb84a4932b017a60cbe5969a6801
tags:
- latest
- 1.0.0
targets:
open-router:
source: OpenRouter API
sourceNamespace: open-router-chat-completions-api
sourceRevisionDigest: sha256:c66839243c891c6f582939dd68bc390fd56629095966346707bd300524c73e39
sourceBlobDigest: sha256:0b66f3175e7b0f14ae3b22216c39295715cfd827ce73f569c2d4b012c4b91418
sourceRevisionDigest: sha256:a6fb2582d267b7a3ea83cae1439a32e175a0f65079851685be4ad94d684f4689
sourceBlobDigest: sha256:b48edb241b574a295970dc9757ce399f317bdb84a4932b017a60cbe5969a6801
codeSamplesNamespace: open-router-python-code-samples
codeSamplesRevisionDigest: sha256:aa75ffe5aa1ebe652c8f1cf14a4813b6794989325e6798be7517cfcbdb81693f
codeSamplesRevisionDigest: sha256:5ec445fcf3f7f6272d47694eeb88a4f2b90932843ec515d063c28b56df1c5ef9
workflow:
workflowVersion: 1.0.0
speakeasyVersion: 1.787.0
Expand Down
12 changes: 11 additions & 1 deletion RELEASES.md
Original file line number Diff line number Diff line change
Expand Up @@ -2469,4 +2469,14 @@ Based on:
### Generated
- [python v1.2.6] .
### Releases
- [PyPI v1.2.6] https://pypi.org/project/openrouter/1.2.6 - .
- [PyPI v1.2.6] https://pypi.org/project/openrouter/1.2.6 - .

## 2026-09-20 03:30:36
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.787.0 (2.914.0) https://github.com/speakeasy-api/speakeasy
### Generated
- [python v1.2.7] .
### Releases
- [PyPI v1.2.7] https://pypi.org/project/openrouter/1.2.7 - .
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[project]
name = "openrouter"
version = "1.2.6"
version = "1.2.7"
description = "Official Python Client SDK for OpenRouter."
authors = [{ name = "OpenRouter" },]
readme = "README-PYPI.md"
Expand Down
4 changes: 2 additions & 2 deletions src/openrouter/_version.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,10 @@
import importlib.metadata

__title__: str = "openrouter"
__version__: str = "1.2.6"
__version__: str = "1.2.7"
__openapi_doc_version__: str = "1.0.0"
__gen_version__: str = "2.914.0"
__user_agent__: str = "speakeasy-sdk/python 1.2.6 2.914.0 1.0.0 openrouter"
__user_agent__: str = "speakeasy-sdk/python 1.2.7 2.914.0 1.0.0 openrouter"

try:
if __package__ is not None:
Expand Down
2 changes: 1 addition & 1 deletion uv.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading