diff --git a/.speakeasy/gen.lock b/.speakeasy/gen.lock index 21dc6cd..febf4bd 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: 586e37e63acb262548506265e19ac727 + docChecksum: b5664b53681fb6403943916bb9b110bc docVersion: 1.0.0 speakeasyVersion: 1.787.0 generationVersion: 2.914.0 - releaseVersion: 0.11.22 - configChecksum: 5cb684d8aabef4d0e06789941dbd06eb + releaseVersion: 0.11.23 + configChecksum: 47c73c3494869121d190f901e061e5d9 repoURL: https://github.com/OpenRouterTeam/python-sdk.git installationURL: https://github.com/OpenRouterTeam/python-sdk.git published: true persistentEdits: - generation_id: c1a5429a-8cf6-496c-a2b0-bc500ddc6e22 - pristine_commit_hash: 8919d336a9bbdf8bdde22ce38e28085278390cf0 - pristine_tree_hash: 30bee8bd0cc198f68b8899cbeb999576145f5493 + generation_id: e4b4974f-8771-44db-babf-659fe2ac2518 + pristine_commit_hash: f72edbf6eebf0c3406c03b3a608aacb71c6122ce + pristine_tree_hash: 42c1bd10666bf80d49c870acf57dafbe7ffc6913 features: python: acceptHeaders: 3.0.0 @@ -4342,8 +4342,8 @@ trackedFiles: pristine_git_object: 5d617cac37f7b364f4dd0640246e97c34351d824 docs/components/speechrequest.mdx: id: 06e81b0433f6 - last_write_checksum: sha1:f56d694567b45d6656c3bf4e84a19283d526014c - pristine_git_object: b16289c3fc9ba1db2880a5e3e6de9b747e2acdb8 + last_write_checksum: sha1:76fa6d5d3d316f4c7b205f656b4cebe4c15c8bea + pristine_git_object: de4caacffca57c3d03275206dd4288335fe6c532 docs/components/speechrequestprovider.mdx: id: 4f78ed0394c4 last_write_checksum: sha1:99d94c6b01dbd3e875c213584f97c7dca545a6a9 @@ -5354,8 +5354,8 @@ trackedFiles: pristine_git_object: 78fe3a35c7c813e4554c8b8d3e403f4902a17c32 docs/operations/createaudiospeechrequest.mdx: id: 097a81eed964 - last_write_checksum: sha1:1a773adccf87e107b0648cc0034e97613378f47f - pristine_git_object: 176fe2508bf060b22bf9f2c8c8fd158a96fef19e + last_write_checksum: sha1:ed83c321078683a0cffabd503750b31a30927c72 + pristine_git_object: a9aaac38a7f70c589c212a1ed00d95196d285117 docs/operations/createaudiotranscriptionsglobals.mdx: id: 3a50c3fec9de last_write_checksum: sha1:df0aebe1971befd5930236620a6ea94dbec73898 @@ -6582,8 +6582,8 @@ trackedFiles: pristine_git_object: 003f85994a515547fe80dcc316ccc19d81c5322d docs/sdks/tts/README.mdx: id: cd1132543884 - last_write_checksum: sha1:d28728db90dbab11f336d772b27544bb41ecceee - pristine_git_object: dca713aa3629e162924844de964be74e9b4ed081 + last_write_checksum: sha1:748da68a8d8e057dabb7af4297b5d8adf737f8b0 + pristine_git_object: f02ae88383dec340e4cd0f20d82363155bc08852 docs/sdks/videogeneration/README.mdx: id: 9a8fa04c3872 last_write_checksum: sha1:7d3c54cf2daa98e25df18bc27cc4ca30b2b1f03f @@ -6598,8 +6598,8 @@ trackedFiles: pristine_git_object: 3e38f1a929f7d6b1d6de74604aa87e3d8f010544 pyproject.toml: id: 5d07e7d72637 - last_write_checksum: sha1:83fda8e0d22a9e98c001a57ae2b979e138982e1c - pristine_git_object: 93ce03b87a33bacca825a80068c0f35031bee5aa + last_write_checksum: sha1:5d3a57b654b24aa3e1d864860193cd49e30c8158 + pristine_git_object: 6c7ed425b8481808595bc0c2ea6bf15eead35678 scripts/prepare_readme.py: id: e0c5957a6035 last_write_checksum: sha1:77f44b60b98bc126557ec27391f91dfba764bb54 @@ -6626,8 +6626,8 @@ trackedFiles: pristine_git_object: 86713cfea633e09d33b3d4e65281071fe20e6137 src/openrouter/_version.py: id: d8d15ad6c586 - last_write_checksum: sha1:b1160bf575302810a304f12f55b90ef8c9c6c52f - pristine_git_object: 2310169385ee80282e62878e83ef079a52994708 + last_write_checksum: sha1:01c911de175165f5a511285a446e1bb9b86fc01a + pristine_git_object: 400898618adb2f15eac43a4e6b1cb1f093b04c2d src/openrouter/analytics.py: id: cb406b5aaabb last_write_checksum: sha1:9e709b71dd0611056dc0cec6150b578defe32841 @@ -10175,7 +10175,7 @@ examples: createAudioSpeech: speakeasy-default-create-audio-speech: requestBody: - application/json: {"input": "Hello world", "model": "elevenlabs/eleven-turbo-v2", "response_format": "pcm", "voice": "alloy"} + application/json: {"input": "Hello world", "model": "mistralai/voxtral-mini-tts-2603", "response_format": "pcm", "voice": "en_paul_neutral"} responses: "200": audio/*: "" @@ -10981,4 +10981,3 @@ examples: "500": application/json: {"error": {"code": 500, "message": "Internal Server Error"}} examplesVersion: 1.0.2 -releaseNotes: "## Python SDK Changes:\n* `open_router.beta.responses.send()`: \n * `request.provider.ignore[].union(ProviderName).enum(meta)` **Added**\n* `open_router.byok.list()`: \n * `request.provider` **Changed**\n * `response.data[].provider.enum(meta)` **Added**\n* `open_router.byok.create()`: \n * `request.provider.enum(meta)` **Added**\n * `response.data.provider.enum(meta)` **Added**\n* `open_router.byok.get()`: `response.data.provider.enum(meta)` **Added**\n* `open_router.byok.update()`: `response.data.provider.enum(meta)` **Added**\n* `open_router.chat.send()`: \n * `request.provider.ignore[].union(ProviderName).enum(meta)` **Added**\n* `open_router.embeddings.generate()`: \n * `request.provider.ignore[].union(ProviderName).enum(meta)` **Added**\n* `open_router.endpoints.list_zdr_endpoints()`: `response.data[].provider_name.enum(meta)` **Added**\n* `open_router.endpoints.list()`: `response.data.endpoints[].provider_name.enum(meta)` **Added**\n* `open_router.presets.create_presets_chat_completions()`: \n * `request.provider.ignore[].union(ProviderName).enum(meta)` **Added**\n* `open_router.presets.create_presets_messages()`: \n * `request.provider.ignore[].union(ProviderName).enum(meta)` **Added**\n* `open_router.presets.create_presets_responses()`: \n * `request.provider.ignore[].union(ProviderName).enum(meta)` **Added**\n* `open_router.rerank.rerank()`: \n * `request.provider.ignore[].union(ProviderName).enum(meta)` **Added**\n" diff --git a/.speakeasy/gen.yaml b/.speakeasy/gen.yaml index 4797430..b0c9bfe 100644 --- a/.speakeasy/gen.yaml +++ b/.speakeasy/gen.yaml @@ -36,7 +36,7 @@ generation: documentation: mintlify preApplyUnionDiscriminators: true python: - version: 0.11.22 + version: 0.11.23 additionalDependencies: dev: {} main: {} diff --git a/.speakeasy/out.openapi.yaml b/.speakeasy/out.openapi.yaml index 1eb104c..0423eaf 100644 --- a/.speakeasy/out.openapi.yaml +++ b/.speakeasy/out.openapi.yaml @@ -20531,10 +20531,10 @@ components: description: Text-to-speech request input example: input: Hello world - model: elevenlabs/eleven-turbo-v2 + model: mistralai/voxtral-mini-tts-2603 response_format: pcm speed: 1 - voice: alloy + voice: en_paul_neutral properties: input: description: Text to synthesize @@ -20542,7 +20542,7 @@ components: type: string model: description: TTS model identifier - example: elevenlabs/eleven-turbo-v2 + example: mistralai/voxtral-mini-tts-2603 type: string provider: description: Provider-specific passthrough configuration @@ -20567,7 +20567,7 @@ components: type: number voice: description: Voice identifier (provider-specific). - example: alloy + example: en_paul_neutral type: string required: - model @@ -24185,10 +24185,10 @@ paths: application/json: example: input: Hello world - model: elevenlabs/eleven-turbo-v2 + model: mistralai/voxtral-mini-tts-2603 response_format: pcm speed: 1 - voice: alloy + voice: en_paul_neutral schema: $ref: '#/components/schemas/SpeechRequest' required: true diff --git a/.speakeasy/workflow.lock b/.speakeasy/workflow.lock index 45ab314..ac79a9f 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:de69b2f9b07e26db9104e074f6c2efe678f98a34d8ad38f2c49e19979748896a - sourceBlobDigest: sha256:84fbbf832a15ad74f1815d7bceec21fec641147b3845a4b07810f1787bcc5625 + sourceRevisionDigest: sha256:91baf68600b99a1acb7cb48770bd8c65f2b52078522d9da36800b7643cafc19f + sourceBlobDigest: sha256:02edebbb16b70cdfd1a10bb719ff1031e41efca6d359d06417af23a8aea281cf tags: - latest - 1.0.0 @@ -11,10 +11,10 @@ targets: open-router: source: OpenRouter API sourceNamespace: open-router-chat-completions-api - sourceRevisionDigest: sha256:de69b2f9b07e26db9104e074f6c2efe678f98a34d8ad38f2c49e19979748896a - sourceBlobDigest: sha256:84fbbf832a15ad74f1815d7bceec21fec641147b3845a4b07810f1787bcc5625 + sourceRevisionDigest: sha256:91baf68600b99a1acb7cb48770bd8c65f2b52078522d9da36800b7643cafc19f + sourceBlobDigest: sha256:02edebbb16b70cdfd1a10bb719ff1031e41efca6d359d06417af23a8aea281cf codeSamplesNamespace: open-router-python-code-samples - codeSamplesRevisionDigest: sha256:f5f3107951a498aed04ec33877a0e8ec5dc1fcecf169f70fd3a3ce1db66f8dad + codeSamplesRevisionDigest: sha256:4d79cd30506971bb612d61d9874f75ba05d12922734d2c246672e3607f98b17b workflow: workflowVersion: 1.0.0 speakeasyVersion: 1.787.0 diff --git a/RELEASES.md b/RELEASES.md index 2728fbf..28a3ac2 100644 --- a/RELEASES.md +++ b/RELEASES.md @@ -328,4 +328,14 @@ Based on: ### Generated - [python v0.11.22] . ### Releases -- [PyPI v0.11.22] https://pypi.org/project/openrouter/0.11.22 - . \ No newline at end of file +- [PyPI v0.11.22] https://pypi.org/project/openrouter/0.11.22 - . + +## 2026-07-12 16:36:57 +### Changes +Based on: +- OpenAPI Doc +- Speakeasy CLI 1.787.0 (2.914.0) https://github.com/speakeasy-api/speakeasy +### Generated +- [python v0.11.23] . +### Releases +- [PyPI v0.11.23] https://pypi.org/project/openrouter/0.11.23 - . \ No newline at end of file diff --git a/docs/components/speechrequest.mdx b/docs/components/speechrequest.mdx index b16289c..de4caac 100644 --- a/docs/components/speechrequest.mdx +++ b/docs/components/speechrequest.mdx @@ -10,8 +10,8 @@ Text-to-speech request input | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | | `input` | *str* | :heavy_check_mark: | Text to synthesize | Hello world | -| `model` | *str* | :heavy_check_mark: | TTS model identifier | elevenlabs/eleven-turbo-v2 | +| `model` | *str* | :heavy_check_mark: | TTS model identifier | mistralai/voxtral-mini-tts-2603 | | `provider` | [Optional[components.SpeechRequestProvider]](../components/speechrequestprovider.mdx) | :heavy_minus_sign: | Provider-specific passthrough configuration | | | `response_format` | [Optional[components.SpeechRequestResponseFormat]](../components/speechrequestresponseformat.mdx) | :heavy_minus_sign: | Audio output format | pcm | | `speed` | *Optional[float]* | :heavy_minus_sign: | Playback speed multiplier. Only used by models that support it (e.g. OpenAI TTS). Ignored by other providers. | 1 | -| `voice` | *str* | :heavy_check_mark: | Voice identifier (provider-specific). | alloy | \ No newline at end of file +| `voice` | *str* | :heavy_check_mark: | Voice identifier (provider-specific). | en_paul_neutral | \ No newline at end of file diff --git a/docs/operations/createaudiospeechrequest.mdx b/docs/operations/createaudiospeechrequest.mdx index 176fe25..a9aaac3 100644 --- a/docs/operations/createaudiospeechrequest.mdx +++ b/docs/operations/createaudiospeechrequest.mdx @@ -9,4 +9,4 @@ title: "CreateAudioSpeechRequest" | `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.
| | -| `speech_request` | [components.SpeechRequest](../components/speechrequest.mdx) | :heavy_check_mark: | N/A | \{
"input": "Hello world",
"model": "elevenlabs/eleven-turbo-v2",
"response_format": "pcm",
"speed": 1,
"voice": "alloy"
} | \ No newline at end of file +| `speech_request` | [components.SpeechRequest](../components/speechrequest.mdx) | :heavy_check_mark: | N/A | \{
"input": "Hello world",
"model": "mistralai/voxtral-mini-tts-2603",
"response_format": "pcm",
"speed": 1,
"voice": "en_paul_neutral"
} | \ No newline at end of file diff --git a/docs/sdks/tts/README.mdx b/docs/sdks/tts/README.mdx index dca713a..f02ae88 100644 --- a/docs/sdks/tts/README.mdx +++ b/docs/sdks/tts/README.mdx @@ -29,7 +29,7 @@ with OpenRouter( api_key=os.getenv("OPENROUTER_API_KEY", ""), ) as open_router: - res = open_router.tts.create_speech(input="Hello world", model="elevenlabs/eleven-turbo-v2", voice="alloy", response_format="pcm", speed=1) + res = open_router.tts.create_speech(input="Hello world", model="mistralai/voxtral-mini-tts-2603", voice="en_paul_neutral", response_format="pcm", speed=1) # Handle response print(res) @@ -41,8 +41,8 @@ with OpenRouter( | Parameter | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- | | `input` | *str* | :heavy_check_mark: | Text to synthesize | Hello world | -| `model` | *str* | :heavy_check_mark: | TTS model identifier | elevenlabs/eleven-turbo-v2 | -| `voice` | *str* | :heavy_check_mark: | Voice identifier (provider-specific). | alloy | +| `model` | *str* | :heavy_check_mark: | TTS model identifier | mistralai/voxtral-mini-tts-2603 | +| `voice` | *str* | :heavy_check_mark: | Voice identifier (provider-specific). | en_paul_neutral | | `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.
| | diff --git a/pyproject.toml b/pyproject.toml index 93ce03b..6c7ed42 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "openrouter" -version = "0.11.22" +version = "0.11.23" 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 2310169..4008986 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.22" +__version__: str = "0.11.23" __openapi_doc_version__: str = "1.0.0" __gen_version__: str = "2.914.0" -__user_agent__: str = "speakeasy-sdk/python 0.11.22 2.914.0 1.0.0 openrouter" +__user_agent__: str = "speakeasy-sdk/python 0.11.23 2.914.0 1.0.0 openrouter" try: if __package__ is not None: diff --git a/uv.lock b/uv.lock index 63bad3f..78390fc 100644 --- a/uv.lock +++ b/uv.lock @@ -213,7 +213,7 @@ wheels = [ [[package]] name = "openrouter" -version = "0.11.22" +version = "0.11.23" source = { editable = "." } dependencies = [ { name = "httpcore" },