diff --git a/.speakeasy/gen.lock b/.speakeasy/gen.lock
index dd69158..b56149c 100644
--- a/.speakeasy/gen.lock
+++ b/.speakeasy/gen.lock
@@ -1,19 +1,19 @@
lockVersion: 2.0.0
id: c48cf606-fb42-4a45-9c23-8f0555307828
management:
- docChecksum: 02b620e2b0d8bdd8549db51aca567f5f
+ docChecksum: b2ef6dae450677f07521afea7e283080
docVersion: 1.0.0
speakeasyVersion: 1.787.0
generationVersion: 2.914.0
- releaseVersion: 0.11.5
- configChecksum: f28e8188849380aa0a7f85e8f7a7b56b
+ releaseVersion: 0.11.6
+ configChecksum: cee05e5b61926388f1b13343d3324556
repoURL: https://github.com/OpenRouterTeam/python-sdk.git
installationURL: https://github.com/OpenRouterTeam/python-sdk.git
published: true
persistentEdits:
- generation_id: e2e043b1-62f4-438f-b245-7cab5d751e0c
- pristine_commit_hash: 8dd3e23eae951172cfc444a51ce8d2d4a6f58c1d
- pristine_tree_hash: cf3fe64dfa8a4412bd45a69bd3fe391c3b4f9b3e
+ generation_id: 1b9e2976-5e47-49bf-808c-135c466df479
+ pristine_commit_hash: 893fb9bbf7f62d287ba9846d1bb62c5d9b977ab2
+ pristine_tree_hash: 1541b6273a8dd9ad55e99f64a898845c555a84b6
features:
python:
acceptHeaders: 3.0.0
@@ -1934,8 +1934,8 @@ trackedFiles:
pristine_git_object: 3c29bc4bd3bdf7037b9c3aa894180b8e4cae6098
docs/components/fusionservertoolconfig.mdx:
id: 87976811b0c3
- last_write_checksum: sha1:dc0f4c3cd6409193662d17304c0dfc2eb28f6efb
- pristine_git_object: 68527081664f78ec050036db30091158a08bd5b6
+ last_write_checksum: sha1:99198fd63b66a6f465c444856fcfb35110f269fb
+ pristine_git_object: ec3ad69133064ba5a6911474a16a974a26963255
docs/components/fusionservertoolconfigeffort.mdx:
id: f5ce0fbc94aa
last_write_checksum: sha1:4ce09a069b4eeae41ac1531027cf97dc4139927f
@@ -6402,8 +6402,8 @@ trackedFiles:
pristine_git_object: 3e38f1a929f7d6b1d6de74604aa87e3d8f010544
pyproject.toml:
id: 5d07e7d72637
- last_write_checksum: sha1:357cd9edeb39cbbbf958df143408cf75b672cb77
- pristine_git_object: 042b3b370f33071d6b8b72919698f4c426d532d6
+ last_write_checksum: sha1:3e14cbf5ff3840151bd6c7af58d44d62d4595384
+ pristine_git_object: 501f0c59631a591f0359664dd63643e9f2f27553
scripts/prepare_readme.py:
id: e0c5957a6035
last_write_checksum: sha1:77f44b60b98bc126557ec27391f91dfba764bb54
@@ -6430,8 +6430,8 @@ trackedFiles:
pristine_git_object: 86713cfea633e09d33b3d4e65281071fe20e6137
src/openrouter/_version.py:
id: d8d15ad6c586
- last_write_checksum: sha1:23b5383ef6d4c88095f0bd2ffce66cdd0dad13e4
- pristine_git_object: a9687477f7ab9961c862a708ec091f94182db944
+ last_write_checksum: sha1:227debe496eb6e581977ca65e0029cc6c638b46d
+ pristine_git_object: e8f04f546a8475289bce1c52654f0a09402a2dec
src/openrouter/analytics.py:
id: cb406b5aaabb
last_write_checksum: sha1:9e709b71dd0611056dc0cec6150b578defe32841
@@ -7326,8 +7326,8 @@ trackedFiles:
pristine_git_object: 0015e263bbb2d817af89780610cc8f25ff852e73
src/openrouter/components/fusionservertoolconfig.py:
id: 0d1d229c531f
- last_write_checksum: sha1:c5575780c1be8d9c66c13298d00a93ff004d386a
- pristine_git_object: 5803dc6d2b2c74d2b7270233aef9d90524dd8d53
+ last_write_checksum: sha1:df3f862acbedb4f4b3ed8b3e35f04fdf804b943f
+ pristine_git_object: e89fc6db28423e964f76e352ec20aa78763a8649
src/openrouter/components/fusionsource.py:
id: ce20a4a9f32f
last_write_checksum: sha1:2141dd1dd9396035bf8070878c9ec945331514c8
@@ -10706,6 +10706,3 @@ examples:
"500":
application/json: {"error": {"code": 500, "message": "Internal Server Error"}}
examplesVersion: 1.0.2
-releaseNotes: |
- ## Python SDK Changes:
- * `open_router.models.list()`: `request` **Changed**
diff --git a/.speakeasy/gen.yaml b/.speakeasy/gen.yaml
index 0ffe5f7..0cfd9cb 100644
--- a/.speakeasy/gen.yaml
+++ b/.speakeasy/gen.yaml
@@ -36,7 +36,7 @@ generation:
documentation: mintlify
preApplyUnionDiscriminators: true
python:
- version: 0.11.5
+ version: 0.11.6
additionalDependencies:
dev: {}
main: {}
diff --git a/.speakeasy/out.openapi.yaml b/.speakeasy/out.openapi.yaml
index a7062da..58e804a 100644
--- a/.speakeasy/out.openapi.yaml
+++ b/.speakeasy/out.openapi.yaml
@@ -8313,7 +8313,7 @@ components:
$ref: '#/components/schemas/AnthropicCacheControlDirective'
max_completion_tokens:
description: >-
- Maximum number of output tokens (including reasoning tokens) each panelist and the judge model may produce per inner call. Controls the total output budget so reasoning-heavy models like GPT-5.5 do not exhaust their token allowance before producing visible text. When omitted, the provider's default applies.
+ Maximum number of output tokens (including reasoning tokens) each panelist and the judge model may produce per inner call. Controls the total output budget so reasoning-heavy models like GPT-5.5 do not exhaust their token allowance before producing visible text. When omitted, panelists default to 32000 and the judge to 50000.
example: 16384
type: integer
max_tool_calls:
diff --git a/.speakeasy/workflow.lock b/.speakeasy/workflow.lock
index f85efa0..8b36336 100644
--- a/.speakeasy/workflow.lock
+++ b/.speakeasy/workflow.lock
@@ -2,8 +2,8 @@ speakeasyVersion: 1.787.0
sources:
OpenRouter API:
sourceNamespace: open-router-chat-completions-api
- sourceRevisionDigest: sha256:aba0fa7083fc84520a6b33a28d83672fe37eaa65e185f219182d1c9a6d399fbf
- sourceBlobDigest: sha256:00a46b5dabf8ed3c27462f8c598ec592f277efd014c855e45e76c3bde1910cf0
+ sourceRevisionDigest: sha256:ae3b03ac140c2789ef39eddcb297b78e78540441ed22c9f4854e3fa75a6f391b
+ sourceBlobDigest: sha256:b6b2fd9a8e068d5e601bb5cae1e24b882a449f5f5147e5970e9dcbb0e47527cf
tags:
- latest
- 1.0.0
@@ -11,10 +11,10 @@ targets:
open-router:
source: OpenRouter API
sourceNamespace: open-router-chat-completions-api
- sourceRevisionDigest: sha256:aba0fa7083fc84520a6b33a28d83672fe37eaa65e185f219182d1c9a6d399fbf
- sourceBlobDigest: sha256:00a46b5dabf8ed3c27462f8c598ec592f277efd014c855e45e76c3bde1910cf0
+ sourceRevisionDigest: sha256:ae3b03ac140c2789ef39eddcb297b78e78540441ed22c9f4854e3fa75a6f391b
+ sourceBlobDigest: sha256:b6b2fd9a8e068d5e601bb5cae1e24b882a449f5f5147e5970e9dcbb0e47527cf
codeSamplesNamespace: open-router-python-code-samples
- codeSamplesRevisionDigest: sha256:abe985d8f0f446be27118dc7f14238c90bdbd3d5e5810729a114378554d481b5
+ codeSamplesRevisionDigest: sha256:f296de4382641a2b6396f017c634185759e79bf0de91ab45e1b843bd5c609353
workflow:
workflowVersion: 1.0.0
speakeasyVersion: 1.787.0
diff --git a/RELEASES.md b/RELEASES.md
index d3d9d46..60ce0fe 100644
--- a/RELEASES.md
+++ b/RELEASES.md
@@ -158,4 +158,14 @@ Based on:
### Generated
- [python v0.11.5] .
### Releases
-- [PyPI v0.11.5] https://pypi.org/project/openrouter/0.11.5 - .
\ No newline at end of file
+- [PyPI v0.11.5] https://pypi.org/project/openrouter/0.11.5 - .
+
+## 2026-07-07 19:09:09
+### Changes
+Based on:
+- OpenAPI Doc
+- Speakeasy CLI 1.787.0 (2.914.0) https://github.com/speakeasy-api/speakeasy
+### Generated
+- [python v0.11.6] .
+### Releases
+- [PyPI v0.11.6] https://pypi.org/project/openrouter/0.11.6 - .
\ No newline at end of file
diff --git a/docs/components/fusionservertoolconfig.mdx b/docs/components/fusionservertoolconfig.mdx
index 6852708..ec3ad69 100644
--- a/docs/components/fusionservertoolconfig.mdx
+++ b/docs/components/fusionservertoolconfig.mdx
@@ -11,7 +11,7 @@ Configuration for the openrouter:fusion server tool.
| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `analysis_models` | List[*str*] | :heavy_minus_sign: | Slugs of models to run in parallel as the analysis panel. Each model receives the user prompt with openrouter:web_search and openrouter:web_fetch enabled, then a judge model summarizes the collective output into structured analysis JSON. Capped at 8 models to bound cost amplification. Defaults to the Quality preset from /labs/fusion. | [
"~anthropic/claude-opus-latest",
"~openai/gpt-latest",
"~google/gemini-pro-latest"
] |
| `cache_control` | [Optional[components.AnthropicCacheControlDirective]](../components/anthropiccachecontroldirective.mdx) | :heavy_minus_sign: | Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. Currently supported for Anthropic Claude models. | \{
"type": "ephemeral"
} |
-| `max_completion_tokens` | *Optional[int]* | :heavy_minus_sign: | Maximum number of output tokens (including reasoning tokens) each panelist and the judge model may produce per inner call. Controls the total output budget so reasoning-heavy models like GPT-5.5 do not exhaust their token allowance before producing visible text. When omitted, the provider's default applies. | 16384 |
+| `max_completion_tokens` | *Optional[int]* | :heavy_minus_sign: | Maximum number of output tokens (including reasoning tokens) each panelist and the judge model may produce per inner call. Controls the total output budget so reasoning-heavy models like GPT-5.5 do not exhaust their token allowance before producing visible text. When omitted, panelists default to 32000 and the judge to 50000. | 16384 |
| `max_tool_calls` | *Optional[int]* | :heavy_minus_sign: | Maximum number of tool-calling steps each panelist (analysis model) and the judge model may take during their agentic web-research loop. Models with web_search/web_fetch enabled iterate until they produce a text response or hit this ceiling. Defaults to 8. Capped at 16. | 12 |
| `model` | *Optional[str]* | :heavy_minus_sign: | Slug of the judge model that produces the structured analysis JSON. Defaults to the model used in the outer API request. | ~anthropic/claude-opus-latest |
| `reasoning` | [Optional[components.FusionServerToolConfigReasoning]](../components/fusionservertoolconfigreasoning.mdx) | :heavy_minus_sign: | Reasoning configuration forwarded to panelist and judge inner calls. Use this to control reasoning effort and token budget for models that support extended thinking. | |
diff --git a/pyproject.toml b/pyproject.toml
index 042b3b3..501f0c5 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -1,6 +1,6 @@
[project]
name = "openrouter"
-version = "0.11.5"
+version = "0.11.6"
description = "Official Python Client SDK for OpenRouter."
authors = [{ name = "OpenRouter" },]
readme = "README-PYPI.md"
diff --git a/src/openrouter/_version.py b/src/openrouter/_version.py
index a968747..e8f04f5 100644
--- a/src/openrouter/_version.py
+++ b/src/openrouter/_version.py
@@ -3,10 +3,10 @@
import importlib.metadata
__title__: str = "openrouter"
-__version__: str = "0.11.5"
+__version__: str = "0.11.6"
__openapi_doc_version__: str = "1.0.0"
__gen_version__: str = "2.914.0"
-__user_agent__: str = "speakeasy-sdk/python 0.11.5 2.914.0 1.0.0 openrouter"
+__user_agent__: str = "speakeasy-sdk/python 0.11.6 2.914.0 1.0.0 openrouter"
try:
if __package__ is not None:
diff --git a/src/openrouter/components/fusionservertoolconfig.py b/src/openrouter/components/fusionservertoolconfig.py
index 5803dc6..e89fc6d 100644
--- a/src/openrouter/components/fusionservertoolconfig.py
+++ b/src/openrouter/components/fusionservertoolconfig.py
@@ -100,7 +100,7 @@ class FusionServerToolConfigTypedDict(TypedDict):
cache_control: NotRequired[AnthropicCacheControlDirectiveTypedDict]
r"""Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. Currently supported for Anthropic Claude models."""
max_completion_tokens: NotRequired[int]
- r"""Maximum number of output tokens (including reasoning tokens) each panelist and the judge model may produce per inner call. Controls the total output budget so reasoning-heavy models like GPT-5.5 do not exhaust their token allowance before producing visible text. When omitted, the provider's default applies."""
+ r"""Maximum number of output tokens (including reasoning tokens) each panelist and the judge model may produce per inner call. Controls the total output budget so reasoning-heavy models like GPT-5.5 do not exhaust their token allowance before producing visible text. When omitted, panelists default to 32000 and the judge to 50000."""
max_tool_calls: NotRequired[int]
r"""Maximum number of tool-calling steps each panelist (analysis model) and the judge model may take during their agentic web-research loop. Models with web_search/web_fetch enabled iterate until they produce a text response or hit this ceiling. Defaults to 8. Capped at 16."""
model: NotRequired[str]
@@ -123,7 +123,7 @@ class FusionServerToolConfig(BaseModel):
r"""Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. Currently supported for Anthropic Claude models."""
max_completion_tokens: Optional[int] = None
- r"""Maximum number of output tokens (including reasoning tokens) each panelist and the judge model may produce per inner call. Controls the total output budget so reasoning-heavy models like GPT-5.5 do not exhaust their token allowance before producing visible text. When omitted, the provider's default applies."""
+ r"""Maximum number of output tokens (including reasoning tokens) each panelist and the judge model may produce per inner call. Controls the total output budget so reasoning-heavy models like GPT-5.5 do not exhaust their token allowance before producing visible text. When omitted, panelists default to 32000 and the judge to 50000."""
max_tool_calls: Optional[int] = None
r"""Maximum number of tool-calling steps each panelist (analysis model) and the judge model may take during their agentic web-research loop. Models with web_search/web_fetch enabled iterate until they produce a text response or hit this ceiling. Defaults to 8. Capped at 16."""
diff --git a/uv.lock b/uv.lock
index 7bb25ab..2e847f0 100644
--- a/uv.lock
+++ b/uv.lock
@@ -213,7 +213,7 @@ wheels = [
[[package]]
name = "openrouter"
-version = "0.11.5"
+version = "0.11.6"
source = { editable = "." }
dependencies = [
{ name = "httpcore" },