Compare commits

...
12 Commits
Author SHA1 Message Date
github-actions[bot]GitHubspeakeasybotspeakeasy-github[bot] <128539517+speakeasy-github[bot]@users.noreply.github.com>
10f2890d75 chore: 🐝 Update SDK - Generate (spec change merged) 0.10.7 (#378)
Co-authored-by: speakeasybot <bot@speakeasyapi.dev>
Co-authored-by: speakeasy-github[bot] <128539517+speakeasy-github[bot]@users.noreply.github.com>
2026-06-26 23:48:17 +00:00
ad1cfda1f4 chore: update OpenAPI spec from monorepo (#377)
Co-authored-by: OpenRouter SDK Bot <sdk-bot@openrouter.ai>
2026-06-26 23:42:21 +00:00
github-actions[bot]GitHubspeakeasybotspeakeasy-github[bot] <128539517+speakeasy-github[bot]@users.noreply.github.com>
21020fb334 chore: 🐝 Update SDK - Generate (spec change merged) 0.10.6 (#376)
Co-authored-by: speakeasybot <bot@speakeasyapi.dev>
Co-authored-by: speakeasy-github[bot] <128539517+speakeasy-github[bot]@users.noreply.github.com>
2026-06-26 18:23:57 +00:00
a243d78d32 chore: update OpenAPI spec from monorepo (#375)
Co-authored-by: OpenRouter SDK Bot <sdk-bot@openrouter.ai>
2026-06-26 18:17:47 +00:00
github-actions[bot]GitHubspeakeasybotspeakeasy-github[bot] <128539517+speakeasy-github[bot]@users.noreply.github.com>
66512fa808 chore: 🐝 Update SDK - Generate (spec change merged) 0.10.5 (#374)
Co-authored-by: speakeasybot <bot@speakeasyapi.dev>
Co-authored-by: speakeasy-github[bot] <128539517+speakeasy-github[bot]@users.noreply.github.com>
2026-06-26 14:41:46 +00:00
7efd03fb3b chore: update OpenAPI spec from monorepo (#373)
Co-authored-by: OpenRouter SDK Bot <sdk-bot@openrouter.ai>
2026-06-26 14:35:36 +00:00
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
github-actions[bot]GitHubspeakeasybotspeakeasy-github[bot] <128539517+speakeasy-github[bot]@users.noreply.github.com>
08e796401a chore: 🐝 Update SDK - Generate (spec change merged) 0.10.2 (#368)
Co-authored-by: speakeasybot <bot@speakeasyapi.dev>
Co-authored-by: speakeasy-github[bot] <128539517+speakeasy-github[bot]@users.noreply.github.com>
2026-06-25 22:33:28 +00:00
f8e8ab669d chore: update OpenAPI spec from monorepo (#367)
Co-authored-by: OpenRouter SDK Bot <sdk-bot@openrouter.ai>
2026-06-25 22:27:08 +00:00
36 changed files with 644 additions and 373 deletions
+102 -93
View File
@@ -1,19 +1,19 @@
lockVersion: 2.0.0
id: c48cf606-fb42-4a45-9c23-8f0555307828
management:
docChecksum: 277b2709d437113b43fcdc406e3c4442
docChecksum: cddcae9b4e616315fb557df6404b4868
docVersion: 1.0.0
speakeasyVersion: 1.680.0
generationVersion: 2.788.4
releaseVersion: 0.10.1
configChecksum: b1687c127d87a1ac114b35dd9b492f3c
releaseVersion: 0.10.7
configChecksum: d7f0cac9aaaf632306fb2541355a2821
repoURL: https://github.com/OpenRouterTeam/python-sdk.git
installationURL: https://github.com/OpenRouterTeam/python-sdk.git
published: true
persistentEdits:
generation_id: 7445f129-ecfe-4ff4-b54d-4f9e27c9bb12
pristine_commit_hash: 24e0fd81404ca9b9cd9afc377950218983fd639b
pristine_tree_hash: ab5a87f29d3595a758a09c58a6074bd453723e21
generation_id: f0dde523-5fb9-45aa-ae0f-98c78b96933b
pristine_commit_hash: 790ef7ce291dde4bc6496b02effdafb41c0069bb
pristine_tree_hash: bb12a2f1ef846a84b308d3e30b03e081b9674a5e
features:
python:
acceptHeaders: 3.0.0
@@ -702,8 +702,8 @@ trackedFiles:
pristine_git_object: b4b8d797251e82804d823c25a93aa5116e292d5f
docs/components/byokproviderslug.md:
id: 73e588243967
last_write_checksum: sha1:4a77fc0d9fa1ce7f687ec483caaa927d7e7e1e75
pristine_git_object: 3e4b84561cc1233d6fcd750524a07c54c6ece242
last_write_checksum: sha1:6e85a868fdbea9db4233014f2f01ba5c86a51b65
pristine_git_object: 6ba1aa86c9a3c4f6fce12927c1efc8b798432f01
docs/components/caching.md:
id: 87fa8b1ac535
last_write_checksum: sha1:cd5e0704dcc4beb29c8e173b7d73365c27b1cb8e
@@ -1944,6 +1944,10 @@ trackedFiles:
id: 58ee513b0cad
last_write_checksum: sha1:2ec57cd7447b8eecdbe6fec744c22edb3a817999
pristine_git_object: c7121728c6509e3d02a0b431431f133067ca057d
docs/components/fusionsource.md:
id: 8e98a9da51e2
last_write_checksum: sha1:3e0611061189a883bfd2c1fad738798debb71e9a
pristine_git_object: 59ff3c09fff96145b369a5fe5165618810fa1076
docs/components/generationcontentdata.md:
id: 1085c488fd3a
last_write_checksum: sha1:186d3e8118f6d393d524a91e2ac06772a7eaf818
@@ -2046,16 +2050,16 @@ 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
pristine_git_object: a55fc00acede523cca610d646093deddf558b168
docs/components/imagegenerationrequest.md:
id: e9d8e330fcaa
last_write_checksum: sha1:dddd107f6e4742d210cf232c0f790ab89a767883
pristine_git_object: 554e79c04d916e93d56da8434958640791e87fea
last_write_checksum: sha1:f0bb2b63837fb668c14bac8f504d656aac257d5a
pristine_git_object: 4b35a0e9546566dff24eb12c7c8b6a173de63b0c
docs/components/imagegenerationrequestaspectratio.md:
id: 4362d9221e46
last_write_checksum: sha1:42f4b0d20c677cb8eeed1da4be0ba99b3949a092
@@ -2066,12 +2070,12 @@ trackedFiles:
pristine_git_object: e6a05256245f0e61a844854a79e3df7b614660e7
docs/components/imagegenerationrequestoptions.md:
id: c0b61720c268
last_write_checksum: sha1:54fc9c4e05c5d33e9f84c278a93979e0dfea24f8
pristine_git_object: 5f18d985446e527983d4c116c4c15f8ab642dc54
last_write_checksum: sha1:f9b967e71b8ecc7f3aeb97556d27e00bc09feacc
pristine_git_object: c8182577e9d32346d37eaf1c0a6e3dde7e5329d7
docs/components/imagegenerationrequestoutputformat.md:
id: e2b7dc215866
last_write_checksum: sha1:4b9a9b87036845d3ac7d1750f9f23ed0a89d9151
pristine_git_object: 6120e0a8081f9a2ed9a0c3606f7fe3d45d4e6f81
last_write_checksum: sha1:bbed0fcaa1458a6d761ae64bd4f6b54a583a801f
pristine_git_object: 5fb8cd251197d2bab3f86ab91e6e7f2bbe81d9e5
docs/components/imagegenerationrequestprovider.md:
id: 2718a263ac9d
last_write_checksum: sha1:cd79a69707ee0a6040570128b20dc122f9561c37
@@ -2090,8 +2094,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
@@ -2526,8 +2530,8 @@ trackedFiles:
pristine_git_object: cc928f671dcbde0ebe7ef10cef976333fa35cd68
docs/components/maxprice.md:
id: 15ed956070c8
last_write_checksum: sha1:a6b154896d64cb9feac8742b812bf40951867375
pristine_git_object: b932c8f3988960414d7cd0f2ac795f1cc3b58884
last_write_checksum: sha1:dcd7d78e509fde879074c55d18f52f244cd6bb35
pristine_git_object: fdbe77b802746a777199ba4780a1f2981cc3f7c8
docs/components/mcpapprovalrequestitem.md:
id: 0d3537b2e5c8
last_write_checksum: sha1:d2c00357d59374eee2845918d50ab5125d9583be
@@ -3346,8 +3350,8 @@ trackedFiles:
pristine_git_object: 31066e50f45a2f32c35d0389886757885704ea4a
docs/components/outputfusionservertoolitem.md:
id: 886e6be27ec2
last_write_checksum: sha1:9c957daab1d214aa7f9b997c451876c759de0eec
pristine_git_object: f16afb99ac514a2fa4b63fed2feea6226872a038
last_write_checksum: sha1:b3758081c485683416158c2f10c228958f60055b
pristine_git_object: be5e88a6f8bb73b9e2e7aaec2a8b4a84661e480f
docs/components/outputfusionservertoolitemtype.md:
id: 93233bb8c5d7
last_write_checksum: sha1:5e9a0f90c938eaa5fc231859f48f5b9673b6b00b
@@ -3750,20 +3754,20 @@ trackedFiles:
pristine_git_object: 685705c19f968d6408d3bfc3d398eddb2ef5e52a
docs/components/pricing.md:
id: 15dca753d9eb
last_write_checksum: sha1:11793d86b7506e8bfee21225071f1841bbb368ab
pristine_git_object: 084b83a2e83521084ef17c63e88007953e5d3170
last_write_checksum: sha1:80bb9085218cbe75ef0623b86bc9f52a354b0722
pristine_git_object: 69ac72cf96ac924243230189563bbe6a6dcdfc6c
docs/components/promptinjectionscanscope.md:
id: 285ea7802dcd
last_write_checksum: sha1:0fff83f064f6699f5a86c5068423c646a9fca69e
pristine_git_object: 02d5dcdfc5bec22a67a803487f4758df68ba098e
docs/components/providername.md:
id: fe24a77d9911
last_write_checksum: sha1:552665ddb99a8215f58362282c25c9c8b2d49465
pristine_git_object: 0dd68bf256c61f217507d1dc0d75be455e943c4d
last_write_checksum: sha1:9251a4df3259e1c6a63e4f7347262abbe0de59a3
pristine_git_object: 5f381792df185806eb19e6ebabd813a56ab43e86
docs/components/provideroptions.md:
id: 48594a6d2d81
last_write_checksum: sha1:ef3c6c58230710f89677c2e80fa5eef875172777
pristine_git_object: 08b4434c0d67ee45f592cf873a36ff79353f19db
last_write_checksum: sha1:c672b409e17f8ac6aa7af0bde839038550520947
pristine_git_object: fe43b8f18c5ca25745aa5eb9902aaa1399d96976
docs/components/provideroverloadedresponseerrordata.md:
id: c2a8cc4ec6df
last_write_checksum: sha1:1d206d00dc0d91b5ceec470579c6ce345cc23d29
@@ -3778,8 +3782,8 @@ trackedFiles:
pristine_git_object: 09beea2aedab445e726f20fb9a9d3ed5ebb4df25
docs/components/providerresponseprovidername.md:
id: 800bab487911
last_write_checksum: sha1:b01b16e578fc36f1706ac4bc9093855817a283fe
pristine_git_object: ed7da33f53789b0c569a6ce8da2e7f2484801128
last_write_checksum: sha1:87cfea6a4b25dd6af2a37db94b098f4657be99fa
pristine_git_object: 27b5b6256e9b4518068682241ac48ce193fb7cd9
docs/components/providersort.md:
id: 290449b1880f
last_write_checksum: sha1:f15d65e5c226a222c3bfc0b9f55dd9ca0443d415
@@ -3798,8 +3802,8 @@ trackedFiles:
pristine_git_object: 7d0edd22dafe693920f18e0c0c99b852c6b3bb57
docs/components/publicpricing.md:
id: 9d43651da8ad
last_write_checksum: sha1:c066038e95bcbaec6cb1eeb3b5657102c37ee5a7
pristine_git_object: b96d4af729e9e69d041122e88b11e82cd2db8878
last_write_checksum: sha1:a0307105d112c890670088159350ed59040629a8
pristine_git_object: 0746b9999a7aa39ce957aef7cf72235cba2f16a8
docs/components/quantization.md:
id: 0d17b4a78828
last_write_checksum: sha1:992ee3fdd0f4e09c9f6e6426c413841fe34a86a5
@@ -4838,8 +4842,8 @@ trackedFiles:
pristine_git_object: 16659f24b21051064e5fc6addbda9ebe73650a01
docs/components/videogenerationrequestoptions.md:
id: 6d200b026e3d
last_write_checksum: sha1:3ed5898d1a750d476ac949a3e82d9e01abc26f5d
pristine_git_object: 4607009dc8e6685134fd8410ff5941c4b6c99889
last_write_checksum: sha1:0b25700301c18aa273ec8f564d20e53064296e36
pristine_git_object: 91b1436ae06dcdd8b699bf8ea4f96c5daea1d027
docs/components/videogenerationrequestprovider.md:
id: e2a64e74f555
last_write_checksum: sha1:f0461ead71e8c146e9ba4fcfd1cdf3383828f125
@@ -6046,8 +6050,8 @@ trackedFiles:
pristine_git_object: 56c454715dfb32bf210dfe8031e7145fd4c2c83b
docs/operations/provider.md:
id: 9d89f101fabf
last_write_checksum: sha1:18773b116029fb2a2e3cd4dc0b87d15373243c6f
pristine_git_object: 494a1ff4769f30b08a0f87dcff232e9457eedc56
last_write_checksum: sha1:471f657da16aeb9befb08e98183f85eb92dba405
pristine_git_object: 487ab7b109aa3bbda8dc7e8f200e858f2771c629
docs/operations/queryanalyticsdata1.md:
id: f5ead5b95530
last_write_checksum: sha1:a55813c57010d0613c1e70ee1a9232fdcf98775c
@@ -6230,8 +6234,8 @@ trackedFiles:
pristine_git_object: 44f78122819ded7e472e28ebcf37dd8812707097
docs/sdks/apikeys/README.md:
id: e2bd25998427
last_write_checksum: sha1:82bec11fedf21eed760739e1adb08fec06239279
pristine_git_object: 6e72f51df9e9811cee424032f7dba0887e15afec
last_write_checksum: sha1:626c856e422b77914d461ed5fa86c94053dafdaa
pristine_git_object: d3fbe9dfcd49510ee05f82b2ad115359d46eed37
docs/sdks/benchmarks/README.md:
id: 61c16262af9b
last_write_checksum: sha1:e3030fe550fa8bb1d3379692f9633b5f8e98be99
@@ -6242,8 +6246,8 @@ trackedFiles:
pristine_git_object: 7f19e372b77803949f2afb8dd86b4794556e9c7e
docs/sdks/byok/README.md:
id: 511ba2ae7a1b
last_write_checksum: sha1:ef72e4c9cae06d60f4c2f2ad0578747d39e1d5ef
pristine_git_object: a6f5335576f02b6108482dcd54e066b34a7c586f
last_write_checksum: sha1:451e316d1a15cea3c43033a9eb0b3989be9fd43d
pristine_git_object: acb77887ae8d7612f039ae319b5654d2e03c9e26
docs/sdks/chat/README.md:
id: 393193527c2c
last_write_checksum: sha1:0b40d973610ed193d6faafc7f4f0bfad06c78225
@@ -6278,12 +6282,12 @@ trackedFiles:
pristine_git_object: 7fd647d02bfd29a3c7a5da0487761e89f308f224
docs/sdks/guardrails/README.md:
id: f72b38a5a2a7
last_write_checksum: sha1:e90c6c713afcfa087edfcb6367397b9109ac3af9
pristine_git_object: 427dac57b47fbb136a16eb1ab7732c1ff61d7c2e
last_write_checksum: sha1:359f450bfeb9b1a3436b85a446a7529b76118c25
pristine_git_object: 4b79890caa9a8296cdbabf550c66b4952f59d0c2
docs/sdks/images/README.md:
id: cc752c3524d0
last_write_checksum: sha1:5a7a17ae16ed1070ff54f29bf479699454c91f00
pristine_git_object: 65f916be2b82bb2a8f62757aa39b95c6f226dbd1
last_write_checksum: sha1:51f80f2eb736d11fcdc1368df1a4b54c2476c695
pristine_git_object: 7737857e7d4c450d333814536cef0f6554975d18
docs/sdks/models/README.md:
id: b35bdf4bc7ed
last_write_checksum: sha1:0c8c328bdaad985f129d8f4427f83415db883e38
@@ -6330,16 +6334,16 @@ trackedFiles:
pristine_git_object: 393bdc66fbf85057da5811936439c48ad03a2322
docs/sdks/workspaces/README.md:
id: 1f5b051a6380
last_write_checksum: sha1:e315405c5619ae4b47119d01951118cb658cba46
pristine_git_object: b3df8f8977c859410224e187e091860dfdc59ea0
last_write_checksum: sha1:c5ed18ad453c4cdc032fa5f2a81d7b93b36bdbab
pristine_git_object: 6a5d5e09c3fb9006efddd9ca32a72e0353a390f5
py.typed:
id: 258c3ed47ae4
last_write_checksum: sha1:8efc425ffe830805ffcc0f3055871bdcdc542c60
pristine_git_object: 3e38f1a929f7d6b1d6de74604aa87e3d8f010544
pyproject.toml:
id: 5d07e7d72637
last_write_checksum: sha1:8223abd8e7463dfa2b2c1097670bb28b2ec73e68
pristine_git_object: b98c0280ffbb42638747b1064375fa36f467223c
last_write_checksum: sha1:9b65dbc3d45846371aa00f643e177af228862884
pristine_git_object: 95bc7178949e81a4db246aec1ad4018331422267
scripts/prepare_readme.py:
id: e0c5957a6035
last_write_checksum: sha1:77f44b60b98bc126557ec27391f91dfba764bb54
@@ -6366,16 +6370,16 @@ trackedFiles:
pristine_git_object: 07ace03229fd3267623c8f48665d2c3a67c3565d
src/openrouter/_version.py:
id: d8d15ad6c586
last_write_checksum: sha1:856bdf17b7de36f6e1abd0b56f55bbc6093e4c68
pristine_git_object: ade61995259031f3789ff71f0cfd1d6ae4b39395
last_write_checksum: sha1:933d4821e7582d4c23d068f63df4d680dffb54d2
pristine_git_object: eb386f771bf1a2fe478721b946d9048bddec763f
src/openrouter/analytics.py:
id: cb406b5aaabb
last_write_checksum: sha1:6d47d1ab3da9cb4ac9f0a2bfe442f1a82a614f35
pristine_git_object: ea004eaf47a1a48622d4a4276fba1e329d5559ab
src/openrouter/api_keys.py:
id: 876fac88fff6
last_write_checksum: sha1:4c037d1c4fc922061ca968b9cd961b2db69429f6
pristine_git_object: e4a30e1b293a197994317a1e2169619fcbd0a0c6
last_write_checksum: sha1:9dc40b10044a433ab5718c6db5122648c9b1d44a
pristine_git_object: 6c2cdf75cb4578b25bfd7cd17bd99b982a4a2e36
src/openrouter/basesdk.py:
id: c5733c5a1e12
last_write_checksum: sha1:71f242fd9955e5a17a8d055e2210cc2708bb94fc
@@ -6394,8 +6398,8 @@ trackedFiles:
pristine_git_object: 9db10e868aa38e1c38036d55416f7bb39c71bc0d
src/openrouter/byok.py:
id: bec352462ae1
last_write_checksum: sha1:2508c32fac403ebb6dbd65eab53601d88039fbc0
pristine_git_object: 9c2b675374900474076991a713a40ad119ee8b17
last_write_checksum: sha1:1368b36fa52094caafdd2d9a50f6b4b762c8983a
pristine_git_object: e915cbb90c56bf622de74204ebc8e62cd4af92ef
src/openrouter/chat.py:
id: 723fdce15c1d
last_write_checksum: sha1:045ca733908a82e099a0c2a76c6c498025827391
@@ -6406,8 +6410,8 @@ trackedFiles:
pristine_git_object: 2654cbc562cc83940a6713b68f3967cb3f9dcfbe
src/openrouter/components/__init__.py:
id: 81754e97b3f4
last_write_checksum: sha1:e38f46d4bf8292139d85d59c2b2cb5f450367e39
pristine_git_object: 27e2fff5aafa475227a34c3dd5242e4e54b9e762
last_write_checksum: sha1:d82d36a0074b74d4556f1226230bc17565ec0171
pristine_git_object: 581b01ca5299006b8b6596ea466a7b26810e594b
src/openrouter/components/aabenchmarkentry.py:
id: e2e0f0b48c82
last_write_checksum: sha1:1b6b66672fb80dccdc39843a98bdef6d7d804364
@@ -6734,8 +6738,8 @@ trackedFiles:
pristine_git_object: 033a6f367e4da3d56835bb0d593042f24bfa0930
src/openrouter/components/byokproviderslug.py:
id: 6738a8516caf
last_write_checksum: sha1:bb799bcc20ed60d437d4b8c3c9fd62bf52c677fa
pristine_git_object: aa906bf2e863b8d45c7afc0537f94020060641bd
last_write_checksum: sha1:2b105bacb46fd7150af7f079241fab2ba6700322
pristine_git_object: 38050fde0204f069cb2568fafc91338a7051c92f
src/openrouter/components/capabilitydescriptor.py:
id: 368790a86f10
last_write_checksum: sha1:13a2fe668fd9d3fdb2d6941cf7a14b49f8168066
@@ -7256,6 +7260,10 @@ trackedFiles:
id: 0d1d229c531f
last_write_checksum: sha1:b0b2c44af496c446fd6bbf1396f1f97f696eff5e
pristine_git_object: 9d5ec202c11d21002eaa7b6724d62e0710c42522
src/openrouter/components/fusionsource.py:
id: ce20a4a9f32f
last_write_checksum: sha1:2141dd1dd9396035bf8070878c9ec945331514c8
pristine_git_object: c60f29915ce3fed38a693d10b8c2de868f8ee728
src/openrouter/components/generationcontentdata.py:
id: 0140215b5b46
last_write_checksum: sha1:09e15ae2acc4f44084e2206ea51e6a06f4c5ee11
@@ -7326,16 +7334,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
last_write_checksum: sha1:d44c19ab94704abc128c6172e0fe89bd0ba57fe4
pristine_git_object: 6c0fe3e3c349ca204e3f6aa7a3f1281853c8d651
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
@@ -7794,8 +7802,8 @@ trackedFiles:
pristine_git_object: dcfc7a806fbf5794ad168bca00344b005e0d16ee
src/openrouter/components/outputfusionservertoolitem.py:
id: 1d798a2bb7ae
last_write_checksum: sha1:3808bb5da64abfef93437fb05e494ea492eb9818
pristine_git_object: 0ad5d34088e18cd0727ce13c5b9a3b8d47a94297
last_write_checksum: sha1:72cd3cdd5e1f505fe58c30949b4ceba8faf49644
pristine_git_object: 0e8e4e6ed1d5e8c5fb613c6fb1c6beee033087c3
src/openrouter/components/outputimagegenerationcallitem.py:
id: 48d20dc00e1c
last_write_checksum: sha1:6795b316ac97958ba4381cdd4d6cc6108d7bd1a5
@@ -7810,8 +7818,8 @@ trackedFiles:
pristine_git_object: 897c4727eec2497fe15e5603187e24218c08ac87
src/openrouter/components/outputitems.py:
id: 90f107de3116
last_write_checksum: sha1:31923f8d495bcd6b48594217cff463b5f868ecbb
pristine_git_object: a7d056e30ef0b1035d5d2e020505821dbc638143
last_write_checksum: sha1:e262597f5269a4d4374500a0bc9b43701cc938fa
pristine_git_object: da3d920280394d094a6745d0770e57373df1afc5
src/openrouter/components/outputmcpservertoolitem.py:
id: bb8c2536a58e
last_write_checksum: sha1:6cbe556b2268af0142d982007b273cc43b7605c7
@@ -7966,24 +7974,24 @@ trackedFiles:
pristine_git_object: 170ae25c582bb8decd74e1c69bfa8353bd44e86d
src/openrouter/components/providername.py:
id: fcc722fa2fce
last_write_checksum: sha1:c20c16668a4bd2af2c42ed4650fa4b5103e759d9
pristine_git_object: 7e61e70d5005ab92d8c8505898cf40e1936056a2
last_write_checksum: sha1:b6d26b4ce3e92121a80cb351962e89593951962d
pristine_git_object: 009c1401a29123f18887b48c03f9c2a8b11ca2b5
src/openrouter/components/provideroptions.py:
id: 73dde6c8f359
last_write_checksum: sha1:07fd845585c8920239a8af526e816da2d564a6a3
pristine_git_object: ec240ddbd24f162844f874fd3f142d47b339ae22
last_write_checksum: sha1:f53a3ec58bd7380337d7011ac312694692ea683e
pristine_git_object: 160b700e8c5f2824932928daad552979ef086bec
src/openrouter/components/provideroverloadedresponseerrordata.py:
id: 5b693682570e
last_write_checksum: sha1:41a977452d58b52cb9d4b3a85f4b7970529352d5
pristine_git_object: f3d7756851495a1f1cdbf62fd62d20ff0ea07bf8
src/openrouter/components/providerpreferences.py:
id: cdd58c8d664d
last_write_checksum: sha1:6b45aaae052bcf64980242ec344fe385de94ebd3
pristine_git_object: 5145815e6196470f3f5f24893afdc4415d27c53e
last_write_checksum: sha1:f3d54af0f02fd2ae3f2fd0aba05c77419f79562a
pristine_git_object: ce5d942a25ef1bda1af7d40e5c98418550fb34a3
src/openrouter/components/providerresponse.py:
id: ad3887be54c5
last_write_checksum: sha1:17b2491e58fea36851d21b85298a3480d98b9c37
pristine_git_object: 3fa87d1928675c2841c1abeb0fd08ce3d0cda650
last_write_checksum: sha1:fcaede27042d7d3fc2252a8950903eeb298abcb7
pristine_git_object: 5cad4c141cd79f69eeae90dd17063a9ba3538723
src/openrouter/components/providersort.py:
id: 348e382bf494
last_write_checksum: sha1:57551507f95cd2e16ef995e1c13f859fd0726152
@@ -7994,12 +8002,12 @@ trackedFiles:
pristine_git_object: 4e1073b4e3c10943c7035376f9984cd6559653a2
src/openrouter/components/publicendpoint.py:
id: 848aa2ef9129
last_write_checksum: sha1:a268ea8595c25267ae05b3a2ab9bc452b064c33f
pristine_git_object: 6761c9129979d95e6f44c955e77a2d412bf0eb1b
last_write_checksum: sha1:2e389b5e4301174b4c8aaa5e0c679d6872ddd67e
pristine_git_object: a7d3e523472feb11203aa79bd081fa87c0ed6503
src/openrouter/components/publicpricing.py:
id: 96d115d83cc5
last_write_checksum: sha1:ccec3f6d6b07186a612c23561f2bbe6ecfd6839f
pristine_git_object: 42a29282d09996796b9e981b96a2772d08eea28c
last_write_checksum: sha1:1980193d2339dc13b08d1caabb235b0b8bcb8ce3
pristine_git_object: 09a1bdd6ec5d204533288516de6d01ae20be218f
src/openrouter/components/quantization.py:
id: bde317b3d703
last_write_checksum: sha1:96b042899bfb818f20d282be76ad37fc948a599d
@@ -8414,8 +8422,8 @@ trackedFiles:
pristine_git_object: b140a02148be319bb2aeb0287bdd6e031ad6a3a4
src/openrouter/components/videogenerationrequest.py:
id: 70e3c9ff288c
last_write_checksum: sha1:17c582e6ab58fec81a8cfc0a8dd367e254886af7
pristine_git_object: ed3693b3c93462d1325ac563613b61897cb774d6
last_write_checksum: sha1:1e17df29049bc37407c363437f28cd56504ff88e
pristine_git_object: 230d48746fee477d943c6b9b01bbe5242dc1c95b
src/openrouter/components/videogenerationresponse.py:
id: 541f1321b072
last_write_checksum: sha1:051ace67776106616ec4c8e55cf2df9a99855d0f
@@ -8630,16 +8638,16 @@ trackedFiles:
pristine_git_object: 409e169fc5f43a0eea65b7568588c25c82abb46a
src/openrouter/guardrails.py:
id: 705839f34e66
last_write_checksum: sha1:212ed4757bf87d2acd6d179e25cf03d9ba3d64b4
pristine_git_object: beb82bf31bd9bca3baa7f61eb28105dfd3d22be3
last_write_checksum: sha1:137f03185776ee3f734609612e37aef1d3e2f178
pristine_git_object: 50249a344d342b955acdcaf9796466b9e8c3a1d1
src/openrouter/httpclient.py:
id: e9311185443d
last_write_checksum: sha1:5e55338d6ee9f01ab648cad4380201a8a3da7dd7
pristine_git_object: 89560b566073785535643e694c112bedbd3db13d
src/openrouter/images.py:
id: c4d7adf63ae0
last_write_checksum: sha1:1bfa3a9cf3bd0eb942d50d77e96bfe456ee9e688
pristine_git_object: 87b2682c7449ab1be4f24ed44143769772e51b72
last_write_checksum: sha1:b936333eef102e8b53441ab985eb259c73712131
pristine_git_object: e96036fee4a23a6b204dc00594e17e9ae875e19d
src/openrouter/models/__init__.py:
id: ed73b93abb3f
last_write_checksum: sha1:fd931d5c2d58b5f9189cc897e038d6d78e362dab
@@ -8878,8 +8886,8 @@ trackedFiles:
pristine_git_object: bf9965a274d7249abb169adb43c8358b1ee73105
src/openrouter/operations/listbyokkeys.py:
id: b6dd42b3e05f
last_write_checksum: sha1:c9f64f85259661b9446c39f0c1c5cea5e2ae5ce7
pristine_git_object: bfe12fe1167ef86405de56a6f579d68626166438
last_write_checksum: sha1:d0fdaf6fac9d2364ee0b092f5808b85e1e03421b
pristine_git_object: dcbff9f3f4f59d1617c9c793c9eb1a212c313905
src/openrouter/operations/listembeddingsmodels.py:
id: bf749a1f23d6
last_write_checksum: sha1:654a4e7e7b486f1d321eeb11ef7a7fa928e501a6
@@ -9126,12 +9134,12 @@ trackedFiles:
pristine_git_object: dae01a44384ac3bc13ae07453a053bf6c898ebe3
src/openrouter/video_generation.py:
id: d0a90c1b8efe
last_write_checksum: sha1:d752e915a80df1f48a7ca35e901b50175fe3682b
pristine_git_object: cdd7182ff939a02a0bbcd135c06a3b34d50e7076
last_write_checksum: sha1:a857083fe9fe2766e7c083dce8778a30dd0a0b03
pristine_git_object: 14d0c5e4e7757eeb383e460784073b8f05accd82
src/openrouter/workspaces.py:
id: cd6c533b1802
last_write_checksum: sha1:2d9fc04510d5e28f57f23eacd7a5814495b127e7
pristine_git_object: 54a25f1f83e29f7f005e58d0f2fedb1599be3b60
last_write_checksum: sha1:7b1a29a2c1faa68ef30ccd0c8e61dfe535b90314
pristine_git_object: 1b82a9360ac6b08cee12e674770f7681e2a5e6f4
examples:
createResponses:
speakeasy-default-create-responses:
@@ -9764,6 +9772,7 @@ examples:
responses:
"200":
application/octet-stream: "x-file: example.file"
video/mp4: "x-file: example.file"
"400":
application/json: {"error": {"code": 400, "message": "Invalid request parameters"}}
"401":
@@ -10559,4 +10568,4 @@ 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` **Changed**\n * `response` **Changed** **Breaking** :warning:\n* `open_router.tts.create_speech()`: \n * `request.provider.options` **Changed**\n* `open_router.chat.send()`: `response` **Changed**\n* `open_router.images.list_models()`: **Added**\n* `open_router.images.list_model_endpoints()`: **Added**\n* `open_router.datasets.get_benchmarks_artificial_analysis()`: **Deleted** **Breaking** :warning:\n* `open_router.datasets.get_benchmarks_design_arena()`: **Deleted** **Breaking** :warning:\n* `open_router.classifications.get_task_classifications()`: **Added**\n* `open_router.benchmarks.get_benchmarks()`: **Added**\n* `open_router.images.generate()`: **Added**\n* `open_router.stt.create_transcription()`: \n * `request.provider.options` **Changed**\n* `open_router.byok.list()`: `request.provider` **Changed**\n* `open_router.embeddings.generate()`: `response.usage` **Changed**\n* `open_router.embeddings.list_models()`: `response.data.[].reasoning` **Added**\n* `open_router.models.get()`: `response.data.reasoning` **Added**\n* `open_router.models.list()`: \n * `request.sort` **Changed**\n * `response.data.[].reasoning` **Added**\n* `open_router.models.list_for_user()`: `response.data.[].reasoning` **Added**\n* `open_router.presets.create_presets_responses()`: `request` **Changed**\n* `open_router.video_generation.generate()`: \n * `request.provider.options` **Changed**\n"
releaseNotes: "## Python SDK Changes:\n* `open_router.beta.responses.send()`: \n * `request.input.[array].[].[output_fusion_server_tool_item].sources` **Added**\n * `response` **Changed**\n* `open_router.presets.create_presets_responses()`: \n * `request.input.[array].[].[output_fusion_server_tool_item].sources` **Added**\n"
+1 -1
View File
@@ -32,7 +32,7 @@ generation:
skipResponseBodyAssertions: false
preApplyUnionDiscriminators: true
python:
version: 0.10.1
version: 0.10.7
additionalDependencies:
dev: {}
main: {}
+144 -104
View File
@@ -3677,10 +3677,6 @@ components:
oneOf:
- $ref: '#/components/schemas/ContainerAutoEnvironment'
- $ref: '#/components/schemas/ContainerReferenceEnvironment'
BigNumberUnion:
description: Price per million prompt tokens
example: 1000
type: string
BooleanCapability:
description: A supported-or-not flag. Present means the parameter is accepted.
example:
@@ -4047,6 +4043,7 @@ components:
- perplexity
- phala
- poolside
- quiver
- recraft
- reka
- relace
@@ -8408,6 +8405,22 @@ components:
maxItems: 8
type: array
type: object
FusionSource:
description: A web page retrieved via web search during a fusion run.
example:
title: Example article title
url: https://example.com/article
properties:
title:
description: Title of the retrieved web page.
type: string
url:
description: URL of the web page a panel or the judge retrieved during the run.
type: string
required:
- url
- title
type: object
GenerationContentData:
description: Stored prompt and completion content
example:
@@ -9319,6 +9332,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:
@@ -9391,11 +9410,14 @@ components:
example: 100
type: integer
output_format:
description: Encoding of the returned image bytes.
description: >-
Encoding of the returned image bytes. Most models produce raster formats (png, jpeg, webp). SVG is supported
by vectorization models (e.g. Quiver) — the SVG markup is UTF-8 base64-encoded in `b64_json`.
enum:
- png
- jpeg
- webp
- svg
example: png
type: string
prompt:
@@ -9478,6 +9500,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
@@ -12527,6 +12555,7 @@ components:
- Venice
- Wafer
- WandB
- Quiver
- Xiaomi
- xAI
- Z.AI
@@ -16282,6 +16311,13 @@ components:
- model
type: object
type: array
sources:
description: >-
Web pages the analysis panels and judge retrieved via web search during this fusion run, deduplicated by URL
across the whole run. Present when at least one model cited a source.
items:
$ref: '#/components/schemas/FusionSource'
type: array
status:
$ref: '#/components/schemas/ToolCallStatus'
type:
@@ -17938,6 +17974,7 @@ components:
- Venice
- Wafer
- WandB
- Quiver
- Xiaomi
- xAI
- Z.AI
@@ -18312,6 +18349,10 @@ components:
additionalProperties:
nullable: true
type: object
quiver:
additionalProperties:
nullable: true
type: object
recraft:
additionalProperties:
nullable: true
@@ -18527,23 +18568,20 @@ components:
prompt and completion.
properties:
audio:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: Price per audio unit
description: Maximum price in USD per audio unit
type: string
completion:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: Price per million completion tokens
description: Maximum price in USD per million completion tokens
type: string
image:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: Price per image
description: Maximum price in USD per image
type: string
prompt:
$ref: '#/components/schemas/BigNumberUnion'
description: Maximum price in USD per million prompt tokens
type: string
request:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: Price per request
description: Maximum price in USD per request
type: string
type: object
only:
description: >-
@@ -18755,6 +18793,7 @@ components:
- Venice
- Wafer
- WandB
- Quiver
- Xiaomi
- xAI
- Z.AI
@@ -18865,60 +18904,57 @@ components:
pricing:
properties:
audio:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: A number or string value representing a large number
description: Price in USD per audio input token
type: string
audio_output:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: A number or string value representing a large number
description: Price in USD per audio output token
type: string
completion:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: A number or string value representing a large number
description: Price in USD per token for completion (output) generation
type: string
discount:
description: >-
Fractional discount applied to this endpoint's pricing; the price is multiplied by (1 - discount) (0 =
no discount, 1 = free)
format: double
type: number
image:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: A number or string value representing a large number
description: Price in USD per input image
type: string
image_output:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: A number or string value representing a large number
description: Price in USD per output image
type: string
image_token:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: A number or string value representing a large number
description: Price in USD per image token
type: string
input_audio_cache:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: A number or string value representing a large number
description: Price in USD per cached audio input token
type: string
input_cache_read:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: A number or string value representing a large number
description: Price in USD per cached input token (read)
type: string
input_cache_write:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: A number or string value representing a large number
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:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: A number or string value representing a large number
description: Price in USD per internal reasoning token
type: string
prompt:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: A number or string value representing a large number
description: Price in USD per token for prompt (input) processing
type: string
request:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: A number or string value representing a large number
description: Price in USD per request
type: string
web_search:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: A number or string value representing a large number
description: Price in USD per web search
type: string
required:
- prompt
- completion
@@ -18992,60 +19028,57 @@ components:
request: '0'
properties:
audio:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: A number or string value representing a large number
description: Price in USD per audio input token
type: string
audio_output:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: A number or string value representing a large number
description: Price in USD per audio output token
type: string
completion:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: A number or string value representing a large number
description: Price in USD per token for completion (output) generation
type: string
discount:
description: >-
Fractional discount applied to this endpoint's pricing; the price is multiplied by (1 - discount) (0 = no
discount, 1 = free)
format: double
type: number
image:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: A number or string value representing a large number
description: Price in USD per input image
type: string
image_output:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: A number or string value representing a large number
description: Price in USD per output image
type: string
image_token:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: A number or string value representing a large number
description: Price in USD per image token
type: string
input_audio_cache:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: A number or string value representing a large number
description: Price in USD per cached audio input token
type: string
input_cache_read:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: A number or string value representing a large number
description: Price in USD per cached input token (read)
type: string
input_cache_write:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: A number or string value representing a large number
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:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: A number or string value representing a large number
description: Price in USD per internal reasoning token
type: string
prompt:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: A number or string value representing a large number
description: Price in USD per token for prompt (input) processing
type: string
request:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: A number or string value representing a large number
description: Price in USD per request
type: string
web_search:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: A number or string value representing a large number
description: Price in USD per web search
type: string
required:
- prompt
- completion
@@ -24426,6 +24459,7 @@ paths:
- perplexity
- phala
- poolside
- quiver
- recraft
- reka
- relace
@@ -24509,7 +24543,8 @@ paths:
description: >-
Create a new bring-your-own-key (BYOK) provider credential. The raw key is encrypted at rest and never returned
in API responses. Defaults to the authenticated entity's default workspace; use the `workspace_id` body field to
scope to a different workspace. [Management key](/docs/guides/overview/auth/management-api-keys) required.
scope to a different workspace. Treat the raw key as write-only; it is never returned after creation.
[Management key](/docs/guides/overview/auth/management-api-keys) required.
operationId: createBYOKKey
requestBody:
content:
@@ -27189,7 +27224,9 @@ paths:
- Guardrails
x-speakeasy-name-override: get
patch:
description: Update an existing guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.
description: >-
Update an existing guardrail. Collection fields use replace semantics: send the full desired set on every
update. [Management key](/docs/guides/overview/auth/management-api-keys) required.
operationId: updateGuardrail
parameters:
- description: The unique identifier of the guardrail to update
@@ -27383,8 +27420,8 @@ paths:
type: offsetLimit
post:
description: >-
Assign multiple API keys to a specific guardrail. [Management
key](/docs/guides/overview/auth/management-api-keys) required.
Assign multiple API keys to a specific guardrail. A key may hold at most one guardrail; assigning replaces any
existing assignment. [Management key](/docs/guides/overview/auth/management-api-keys) required.
operationId: bulkAssignKeysToGuardrail
parameters:
- description: The unique identifier of the guardrail
@@ -28736,7 +28773,8 @@ paths:
x-speakeasy-name-override: list
post:
description: >-
Create a new API key for the authenticated user. [Management
Create a new API key for the authenticated user. The plaintext `key` is returned only in this response. Treat it
as a write-only, sensitive value; it cannot be retrieved later. [Management
key](/docs/guides/overview/auth/management-api-keys) required.
operationId: createKeys
requestBody:
@@ -33152,12 +33190,14 @@ paths:
responses:
'200':
content:
application/octet-stream:
video/mp4:
example: <binary video data>
schema:
format: binary
type: string
description: Video content stream
description: >-
Video content stream. The body is the raw video bytes proxied from the upstream provider, and the
Content-Type reflects the provider media type (video/mp4).
'400':
content:
application/json:
@@ -33446,7 +33486,7 @@ paths:
delete:
description: >-
Delete an existing workspace. The default workspace cannot be deleted. Workspaces with active API keys cannot be
deleted. [Management key](/docs/guides/overview/auth/management-api-keys) required.
deleted; remove the keys first. [Management key](/docs/guides/overview/auth/management-api-keys) required.
operationId: deleteWorkspace
parameters:
- description: The workspace ID (UUID) or slug
+129 -103
View File
@@ -3676,10 +3676,6 @@ components:
oneOf:
- $ref: '#/components/schemas/ContainerAutoEnvironment'
- $ref: '#/components/schemas/ContainerReferenceEnvironment'
BigNumberUnion:
description: Price per million prompt tokens
example: 1000
type: string
BooleanCapability:
description: A supported-or-not flag. Present means the parameter is accepted.
example:
@@ -4043,6 +4039,7 @@ components:
- perplexity
- phala
- poolside
- quiver
- recraft
- reka
- relace
@@ -8359,6 +8356,22 @@ components:
maxItems: 8
type: array
type: object
FusionSource:
description: A web page retrieved via web search during a fusion run.
example:
title: Example article title
url: https://example.com/article
properties:
title:
description: Title of the retrieved web page.
type: string
url:
description: URL of the web page a panel or the judge retrieved during the run.
type: string
required:
- url
- title
type: object
GenerationContentData:
description: Stored prompt and completion content
example:
@@ -9266,6 +9279,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:
@@ -9340,11 +9358,13 @@ components:
example: 100
type: integer
output_format:
description: Encoding of the returned image bytes.
description: >-
Encoding of the returned image bytes. Most models produce raster formats (png, jpeg, webp). SVG is supported by vectorization models (e.g. Quiver) — the SVG markup is UTF-8 base64-encoded in `b64_json`.
enum:
- png
- jpeg
- webp
- svg
example: png
type: string
x-speakeasy-unknown-values: allow
@@ -9424,6 +9444,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
@@ -12472,6 +12497,7 @@ components:
- Venice
- Wafer
- WandB
- Quiver
- Xiaomi
- xAI
- Z.AI
@@ -16202,6 +16228,12 @@ components:
- model
type: object
type: array
sources:
description: >-
Web pages the analysis panels and judge retrieved via web search during this fusion run, deduplicated by URL across the whole run. Present when at least one model cited a source.
items:
$ref: '#/components/schemas/FusionSource'
type: array
status:
$ref: '#/components/schemas/ToolCallStatus'
type:
@@ -17847,6 +17879,7 @@ components:
- Venice
- Wafer
- WandB
- Quiver
- Xiaomi
- xAI
- Z.AI
@@ -18221,6 +18254,10 @@ components:
additionalProperties:
nullable: true
type: object
quiver:
additionalProperties:
nullable: true
type: object
recraft:
additionalProperties:
nullable: true
@@ -18433,23 +18470,20 @@ components:
The object specifying the maximum price you want to pay for this request. USD price per million tokens, for prompt and completion.
properties:
audio:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: Price per audio unit
description: Maximum price in USD per audio unit
type: string
completion:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: Price per million completion tokens
description: Maximum price in USD per million completion tokens
type: string
image:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: Price per image
description: Maximum price in USD per image
type: string
prompt:
$ref: '#/components/schemas/BigNumberUnion'
description: Maximum price in USD per million prompt tokens
type: string
request:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: Price per request
description: Maximum price in USD per request
type: string
type: object
only:
description: >-
@@ -18655,6 +18689,7 @@ components:
- Venice
- Wafer
- WandB
- Quiver
- Xiaomi
- xAI
- Z.AI
@@ -18768,60 +18803,54 @@ components:
pricing:
properties:
audio:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: A number or string value representing a large number
description: Price in USD per audio input token
type: string
audio_output:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: A number or string value representing a large number
description: Price in USD per audio output token
type: string
completion:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: A number or string value representing a large number
description: Price in USD per token for completion (output) generation
type: string
discount:
description: >-
Fractional discount applied to this endpoint's pricing; the price is multiplied by (1 - discount) (0 = no discount, 1 = free)
format: double
type: number
image:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: A number or string value representing a large number
description: Price in USD per input image
type: string
image_output:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: A number or string value representing a large number
description: Price in USD per output image
type: string
image_token:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: A number or string value representing a large number
description: Price in USD per image token
type: string
input_audio_cache:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: A number or string value representing a large number
description: Price in USD per cached audio input token
type: string
input_cache_read:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: A number or string value representing a large number
description: Price in USD per cached input token (read)
type: string
input_cache_write:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: A number or string value representing a large number
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:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: A number or string value representing a large number
description: Price in USD per internal reasoning token
type: string
prompt:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: A number or string value representing a large number
description: Price in USD per token for prompt (input) processing
type: string
request:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: A number or string value representing a large number
description: Price in USD per request
type: string
web_search:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: A number or string value representing a large number
description: Price in USD per web search
type: string
required:
- prompt
- completion
@@ -18891,60 +18920,54 @@ components:
request: '0'
properties:
audio:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: A number or string value representing a large number
description: Price in USD per audio input token
type: string
audio_output:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: A number or string value representing a large number
description: Price in USD per audio output token
type: string
completion:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: A number or string value representing a large number
description: Price in USD per token for completion (output) generation
type: string
discount:
description: >-
Fractional discount applied to this endpoint's pricing; the price is multiplied by (1 - discount) (0 = no discount, 1 = free)
format: double
type: number
image:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: A number or string value representing a large number
description: Price in USD per input image
type: string
image_output:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: A number or string value representing a large number
description: Price in USD per output image
type: string
image_token:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: A number or string value representing a large number
description: Price in USD per image token
type: string
input_audio_cache:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: A number or string value representing a large number
description: Price in USD per cached audio input token
type: string
input_cache_read:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: A number or string value representing a large number
description: Price in USD per cached input token (read)
type: string
input_cache_write:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: A number or string value representing a large number
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:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: A number or string value representing a large number
description: Price in USD per internal reasoning token
type: string
prompt:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: A number or string value representing a large number
description: Price in USD per token for prompt (input) processing
type: string
request:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: A number or string value representing a large number
description: Price in USD per request
type: string
web_search:
allOf:
- $ref: '#/components/schemas/BigNumberUnion'
- description: A number or string value representing a large number
description: Price in USD per web search
type: string
required:
- prompt
- completion
@@ -24267,6 +24290,7 @@ paths:
- perplexity
- phala
- poolside
- quiver
- recraft
- reka
- relace
@@ -24349,7 +24373,7 @@ paths:
type: offsetLimit
post:
description: >-
Create a new bring-your-own-key (BYOK) provider credential. The raw key is encrypted at rest and never returned in API responses. Defaults to the authenticated entity's default workspace; use the `workspace_id` body field to scope to a different workspace. [Management key](/docs/guides/overview/auth/management-api-keys) required.
Create a new bring-your-own-key (BYOK) provider credential. The raw key is encrypted at rest and never returned in API responses. Defaults to the authenticated entity's default workspace; use the `workspace_id` body field to scope to a different workspace. Treat the raw key as write-only; it is never returned after creation. [Management key](/docs/guides/overview/auth/management-api-keys) required.
operationId: createBYOKKey
requestBody:
content:
@@ -27057,7 +27081,8 @@ paths:
- Guardrails
x-speakeasy-name-override: get
patch:
description: Update an existing guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.
description: >-
Update an existing guardrail. Collection fields use replace semantics: send the full desired set on every update. [Management key](/docs/guides/overview/auth/management-api-keys) required.
operationId: updateGuardrail
parameters:
- description: The unique identifier of the guardrail to update
@@ -27254,7 +27279,7 @@ paths:
type: offsetLimit
post:
description: >-
Assign multiple API keys to a specific guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.
Assign multiple API keys to a specific guardrail. A key may hold at most one guardrail; assigning replaces any existing assignment. [Management key](/docs/guides/overview/auth/management-api-keys) required.
operationId: bulkAssignKeysToGuardrail
parameters:
- description: The unique identifier of the guardrail
@@ -28635,7 +28660,7 @@ paths:
x-speakeasy-name-override: list
post:
description: >-
Create a new API key for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys) required.
Create a new API key for the authenticated user. The plaintext `key` is returned only in this response. Treat it as a write-only, sensitive value; it cannot be retrieved later. [Management key](/docs/guides/overview/auth/management-api-keys) required.
operationId: createKeys
requestBody:
content:
@@ -33077,12 +33102,13 @@ paths:
responses:
'200':
content:
application/octet-stream:
video/mp4:
example: <binary video data>
schema:
format: binary
type: string
description: Video content stream
description: >-
Video content stream. The body is the raw video bytes proxied from the upstream provider, and the Content-Type reflects the provider media type (video/mp4).
'400':
content:
application/json:
@@ -33380,7 +33406,7 @@ paths:
/workspaces/{id}:
delete:
description: >-
Delete an existing workspace. The default workspace cannot be deleted. Workspaces with active API keys cannot be deleted. [Management key](/docs/guides/overview/auth/management-api-keys) required.
Delete an existing workspace. The default workspace cannot be deleted. Workspaces with active API keys cannot be deleted; remove the keys first. [Management key](/docs/guides/overview/auth/management-api-keys) required.
operationId: deleteWorkspace
parameters:
- description: The workspace ID (UUID) or slug
+6 -6
View File
@@ -2,20 +2,20 @@ speakeasyVersion: 1.680.0
sources:
OpenRouter API:
sourceNamespace: open-router-chat-completions-api
sourceRevisionDigest: sha256:8a4df86f3d3822da1bc0bd41158b6e2674f517dde9d9747c7fd6aeae92531d65
sourceBlobDigest: sha256:6ced93728e355c985d439c194e9d8ee1593b92f6f809f1315be8847686c46174
sourceRevisionDigest: sha256:c668cc885c117987e3c561af619ec3ad21dbb47bffdc491f06d93b8af0c122d3
sourceBlobDigest: sha256:da0dd6040f1f11463b596a1425a6ed5c6f86b5b5e3de2b761cb426f3dcc1660c
tags:
- latest
- speakeasy-sdk-regen-1782424634
- speakeasy-sdk-regen-1782517441
- 1.0.0
targets:
open-router:
source: OpenRouter API
sourceNamespace: open-router-chat-completions-api
sourceRevisionDigest: sha256:8a4df86f3d3822da1bc0bd41158b6e2674f517dde9d9747c7fd6aeae92531d65
sourceBlobDigest: sha256:6ced93728e355c985d439c194e9d8ee1593b92f6f809f1315be8847686c46174
sourceRevisionDigest: sha256:c668cc885c117987e3c561af619ec3ad21dbb47bffdc491f06d93b8af0c122d3
sourceBlobDigest: sha256:da0dd6040f1f11463b596a1425a6ed5c6f86b5b5e3de2b761cb426f3dcc1660c
codeSamplesNamespace: open-router-python-code-samples
codeSamplesRevisionDigest: sha256:50757f7fdc830970d172346b5b1a7308c4861a13f531f093a629e1ac180687ee
codeSamplesRevisionDigest: sha256:163ae66544ac5b5162821baae4129dd200441bac24bdacca44316db38a9b178f
workflow:
workflowVersion: 1.0.0
speakeasyVersion: 1.680.0
+61 -1
View File
@@ -38,4 +38,64 @@ Based on:
### Generated
- [python v0.10.1] .
### Releases
- [PyPI v0.10.1] https://pypi.org/project/openrouter/0.10.1 - .
- [PyPI v0.10.1] https://pypi.org/project/openrouter/0.10.1 - .
## 2026-06-25 22:28:38
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.680.0 (2.788.4) https://github.com/speakeasy-api/speakeasy
### Generated
- [python v0.10.2] .
### Releases
- [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 - .
## 2026-06-26 14:36:56
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.680.0 (2.788.4) https://github.com/speakeasy-api/speakeasy
### Generated
- [python v0.10.5] .
### Releases
- [PyPI v0.10.5] https://pypi.org/project/openrouter/0.10.5 - .
## 2026-06-26 18:19:11
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.680.0 (2.788.4) https://github.com/speakeasy-api/speakeasy
### Generated
- [python v0.10.6] .
### Releases
- [PyPI v0.10.6] https://pypi.org/project/openrouter/0.10.6 - .
## 2026-06-26 23:43:40
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.680.0 (2.788.4) https://github.com/speakeasy-api/speakeasy
### Generated
- [python v0.10.7] .
### Releases
- [PyPI v0.10.7] https://pypi.org/project/openrouter/0.10.7 - .
+17 -16
View File
@@ -3,19 +3,20 @@
## Fields
| Field | Type | Required | Description | Example |
| -------------------- | -------------------- | -------------------- | -------------------- | -------------------- |
| `audio` | *Optional[str]* | :heavy_minus_sign: | N/A | 1000 |
| `audio_output` | *Optional[str]* | :heavy_minus_sign: | N/A | 1000 |
| `completion` | *str* | :heavy_check_mark: | N/A | 1000 |
| `discount` | *Optional[float]* | :heavy_minus_sign: | N/A | |
| `image` | *Optional[str]* | :heavy_minus_sign: | N/A | 1000 |
| `image_output` | *Optional[str]* | :heavy_minus_sign: | N/A | 1000 |
| `image_token` | *Optional[str]* | :heavy_minus_sign: | N/A | 1000 |
| `input_audio_cache` | *Optional[str]* | :heavy_minus_sign: | N/A | 1000 |
| `input_cache_read` | *Optional[str]* | :heavy_minus_sign: | N/A | 1000 |
| `input_cache_write` | *Optional[str]* | :heavy_minus_sign: | N/A | 1000 |
| `internal_reasoning` | *Optional[str]* | :heavy_minus_sign: | N/A | 1000 |
| `prompt` | *str* | :heavy_check_mark: | N/A | 1000 |
| `request` | *Optional[str]* | :heavy_minus_sign: | N/A | 1000 |
| `web_search` | *Optional[str]* | :heavy_minus_sign: | N/A | 1000 |
| 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
View File
@@ -91,6 +91,7 @@
| `VENICE` | Venice |
| `WAFER` | Wafer |
| `WAND_B` | WandB |
| `QUIVER` | Quiver |
| `XIAOMI` | Xiaomi |
| `X_AI` | xAI |
| `Z_AI` | Z.AI |
+17 -16
View File
@@ -5,19 +5,20 @@ Pricing information for the model
## Fields
| Field | Type | Required | Description | Example |
| -------------------- | -------------------- | -------------------- | -------------------- | -------------------- |
| `audio` | *Optional[str]* | :heavy_minus_sign: | N/A | 1000 |
| `audio_output` | *Optional[str]* | :heavy_minus_sign: | N/A | 1000 |
| `completion` | *str* | :heavy_check_mark: | N/A | 1000 |
| `discount` | *Optional[float]* | :heavy_minus_sign: | N/A | |
| `image` | *Optional[str]* | :heavy_minus_sign: | N/A | 1000 |
| `image_output` | *Optional[str]* | :heavy_minus_sign: | N/A | 1000 |
| `image_token` | *Optional[str]* | :heavy_minus_sign: | N/A | 1000 |
| `input_audio_cache` | *Optional[str]* | :heavy_minus_sign: | N/A | 1000 |
| `input_cache_read` | *Optional[str]* | :heavy_minus_sign: | N/A | 1000 |
| `input_cache_write` | *Optional[str]* | :heavy_minus_sign: | N/A | 1000 |
| `internal_reasoning` | *Optional[str]* | :heavy_minus_sign: | N/A | 1000 |
| `prompt` | *str* | :heavy_check_mark: | N/A | 1000 |
| `request` | *Optional[str]* | :heavy_minus_sign: | N/A | 1000 |
| `web_search` | *Optional[str]* | :heavy_minus_sign: | N/A | 1000 |
| 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
@@ -113,7 +113,7 @@ with OpenRouter(
## create
Create a new API key for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys) required.
Create a new API key for the authenticated user. The plaintext `key` is returned only in this response. Treat it as a write-only, sensitive value; it cannot be retrieved later. [Management key](/docs/guides/overview/auth/management-api-keys) required.
### Example Usage
+2 -2
View File
@@ -241,7 +241,7 @@ with OpenRouter(
## update
Update an existing guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.
Update an existing guardrail. Collection fields use replace semantics: send the full desired set on every update. [Management key](/docs/guides/overview/auth/management-api-keys) required.
### Example Usage
@@ -359,7 +359,7 @@ with OpenRouter(
## bulk_assign_keys
Assign multiple API keys to a specific guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.
Assign multiple API keys to a specific guardrail. A key may hold at most one guardrail; assigning replaces any existing assignment. [Management key](/docs/guides/overview/auth/management-api-keys) required.
### Example Usage
+1 -1
View File
@@ -1,6 +1,6 @@
[project]
name = "openrouter"
version = "0.10.1"
version = "0.10.7"
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.1"
__version__: str = "0.10.7"
__openapi_doc_version__: str = "1.0.0"
__gen_version__: str = "2.788.4"
__user_agent__: str = "speakeasy-sdk/python 0.10.1 2.788.4 1.0.0 openrouter"
__user_agent__: str = "speakeasy-sdk/python 0.10.7 2.788.4 1.0.0 openrouter"
try:
if __package__ is not None:
+2 -2
View File
@@ -533,7 +533,7 @@ class APIKeys(BaseSDK):
) -> operations.CreateKeysResponse:
r"""Create a new API key
Create a new API key for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys) required.
Create a new API key for the authenticated user. The plaintext `key` is returned only in this response. Treat it as a write-only, sensitive value; it cannot be retrieved later. [Management key](/docs/guides/overview/auth/management-api-keys) required.
:param name: Name for the new API key
:param http_referer: The app identifier should be your app's URL and is used as the primary identifier for rankings.
@@ -696,7 +696,7 @@ class APIKeys(BaseSDK):
) -> operations.CreateKeysResponse:
r"""Create a new API key
Create a new API key for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys) required.
Create a new API key for the authenticated user. The plaintext `key` is returned only in this response. Treat it as a write-only, sensitive value; it cannot be retrieved later. [Management key](/docs/guides/overview/auth/management-api-keys) required.
:param name: Name for the new API key
:param http_referer: The app identifier should be your app's URL and is used as the primary identifier for rankings.
+2 -2
View File
@@ -359,7 +359,7 @@ class Byok(BaseSDK):
) -> components.CreateBYOKKeyResponse:
r"""Create a BYOK provider credential
Create a new bring-your-own-key (BYOK) provider credential. The raw key is encrypted at rest and never returned in API responses. Defaults to the authenticated entity's default workspace; use the `workspace_id` body field to scope to a different workspace. [Management key](/docs/guides/overview/auth/management-api-keys) required.
Create a new bring-your-own-key (BYOK) provider credential. The raw key is encrypted at rest and never returned in API responses. Defaults to the authenticated entity's default workspace; use the `workspace_id` body field to scope to a different workspace. Treat the raw key as write-only; it is never returned after creation. [Management key](/docs/guides/overview/auth/management-api-keys) required.
:param key: The raw provider API key or credential. This value is encrypted at rest and never returned in API responses.
:param provider: The upstream provider this credential authenticates against, as a lowercase slug (e.g. `openai`, `anthropic`, `amazon-bedrock`).
@@ -520,7 +520,7 @@ class Byok(BaseSDK):
) -> components.CreateBYOKKeyResponse:
r"""Create a BYOK provider credential
Create a new bring-your-own-key (BYOK) provider credential. The raw key is encrypted at rest and never returned in API responses. Defaults to the authenticated entity's default workspace; use the `workspace_id` body field to scope to a different workspace. [Management key](/docs/guides/overview/auth/management-api-keys) required.
Create a new bring-your-own-key (BYOK) provider credential. The raw key is encrypted at rest and never returned in API responses. Defaults to the authenticated entity's default workspace; use the `workspace_id` body field to scope to a different workspace. Treat the raw key as write-only; it is never returned after creation. [Management key](/docs/guides/overview/auth/management-api-keys) required.
:param key: The raw provider API key or credential. This value is encrypted at rest and never returned in API responses.
:param provider: The upstream provider this credential authenticates against, as a lowercase slug (e.g. `openai`, `anthropic`, `amazon-bedrock`).
+5
View File
@@ -1020,6 +1020,7 @@ if TYPE_CHECKING:
FusionServerToolConfigToolTypedDict,
FusionServerToolConfigTypedDict,
)
from .fusionsource import FusionSource, FusionSourceTypedDict
from .generationcontentdata import (
GenerationContentData,
GenerationContentDataOutput,
@@ -3423,6 +3424,8 @@ __all__ = [
"FusionServerToolOpenRouter",
"FusionServerToolOpenRouterType",
"FusionServerToolOpenRouterTypedDict",
"FusionSource",
"FusionSourceTypedDict",
"GenerationContentData",
"GenerationContentDataOutput",
"GenerationContentDataOutputTypedDict",
@@ -5348,6 +5351,8 @@ _dynamic_imports: dict[str, str] = {
"FusionServerToolConfigTool": ".fusionservertoolconfig",
"FusionServerToolConfigToolTypedDict": ".fusionservertoolconfig",
"FusionServerToolConfigTypedDict": ".fusionservertoolconfig",
"FusionSource": ".fusionsource",
"FusionSourceTypedDict": ".fusionsource",
"GenerationContentData": ".generationcontentdata",
"GenerationContentDataOutput": ".generationcontentdata",
"GenerationContentDataOutputTypedDict": ".generationcontentdata",
@@ -74,6 +74,7 @@ BYOKProviderSlug = Union[
"perplexity",
"phala",
"poolside",
"quiver",
"recraft",
"reka",
"relace",
+24
View File
@@ -0,0 +1,24 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
from openrouter.types import BaseModel
from typing_extensions import TypedDict
class FusionSourceTypedDict(TypedDict):
r"""A web page retrieved via web search during a fusion run."""
title: str
r"""Title of the retrieved web page."""
url: str
r"""URL of the web page a panel or the judge retrieved during the run."""
class FusionSource(BaseModel):
r"""A web page retrieved via web search during a fusion run."""
title: str
r"""Title of the retrieved web page."""
url: str
r"""URL of the web page a panel or the judge retrieved during the run."""
@@ -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"""
@@ -56,10 +56,11 @@ ImageGenerationRequestOutputFormat = Union[
"png",
"jpeg",
"webp",
"svg",
],
UnrecognizedStr,
]
r"""Encoding of the returned image bytes."""
r"""Encoding of the returned image bytes. Most models produce raster formats (png, jpeg, webp). SVG is supported by vectorization models (e.g. Quiver) — the SVG markup is UTF-8 base64-encoded in `b64_json`."""
class ImageGenerationRequestOptionsTypedDict(TypedDict):
@@ -155,6 +156,7 @@ class ImageGenerationRequestOptionsTypedDict(TypedDict):
perplexity: NotRequired[Dict[str, Nullable[Any]]]
phala: NotRequired[Dict[str, Nullable[Any]]]
poolside: NotRequired[Dict[str, Nullable[Any]]]
quiver: NotRequired[Dict[str, Nullable[Any]]]
recraft: NotRequired[Dict[str, Nullable[Any]]]
recursal: NotRequired[Dict[str, Nullable[Any]]]
reflection: NotRequired[Dict[str, Nullable[Any]]]
@@ -407,6 +409,8 @@ class ImageGenerationRequestOptions(BaseModel):
poolside: Optional[Dict[str, Nullable[Any]]] = None
quiver: Optional[Dict[str, Nullable[Any]]] = None
recraft: Optional[Dict[str, Nullable[Any]]] = None
recursal: Optional[Dict[str, Nullable[Any]]] = None
@@ -530,7 +534,7 @@ class ImageGenerationRequestTypedDict(TypedDict):
output_compression: NotRequired[int]
r"""Compression level (0-100) for webp/jpeg output. Ignored for png and by providers without a compression knob."""
output_format: NotRequired[ImageGenerationRequestOutputFormat]
r"""Encoding of the returned image bytes."""
r"""Encoding of the returned image bytes. Most models produce raster formats (png, jpeg, webp). SVG is supported by vectorization models (e.g. Quiver) — the SVG markup is UTF-8 base64-encoded in `b64_json`."""
provider: NotRequired[ImageGenerationRequestProviderTypedDict]
r"""Provider-specific passthrough configuration"""
quality: NotRequired[ImageGenerationRequestQuality]
@@ -579,7 +583,7 @@ class ImageGenerationRequest(BaseModel):
Optional[ImageGenerationRequestOutputFormat],
PlainValidator(validate_open_enum(False)),
] = None
r"""Encoding of the returned image bytes."""
r"""Encoding of the returned image bytes. Most models produce raster formats (png, jpeg, webp). SVG is supported by vectorization models (e.g. Quiver) — the SVG markup is UTF-8 base64-encoded in `b64_json`."""
provider: Optional[ImageGenerationRequestProvider] = None
r"""Provider-specific passthrough configuration"""
@@ -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"""
@@ -2,6 +2,7 @@
from __future__ import annotations
from .fusionanalysisresult import FusionAnalysisResult, FusionAnalysisResultTypedDict
from .fusionsource import FusionSource, FusionSourceTypedDict
from .toolcallstatus import ToolCallStatus
from openrouter.types import BaseModel
from openrouter.utils import validate_open_enum
@@ -60,6 +61,8 @@ class OutputFusionServerToolItemTypedDict(TypedDict):
id: NotRequired[str]
responses: NotRequired[List[ResponseTypedDict]]
r"""Analysis models that produced a response in this fusion run, with each model's full panel content."""
sources: NotRequired[List[FusionSourceTypedDict]]
r"""Web pages the analysis panels and judge retrieved via web search during this fusion run, deduplicated by URL across the whole run. Present when at least one model cited a source."""
class OutputFusionServerToolItem(BaseModel):
@@ -85,3 +88,6 @@ class OutputFusionServerToolItem(BaseModel):
responses: Optional[List[Response]] = None
r"""Analysis models that produced a response in this fusion run, with each model's full panel content."""
sources: Optional[List[FusionSource]] = None
r"""Web pages the analysis panels and judge retrieved via web search during this fusion run, deduplicated by URL across the whole run. Present when at least one model cited a source."""
+1 -1
View File
@@ -140,9 +140,9 @@ OutputItemsTypedDict = TypeAliasType(
OutputWebFetchServerToolItemTypedDict,
OutputCodeInterpreterServerToolItemTypedDict,
OutputReasoningItemTypedDict,
OutputFusionServerToolItemTypedDict,
OutputAdvisorServerToolItemTypedDict,
OutputSubagentServerToolItemTypedDict,
OutputFusionServerToolItemTypedDict,
],
)
r"""An output item from the response"""
@@ -93,6 +93,7 @@ ProviderName = Union[
"Venice",
"Wafer",
"WandB",
"Quiver",
"Xiaomi",
"xAI",
"Z.AI",
@@ -100,6 +100,7 @@ class ProviderOptionsTypedDict(TypedDict):
perplexity: NotRequired[Dict[str, Nullable[Any]]]
phala: NotRequired[Dict[str, Nullable[Any]]]
poolside: NotRequired[Dict[str, Nullable[Any]]]
quiver: NotRequired[Dict[str, Nullable[Any]]]
recraft: NotRequired[Dict[str, Nullable[Any]]]
recursal: NotRequired[Dict[str, Nullable[Any]]]
reflection: NotRequired[Dict[str, Nullable[Any]]]
@@ -352,6 +353,8 @@ class ProviderOptions(BaseModel):
poolside: Optional[Dict[str, Nullable[Any]]] = None
quiver: Optional[Dict[str, Nullable[Any]]] = None
recraft: Optional[Dict[str, Nullable[Any]]] = None
recursal: Optional[Dict[str, Nullable[Any]]] = None
@@ -52,26 +52,34 @@ class MaxPriceTypedDict(TypedDict):
r"""The object specifying the maximum price you want to pay for this request. USD price per million tokens, for prompt and completion."""
audio: NotRequired[str]
r"""Maximum price in USD per audio unit"""
completion: NotRequired[str]
r"""Maximum price in USD per million completion tokens"""
image: NotRequired[str]
r"""Maximum price in USD per image"""
prompt: NotRequired[str]
r"""Price per million prompt tokens"""
r"""Maximum price in USD per million prompt tokens"""
request: NotRequired[str]
r"""Maximum price in USD per request"""
class MaxPrice(BaseModel):
r"""The object specifying the maximum price you want to pay for this request. USD price per million tokens, for prompt and completion."""
audio: Optional[str] = None
r"""Maximum price in USD per audio unit"""
completion: Optional[str] = None
r"""Maximum price in USD per million completion tokens"""
image: Optional[str] = None
r"""Maximum price in USD per image"""
prompt: Optional[str] = None
r"""Price per million prompt tokens"""
r"""Maximum price in USD per million prompt tokens"""
request: Optional[str] = None
r"""Maximum price in USD per request"""
OnlyTypedDict = TypeAliasType("OnlyTypedDict", Union[ProviderName, str])
@@ -126,6 +126,7 @@ ProviderResponseProviderName = Union[
"Venice",
"Wafer",
"WandB",
"Quiver",
"Xiaomi",
"xAI",
"Z.AI",
@@ -15,49 +15,82 @@ from typing_extensions import Annotated, NotRequired, TypedDict
class PricingTypedDict(TypedDict):
completion: str
r"""Price in USD per token for completion (output) generation"""
prompt: str
r"""Price in USD per token for prompt (input) processing"""
audio: NotRequired[str]
r"""Price in USD per audio input token"""
audio_output: NotRequired[str]
r"""Price in USD per audio output token"""
discount: NotRequired[float]
r"""Fractional discount applied to this endpoint's pricing; the price is multiplied by (1 - discount) (0 = no discount, 1 = free)"""
image: NotRequired[str]
r"""Price in USD per input image"""
image_output: NotRequired[str]
r"""Price in USD per output image"""
image_token: NotRequired[str]
r"""Price in USD per image token"""
input_audio_cache: NotRequired[str]
r"""Price in USD per cached audio input token"""
input_cache_read: NotRequired[str]
r"""Price in USD per cached input token (read)"""
input_cache_write: NotRequired[str]
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]
r"""Price in USD per request"""
web_search: NotRequired[str]
r"""Price in USD per web search"""
class Pricing(BaseModel):
completion: str
r"""Price in USD per token for completion (output) generation"""
prompt: str
r"""Price in USD per token for prompt (input) processing"""
audio: Optional[str] = None
r"""Price in USD per audio input token"""
audio_output: Optional[str] = None
r"""Price in USD per audio output token"""
discount: Optional[float] = None
r"""Fractional discount applied to this endpoint's pricing; the price is multiplied by (1 - discount) (0 = no discount, 1 = free)"""
image: Optional[str] = None
r"""Price in USD per input image"""
image_output: Optional[str] = None
r"""Price in USD per output image"""
image_token: Optional[str] = None
r"""Price in USD per image token"""
input_audio_cache: Optional[str] = None
r"""Price in USD per cached audio input token"""
input_cache_read: Optional[str] = None
r"""Price in USD per cached input token (read)"""
input_cache_write: Optional[str] = None
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"""
request: Optional[str] = None
r"""Price in USD per request"""
web_search: Optional[str] = None
r"""Price in USD per web search"""
PublicEndpointQuantization = Union[
@@ -10,48 +10,81 @@ class PublicPricingTypedDict(TypedDict):
r"""Pricing information for the model"""
completion: str
r"""Price in USD per token for completion (output) generation"""
prompt: str
r"""Price in USD per token for prompt (input) processing"""
audio: NotRequired[str]
r"""Price in USD per audio input token"""
audio_output: NotRequired[str]
r"""Price in USD per audio output token"""
discount: NotRequired[float]
r"""Fractional discount applied to this endpoint's pricing; the price is multiplied by (1 - discount) (0 = no discount, 1 = free)"""
image: NotRequired[str]
r"""Price in USD per input image"""
image_output: NotRequired[str]
r"""Price in USD per output image"""
image_token: NotRequired[str]
r"""Price in USD per image token"""
input_audio_cache: NotRequired[str]
r"""Price in USD per cached audio input token"""
input_cache_read: NotRequired[str]
r"""Price in USD per cached input token (read)"""
input_cache_write: NotRequired[str]
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]
r"""Price in USD per request"""
web_search: NotRequired[str]
r"""Price in USD per web search"""
class PublicPricing(BaseModel):
r"""Pricing information for the model"""
completion: str
r"""Price in USD per token for completion (output) generation"""
prompt: str
r"""Price in USD per token for prompt (input) processing"""
audio: Optional[str] = None
r"""Price in USD per audio input token"""
audio_output: Optional[str] = None
r"""Price in USD per audio output token"""
discount: Optional[float] = None
r"""Fractional discount applied to this endpoint's pricing; the price is multiplied by (1 - discount) (0 = no discount, 1 = free)"""
image: Optional[str] = None
r"""Price in USD per input image"""
image_output: Optional[str] = None
r"""Price in USD per output image"""
image_token: Optional[str] = None
r"""Price in USD per image token"""
input_audio_cache: Optional[str] = None
r"""Price in USD per cached audio input token"""
input_cache_read: Optional[str] = None
r"""Price in USD per cached input token (read)"""
input_cache_write: Optional[str] = None
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"""
request: Optional[str] = None
r"""Price in USD per request"""
web_search: Optional[str] = None
r"""Price in USD per web search"""
@@ -121,6 +121,7 @@ class VideoGenerationRequestOptionsTypedDict(TypedDict):
perplexity: NotRequired[Dict[str, Nullable[Any]]]
phala: NotRequired[Dict[str, Nullable[Any]]]
poolside: NotRequired[Dict[str, Nullable[Any]]]
quiver: NotRequired[Dict[str, Nullable[Any]]]
recraft: NotRequired[Dict[str, Nullable[Any]]]
recursal: NotRequired[Dict[str, Nullable[Any]]]
reflection: NotRequired[Dict[str, Nullable[Any]]]
@@ -373,6 +374,8 @@ class VideoGenerationRequestOptions(BaseModel):
poolside: Optional[Dict[str, Nullable[Any]]] = None
quiver: Optional[Dict[str, Nullable[Any]]] = None
recraft: Optional[Dict[str, Nullable[Any]]] = None
recursal: Optional[Dict[str, Nullable[Any]]] = None
+4 -4
View File
@@ -1275,7 +1275,7 @@ class Guardrails(BaseSDK):
) -> components.UpdateGuardrailResponse:
r"""Update a guardrail
Update an existing guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.
Update an existing guardrail. Collection fields use replace semantics: send the full desired set on every update. [Management key](/docs/guides/overview/auth/management-api-keys) required.
:param id: The unique identifier of the guardrail to update
:param http_referer: The app identifier should be your app's URL and is used as the primary identifier for rankings.
@@ -1476,7 +1476,7 @@ class Guardrails(BaseSDK):
) -> components.UpdateGuardrailResponse:
r"""Update a guardrail
Update an existing guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.
Update an existing guardrail. Collection fields use replace semantics: send the full desired set on every update. [Management key](/docs/guides/overview/auth/management-api-keys) required.
:param id: The unique identifier of the guardrail to update
:param http_referer: The app identifier should be your app's URL and is used as the primary identifier for rankings.
@@ -1982,7 +1982,7 @@ class Guardrails(BaseSDK):
) -> components.BulkAssignKeysResponse:
r"""Bulk assign keys to a guardrail
Assign multiple API keys to a specific guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.
Assign multiple API keys to a specific guardrail. A key may hold at most one guardrail; assigning replaces any existing assignment. [Management key](/docs/guides/overview/auth/management-api-keys) required.
:param id: The unique identifier of the guardrail
:param key_hashes: Array of API key hashes to assign to the guardrail
@@ -2125,7 +2125,7 @@ class Guardrails(BaseSDK):
) -> components.BulkAssignKeysResponse:
r"""Bulk assign keys to a guardrail
Assign multiple API keys to a specific guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.
Assign multiple API keys to a specific guardrail. A key may hold at most one guardrail; assigning replaces any existing assignment. [Management key](/docs/guides/overview/auth/management-api-keys) required.
:param id: The unique identifier of the guardrail
:param key_hashes: Array of API key hashes to assign to the guardrail
+6 -6
View File
@@ -72,7 +72,7 @@ class Images(BaseSDK):
:param input_references: Reference images to guide image-to-image generation, as base64 data URLs or HTTP(S) URLs.
:param n: Number of images to generate (1-10). Providers that only support single-image generation reject n > 1.
:param output_compression: Compression level (0-100) for webp/jpeg output. Ignored for png and by providers without a compression knob.
:param output_format: Encoding of the returned image bytes.
:param output_format: Encoding of the returned image bytes. Most models produce raster formats (png, jpeg, webp). SVG is supported by vectorization models (e.g. Quiver) the SVG markup is UTF-8 base64-encoded in `b64_json`.
:param provider: Provider-specific passthrough configuration
:param quality: Rendering quality. Providers without a quality knob ignore this.
:param resolution: Normalized resolution tier of the generated image. Concrete pixel dimensions are derived per-provider.
@@ -140,7 +140,7 @@ class Images(BaseSDK):
:param input_references: Reference images to guide image-to-image generation, as base64 data URLs or HTTP(S) URLs.
:param n: Number of images to generate (1-10). Providers that only support single-image generation reject n > 1.
:param output_compression: Compression level (0-100) for webp/jpeg output. Ignored for png and by providers without a compression knob.
:param output_format: Encoding of the returned image bytes.
:param output_format: Encoding of the returned image bytes. Most models produce raster formats (png, jpeg, webp). SVG is supported by vectorization models (e.g. Quiver) the SVG markup is UTF-8 base64-encoded in `b64_json`.
:param provider: Provider-specific passthrough configuration
:param quality: Rendering quality. Providers without a quality knob ignore this.
:param resolution: Normalized resolution tier of the generated image. Concrete pixel dimensions are derived per-provider.
@@ -207,7 +207,7 @@ class Images(BaseSDK):
:param input_references: Reference images to guide image-to-image generation, as base64 data URLs or HTTP(S) URLs.
:param n: Number of images to generate (1-10). Providers that only support single-image generation reject n > 1.
:param output_compression: Compression level (0-100) for webp/jpeg output. Ignored for png and by providers without a compression knob.
:param output_format: Encoding of the returned image bytes.
:param output_format: Encoding of the returned image bytes. Most models produce raster formats (png, jpeg, webp). SVG is supported by vectorization models (e.g. Quiver) the SVG markup is UTF-8 base64-encoded in `b64_json`.
:param provider: Provider-specific passthrough configuration
:param quality: Rendering quality. Providers without a quality knob ignore this.
:param resolution: Normalized resolution tier of the generated image. Concrete pixel dimensions are derived per-provider.
@@ -483,7 +483,7 @@ class Images(BaseSDK):
:param input_references: Reference images to guide image-to-image generation, as base64 data URLs or HTTP(S) URLs.
:param n: Number of images to generate (1-10). Providers that only support single-image generation reject n > 1.
:param output_compression: Compression level (0-100) for webp/jpeg output. Ignored for png and by providers without a compression knob.
:param output_format: Encoding of the returned image bytes.
:param output_format: Encoding of the returned image bytes. Most models produce raster formats (png, jpeg, webp). SVG is supported by vectorization models (e.g. Quiver) the SVG markup is UTF-8 base64-encoded in `b64_json`.
:param provider: Provider-specific passthrough configuration
:param quality: Rendering quality. Providers without a quality knob ignore this.
:param resolution: Normalized resolution tier of the generated image. Concrete pixel dimensions are derived per-provider.
@@ -551,7 +551,7 @@ class Images(BaseSDK):
:param input_references: Reference images to guide image-to-image generation, as base64 data URLs or HTTP(S) URLs.
:param n: Number of images to generate (1-10). Providers that only support single-image generation reject n > 1.
:param output_compression: Compression level (0-100) for webp/jpeg output. Ignored for png and by providers without a compression knob.
:param output_format: Encoding of the returned image bytes.
:param output_format: Encoding of the returned image bytes. Most models produce raster formats (png, jpeg, webp). SVG is supported by vectorization models (e.g. Quiver) the SVG markup is UTF-8 base64-encoded in `b64_json`.
:param provider: Provider-specific passthrough configuration
:param quality: Rendering quality. Providers without a quality knob ignore this.
:param resolution: Normalized resolution tier of the generated image. Concrete pixel dimensions are derived per-provider.
@@ -618,7 +618,7 @@ class Images(BaseSDK):
:param input_references: Reference images to guide image-to-image generation, as base64 data URLs or HTTP(S) URLs.
:param n: Number of images to generate (1-10). Providers that only support single-image generation reject n > 1.
:param output_compression: Compression level (0-100) for webp/jpeg output. Ignored for png and by providers without a compression knob.
:param output_format: Encoding of the returned image bytes.
:param output_format: Encoding of the returned image bytes. Most models produce raster formats (png, jpeg, webp). SVG is supported by vectorization models (e.g. Quiver) the SVG markup is UTF-8 base64-encoded in `b64_json`.
:param provider: Provider-specific passthrough configuration
:param quality: Rendering quality. Providers without a quality knob ignore this.
:param resolution: Normalized resolution tier of the generated image. Concrete pixel dimensions are derived per-provider.
@@ -132,6 +132,7 @@ Provider = Union[
"perplexity",
"phala",
"poolside",
"quiver",
"recraft",
"reka",
"relace",
+4 -4
View File
@@ -726,7 +726,7 @@ class VideoGeneration(BaseSDK):
request_has_path_params=True,
request_has_query_params=True,
user_agent_header="user-agent",
accept_header_value="application/octet-stream",
accept_header_value="video/mp4",
http_headers=http_headers,
_globals=operations.ListVideosContentGlobals(
http_referer=self.sdk_configuration.globals.http_referer,
@@ -767,7 +767,7 @@ class VideoGeneration(BaseSDK):
)
response_data: Any = None
if utils.match_response(http_res, "200", "application/octet-stream"):
if utils.match_response(http_res, "200", "video/mp4"):
return http_res
if utils.match_response(http_res, "400", "application/json"):
http_res_text = utils.stream_to_text(http_res)
@@ -878,7 +878,7 @@ class VideoGeneration(BaseSDK):
request_has_path_params=True,
request_has_query_params=True,
user_agent_header="user-agent",
accept_header_value="application/octet-stream",
accept_header_value="video/mp4",
http_headers=http_headers,
_globals=operations.ListVideosContentGlobals(
http_referer=self.sdk_configuration.globals.http_referer,
@@ -919,7 +919,7 @@ class VideoGeneration(BaseSDK):
)
response_data: Any = None
if utils.match_response(http_res, "200", "application/octet-stream"):
if utils.match_response(http_res, "200", "video/mp4"):
return http_res
if utils.match_response(http_res, "400", "application/json"):
http_res_text = await utils.stream_to_text_async(http_res)
+2 -2
View File
@@ -676,7 +676,7 @@ class Workspaces(BaseSDK):
) -> components.DeleteWorkspaceResponse:
r"""Delete a workspace
Delete an existing workspace. The default workspace cannot be deleted. Workspaces with active API keys cannot be deleted. [Management key](/docs/guides/overview/auth/management-api-keys) required.
Delete an existing workspace. The default workspace cannot be deleted. Workspaces with active API keys cannot be deleted; remove the keys first. [Management key](/docs/guides/overview/auth/management-api-keys) required.
:param id: The workspace ID (UUID) or slug
:param http_referer: The app identifier should be your app's URL and is used as the primary identifier for rankings.
@@ -812,7 +812,7 @@ class Workspaces(BaseSDK):
) -> components.DeleteWorkspaceResponse:
r"""Delete a workspace
Delete an existing workspace. The default workspace cannot be deleted. Workspaces with active API keys cannot be deleted. [Management key](/docs/guides/overview/auth/management-api-keys) required.
Delete an existing workspace. The default workspace cannot be deleted. Workspaces with active API keys cannot be deleted; remove the keys first. [Management key](/docs/guides/overview/auth/management-api-keys) required.
:param id: The workspace ID (UUID) or slug
:param http_referer: The app identifier should be your app's URL and is used as the primary identifier for rankings.
Generated
+1 -1
View File
@@ -220,7 +220,7 @@ wheels = [
[[package]]
name = "openrouter"
version = "0.10.1"
version = "0.10.7"
source = { editable = "." }
dependencies = [
{ name = "httpcore" },