From 540df1a65fdacb9388db3cc11e28594e74e6e58a Mon Sep 17 00:00:00 2001 From: speakeasybot Date: Tue, 1 Sep 2026 00:03:18 +0000 Subject: [PATCH 1/2] ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.787.0 --- .speakeasy/gen.lock | 53 ++++++++++---------- .speakeasy/gen.yaml | 2 +- .speakeasy/out.openapi.yaml | 14 +++--- .speakeasy/workflow.lock | 10 ++-- RELEASES.md | 12 ++++- docs/operations/getmodelsrequest.mdx | 2 +- docs/operations/listmodelscountrequest.mdx | 12 ++--- docs/operations/listmodelsuserrequest.mdx | 16 +++--- docs/sdks/models/README.mdx | 38 +++++++------- pyproject.toml | 2 +- src/openrouter/_version.py | 4 +- src/openrouter/models_.py | 16 +++--- src/openrouter/operations/getmodels.py | 4 +- src/openrouter/operations/listmodelscount.py | 4 +- src/openrouter/operations/listmodelsuser.py | 4 +- uv.lock | 2 +- 16 files changed, 102 insertions(+), 93 deletions(-) diff --git a/.speakeasy/gen.lock b/.speakeasy/gen.lock index 9aad64c0..b9228b68 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: f7ac6c47012b12942c4c92871db8d36a + docChecksum: c1f2d60eed7113249b0f829e5fc2bd03 docVersion: 1.0.0 speakeasyVersion: 1.787.0 generationVersion: 2.914.0 - releaseVersion: 1.1.106 - configChecksum: eea44f61e45cacb05d622ddd6083b459 + releaseVersion: 1.1.107 + configChecksum: 232fc9d45fd4cf93406edb1411316d1e repoURL: https://github.com/OpenRouterTeam/python-sdk.git installationURL: https://github.com/OpenRouterTeam/python-sdk.git published: true persistentEdits: - generation_id: a64922e4-96fd-4dce-912e-d9564077d3f8 - pristine_commit_hash: 5ee4c12760bdf06051fcb93e842fc232545c5397 - pristine_tree_hash: 055baf8508e722b1f33f70b6b650283ac61f8b9d + generation_id: 1ae76d6d-7232-43d8-94c4-17052a779dda + pristine_commit_hash: a707e3bc34d7fc33344ed915721b63a49e5d28aa + pristine_tree_hash: 5226c982e2bacb889a0e9ddfa8aabca4d2f1776a features: python: acceptHeaders: 3.0.0 @@ -6526,8 +6526,8 @@ trackedFiles: pristine_git_object: e6beafcf11154033e2951ae58103041a2af946b9 docs/operations/getmodelsrequest.mdx: id: b2627beb1959 - last_write_checksum: sha1:18c1f846a4cb093f4d2ebadb29ae1b96b057e7b4 - pristine_git_object: 714605e0b103ec382450459b6933d4e1d04d04ca + last_write_checksum: sha1:84a844c010cabf841713b39ef2cbd2373e493e46 + pristine_git_object: 2b88459a0d639e8fede6741e30e0b5058edc0230 docs/operations/getmodelsresponse.mdx: id: acfd4707ddde last_write_checksum: sha1:0c0fb343b7965a76cc790355b7f43d1f52f13e89 @@ -6838,16 +6838,16 @@ trackedFiles: pristine_git_object: 0daab751f0e30b136ffdd342831b3fc0cba5aae1 docs/operations/listmodelscountrequest.mdx: id: 8cc6953df79a - last_write_checksum: sha1:0cb72611fd3af9192c6f9ace893cf03f1c38a421 - pristine_git_object: 7791b12fbcf1bddfda2449a0396be5afef0ca674 + last_write_checksum: sha1:dfef7f8c746b046f44d4f7ce310233d817dc6641 + pristine_git_object: e97bb8afc04a465f018bf71fa8b2c221713804da docs/operations/listmodelsuserglobals.mdx: id: 199f6a8dda42 last_write_checksum: sha1:4d1918ce9fa370cf27f0de2ad725033dcc5beab8 pristine_git_object: f0a800135df0c6e4799128a4fbc901c576c8c6ce docs/operations/listmodelsuserrequest.mdx: id: 01537864056e - last_write_checksum: sha1:fe26690258f59a6c3659838734f2b63965159c16 - pristine_git_object: b0cc0a75f1476c2abc9f14e2053a27fb1db46d68 + last_write_checksum: sha1:d977e2ae651f59b636911e6fc0c9b2cd5c90e149 + pristine_git_object: 047eaf5ae3ff92bc3a5e93141f9cd45c2055c812 docs/operations/listmodelsuserresponse.mdx: id: 34f7a1648ceb last_write_checksum: sha1:bf1ee4a9b2ad707ff1c39ea8680e72e5d0c27b9a @@ -7346,8 +7346,8 @@ trackedFiles: pristine_git_object: 6ee346c73844495c95009346a1242ed6f37d58b5 docs/sdks/models/README.mdx: id: 58f1ca464e0b - last_write_checksum: sha1:1fb21d0d43aaa689a1773ae66e277abcf3e2dbd3 - pristine_git_object: c23025f4fcf605d83b7ba9abb839e88a173fe3ff + last_write_checksum: sha1:e52eb8f94799aec2499f70e99ca46acedfe17ec9 + pristine_git_object: 704be1ed3f77b0ee75b738939864833e1cb52a2e docs/sdks/oauth/README.mdx: id: 42b5079343d2 last_write_checksum: sha1:96e141747d42bc814cafc4c3508760554a9bf410 @@ -7402,8 +7402,8 @@ trackedFiles: pristine_git_object: 3e38f1a929f7d6b1d6de74604aa87e3d8f010544 pyproject.toml: id: 5d07e7d72637 - last_write_checksum: sha1:431e41c2b66c881948b4b30afe1ad76c14a4a1aa - pristine_git_object: 9922ec2e38a375f5704e010df470bafe7cc6e6aa + last_write_checksum: sha1:5183913ccc38fe502032fb3a8ddbee0b04008766 + pristine_git_object: 347e295a033bfbaa7a5815e631e0aa8c4af56228 scripts/prepare_readme.py: id: e0c5957a6035 last_write_checksum: sha1:77f44b60b98bc126557ec27391f91dfba764bb54 @@ -7430,8 +7430,8 @@ trackedFiles: pristine_git_object: 86713cfea633e09d33b3d4e65281071fe20e6137 src/openrouter/_version.py: id: d8d15ad6c586 - last_write_checksum: sha1:d84223a347439c0e2f2037c67474099aa4bac60a - pristine_git_object: 38645aefa489300d1ff5383a41c1f98828206941 + last_write_checksum: sha1:482494cd3cffec58b42093c7ea7474a17d9473af + pristine_git_object: 66f547c50e336bcf7055324ab17ab7ae2946dc27 src/openrouter/analytics.py: id: cb406b5aaabb last_write_checksum: sha1:1e0004d8d1d5d797e2b54cd1cabeb7f9489d08e9 @@ -10082,8 +10082,8 @@ trackedFiles: pristine_git_object: 5b741456655ff48919d17ffd552a6410f0587966 src/openrouter/models_.py: id: 4e1ae1fe5b98 - last_write_checksum: sha1:fa6b119034b3695e9ee6260445f1ec2ee3220015 - pristine_git_object: f0c6429a86afd1fe013547737bebc22daf5d5cc9 + last_write_checksum: sha1:f09eb8fefc61997135aa610cb7c751fdaab407e9 + pristine_git_object: b4576cd59564f3ea17fd4cba053913c13b8f3d70 src/openrouter/oauth.py: id: 1948ce27255b last_write_checksum: sha1:32e42219a709e449c5cc418d535a9900ae6fd0c8 @@ -10286,8 +10286,8 @@ trackedFiles: pristine_git_object: d5a47b01285b12f05d46240e253a934be63f0a00 src/openrouter/operations/getmodels.py: id: 5bd5dfcb0125 - last_write_checksum: sha1:5c8f329fc74a968e550c2896b5c6226ffeab14e5 - pristine_git_object: f8f4dc8bf0e95d77eb9c1312d8513c98c3404ec1 + last_write_checksum: sha1:e03b151faca3884086009a273cf1572b7269b29f + pristine_git_object: 354655a9d492e9c1c07c7bff9d5ad325ec5b0640 src/openrouter/operations/getobservabilitydestination.py: id: 15b49f22aca9 last_write_checksum: sha1:351b050b646c9e2dbffaf27633cbd38b30047169 @@ -10394,12 +10394,12 @@ trackedFiles: pristine_git_object: 4ccc06b53c5f45c9fa99dc29623e5b442ed39462 src/openrouter/operations/listmodelscount.py: id: d588d81b71c2 - last_write_checksum: sha1:359fe33759ae50d8180ab793a32b42045a28e3af - pristine_git_object: 797af26e7d4985305600eb79b3ede8e78379d13a + last_write_checksum: sha1:8403d42afbd9e33acb0cbf0671cd2248b2a93fb0 + pristine_git_object: 81e2dcd96d43cd0422a05fef8669697fdeea03fd src/openrouter/operations/listmodelsuser.py: id: 16eb5946cf60 - last_write_checksum: sha1:701d966be65bd4fbfba54c107aa24b4ae554875c - pristine_git_object: 614eed41948fb478762db3846d82a08f0709e5cd + last_write_checksum: sha1:7cdc18f6096cadeb9fe60e9eec6fdf03fc5b511b + pristine_git_object: 78a9304b8224bad72de2143aa4dd3d52e6604cc1 src/openrouter/operations/listobservabilitydestinations.py: id: 40d2ffa975ee last_write_checksum: sha1:81c37a18a7326ddbe95a22d2f43a178cd6a58a93 @@ -12477,4 +12477,3 @@ examples: "503": application/json: {"error": {"code": 503, "message": "Service temporarily unavailable"}} examplesVersion: 1.0.2 -releaseNotes: "## Python SDK Changes:\n* `open_router.presets.create_presets_responses()`: \n * `request.input.union(Array<>)[].union(OutputCustomToolCallItem).status` **Added**\n* `open_router.responses.send()`: \n * `request.input.union(Array<>)[].union(OutputCustomToolCallItem).status` **Added**\n * `response` **Changed**\n* `open_router.beta.responses.send()`: \n * `request.input.union(Array<>)[].union(OutputCustomToolCallItem).status` **Added**\n * `response` **Changed**\n" diff --git a/.speakeasy/gen.yaml b/.speakeasy/gen.yaml index 3e8a186d..434e5513 100644 --- a/.speakeasy/gen.yaml +++ b/.speakeasy/gen.yaml @@ -36,7 +36,7 @@ generation: documentation: mintlify preApplyUnionDiscriminators: true python: - version: 1.1.106 + version: 1.1.107 additionalDependencies: dev: {} main: {} diff --git a/.speakeasy/out.openapi.yaml b/.speakeasy/out.openapi.yaml index dc37efae..bbbe8da3 100644 --- a/.speakeasy/out.openapi.yaml +++ b/.speakeasy/out.openapi.yaml @@ -35526,12 +35526,12 @@ paths: description: 'Filter models by supported parameter (comma-separated)' example: 'temperature' type: 'string' - - description: 'Filter models by output modality. Accepts a comma-separated list of modalities (text, image, audio, embeddings) or "all" to include all models. Defaults to "text".' + - description: 'Filter models by output modality. Accepts a comma-separated list of modalities (text, image, embeddings, audio, video, rerank, speech, transcription) or "all" to include all models. Defaults to "text".' in: 'query' name: 'output_modalities' required: false schema: - description: 'Filter models by output modality. Accepts a comma-separated list of modalities (text, image, audio, embeddings) or "all" to include all models. Defaults to "text".' + description: 'Filter models by output modality. Accepts a comma-separated list of modalities (text, image, embeddings, audio, video, rerank, speech, transcription) or "all" to include all models. Defaults to "text".' example: 'text' type: 'string' - description: 'Sort the returned models server-side. Prefer this over fetching the full list and sorting client-side. Options: pricing-low-to-high, pricing-high-to-low (average prompt/completion price), context-high-to-low (context length), throughput-high-to-low, latency-low-to-high (recent median performance), most-popular, top-weekly (tokens processed in the last week), newest (creation date), intelligence-high-to-low, coding-high-to-low, agentic-high-to-low (Artificial Analysis indices), design-arena-elo-high-to-low (best Design Arena ELO across arenas). Models without a score for the chosen benchmark are placed last. When omitted, the existing default ordering is preserved.' @@ -36024,12 +36024,12 @@ paths: get: operationId: 'listModelsCount' parameters: - - description: 'Filter models by output modality. Accepts a comma-separated list of modalities (text, image, audio, embeddings) or "all" to include all models. Defaults to "text".' + - description: 'Filter models by output modality. Accepts a comma-separated list of modalities (text, image, embeddings, audio, video, rerank, speech, transcription) or "all" to include all models. Defaults to "text".' in: 'query' name: 'output_modalities' required: false schema: - description: 'Filter models by output modality. Accepts a comma-separated list of modalities (text, image, audio, embeddings) or "all" to include all models. Defaults to "text".' + description: 'Filter models by output modality. Accepts a comma-separated list of modalities (text, image, embeddings, audio, video, rerank, speech, transcription) or "all" to include all models. Defaults to "text".' example: 'text' type: 'string' responses: @@ -36082,7 +36082,7 @@ paths: - $ref: "#/components/parameters/AppCategories" /models/user: get: - description: 'List models filtered by user provider preferences, [privacy settings](https://openrouter.ai/docs/guides/privacy/provider-logging), and [guardrails](https://openrouter.ai/docs/guides/features/guardrails). Returns text-output models by default; pass `output_modalities` (e.g. `image,audio,embeddings` or `all`) to include other modalities. If requesting through a regional hostname, the results will be filtered to models that satisfy in-region routing for that region.' + description: 'List models filtered by user provider preferences, [privacy settings](https://openrouter.ai/docs/guides/privacy/provider-logging), and [guardrails](https://openrouter.ai/docs/guides/features/guardrails). Returns text-output models by default; pass `output_modalities` (a comma-separated list of `text`, `image`, `embeddings`, `audio`, `video`, `rerank`, `speech`, `transcription`, or `all`) to include other modalities. If requesting through a regional hostname, the results will be filtered to models that satisfy in-region routing for that region.' operationId: 'listModelsUser' parameters: - description: 'Number of records to skip for pagination. When both offset and limit are omitted, the full list is returned' @@ -36109,12 +36109,12 @@ paths: maximum: 1000 minimum: 1 type: 'integer' - - description: 'Filter models by output modality. Accepts a comma-separated list of modalities (text, image, audio, embeddings) or "all" to include all models. Defaults to "text".' + - description: 'Filter models by output modality. Accepts a comma-separated list of modalities (text, image, embeddings, audio, video, rerank, speech, transcription) or "all" to include all models. Defaults to "text".' in: 'query' name: 'output_modalities' required: false schema: - description: 'Filter models by output modality. Accepts a comma-separated list of modalities (text, image, audio, embeddings) or "all" to include all models. Defaults to "text".' + description: 'Filter models by output modality. Accepts a comma-separated list of modalities (text, image, embeddings, audio, video, rerank, speech, transcription) or "all" to include all models. Defaults to "text".' example: 'text' type: 'string' responses: diff --git a/.speakeasy/workflow.lock b/.speakeasy/workflow.lock index 80c2c984..2bfd5eef 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:73941ce3385037d4faff83a796543c743cbb37b7b4766d5049351c47e0a9f890 - sourceBlobDigest: sha256:2ecbbd5933a63a2017a738b46dfa3be3d8ed20efd8a4de1a8a510392f6faf721 + sourceRevisionDigest: sha256:80157beda13bce6b09e5697bc96e1fe917fcf45e6bd81e72cab6af1cdd4d8174 + sourceBlobDigest: sha256:d8fac9b853e10a8c2e3a863459d66f628e1587ba75b00c2157be666f6a9d45fc tags: - latest - 1.0.0 @@ -11,10 +11,10 @@ targets: open-router: source: OpenRouter API sourceNamespace: open-router-chat-completions-api - sourceRevisionDigest: sha256:73941ce3385037d4faff83a796543c743cbb37b7b4766d5049351c47e0a9f890 - sourceBlobDigest: sha256:2ecbbd5933a63a2017a738b46dfa3be3d8ed20efd8a4de1a8a510392f6faf721 + sourceRevisionDigest: sha256:80157beda13bce6b09e5697bc96e1fe917fcf45e6bd81e72cab6af1cdd4d8174 + sourceBlobDigest: sha256:d8fac9b853e10a8c2e3a863459d66f628e1587ba75b00c2157be666f6a9d45fc codeSamplesNamespace: open-router-python-code-samples - codeSamplesRevisionDigest: sha256:10eed40c3770270a32f868e4da7b578871a891a4fdea63eaeb63a606fbbc2ba4 + codeSamplesRevisionDigest: sha256:f23abdb69df57476ebd61364aff9943bd5af74ea192f36ac04785a374aab7d81 workflow: workflowVersion: 1.0.0 speakeasyVersion: 1.787.0 diff --git a/RELEASES.md b/RELEASES.md index 86365c5e..9795f24a 100644 --- a/RELEASES.md +++ b/RELEASES.md @@ -1849,4 +1849,14 @@ Based on: ### Generated - [python v1.1.106] . ### Releases -- [PyPI v1.1.106] https://pypi.org/project/openrouter/1.1.106 - . \ No newline at end of file +- [PyPI v1.1.106] https://pypi.org/project/openrouter/1.1.106 - . + +## 2026-09-01 00:01:13 +### Changes +Based on: +- OpenAPI Doc +- Speakeasy CLI 1.787.0 (2.914.0) https://github.com/speakeasy-api/speakeasy +### Generated +- [python v1.1.107] . +### Releases +- [PyPI v1.1.107] https://pypi.org/project/openrouter/1.1.107 - . \ No newline at end of file diff --git a/docs/operations/getmodelsrequest.mdx b/docs/operations/getmodelsrequest.mdx index 714605e0..2b88459a 100644 --- a/docs/operations/getmodelsrequest.mdx +++ b/docs/operations/getmodelsrequest.mdx @@ -13,7 +13,7 @@ title: "GetModelsRequest" | `limit` | *Optional[int]* | :heavy_minus_sign: | Maximum number of records to return (max 1000). When both offset and limit are omitted, the full list is returned | 500 | | `category` | [Optional[operations.GetModelsCategory]](../operations/getmodelscategory.mdx) | :heavy_minus_sign: | Filter models by use case category | programming | | `supported_parameters` | *Optional[str]* | :heavy_minus_sign: | Filter models by supported parameter (comma-separated) | temperature | -| `output_modalities` | *Optional[str]* | :heavy_minus_sign: | Filter models by output modality. Accepts a comma-separated list of modalities (text, image, audio, embeddings) or "all" to include all models. Defaults to "text". | text | +| `output_modalities` | *Optional[str]* | :heavy_minus_sign: | Filter models by output modality. Accepts a comma-separated list of modalities (text, image, embeddings, audio, video, rerank, speech, transcription) or "all" to include all models. Defaults to "text". | text | | `sort` | [Optional[operations.GetModelsSort]](../operations/getmodelssort.mdx) | :heavy_minus_sign: | Sort the returned models server-side. Prefer this over fetching the full list and sorting client-side. Options: pricing-low-to-high, pricing-high-to-low (average prompt/completion price), context-high-to-low (context length), throughput-high-to-low, latency-low-to-high (recent median performance), most-popular, top-weekly (tokens processed in the last week), newest (creation date), intelligence-high-to-low, coding-high-to-low, agentic-high-to-low (Artificial Analysis indices), design-arena-elo-high-to-low (best Design Arena ELO across arenas). Models without a score for the chosen benchmark are placed last. When omitted, the existing default ordering is preserved. | newest | | `q` | *Optional[str]* | :heavy_minus_sign: | Free-text search by model name or slug. | gpt-4 | | `input_modalities` | *Optional[str]* | :heavy_minus_sign: | Filter models by input modality. Comma-separated list of: text, image, audio, file. | text,image | diff --git a/docs/operations/listmodelscountrequest.mdx b/docs/operations/listmodelscountrequest.mdx index 7791b12f..e97bb8af 100644 --- a/docs/operations/listmodelscountrequest.mdx +++ b/docs/operations/listmodelscountrequest.mdx @@ -4,9 +4,9 @@ title: "ListModelsCountRequest" ## Fields -| Field | Type | Required | Description | Example | -| ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `http_referer` | *Optional[str]* | :heavy_minus_sign: | 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.
| | -| `x_open_router_title` | *Optional[str]* | :heavy_minus_sign: | The app display name allows you to customize how your app appears in OpenRouter's dashboard.
| | -| `x_open_router_categories` | *Optional[str]* | :heavy_minus_sign: | Comma-separated list of app categories (e.g. "cli-agent,cloud-agent"). Used for marketplace rankings.
| | -| `output_modalities` | *Optional[str]* | :heavy_minus_sign: | Filter models by output modality. Accepts a comma-separated list of modalities (text, image, audio, embeddings) or "all" to include all models. Defaults to "text". | text | \ No newline at end of file +| Field | Type | Required | Description | Example | +| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `http_referer` | *Optional[str]* | :heavy_minus_sign: | 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.
| | +| `x_open_router_title` | *Optional[str]* | :heavy_minus_sign: | The app display name allows you to customize how your app appears in OpenRouter's dashboard.
| | +| `x_open_router_categories` | *Optional[str]* | :heavy_minus_sign: | Comma-separated list of app categories (e.g. "cli-agent,cloud-agent"). Used for marketplace rankings.
| | +| `output_modalities` | *Optional[str]* | :heavy_minus_sign: | Filter models by output modality. Accepts a comma-separated list of modalities (text, image, embeddings, audio, video, rerank, speech, transcription) or "all" to include all models. Defaults to "text". | text | \ No newline at end of file diff --git a/docs/operations/listmodelsuserrequest.mdx b/docs/operations/listmodelsuserrequest.mdx index b0cc0a75..047eaf5a 100644 --- a/docs/operations/listmodelsuserrequest.mdx +++ b/docs/operations/listmodelsuserrequest.mdx @@ -4,11 +4,11 @@ title: "ListModelsUserRequest" ## Fields -| Field | Type | Required | Description | Example | -| ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `http_referer` | *Optional[str]* | :heavy_minus_sign: | 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.
| | -| `x_open_router_title` | *Optional[str]* | :heavy_minus_sign: | The app display name allows you to customize how your app appears in OpenRouter's dashboard.
| | -| `x_open_router_categories` | *Optional[str]* | :heavy_minus_sign: | Comma-separated list of app categories (e.g. "cli-agent,cloud-agent"). Used for marketplace rankings.
| | -| `offset` | *OptionalNullable[int]* | :heavy_minus_sign: | Number of records to skip for pagination. When both offset and limit are omitted, the full list is returned | 0 | -| `limit` | *Optional[int]* | :heavy_minus_sign: | Maximum number of records to return (max 1000). When both offset and limit are omitted, the full list is returned | 500 | -| `output_modalities` | *Optional[str]* | :heavy_minus_sign: | Filter models by output modality. Accepts a comma-separated list of modalities (text, image, audio, embeddings) or "all" to include all models. Defaults to "text". | text | \ No newline at end of file +| Field | Type | Required | Description | Example | +| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `http_referer` | *Optional[str]* | :heavy_minus_sign: | 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.
| | +| `x_open_router_title` | *Optional[str]* | :heavy_minus_sign: | The app display name allows you to customize how your app appears in OpenRouter's dashboard.
| | +| `x_open_router_categories` | *Optional[str]* | :heavy_minus_sign: | Comma-separated list of app categories (e.g. "cli-agent,cloud-agent"). Used for marketplace rankings.
| | +| `offset` | *OptionalNullable[int]* | :heavy_minus_sign: | Number of records to skip for pagination. When both offset and limit are omitted, the full list is returned | 0 | +| `limit` | *Optional[int]* | :heavy_minus_sign: | Maximum number of records to return (max 1000). When both offset and limit are omitted, the full list is returned | 500 | +| `output_modalities` | *Optional[str]* | :heavy_minus_sign: | Filter models by output modality. Accepts a comma-separated list of modalities (text, image, embeddings, audio, video, rerank, speech, transcription) or "all" to include all models. Defaults to "text". | text | \ No newline at end of file diff --git a/docs/sdks/models/README.mdx b/docs/sdks/models/README.mdx index c23025f4..704be1ed 100644 --- a/docs/sdks/models/README.mdx +++ b/docs/sdks/models/README.mdx @@ -101,7 +101,7 @@ with OpenRouter( | `limit` | *Optional[int]* | :heavy_minus_sign: | Maximum number of records to return (max 1000). When both offset and limit are omitted, the full list is returned | 500 | | `category` | [Optional[operations.GetModelsCategory]](../../operations/getmodelscategory.mdx) | :heavy_minus_sign: | Filter models by use case category | programming | | `supported_parameters` | *Optional[str]* | :heavy_minus_sign: | Filter models by supported parameter (comma-separated) | temperature | -| `output_modalities` | *Optional[str]* | :heavy_minus_sign: | Filter models by output modality. Accepts a comma-separated list of modalities (text, image, audio, embeddings) or "all" to include all models. Defaults to "text". | text | +| `output_modalities` | *Optional[str]* | :heavy_minus_sign: | Filter models by output modality. Accepts a comma-separated list of modalities (text, image, embeddings, audio, video, rerank, speech, transcription) or "all" to include all models. Defaults to "text". | text | | `sort` | [Optional[operations.GetModelsSort]](../../operations/getmodelssort.mdx) | :heavy_minus_sign: | Sort the returned models server-side. Prefer this over fetching the full list and sorting client-side. Options: pricing-low-to-high, pricing-high-to-low (average prompt/completion price), context-high-to-low (context length), throughput-high-to-low, latency-low-to-high (recent median performance), most-popular, top-weekly (tokens processed in the last week), newest (creation date), intelligence-high-to-low, coding-high-to-low, agentic-high-to-low (Artificial Analysis indices), design-arena-elo-high-to-low (best Design Arena ELO across arenas). Models without a score for the chosen benchmark are placed last. When omitted, the existing default ordering is preserved. | newest | | `q` | *Optional[str]* | :heavy_minus_sign: | Free-text search by model name or slug. | gpt-4 | | `input_modalities` | *Optional[str]* | :heavy_minus_sign: | Filter models by input modality. Comma-separated list of: text, image, audio, file. | text,image | @@ -168,13 +168,13 @@ with OpenRouter( ### Parameters -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `http_referer` | *Optional[str]* | :heavy_minus_sign: | 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.
| | -| `x_open_router_title` | *Optional[str]* | :heavy_minus_sign: | The app display name allows you to customize how your app appears in OpenRouter's dashboard.
| | -| `x_open_router_categories` | *Optional[str]* | :heavy_minus_sign: | Comma-separated list of app categories (e.g. "cli-agent,cloud-agent"). Used for marketplace rankings.
| | -| `output_modalities` | *Optional[str]* | :heavy_minus_sign: | Filter models by output modality. Accepts a comma-separated list of modalities (text, image, audio, embeddings) or "all" to include all models. Defaults to "text". | text | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.mdx) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | +| Parameter | Type | Required | Description | Example | +| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `http_referer` | *Optional[str]* | :heavy_minus_sign: | 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.
| | +| `x_open_router_title` | *Optional[str]* | :heavy_minus_sign: | The app display name allows you to customize how your app appears in OpenRouter's dashboard.
| | +| `x_open_router_categories` | *Optional[str]* | :heavy_minus_sign: | Comma-separated list of app categories (e.g. "cli-agent,cloud-agent"). Used for marketplace rankings.
| | +| `output_modalities` | *Optional[str]* | :heavy_minus_sign: | Filter models by output modality. Accepts a comma-separated list of modalities (text, image, embeddings, audio, video, rerank, speech, transcription) or "all" to include all models. Defaults to "text". | text | +| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.mdx) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | ### Response @@ -191,7 +191,7 @@ with OpenRouter( ## list_for_user -List models filtered by user provider preferences, [privacy settings](https://openrouter.ai/docs/guides/privacy/provider-logging), and [guardrails](https://openrouter.ai/docs/guides/features/guardrails). Returns text-output models by default; pass `output_modalities` (e.g. `image,audio,embeddings` or `all`) to include other modalities. If requesting through a regional hostname, the results will be filtered to models that satisfy in-region routing for that region. +List models filtered by user provider preferences, [privacy settings](https://openrouter.ai/docs/guides/privacy/provider-logging), and [guardrails](https://openrouter.ai/docs/guides/features/guardrails). Returns text-output models by default; pass `output_modalities` (a comma-separated list of `text`, `image`, `embeddings`, `audio`, `video`, `rerank`, `speech`, `transcription`, or `all`) to include other modalities. If requesting through a regional hostname, the results will be filtered to models that satisfy in-region routing for that region. ### Example Usage @@ -219,16 +219,16 @@ with OpenRouter( ### Parameters -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `security` | [operations.ListModelsUserSecurity](../../operations/listmodelsusersecurity.mdx) | :heavy_check_mark: | N/A | | -| `http_referer` | *Optional[str]* | :heavy_minus_sign: | 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.
| | -| `x_open_router_title` | *Optional[str]* | :heavy_minus_sign: | The app display name allows you to customize how your app appears in OpenRouter's dashboard.
| | -| `x_open_router_categories` | *Optional[str]* | :heavy_minus_sign: | Comma-separated list of app categories (e.g. "cli-agent,cloud-agent"). Used for marketplace rankings.
| | -| `offset` | *OptionalNullable[int]* | :heavy_minus_sign: | Number of records to skip for pagination. When both offset and limit are omitted, the full list is returned | 0 | -| `limit` | *Optional[int]* | :heavy_minus_sign: | Maximum number of records to return (max 1000). When both offset and limit are omitted, the full list is returned | 500 | -| `output_modalities` | *Optional[str]* | :heavy_minus_sign: | Filter models by output modality. Accepts a comma-separated list of modalities (text, image, audio, embeddings) or "all" to include all models. Defaults to "text". | text | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.mdx) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | +| Parameter | Type | Required | Description | Example | +| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `security` | [operations.ListModelsUserSecurity](../../operations/listmodelsusersecurity.mdx) | :heavy_check_mark: | N/A | | +| `http_referer` | *Optional[str]* | :heavy_minus_sign: | 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.
| | +| `x_open_router_title` | *Optional[str]* | :heavy_minus_sign: | The app display name allows you to customize how your app appears in OpenRouter's dashboard.
| | +| `x_open_router_categories` | *Optional[str]* | :heavy_minus_sign: | Comma-separated list of app categories (e.g. "cli-agent,cloud-agent"). Used for marketplace rankings.
| | +| `offset` | *OptionalNullable[int]* | :heavy_minus_sign: | Number of records to skip for pagination. When both offset and limit are omitted, the full list is returned | 0 | +| `limit` | *Optional[int]* | :heavy_minus_sign: | Maximum number of records to return (max 1000). When both offset and limit are omitted, the full list is returned | 500 | +| `output_modalities` | *Optional[str]* | :heavy_minus_sign: | Filter models by output modality. Accepts a comma-separated list of modalities (text, image, embeddings, audio, video, rerank, speech, transcription) or "all" to include all models. Defaults to "text". | text | +| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.mdx) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | ### Response diff --git a/pyproject.toml b/pyproject.toml index 9922ec2e..347e295a 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "openrouter" -version = "1.1.106" +version = "1.1.107" 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 38645aef..66f547c5 100644 --- a/src/openrouter/_version.py +++ b/src/openrouter/_version.py @@ -3,10 +3,10 @@ import importlib.metadata __title__: str = "openrouter" -__version__: str = "1.1.106" +__version__: str = "1.1.107" __openapi_doc_version__: str = "1.0.0" __gen_version__: str = "2.914.0" -__user_agent__: str = "speakeasy-sdk/python 1.1.106 2.914.0 1.0.0 openrouter" +__user_agent__: str = "speakeasy-sdk/python 1.1.107 2.914.0 1.0.0 openrouter" try: if __package__ is not None: diff --git a/src/openrouter/models_.py b/src/openrouter/models_.py index f0c6429a..b4576cd5 100644 --- a/src/openrouter/models_.py +++ b/src/openrouter/models_.py @@ -328,7 +328,7 @@ def list( :param limit: Maximum number of records to return (max 1000). When both offset and limit are omitted, the full list is returned :param category: Filter models by use case category :param supported_parameters: Filter models by supported parameter (comma-separated) - :param output_modalities: Filter models by output modality. Accepts a comma-separated list of modalities (text, image, audio, embeddings) or \"all\" to include all models. Defaults to \"text\". + :param output_modalities: Filter models by output modality. Accepts a comma-separated list of modalities (text, image, embeddings, audio, video, rerank, speech, transcription) or \"all\" to include all models. Defaults to \"text\". :param sort: Sort the returned models server-side. Prefer this over fetching the full list and sorting client-side. Options: pricing-low-to-high, pricing-high-to-low (average prompt/completion price), context-high-to-low (context length), throughput-high-to-low, latency-low-to-high (recent median performance), most-popular, top-weekly (tokens processed in the last week), newest (creation date), intelligence-high-to-low, coding-high-to-low, agentic-high-to-low (Artificial Analysis indices), design-arena-elo-high-to-low (best Design Arena ELO across arenas). Models without a score for the chosen benchmark are placed last. When omitted, the existing default ordering is preserved. :param q: Free-text search by model name or slug. :param input_modalities: Filter models by input modality. Comma-separated list of: text, image, audio, file. @@ -595,7 +595,7 @@ async def list_async( :param limit: Maximum number of records to return (max 1000). When both offset and limit are omitted, the full list is returned :param category: Filter models by use case category :param supported_parameters: Filter models by supported parameter (comma-separated) - :param output_modalities: Filter models by output modality. Accepts a comma-separated list of modalities (text, image, audio, embeddings) or \"all\" to include all models. Defaults to \"text\". + :param output_modalities: Filter models by output modality. Accepts a comma-separated list of modalities (text, image, embeddings, audio, video, rerank, speech, transcription) or \"all\" to include all models. Defaults to \"text\". :param sort: Sort the returned models server-side. Prefer this over fetching the full list and sorting client-side. Options: pricing-low-to-high, pricing-high-to-low (average prompt/completion price), context-high-to-low (context length), throughput-high-to-low, latency-low-to-high (recent median performance), most-popular, top-weekly (tokens processed in the last week), newest (creation date), intelligence-high-to-low, coding-high-to-low, agentic-high-to-low (Artificial Analysis indices), design-arena-elo-high-to-low (best Design Arena ELO across arenas). Models without a score for the chosen benchmark are placed last. When omitted, the existing default ordering is preserved. :param q: Free-text search by model name or slug. :param input_modalities: Filter models by input modality. Comma-separated list of: text, image, audio, file. @@ -833,7 +833,7 @@ def count( :param x_open_router_categories: Comma-separated list of app categories (e.g. \"cli-agent,cloud-agent\"). Used for marketplace rankings. - :param output_modalities: Filter models by output modality. Accepts a comma-separated list of modalities (text, image, audio, embeddings) or \"all\" to include all models. Defaults to \"text\". + :param output_modalities: Filter models by output modality. Accepts a comma-separated list of modalities (text, image, embeddings, audio, video, rerank, speech, transcription) or \"all\" to include all models. Defaults to \"text\". :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 @@ -959,7 +959,7 @@ async def count_async( :param x_open_router_categories: Comma-separated list of app categories (e.g. \"cli-agent,cloud-agent\"). Used for marketplace rankings. - :param output_modalities: Filter models by output modality. Accepts a comma-separated list of modalities (text, image, audio, embeddings) or \"all\" to include all models. Defaults to \"text\". + :param output_modalities: Filter models by output modality. Accepts a comma-separated list of modalities (text, image, embeddings, audio, video, rerank, speech, transcription) or \"all\" to include all models. Defaults to \"text\". :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 @@ -1084,7 +1084,7 @@ def list_for_user( ) -> Optional[operations.ListModelsUserResponse]: r"""List models filtered by user provider preferences, privacy settings, and guardrails - List models filtered by user provider preferences, [privacy settings](https://openrouter.ai/docs/guides/privacy/provider-logging), and [guardrails](https://openrouter.ai/docs/guides/features/guardrails). Returns text-output models by default; pass `output_modalities` (e.g. `image,audio,embeddings` or `all`) to include other modalities. If requesting through a regional hostname, the results will be filtered to models that satisfy in-region routing for that region. + List models filtered by user provider preferences, [privacy settings](https://openrouter.ai/docs/guides/privacy/provider-logging), and [guardrails](https://openrouter.ai/docs/guides/features/guardrails). Returns text-output models by default; pass `output_modalities` (a comma-separated list of `text`, `image`, `embeddings`, `audio`, `video`, `rerank`, `speech`, `transcription`, or `all`) to include other modalities. If requesting through a regional hostname, the results will be filtered to models that satisfy in-region routing for that region. :param security: :param http_referer: The app identifier should be your app's URL and is used as the primary identifier for rankings. @@ -1096,7 +1096,7 @@ def list_for_user( :param offset: Number of records to skip for pagination. When both offset and limit are omitted, the full list is returned :param limit: Maximum number of records to return (max 1000). When both offset and limit are omitted, the full list is returned - :param output_modalities: Filter models by output modality. Accepts a comma-separated list of modalities (text, image, audio, embeddings) or \"all\" to include all models. Defaults to \"text\". + :param output_modalities: Filter models by output modality. Accepts a comma-separated list of modalities (text, image, embeddings, audio, video, rerank, speech, transcription) or \"all\" to include all models. Defaults to \"text\". :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 @@ -1260,7 +1260,7 @@ async def list_for_user_async( ) -> Optional[operations.ListModelsUserResponse]: r"""List models filtered by user provider preferences, privacy settings, and guardrails - List models filtered by user provider preferences, [privacy settings](https://openrouter.ai/docs/guides/privacy/provider-logging), and [guardrails](https://openrouter.ai/docs/guides/features/guardrails). Returns text-output models by default; pass `output_modalities` (e.g. `image,audio,embeddings` or `all`) to include other modalities. If requesting through a regional hostname, the results will be filtered to models that satisfy in-region routing for that region. + List models filtered by user provider preferences, [privacy settings](https://openrouter.ai/docs/guides/privacy/provider-logging), and [guardrails](https://openrouter.ai/docs/guides/features/guardrails). Returns text-output models by default; pass `output_modalities` (a comma-separated list of `text`, `image`, `embeddings`, `audio`, `video`, `rerank`, `speech`, `transcription`, or `all`) to include other modalities. If requesting through a regional hostname, the results will be filtered to models that satisfy in-region routing for that region. :param security: :param http_referer: The app identifier should be your app's URL and is used as the primary identifier for rankings. @@ -1272,7 +1272,7 @@ async def list_for_user_async( :param offset: Number of records to skip for pagination. When both offset and limit are omitted, the full list is returned :param limit: Maximum number of records to return (max 1000). When both offset and limit are omitted, the full list is returned - :param output_modalities: Filter models by output modality. Accepts a comma-separated list of modalities (text, image, audio, embeddings) or \"all\" to include all models. Defaults to \"text\". + :param output_modalities: Filter models by output modality. Accepts a comma-separated list of modalities (text, image, embeddings, audio, video, rerank, speech, transcription) or \"all\" to include all models. Defaults to \"text\". :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 diff --git a/src/openrouter/operations/getmodels.py b/src/openrouter/operations/getmodels.py index f8f4dc8b..354655a9 100644 --- a/src/openrouter/operations/getmodels.py +++ b/src/openrouter/operations/getmodels.py @@ -168,7 +168,7 @@ class GetModelsRequestTypedDict(TypedDict): supported_parameters: NotRequired[str] r"""Filter models by supported parameter (comma-separated)""" output_modalities: NotRequired[str] - r"""Filter models by output modality. Accepts a comma-separated list of modalities (text, image, audio, embeddings) or \"all\" to include all models. Defaults to \"text\".""" + r"""Filter models by output modality. Accepts a comma-separated list of modalities (text, image, embeddings, audio, video, rerank, speech, transcription) or \"all\" to include all models. Defaults to \"text\".""" sort: NotRequired[GetModelsSort] r"""Sort the returned models server-side. Prefer this over fetching the full list and sorting client-side. Options: pricing-low-to-high, pricing-high-to-low (average prompt/completion price), context-high-to-low (context length), throughput-high-to-low, latency-low-to-high (recent median performance), most-popular, top-weekly (tokens processed in the last week), newest (creation date), intelligence-high-to-low, coding-high-to-low, agentic-high-to-low (Artificial Analysis indices), design-arena-elo-high-to-low (best Design Arena ELO across arenas). Models without a score for the chosen benchmark are placed last. When omitted, the existing default ordering is preserved.""" q: NotRequired[str] @@ -276,7 +276,7 @@ class GetModelsRequest(BaseModel): Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), ] = None - r"""Filter models by output modality. Accepts a comma-separated list of modalities (text, image, audio, embeddings) or \"all\" to include all models. Defaults to \"text\".""" + r"""Filter models by output modality. Accepts a comma-separated list of modalities (text, image, embeddings, audio, video, rerank, speech, transcription) or \"all\" to include all models. Defaults to \"text\".""" sort: Annotated[ Optional[GetModelsSort], diff --git a/src/openrouter/operations/listmodelscount.py b/src/openrouter/operations/listmodelscount.py index 797af26e..81e2dcd9 100644 --- a/src/openrouter/operations/listmodelscount.py +++ b/src/openrouter/operations/listmodelscount.py @@ -88,7 +88,7 @@ class ListModelsCountRequestTypedDict(TypedDict): """ output_modalities: NotRequired[str] - r"""Filter models by output modality. Accepts a comma-separated list of modalities (text, image, audio, embeddings) or \"all\" to include all models. Defaults to \"text\".""" + r"""Filter models by output modality. Accepts a comma-separated list of modalities (text, image, embeddings, audio, video, rerank, speech, transcription) or \"all\" to include all models. Defaults to \"text\".""" class ListModelsCountRequest(BaseModel): @@ -124,7 +124,7 @@ class ListModelsCountRequest(BaseModel): Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), ] = None - r"""Filter models by output modality. Accepts a comma-separated list of modalities (text, image, audio, embeddings) or \"all\" to include all models. Defaults to \"text\".""" + r"""Filter models by output modality. Accepts a comma-separated list of modalities (text, image, embeddings, audio, video, rerank, speech, transcription) or \"all\" to include all models. Defaults to \"text\".""" @model_serializer(mode="wrap") def serialize_model(self, handler): diff --git a/src/openrouter/operations/listmodelsuser.py b/src/openrouter/operations/listmodelsuser.py index 614eed41..78a9304b 100644 --- a/src/openrouter/operations/listmodelsuser.py +++ b/src/openrouter/operations/listmodelsuser.py @@ -116,7 +116,7 @@ class ListModelsUserRequestTypedDict(TypedDict): limit: NotRequired[int] r"""Maximum number of records to return (max 1000). When both offset and limit are omitted, the full list is returned""" output_modalities: NotRequired[str] - r"""Filter models by output modality. Accepts a comma-separated list of modalities (text, image, audio, embeddings) or \"all\" to include all models. Defaults to \"text\".""" + r"""Filter models by output modality. Accepts a comma-separated list of modalities (text, image, embeddings, audio, video, rerank, speech, transcription) or \"all\" to include all models. Defaults to \"text\".""" class ListModelsUserRequest(BaseModel): @@ -164,7 +164,7 @@ class ListModelsUserRequest(BaseModel): Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), ] = None - r"""Filter models by output modality. Accepts a comma-separated list of modalities (text, image, audio, embeddings) or \"all\" to include all models. Defaults to \"text\".""" + r"""Filter models by output modality. Accepts a comma-separated list of modalities (text, image, embeddings, audio, video, rerank, speech, transcription) or \"all\" to include all models. Defaults to \"text\".""" @model_serializer(mode="wrap") def serialize_model(self, handler): diff --git a/uv.lock b/uv.lock index 00670b88..05e1e5b6 100644 --- a/uv.lock +++ b/uv.lock @@ -213,7 +213,7 @@ wheels = [ [[package]] name = "openrouter" -version = "1.1.106" +version = "1.1.107" source = { editable = "." } dependencies = [ { name = "httpcore" }, From d2a9c361407ec33a55c466d508197dfb2e126b1f Mon Sep 17 00:00:00 2001 From: "speakeasy-github[bot]" <128539517+speakeasy-github[bot]@users.noreply.github.com> Date: Tue, 1 Sep 2026 00:03:26 +0000 Subject: [PATCH 2/2] empty commit to trigger [run-tests] workflow