Compare commits

...
4 Commits
Author SHA1 Message Date
github-actions[bot]GitHubspeakeasybotspeakeasy-github[bot] <128539517+speakeasy-github[bot]@users.noreply.github.com>
e1b89f5aaf chore: 🐝 Update SDK - Generate (spec change merged) 0.10.4 (#372)
Co-authored-by: speakeasybot <bot@speakeasyapi.dev>
Co-authored-by: speakeasy-github[bot] <128539517+speakeasy-github[bot]@users.noreply.github.com>
2026-06-26 12:10:48 +00:00
32dd522d5a chore: update OpenAPI spec from monorepo (#371)
Co-authored-by: OpenRouter SDK Bot <sdk-bot@openrouter.ai>
2026-06-26 12:04:34 +00:00
github-actions[bot]GitHubspeakeasybotspeakeasy-github[bot] <128539517+speakeasy-github[bot]@users.noreply.github.com>
eeb0373033 chore: 🐝 Update SDK - Generate (spec change merged) 0.10.3 (#370)
Co-authored-by: speakeasybot <bot@speakeasyapi.dev>
Co-authored-by: speakeasy-github[bot] <128539517+speakeasy-github[bot]@users.noreply.github.com>
2026-06-26 00:20:39 +00:00
facade7d00 chore: update OpenAPI spec from monorepo (#369)
Co-authored-by: OpenRouter SDK Bot <sdk-bot@openrouter.ai>
2026-06-26 00:14:27 +00:00
15 changed files with 169 additions and 78 deletions
+29 -26
View File
@@ -1,19 +1,19 @@
lockVersion: 2.0.0
id: c48cf606-fb42-4a45-9c23-8f0555307828
management:
docChecksum: e1b90a6bfd6ac5ba387e90d8bde5c5da
docChecksum: 4fd4fe0bf7a8196c9e7a6eee1fe4a414
docVersion: 1.0.0
speakeasyVersion: 1.680.0
generationVersion: 2.788.4
releaseVersion: 0.10.2
configChecksum: 673c177f4ade5ed7081f80e54b377efb
releaseVersion: 0.10.4
configChecksum: d9fd2d1bfcce20e4901d52e81a6f5ca7
repoURL: https://github.com/OpenRouterTeam/python-sdk.git
installationURL: https://github.com/OpenRouterTeam/python-sdk.git
published: true
persistentEdits:
generation_id: 0dfeefb4-3077-4ada-9493-b1c27db7302b
pristine_commit_hash: eaff66d4cff11e0b7fad3b3a37a4b91124c2443e
pristine_tree_hash: a917f83ab81dc35cd911b68dd0004e00797a509f
generation_id: 1ddaf948-46a3-4ca5-ade1-ab900963fba9
pristine_commit_hash: 3b78ff10c1872eac23efd487850624634d4f25b5
pristine_tree_hash: 1f1b736777953b5a4861091f9b22733093fc9946
features:
python:
acceptHeaders: 3.0.0
@@ -2046,8 +2046,8 @@ trackedFiles:
pristine_git_object: 841d9210013aa9eac24702237c16d0aca12a985f
docs/components/imagegencompletedevent.md:
id: 43f5718fe2c2
last_write_checksum: sha1:650b4752a08040461390f10b30ceda0b5df1f0bb
pristine_git_object: 33b0307acdb1bf725cd89c5adb39eb3e110ff876
last_write_checksum: sha1:c69ebcd923faf4b7831c70ca19a62992006804c4
pristine_git_object: 683545f58a32d3174edc2548652516d446f31cfb
docs/components/imagegencompletedeventtype.md:
id: 84e07b20590e
last_write_checksum: sha1:2c301f011ef720a3d8c561c8823bcfb982934d16
@@ -2090,8 +2090,8 @@ trackedFiles:
pristine_git_object: a921a4c4cd5f75c926ba03263469315a14537160
docs/components/imagegenerationresponsedata.md:
id: 6a33b08924d8
last_write_checksum: sha1:ddb47b0ec0e5854effe56ca1989b8206e0d7b56a
pristine_git_object: c80a572552036e143d3b8827a84011d5f62083e9
last_write_checksum: sha1:e6df003afd8f77d5e98b6720c825818c229d4cee
pristine_git_object: bd99f56bb2c6f10a7f26e49dc81bf00a6436fe99
docs/components/imagegenerationservertool.md:
id: 0ddff7f46134
last_write_checksum: sha1:02ee9876107578bd27eb9ba811439416b9e76a63
@@ -3750,8 +3750,8 @@ trackedFiles:
pristine_git_object: 685705c19f968d6408d3bfc3d398eddb2ef5e52a
docs/components/pricing.md:
id: 15dca753d9eb
last_write_checksum: sha1:92a5a42a7f29a05c1921015aa66655376e70bc2b
pristine_git_object: f17583ae89f52fb3d7dadad5c0bc45c7a3f9c024
last_write_checksum: sha1:80bb9085218cbe75ef0623b86bc9f52a354b0722
pristine_git_object: 69ac72cf96ac924243230189563bbe6a6dcdfc6c
docs/components/promptinjectionscanscope.md:
id: 285ea7802dcd
last_write_checksum: sha1:0fff83f064f6699f5a86c5068423c646a9fca69e
@@ -3798,8 +3798,8 @@ trackedFiles:
pristine_git_object: 7d0edd22dafe693920f18e0c0c99b852c6b3bb57
docs/components/publicpricing.md:
id: 9d43651da8ad
last_write_checksum: sha1:13014946ed9c08e7c36a2681efb896bedf068982
pristine_git_object: 9a1cecc7d832d812bef93c49a9340c29cf4e816b
last_write_checksum: sha1:a0307105d112c890670088159350ed59040629a8
pristine_git_object: 0746b9999a7aa39ce957aef7cf72235cba2f16a8
docs/components/quantization.md:
id: 0d17b4a78828
last_write_checksum: sha1:992ee3fdd0f4e09c9f6e6426c413841fe34a86a5
@@ -6338,8 +6338,8 @@ trackedFiles:
pristine_git_object: 3e38f1a929f7d6b1d6de74604aa87e3d8f010544
pyproject.toml:
id: 5d07e7d72637
last_write_checksum: sha1:4733c52f40b0a81f99ce289daf116a14cf25a2d6
pristine_git_object: 80031d573d26edca6e5993a5df7e5c451257f494
last_write_checksum: sha1:dbca7fc02146c1734921186c4d38c7b79d45ee20
pristine_git_object: 3810cc8259ef5c9b898e032d02eab740e919cebc
scripts/prepare_readme.py:
id: e0c5957a6035
last_write_checksum: sha1:77f44b60b98bc126557ec27391f91dfba764bb54
@@ -6366,8 +6366,8 @@ trackedFiles:
pristine_git_object: 07ace03229fd3267623c8f48665d2c3a67c3565d
src/openrouter/_version.py:
id: d8d15ad6c586
last_write_checksum: sha1:f4418a5cd8b01a66275a34ce883bde034a374b6f
pristine_git_object: e430f99bd620087545d621221f2edb100d471289
last_write_checksum: sha1:d0f7c11c8db041c0c822a9857f4f223ba128b10a
pristine_git_object: 3e75c5a73c2aa5f3313e1e19e11dfcb685f958e3
src/openrouter/analytics.py:
id: cb406b5aaabb
last_write_checksum: sha1:6d47d1ab3da9cb4ac9f0a2bfe442f1a82a614f35
@@ -7326,16 +7326,16 @@ trackedFiles:
pristine_git_object: 5f17d77c25a82ad2bf7b1211d05ee665b6fee35a
src/openrouter/components/imagegencompletedevent.py:
id: 7a791a02cb5b
last_write_checksum: sha1:2e5822401bac22b5936ed4787b3d648eed60e725
pristine_git_object: e5907de80032821f54ab0829729f137497b6f289
last_write_checksum: sha1:df249afb22b4d56c3493cf8ec506e7ecf06402a6
pristine_git_object: e767efe399701e27924a1fa2e98d44d78e3715a1
src/openrouter/components/imagegenerationrequest.py:
id: f8291a7be9a0
last_write_checksum: sha1:bd9bc81281c9d034120f86b0eee96ed00ff38cce
pristine_git_object: cd035aaead03f8181da12b8635f23fa7688d727f
src/openrouter/components/imagegenerationresponse.py:
id: 53354cd0cbfc
last_write_checksum: sha1:e1c531b4a761668151800f450b82dfab0da00f77
pristine_git_object: deb67493a8ace61abf039d5d6d46b33e37a7c66c
last_write_checksum: sha1:073a770f1574629ec4e8ae59f6a365fbca9ace3f
pristine_git_object: 64b059a152dab4754cdece4fb2021249f76444a7
src/openrouter/components/imagegenerationservertool.py:
id: 9c95bc975f2e
last_write_checksum: sha1:b7e0d9db78b0b7662cd34a31e593842cea5ef990
@@ -7994,12 +7994,12 @@ trackedFiles:
pristine_git_object: 4e1073b4e3c10943c7035376f9984cd6559653a2
src/openrouter/components/publicendpoint.py:
id: 848aa2ef9129
last_write_checksum: sha1:f47947e66b99be6c16bc081af2070cd7d6c7c0f3
pristine_git_object: 7291ca05ec0df5d1d50be060b6c0298a1a2ec45e
last_write_checksum: sha1:2e389b5e4301174b4c8aaa5e0c679d6872ddd67e
pristine_git_object: a7d3e523472feb11203aa79bd081fa87c0ed6503
src/openrouter/components/publicpricing.py:
id: 96d115d83cc5
last_write_checksum: sha1:0b8d39c8f1fda9cbc932a390d89e93b87105f35e
pristine_git_object: 8ee0045ca6378f37b87715e3bf39148a7a8f0ed4
last_write_checksum: sha1:1980193d2339dc13b08d1caabb235b0b8bcb8ce3
pristine_git_object: 09a1bdd6ec5d204533288516de6d01ae20be218f
src/openrouter/components/quantization.py:
id: bde317b3d703
last_write_checksum: sha1:96b042899bfb818f20d282be76ad37fc948a599d
@@ -10559,3 +10559,6 @@ examples:
"500":
application/json: {"error": {"code": 500, "message": "Internal Server Error"}}
examplesVersion: 1.0.2
releaseNotes: |
## Python SDK Changes:
* `open_router.images.generate()`: `response` **Changed**
+1 -1
View File
@@ -32,7 +32,7 @@ generation:
skipResponseBodyAssertions: false
preApplyUnionDiscriminators: true
python:
version: 0.10.2
version: 0.10.4
additionalDependencies:
dev: {}
main: {}
+28 -2
View File
@@ -9315,6 +9315,12 @@ components:
created:
description: Unix timestamp (seconds) when the image was generated
type: integer
media_type:
description: >-
Media type (MIME type) of the image. Omitted when the output is a standard raster format (PNG). Present for
non-raster outputs such as SVG (`image/svg+xml`).
example: image/svg+xml
type: string
type:
description: The event type
enum:
@@ -9474,6 +9480,12 @@ components:
b64_json:
description: Base64-encoded image bytes
type: string
media_type:
description: >-
Media type (MIME type) of the image. Omitted when the output is a standard raster format (PNG).
Present for non-raster outputs such as SVG (`image/svg+xml`).
example: image/svg+xml
type: string
required:
- b64_json
type: object
@@ -18888,7 +18900,14 @@ components:
description: Price in USD per cached input token (read)
type: string
input_cache_write:
description: Price in USD per cached input token (write)
description: >-
Price per cache-write token, in USD per token. For providers with multiple cache TTLs (e.g. Anthropic),
this is the default (5-minute) cache-write rate.
type: string
input_cache_write_1h:
description: >-
Price per 1-hour cache-write token, in USD per token. Only present for providers that price an extended
(1-hour) cache TTL separately, such as Anthropic.
type: string
internal_reasoning:
description: Price in USD per internal reasoning token
@@ -19005,7 +19024,14 @@ components:
description: Price in USD per cached input token (read)
type: string
input_cache_write:
description: Price in USD per cached input token (write)
description: >-
Price per cache-write token, in USD per token. For providers with multiple cache TTLs (e.g. Anthropic), this
is the default (5-minute) cache-write rate.
type: string
input_cache_write_1h:
description: >-
Price per 1-hour cache-write token, in USD per token. Only present for providers that price an extended
(1-hour) cache TTL separately, such as Anthropic.
type: string
internal_reasoning:
description: Price in USD per internal reasoning token
+22 -2
View File
@@ -9262,6 +9262,11 @@ components:
created:
description: Unix timestamp (seconds) when the image was generated
type: integer
media_type:
description: >-
Media type (MIME type) of the image. Omitted when the output is a standard raster format (PNG). Present for non-raster outputs such as SVG (`image/svg+xml`).
example: image/svg+xml
type: string
type:
description: The event type
enum:
@@ -9420,6 +9425,11 @@ components:
b64_json:
description: Base64-encoded image bytes
type: string
media_type:
description: >-
Media type (MIME type) of the image. Omitted when the output is a standard raster format (PNG). Present for non-raster outputs such as SVG (`image/svg+xml`).
example: image/svg+xml
type: string
required:
- b64_json
type: object
@@ -18790,7 +18800,12 @@ components:
description: Price in USD per cached input token (read)
type: string
input_cache_write:
description: Price in USD per cached input token (write)
description: >-
Price per cache-write token, in USD per token. For providers with multiple cache TTLs (e.g. Anthropic), this is the default (5-minute) cache-write rate.
type: string
input_cache_write_1h:
description: >-
Price per 1-hour cache-write token, in USD per token. Only present for providers that price an extended (1-hour) cache TTL separately, such as Anthropic.
type: string
internal_reasoning:
description: Price in USD per internal reasoning token
@@ -18902,7 +18917,12 @@ components:
description: Price in USD per cached input token (read)
type: string
input_cache_write:
description: Price in USD per cached input token (write)
description: >-
Price per cache-write token, in USD per token. For providers with multiple cache TTLs (e.g. Anthropic), this is the default (5-minute) cache-write rate.
type: string
input_cache_write_1h:
description: >-
Price per 1-hour cache-write token, in USD per token. Only present for providers that price an extended (1-hour) cache TTL separately, such as Anthropic.
type: string
internal_reasoning:
description: Price in USD per internal reasoning token
+6 -6
View File
@@ -2,20 +2,20 @@ speakeasyVersion: 1.680.0
sources:
OpenRouter API:
sourceNamespace: open-router-chat-completions-api
sourceRevisionDigest: sha256:200f4947503f8ac09ca9b8cfad127f20bd1f7afe489a3d08d562aaedea63b740
sourceBlobDigest: sha256:6fd3f95fe103e9cbf7ed293aadaa0d7351e89bc1d6456536f09b0a645cbe3278
sourceRevisionDigest: sha256:04b1417598cd30a7ea0db043f95705d05abee22a86750cb49d1f872ff0aac1a0
sourceBlobDigest: sha256:8af92c8bafad9bb39a0d61b02a3ac2a6002ba1f37a620db676a62529f844cf7c
tags:
- latest
- speakeasy-sdk-regen-1782426538
- speakeasy-sdk-regen-1782475583
- 1.0.0
targets:
open-router:
source: OpenRouter API
sourceNamespace: open-router-chat-completions-api
sourceRevisionDigest: sha256:200f4947503f8ac09ca9b8cfad127f20bd1f7afe489a3d08d562aaedea63b740
sourceBlobDigest: sha256:6fd3f95fe103e9cbf7ed293aadaa0d7351e89bc1d6456536f09b0a645cbe3278
sourceRevisionDigest: sha256:04b1417598cd30a7ea0db043f95705d05abee22a86750cb49d1f872ff0aac1a0
sourceBlobDigest: sha256:8af92c8bafad9bb39a0d61b02a3ac2a6002ba1f37a620db676a62529f844cf7c
codeSamplesNamespace: open-router-python-code-samples
codeSamplesRevisionDigest: sha256:b0d6c032910cacfbba687cc29e3a3d038cc68abb8de505bd25f44c5064263205
codeSamplesRevisionDigest: sha256:9eb822c39464f6b8ff4cbbe3e2f0bacc6abed49eea905c340948a45c826f7dc0
workflow:
workflowVersion: 1.0.0
speakeasyVersion: 1.680.0
+21 -1
View File
@@ -48,4 +48,24 @@ Based on:
### Generated
- [python v0.10.2] .
### Releases
- [PyPI v0.10.2] https://pypi.org/project/openrouter/0.10.2 - .
- [PyPI v0.10.2] https://pypi.org/project/openrouter/0.10.2 - .
## 2026-06-26 00:15:50
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.680.0 (2.788.4) https://github.com/speakeasy-api/speakeasy
### Generated
- [python v0.10.3] .
### Releases
- [PyPI v0.10.3] https://pypi.org/project/openrouter/0.10.3 - .
## 2026-06-26 12:06:01
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.680.0 (2.788.4) https://github.com/speakeasy-api/speakeasy
### Generated
- [python v0.10.4] .
### Releases
- [PyPI v0.10.4] https://pypi.org/project/openrouter/0.10.4 - .
+17 -16
View File
@@ -3,19 +3,20 @@
## Fields
| Field | Type | Required | Description |
| ----------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- |
| `audio` | *Optional[str]* | :heavy_minus_sign: | Price in USD per audio input token |
| `audio_output` | *Optional[str]* | :heavy_minus_sign: | Price in USD per audio output token |
| `completion` | *str* | :heavy_check_mark: | Price in USD per token for completion (output) generation |
| `discount` | *Optional[float]* | :heavy_minus_sign: | Fractional discount applied to this endpoint's pricing; the price is multiplied by (1 - discount) (0 = no discount, 1 = free) |
| `image` | *Optional[str]* | :heavy_minus_sign: | Price in USD per input image |
| `image_output` | *Optional[str]* | :heavy_minus_sign: | Price in USD per output image |
| `image_token` | *Optional[str]* | :heavy_minus_sign: | Price in USD per image token |
| `input_audio_cache` | *Optional[str]* | :heavy_minus_sign: | Price in USD per cached audio input token |
| `input_cache_read` | *Optional[str]* | :heavy_minus_sign: | Price in USD per cached input token (read) |
| `input_cache_write` | *Optional[str]* | :heavy_minus_sign: | Price in USD per cached input token (write) |
| `internal_reasoning` | *Optional[str]* | :heavy_minus_sign: | Price in USD per internal reasoning token |
| `prompt` | *str* | :heavy_check_mark: | Price in USD per token for prompt (input) processing |
| `request` | *Optional[str]* | :heavy_minus_sign: | Price in USD per request |
| `web_search` | *Optional[str]* | :heavy_minus_sign: | Price in USD per web search |
| Field | Type | Required | Description |
| --------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `audio` | *Optional[str]* | :heavy_minus_sign: | Price in USD per audio input token |
| `audio_output` | *Optional[str]* | :heavy_minus_sign: | Price in USD per audio output token |
| `completion` | *str* | :heavy_check_mark: | Price in USD per token for completion (output) generation |
| `discount` | *Optional[float]* | :heavy_minus_sign: | Fractional discount applied to this endpoint's pricing; the price is multiplied by (1 - discount) (0 = no discount, 1 = free) |
| `image` | *Optional[str]* | :heavy_minus_sign: | Price in USD per input image |
| `image_output` | *Optional[str]* | :heavy_minus_sign: | Price in USD per output image |
| `image_token` | *Optional[str]* | :heavy_minus_sign: | Price in USD per image token |
| `input_audio_cache` | *Optional[str]* | :heavy_minus_sign: | Price in USD per cached audio input token |
| `input_cache_read` | *Optional[str]* | :heavy_minus_sign: | Price in USD per cached input token (read) |
| `input_cache_write` | *Optional[str]* | :heavy_minus_sign: | Price per cache-write token, in USD per token. For providers with multiple cache TTLs (e.g. Anthropic), this is the default (5-minute) cache-write rate. |
| `input_cache_write_1h` | *Optional[str]* | :heavy_minus_sign: | Price per 1-hour cache-write token, in USD per token. Only present for providers that price an extended (1-hour) cache TTL separately, such as Anthropic. |
| `internal_reasoning` | *Optional[str]* | :heavy_minus_sign: | Price in USD per internal reasoning token |
| `prompt` | *str* | :heavy_check_mark: | Price in USD per token for prompt (input) processing |
| `request` | *Optional[str]* | :heavy_minus_sign: | Price in USD per request |
| `web_search` | *Optional[str]* | :heavy_minus_sign: | Price in USD per web search |
+17 -16
View File
@@ -5,19 +5,20 @@ Pricing information for the model
## Fields
| Field | Type | Required | Description |
| ----------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- |
| `audio` | *Optional[str]* | :heavy_minus_sign: | Price in USD per audio input token |
| `audio_output` | *Optional[str]* | :heavy_minus_sign: | Price in USD per audio output token |
| `completion` | *str* | :heavy_check_mark: | Price in USD per token for completion (output) generation |
| `discount` | *Optional[float]* | :heavy_minus_sign: | Fractional discount applied to this endpoint's pricing; the price is multiplied by (1 - discount) (0 = no discount, 1 = free) |
| `image` | *Optional[str]* | :heavy_minus_sign: | Price in USD per input image |
| `image_output` | *Optional[str]* | :heavy_minus_sign: | Price in USD per output image |
| `image_token` | *Optional[str]* | :heavy_minus_sign: | Price in USD per image token |
| `input_audio_cache` | *Optional[str]* | :heavy_minus_sign: | Price in USD per cached audio input token |
| `input_cache_read` | *Optional[str]* | :heavy_minus_sign: | Price in USD per cached input token (read) |
| `input_cache_write` | *Optional[str]* | :heavy_minus_sign: | Price in USD per cached input token (write) |
| `internal_reasoning` | *Optional[str]* | :heavy_minus_sign: | Price in USD per internal reasoning token |
| `prompt` | *str* | :heavy_check_mark: | Price in USD per token for prompt (input) processing |
| `request` | *Optional[str]* | :heavy_minus_sign: | Price in USD per request |
| `web_search` | *Optional[str]* | :heavy_minus_sign: | Price in USD per web search |
| Field | Type | Required | Description |
| --------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `audio` | *Optional[str]* | :heavy_minus_sign: | Price in USD per audio input token |
| `audio_output` | *Optional[str]* | :heavy_minus_sign: | Price in USD per audio output token |
| `completion` | *str* | :heavy_check_mark: | Price in USD per token for completion (output) generation |
| `discount` | *Optional[float]* | :heavy_minus_sign: | Fractional discount applied to this endpoint's pricing; the price is multiplied by (1 - discount) (0 = no discount, 1 = free) |
| `image` | *Optional[str]* | :heavy_minus_sign: | Price in USD per input image |
| `image_output` | *Optional[str]* | :heavy_minus_sign: | Price in USD per output image |
| `image_token` | *Optional[str]* | :heavy_minus_sign: | Price in USD per image token |
| `input_audio_cache` | *Optional[str]* | :heavy_minus_sign: | Price in USD per cached audio input token |
| `input_cache_read` | *Optional[str]* | :heavy_minus_sign: | Price in USD per cached input token (read) |
| `input_cache_write` | *Optional[str]* | :heavy_minus_sign: | Price per cache-write token, in USD per token. For providers with multiple cache TTLs (e.g. Anthropic), this is the default (5-minute) cache-write rate. |
| `input_cache_write_1h` | *Optional[str]* | :heavy_minus_sign: | Price per 1-hour cache-write token, in USD per token. Only present for providers that price an extended (1-hour) cache TTL separately, such as Anthropic. |
| `internal_reasoning` | *Optional[str]* | :heavy_minus_sign: | Price in USD per internal reasoning token |
| `prompt` | *str* | :heavy_check_mark: | Price in USD per token for prompt (input) processing |
| `request` | *Optional[str]* | :heavy_minus_sign: | Price in USD per request |
| `web_search` | *Optional[str]* | :heavy_minus_sign: | Price in USD per web search |
+1 -1
View File
@@ -1,6 +1,6 @@
[project]
name = "openrouter"
version = "0.10.2"
version = "0.10.4"
description = "Official Python Client SDK for OpenRouter."
authors = [{ name = "OpenRouter" },]
readme = "README-PYPI.md"
+2 -2
View File
@@ -3,10 +3,10 @@
import importlib.metadata
__title__: str = "openrouter"
__version__: str = "0.10.2"
__version__: str = "0.10.4"
__openapi_doc_version__: str = "1.0.0"
__gen_version__: str = "2.788.4"
__user_agent__: str = "speakeasy-sdk/python 0.10.2 2.788.4 1.0.0 openrouter"
__user_agent__: str = "speakeasy-sdk/python 0.10.4 2.788.4 1.0.0 openrouter"
try:
if __package__ is not None:
@@ -20,6 +20,8 @@ class ImageGenCompletedEventTypedDict(TypedDict):
r"""Unix timestamp (seconds) when the image was generated"""
type: ImageGenCompletedEventType
r"""The event type"""
media_type: NotRequired[str]
r"""Media type (MIME type) of the image. Omitted when the output is a standard raster format (PNG). Present for non-raster outputs such as SVG (`image/svg+xml`)."""
usage: NotRequired[ImageGenerationUsageTypedDict]
r"""Token and cost usage for the image generation request, when available"""
@@ -36,5 +38,8 @@ class ImageGenCompletedEvent(BaseModel):
type: ImageGenCompletedEventType
r"""The event type"""
media_type: Optional[str] = None
r"""Media type (MIME type) of the image. Omitted when the output is a standard raster format (PNG). Present for non-raster outputs such as SVG (`image/svg+xml`)."""
usage: Optional[ImageGenerationUsage] = None
r"""Token and cost usage for the image generation request, when available"""
@@ -10,12 +10,17 @@ from typing_extensions import NotRequired, TypedDict
class ImageGenerationResponseDataTypedDict(TypedDict):
b64_json: str
r"""Base64-encoded image bytes"""
media_type: NotRequired[str]
r"""Media type (MIME type) of the image. Omitted when the output is a standard raster format (PNG). Present for non-raster outputs such as SVG (`image/svg+xml`)."""
class ImageGenerationResponseData(BaseModel):
b64_json: str
r"""Base64-encoded image bytes"""
media_type: Optional[str] = None
r"""Media type (MIME type) of the image. Omitted when the output is a standard raster format (PNG). Present for non-raster outputs such as SVG (`image/svg+xml`)."""
class ImageGenerationResponseTypedDict(TypedDict):
r"""Image generation response"""
+7 -2
View File
@@ -35,7 +35,9 @@ class PricingTypedDict(TypedDict):
input_cache_read: NotRequired[str]
r"""Price in USD per cached input token (read)"""
input_cache_write: NotRequired[str]
r"""Price in USD per cached input token (write)"""
r"""Price per cache-write token, in USD per token. For providers with multiple cache TTLs (e.g. Anthropic), this is the default (5-minute) cache-write rate."""
input_cache_write_1h: NotRequired[str]
r"""Price per 1-hour cache-write token, in USD per token. Only present for providers that price an extended (1-hour) cache TTL separately, such as Anthropic."""
internal_reasoning: NotRequired[str]
r"""Price in USD per internal reasoning token"""
request: NotRequired[str]
@@ -76,7 +78,10 @@ class Pricing(BaseModel):
r"""Price in USD per cached input token (read)"""
input_cache_write: Optional[str] = None
r"""Price in USD per cached input token (write)"""
r"""Price per cache-write token, in USD per token. For providers with multiple cache TTLs (e.g. Anthropic), this is the default (5-minute) cache-write rate."""
input_cache_write_1h: Optional[str] = None
r"""Price per 1-hour cache-write token, in USD per token. Only present for providers that price an extended (1-hour) cache TTL separately, such as Anthropic."""
internal_reasoning: Optional[str] = None
r"""Price in USD per internal reasoning token"""
+7 -2
View File
@@ -30,7 +30,9 @@ class PublicPricingTypedDict(TypedDict):
input_cache_read: NotRequired[str]
r"""Price in USD per cached input token (read)"""
input_cache_write: NotRequired[str]
r"""Price in USD per cached input token (write)"""
r"""Price per cache-write token, in USD per token. For providers with multiple cache TTLs (e.g. Anthropic), this is the default (5-minute) cache-write rate."""
input_cache_write_1h: NotRequired[str]
r"""Price per 1-hour cache-write token, in USD per token. Only present for providers that price an extended (1-hour) cache TTL separately, such as Anthropic."""
internal_reasoning: NotRequired[str]
r"""Price in USD per internal reasoning token"""
request: NotRequired[str]
@@ -73,7 +75,10 @@ class PublicPricing(BaseModel):
r"""Price in USD per cached input token (read)"""
input_cache_write: Optional[str] = None
r"""Price in USD per cached input token (write)"""
r"""Price per cache-write token, in USD per token. For providers with multiple cache TTLs (e.g. Anthropic), this is the default (5-minute) cache-write rate."""
input_cache_write_1h: Optional[str] = None
r"""Price per 1-hour cache-write token, in USD per token. Only present for providers that price an extended (1-hour) cache TTL separately, such as Anthropic."""
internal_reasoning: Optional[str] = None
r"""Price in USD per internal reasoning token"""
Generated
+1 -1
View File
@@ -220,7 +220,7 @@ wheels = [
[[package]]
name = "openrouter"
version = "0.10.2"
version = "0.10.4"
source = { editable = "." }
dependencies = [
{ name = "httpcore" },