From 3bceedae6d1ba712a15e4e4c25219a64291e59c1 Mon Sep 17 00:00:00 2001 From: speakeasybot Date: Fri, 24 Jul 2026 21:37:46 +0000 Subject: [PATCH 1/2] =?UTF-8?q?##=20Python=20SDK=20Changes:=20*=20`open=5F?= =?UTF-8?q?router.presets.create=5Fpresets=5Fmessages()`:=20=20=20*=20=20`?= =?UTF-8?q?request.messages[].content.union(Array<>)[]`=20**Changed**=20(B?= =?UTF-8?q?reaking=20=E2=9A=A0=EF=B8=8F)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .speakeasy/gen.lock | 122 ++++++------------ .speakeasy/gen.yaml | 2 +- .speakeasy/out.openapi.yaml | 117 ++++------------- .speakeasy/workflow.lock | 10 +- RELEASES.md | 12 +- .../additionaltoolsitemtoolfunction.mdx | 14 +- .../additionaltoolsitemtooltype.mdx | 15 +++ .../additionaltoolsitemtypefunction.mdx | 15 --- docs/components/contentcompaction.mdx | 1 - docs/components/messagestooladditionblock.mdx | 9 +- ....mdx => messagestooladditionblocktool.mdx} | 2 +- ...stooladditionblocktoolmcptoolreference.mdx | 11 -- ...oladditionblocktoolmcptoolsetreference.mdx | 10 -- .../messagestooladditionblocktoolunion.mdx | 24 ---- ...stooladditionblocktypemcptoolreference.mdx | 15 --- ...oladditionblocktypemcptoolsetreference.mdx | 15 --- docs/components/messagestoolremovalblock.mdx | 9 +- ...e.mdx => messagestoolremovalblocktool.mdx} | 2 +- ...estoolremovalblocktoolmcptoolreference.mdx | 11 -- ...oolremovalblocktoolmcptoolsetreference.mdx | 10 -- .../messagestoolremovalblocktoolunion.mdx | 24 ---- ...estoolremovalblocktypemcptoolreference.mdx | 15 --- ...oolremovalblocktypemcptoolsetreference.mdx | 15 --- pyproject.toml | 2 +- src/openrouter/_version.py | 4 +- src/openrouter/components/__init__.py | 78 +++-------- .../components/additionaltoolsitem.py | 6 +- .../components/messagesmessageparam.py | 22 +--- .../components/messagestooladditionblock.py | 97 +------------- .../components/messagestoolremovalblock.py | 97 +------------- uv.lock | 2 +- 31 files changed, 154 insertions(+), 634 deletions(-) create mode 100644 docs/components/additionaltoolsitemtooltype.mdx delete mode 100644 docs/components/additionaltoolsitemtypefunction.mdx rename docs/components/{messagestooladditionblocktooltoolreference.mdx => messagestooladditionblocktool.mdx} (97%) delete mode 100644 docs/components/messagestooladditionblocktoolmcptoolreference.mdx delete mode 100644 docs/components/messagestooladditionblocktoolmcptoolsetreference.mdx delete mode 100644 docs/components/messagestooladditionblocktoolunion.mdx delete mode 100644 docs/components/messagestooladditionblocktypemcptoolreference.mdx delete mode 100644 docs/components/messagestooladditionblocktypemcptoolsetreference.mdx rename docs/components/{messagestoolremovalblocktooltoolreference.mdx => messagestoolremovalblocktool.mdx} (97%) delete mode 100644 docs/components/messagestoolremovalblocktoolmcptoolreference.mdx delete mode 100644 docs/components/messagestoolremovalblocktoolmcptoolsetreference.mdx delete mode 100644 docs/components/messagestoolremovalblocktoolunion.mdx delete mode 100644 docs/components/messagestoolremovalblocktypemcptoolreference.mdx delete mode 100644 docs/components/messagestoolremovalblocktypemcptoolsetreference.mdx diff --git a/.speakeasy/gen.lock b/.speakeasy/gen.lock index a2a18316..2115e443 100644 --- a/.speakeasy/gen.lock +++ b/.speakeasy/gen.lock @@ -1,19 +1,19 @@ lockVersion: 2.0.0 id: c48cf606-fb42-4a45-9c23-8f0555307828 management: - docChecksum: ed950d049ab66589aac666ef97de5ade + docChecksum: effbf6ffde5c3aa927a7a0f984807f34 docVersion: 1.0.0 speakeasyVersion: 1.787.0 generationVersion: 2.914.0 - releaseVersion: 1.0.20 - configChecksum: f7f51e2cd388ebe2e91f02fc0a41352e + releaseVersion: 1.0.21 + configChecksum: 91f9e0d15d64982a1f86ca005e2ce251 repoURL: https://github.com/OpenRouterTeam/python-sdk.git installationURL: https://github.com/OpenRouterTeam/python-sdk.git published: true persistentEdits: - generation_id: f2abf7d4-b877-47c5-8587-59c10d598c75 - pristine_commit_hash: cc3e616b1f39b9981779f11bd5bb34961b930a68 - pristine_tree_hash: 47137858cec8990ab2a47c957e7ceeef1b10ca96 + generation_id: 47030794-ee1a-4abe-b750-38f901f47d13 + pristine_commit_hash: f53db57246fd012a217dd67e0a17cc6fb77fb379 + pristine_tree_hash: 7d032ba184eb9581b2609af00a47ded717ee7d28 features: python: acceptHeaders: 3.0.0 @@ -122,16 +122,16 @@ trackedFiles: pristine_git_object: 129b2fdfb6379bb7c755bc13f0d92da88bac1eaf docs/components/additionaltoolsitemtoolfunction.mdx: id: b8c1e4fcad3b - last_write_checksum: sha1:372d0aba8f1703b6a0d93905f2dbe4d068e50886 - pristine_git_object: 619939c0a51f1f4171680082ce7d5ec6b4a81225 + last_write_checksum: sha1:c65fd2849b323fa3e0917a9b7e10929df6d998b5 + pristine_git_object: c4c0bf16f0604b95990d3d327d00fe7c6c6a625c + docs/components/additionaltoolsitemtooltype.mdx: + id: 15c11e47b2fb + last_write_checksum: sha1:8d8cf453178adbb327348a2c504356653eb2abbb + pristine_git_object: ef321af2412bd7aee72744d98c4b9a59463094eb docs/components/additionaltoolsitemtoolunion.mdx: id: b3e8598b1887 last_write_checksum: sha1:989ba14acb7cb2d5fb09fd46427781890a63aac8 pristine_git_object: 137fc3f93d3e840ceb1bf0081a5ac9feaf098c1e - docs/components/additionaltoolsitemtypefunction.mdx: - id: bf179b4008af - last_write_checksum: sha1:c0d4fee7d39fbd3d08c44bbe0e7b929350c5d7e8 - pristine_git_object: 00ce08abaaf149eb1713cc084e87a8b1efc8df81 docs/components/advisornestedtool.mdx: id: 71464b7dde39 last_write_checksum: sha1:89d7a7836c487fe84756f39b306bbfca59b1ca6c @@ -1274,8 +1274,8 @@ trackedFiles: pristine_git_object: 9a8e9eaadebb36e2836d73c4ed1867c5f1e564e7 docs/components/contentcompaction.mdx: id: 1923f9db3cff - last_write_checksum: sha1:e889398f84c645ceb38309894f5a62184922d144 - pristine_git_object: 805357e1fbefca3ed8efeca9bb729883f27f4828 + last_write_checksum: sha1:db0ae20faae38b060e586c80655b79849bb4e18b + pristine_git_object: 87f9c8d7936595373ebeae59a265705db8df2721 docs/components/contentencryptedcontent.mdx: id: 0dc55809c394 last_write_checksum: sha1:4ade3f8974c39af89b3dde5c847d7f397e7c66ad @@ -2826,64 +2826,24 @@ trackedFiles: pristine_git_object: 52ce907478e961eb90e709fca118e6d0631883d2 docs/components/messagestooladditionblock.mdx: id: ee6e08ccc2ae - last_write_checksum: sha1:b56dd3ae6d6e105c57162a705794a799ffd65533 - pristine_git_object: 5a532b3a3467bd87a7be3b53b5678de2f100366a - docs/components/messagestooladditionblocktoolmcptoolreference.mdx: - id: 9234e01f465c - last_write_checksum: sha1:bd53c613d701f425326a4e3c1f722940b6ce8abc - pristine_git_object: 8f35a41fceb796a063731ba9b02ae0c6d746a1f3 - docs/components/messagestooladditionblocktoolmcptoolsetreference.mdx: - id: 30be15aded6a - last_write_checksum: sha1:5e3877621517fcde29a8481c074b731f0f21bc59 - pristine_git_object: 807e3193597268935ff590fca8713d28797555f1 - docs/components/messagestooladditionblocktooltoolreference.mdx: - id: f98f14b0fd49 - last_write_checksum: sha1:19f6fd8337f0c404ae3041134be1e7c7557e8a99 - pristine_git_object: f56ec1fdc2a36533dcd3cabc399b02d815896623 - docs/components/messagestooladditionblocktoolunion.mdx: - id: 403384c18cfd - last_write_checksum: sha1:7b1238036e243c5cb6a7f09225880229f0879f5c - pristine_git_object: fe8e0e549274161ac8c0cab3516a810eeccd4671 - docs/components/messagestooladditionblocktypemcptoolreference.mdx: - id: db2ce8be8ba7 - last_write_checksum: sha1:116a77b38bdbd09bc9fa94649046157fc89d26fe - pristine_git_object: f0f014eda67617de68bdcdc7f3b63302be92ff6d - docs/components/messagestooladditionblocktypemcptoolsetreference.mdx: - id: ca24da95aec9 - last_write_checksum: sha1:00efeac75c8bdc1656f982c6d92638631e08ce4f - pristine_git_object: 4799e82fbeb97009ff4e6011515b0fcdd1f6c86a + last_write_checksum: sha1:b41bd9af1900643127851361ff1acf2707ab7309 + pristine_git_object: 399c9ceaa89fd23664936145da40e3f873bc3782 + docs/components/messagestooladditionblocktool.mdx: + id: 77122e0d40d2 + last_write_checksum: sha1:7d05a00487c1da64a8f04ebd273f4c4a2cb95412 + pristine_git_object: 459a5a4f96363226908c4c5be396e3ab09479bb6 docs/components/messagestooladditionblocktypetoolreference.mdx: id: 46a9c5c3d297 last_write_checksum: sha1:960eea34388236a826d75f4aa3be8beba58ae7f1 pristine_git_object: cbfee207d314517204d955f1b850109ed3382528 docs/components/messagestoolremovalblock.mdx: id: 06fb00f68d0a - last_write_checksum: sha1:cb0899c7c9678e882a1fffeb58a12467e4a52b06 - pristine_git_object: a8f4a77b42fc64493816c4ab02e231fe4e5e6c46 - docs/components/messagestoolremovalblocktoolmcptoolreference.mdx: - id: 8671f904d963 - last_write_checksum: sha1:06481a9c285c7386dd08091dcc2b89017a3d3b56 - pristine_git_object: 63a22858dd3595dcb33e3a6d6ae3ea5342295f30 - docs/components/messagestoolremovalblocktoolmcptoolsetreference.mdx: - id: 0a2a94bb6655 - last_write_checksum: sha1:12884ba8d12d2ec781fe6d80c8cd06d27ba09356 - pristine_git_object: 39ce3ffdf4fc647bf7b434df451933aa45e3c55f - docs/components/messagestoolremovalblocktooltoolreference.mdx: - id: 70ee6c5930fd - last_write_checksum: sha1:e73ca402fedecfd529a0b11e0ddf310dec43ab5d - pristine_git_object: 5700e11ae06fe87a229cf318d80c3155284ce3a3 - docs/components/messagestoolremovalblocktoolunion.mdx: - id: 91e74b616e71 - last_write_checksum: sha1:25093a32bca9c9440b12f48d655bea1f454b05dc - pristine_git_object: 896fc1773a348df9162e9a2e8006c28673c95aa8 - docs/components/messagestoolremovalblocktypemcptoolreference.mdx: - id: 114fe5a7137c - last_write_checksum: sha1:b043ce8285902d0b9fa8f28178daa706461d4f56 - pristine_git_object: 183c5b2ad7ebdf4c71d2518141d79e8638e36d47 - docs/components/messagestoolremovalblocktypemcptoolsetreference.mdx: - id: 0718f4550e4b - last_write_checksum: sha1:0db0d887ad5042a8056bb9ae8e2b9908d4d4d45c - pristine_git_object: 8f5189ad772cc836901e2dd9b1eb3c7a3dec9429 + last_write_checksum: sha1:5acfab12a15c5bb0ae2b914ad6f849d21a3eb72a + pristine_git_object: 7924930128661e2401a39fcd4c13b18e435c4042 + docs/components/messagestoolremovalblocktool.mdx: + id: dac44151c72f + last_write_checksum: sha1:676c881b2bcba2ec974e04ef498c484fb3cfced9 + pristine_git_object: a9340a29a53dfd3fdc50dd5e3cdf7f9708d8c862 docs/components/messagestoolremovalblocktypetoolreference.mdx: id: 2a88fefa96ee last_write_checksum: sha1:f19a0f1059fd13cf83467960835553dfbc618c5b @@ -6790,8 +6750,8 @@ trackedFiles: pristine_git_object: 3e38f1a929f7d6b1d6de74604aa87e3d8f010544 pyproject.toml: id: 5d07e7d72637 - last_write_checksum: sha1:1a91e36dcd5f5821e924ffe8859eaf66a8b302d3 - pristine_git_object: 1bb07f75ff35ce359f1c69d191259eb1fd0ed582 + last_write_checksum: sha1:7e1a565bdad5f09f62b21e25d3f7adef321ab09c + pristine_git_object: 6f4b3e395088807feb507c95eb7a0f84baca95af scripts/prepare_readme.py: id: e0c5957a6035 last_write_checksum: sha1:77f44b60b98bc126557ec27391f91dfba764bb54 @@ -6818,8 +6778,8 @@ trackedFiles: pristine_git_object: 86713cfea633e09d33b3d4e65281071fe20e6137 src/openrouter/_version.py: id: d8d15ad6c586 - last_write_checksum: sha1:3f59426eeb12319cd895fb7293c1d3ac86db3add - pristine_git_object: d89fbfecb9239b69ab6d7851369bd2657ca0c0cc + last_write_checksum: sha1:ada3f16ee3d08d81af1386fe9e0512715d212add + pristine_git_object: 154d73fa7df21ecc8f0a2b82a5f4bc1bc50b7ea0 src/openrouter/analytics.py: id: cb406b5aaabb last_write_checksum: sha1:9e709b71dd0611056dc0cec6150b578defe32841 @@ -6858,8 +6818,8 @@ trackedFiles: pristine_git_object: ad3d247954547814054c01989a2dff3d12b3e4e1 src/openrouter/components/__init__.py: id: 81754e97b3f4 - last_write_checksum: sha1:03132ec935a4e444eab14cb18e268fb77e3b6d08 - pristine_git_object: 1a1bea47e675fbde39b1b72e7b42ef04b2025a54 + last_write_checksum: sha1:face799abf2003d53c7615e54616773093f238df + pristine_git_object: af44c2e31fff1acb25b180c4011470806217efa4 src/openrouter/components/aabenchmarkentry.py: id: e2e0f0b48c82 last_write_checksum: sha1:fab4d9a24d2cea937bb749d46c5f83941e99d65c @@ -6874,8 +6834,8 @@ trackedFiles: pristine_git_object: 1138e6f6bc025546a86877749ce83aca4c46499a src/openrouter/components/additionaltoolsitem.py: id: 2761ab789f41 - last_write_checksum: sha1:f711aac1f44184306bed8d816190208e8c73daa5 - pristine_git_object: c9851ef1cc4b9fadc8f0cb79089282ab0b0af941 + last_write_checksum: sha1:80488ef84b869dc9d564b23a3e7b34c4d5a466d4 + pristine_git_object: 2cef174af8ac4a32498556307acc43d908dddf7e src/openrouter/components/advisornestedtool.py: id: 768fcc6bad2b last_write_checksum: sha1:23f5831fd27a32345fb4e50c1406df0510b0bf47 @@ -8058,8 +8018,8 @@ trackedFiles: pristine_git_object: 9026664fa77c678a7a5f2b317b511ad93445cff7 src/openrouter/components/messagesmessageparam.py: id: ed8bbab6720d - last_write_checksum: sha1:e24e57ae188645de8aa3ce815753ac3cb2e30d37 - pristine_git_object: 67bf044b3bd3c373bf4fa33131c511301f3bf056 + last_write_checksum: sha1:b70a1e2a4d040e06798588438b2b877f7761712d + pristine_git_object: b2cde9fb8e6fdab577b9f9b693fdd2133111b4f3 src/openrouter/components/messagesoutputconfig.py: id: 54d1e297f740 last_write_checksum: sha1:478d9f534254d60225ac89bd21ddc49d18329297 @@ -8074,12 +8034,12 @@ trackedFiles: pristine_git_object: d101995fd27b0bccbac266805caba629039c5f93 src/openrouter/components/messagestooladditionblock.py: id: 3fc00d28b82d - last_write_checksum: sha1:9d58d3e11b4260f7d00efcf0630fe4186b5d01a1 - pristine_git_object: 4c081d8d6f173682a96948b2e5b72231c3ee6bba + last_write_checksum: sha1:cb0db9a0a8c20509c34af7784800ba5fd8bb5401 + pristine_git_object: d6be5ce89e9cb363feb3279d7d80559f4e20991e src/openrouter/components/messagestoolremovalblock.py: id: 4b02812d2191 - last_write_checksum: sha1:1e6851ac4b3d1d1d67253357ce9367888663665b - pristine_git_object: c06c11fd99a69e262dd2fe7ffa28601570ae9377 + last_write_checksum: sha1:d4cd536d132e7718cac14738732ec243b494aa84 + pristine_git_object: 32238d761a961ada3192532ffd860f170e53b748 src/openrouter/components/metadatalevel.py: id: 0eede47eef62 last_write_checksum: sha1:b4e7e6fc4e9016b65008e9ebbfcc6f018fe89ced @@ -11321,4 +11281,4 @@ examples: "500": application/json: {"error": {"code": 500, "message": "Internal Server Error"}} examplesVersion: 1.0.2 -releaseNotes: "## Python SDK Changes:\n* `open_router.presets.create_presets_messages()`: `request` **Changed** (Breaking ⚠️)\n* `open_router.endpoints.list()`: `response.data.endpoints[].provider_name.enum(voyage_ai_by_mongo_db)` **Added**\n* `open_router.stt.create_transcription()`: \n * `request.provider.options.voyageai` **Added**\n* `open_router.chat.send()`: \n * `request.provider.ignore[].union(ProviderName).enum(voyage_ai_by_mongo_db)` **Added**\n* `open_router.embeddings.generate()`: \n * `request.provider.ignore[].union(ProviderName).enum(voyage_ai_by_mongo_db)` **Added**\n* `open_router.endpoints.list_zdr_endpoints()`: `response.data[].provider_name.enum(voyage_ai_by_mongo_db)` **Added**\n* `open_router.beta.responses.send()`: \n * `request.provider.ignore[].union(ProviderName).enum(voyage_ai_by_mongo_db)` **Added**\n* `open_router.generations.get_generation()`: `response.data.provider_responses[].provider_name.enum(voyage_ai_by_mongo_db)` **Added**\n* `open_router.images.generate()`: `request.provider` **Changed**\n* `open_router.presets.create_presets_chat_completions()`: \n * `request.provider.ignore[].union(ProviderName).enum(voyage_ai_by_mongo_db)` **Added**\n* `open_router.tts.create_speech()`: \n * `request.provider.options.voyageai` **Added**\n* `open_router.presets.create_presets_responses()`: \n * `request.provider.ignore[].union(ProviderName).enum(voyage_ai_by_mongo_db)` **Added**\n* `open_router.rerank.rerank()`: \n * `request.provider.ignore[].union(ProviderName).enum(voyage_ai_by_mongo_db)` **Added**\n* `open_router.video_generation.generate()`: \n * `request.provider.options.voyageai` **Added**\n" +releaseNotes: "## Python SDK Changes:\n* `open_router.presets.create_presets_messages()`: \n * `request.messages[].content.union(Array<>)[]` **Changed** (Breaking ⚠️)\n" diff --git a/.speakeasy/gen.yaml b/.speakeasy/gen.yaml index 6de17e9b..df44b45c 100644 --- a/.speakeasy/gen.yaml +++ b/.speakeasy/gen.yaml @@ -36,7 +36,7 @@ generation: documentation: mintlify preApplyUnionDiscriminators: true python: - version: 1.0.20 + version: 1.0.21 additionalDependencies: dev: {} main: {} diff --git a/.speakeasy/out.openapi.yaml b/.speakeasy/out.openapi.yaml index 37fb80b0..ba716bb0 100644 --- a/.speakeasy/out.openapi.yaml +++ b/.speakeasy/out.openapi.yaml @@ -1206,10 +1206,6 @@ components: type: - 'string' - 'null' - encrypted_content: - type: - - 'string' - - 'null' type: enum: - 'compaction' @@ -12062,10 +12058,6 @@ components: type: - 'string' - 'null' - encrypted_content: - type: - - 'string' - - 'null' type: enum: - 'compaction_delta' @@ -12116,10 +12108,6 @@ components: type: - 'string' - 'null' - encrypted_content: - type: - - 'string' - - 'null' type: enum: - 'compaction' @@ -12472,10 +12460,6 @@ components: type: - 'string' - 'null' - encrypted_content: - type: - - 'string' - - 'null' type: enum: - 'compaction' @@ -13421,46 +13405,18 @@ components: type: 'tool_reference' type: 'tool_addition' properties: - cache_control: - $ref: '#/components/schemas/AnthropicCacheControlDirective' tool: - oneOf: - - properties: - name: - type: 'string' - type: - enum: - - 'tool_reference' - type: 'string' - required: - - 'type' - - 'name' - type: 'object' - - properties: - name: - type: 'string' - server_name: - type: 'string' - type: - enum: - - 'mcp_tool_reference' - type: 'string' - required: - - 'type' - - 'name' - - 'server_name' - type: 'object' - - properties: - server_name: - type: 'string' - type: - enum: - - 'mcp_toolset_reference' - type: 'string' - required: - - 'type' - - 'server_name' - type: 'object' + properties: + name: + type: 'string' + type: + enum: + - 'tool_reference' + type: 'string' + required: + - 'type' + - 'name' + type: 'object' type: enum: - 'tool_addition' @@ -13477,46 +13433,18 @@ components: type: 'tool_reference' type: 'tool_removal' properties: - cache_control: - $ref: '#/components/schemas/AnthropicCacheControlDirective' tool: - oneOf: - - properties: - name: - type: 'string' - type: - enum: - - 'tool_reference' - type: 'string' - required: - - 'type' - - 'name' - type: 'object' - - properties: - name: - type: 'string' - server_name: - type: 'string' - type: - enum: - - 'mcp_tool_reference' - type: 'string' - required: - - 'type' - - 'name' - - 'server_name' - type: 'object' - - properties: - server_name: - type: 'string' - type: - enum: - - 'mcp_toolset_reference' - type: 'string' - required: - - 'type' - - 'server_name' - type: 'object' + properties: + name: + type: 'string' + type: + enum: + - 'tool_reference' + type: 'string' + required: + - 'type' + - 'name' + type: 'object' type: enum: - 'tool_removal' @@ -16846,7 +16774,6 @@ components: enum: - 'end_turn' - 'max_tokens' - - 'model_context_window_exceeded' - 'stop_sequence' - 'tool_use' - 'pause_turn' diff --git a/.speakeasy/workflow.lock b/.speakeasy/workflow.lock index 76eda462..25766247 100644 --- a/.speakeasy/workflow.lock +++ b/.speakeasy/workflow.lock @@ -2,8 +2,8 @@ speakeasyVersion: 1.787.0 sources: OpenRouter API: sourceNamespace: open-router-chat-completions-api - sourceRevisionDigest: sha256:bb9814e3281a9e0c3024eaa6567726ce1522ce6ccf1a05f1206563bccba3bcec - sourceBlobDigest: sha256:040172eadbe8a42c5cc61b80aa158f3211bac5e469aca169ad8d0555056d3bea + sourceRevisionDigest: sha256:84956abf97cd05ac3fcf7eda297a5696d5a4b4de8a6b8502273012c1273423c0 + sourceBlobDigest: sha256:6b2b895ab85fff8a1f2dfbc12a459ba36af372d3597d26d157b6079bcc5e6466 tags: - latest - 1.0.0 @@ -11,10 +11,10 @@ targets: open-router: source: OpenRouter API sourceNamespace: open-router-chat-completions-api - sourceRevisionDigest: sha256:bb9814e3281a9e0c3024eaa6567726ce1522ce6ccf1a05f1206563bccba3bcec - sourceBlobDigest: sha256:040172eadbe8a42c5cc61b80aa158f3211bac5e469aca169ad8d0555056d3bea + sourceRevisionDigest: sha256:84956abf97cd05ac3fcf7eda297a5696d5a4b4de8a6b8502273012c1273423c0 + sourceBlobDigest: sha256:6b2b895ab85fff8a1f2dfbc12a459ba36af372d3597d26d157b6079bcc5e6466 codeSamplesNamespace: open-router-python-code-samples - codeSamplesRevisionDigest: sha256:60f6bcb0840b8a546ae2fc33b9b02a72286fdf3d65c8ca7007e838b5bb95da5d + codeSamplesRevisionDigest: sha256:65a32b84d126d5b1c4eb7e3481aa970c419ca48b238669b4a52ac6fd6508d6ca workflow: workflowVersion: 1.0.0 speakeasyVersion: 1.787.0 diff --git a/RELEASES.md b/RELEASES.md index 5b39f1d9..2e9e65c0 100644 --- a/RELEASES.md +++ b/RELEASES.md @@ -779,4 +779,14 @@ Based on: ### Generated - [python v1.0.20] . ### Releases -- [PyPI v1.0.20] https://pypi.org/project/openrouter/1.0.20 - . \ No newline at end of file +- [PyPI v1.0.20] https://pypi.org/project/openrouter/1.0.20 - . + +## 2026-07-24 21:35:51 +### Changes +Based on: +- OpenAPI Doc +- Speakeasy CLI 1.787.0 (2.914.0) https://github.com/speakeasy-api/speakeasy +### Generated +- [python v1.0.21] . +### Releases +- [PyPI v1.0.21] https://pypi.org/project/openrouter/1.0.21 - . \ No newline at end of file diff --git a/docs/components/additionaltoolsitemtoolfunction.mdx b/docs/components/additionaltoolsitemtoolfunction.mdx index 619939c0..c4c0bf16 100644 --- a/docs/components/additionaltoolsitemtoolfunction.mdx +++ b/docs/components/additionaltoolsitemtoolfunction.mdx @@ -7,10 +7,10 @@ Function tool definition ## Fields -| Field | Type | Required | Description | -| ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | -| `description` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | -| `name` | *str* | :heavy_check_mark: | N/A | -| `parameters` | Dict[str, *Any*] | :heavy_check_mark: | N/A | -| `strict` | *OptionalNullable[bool]* | :heavy_minus_sign: | N/A | -| `type` | [components.AdditionalToolsItemTypeFunction](../components/additionaltoolsitemtypefunction.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | +| `description` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | +| `name` | *str* | :heavy_check_mark: | N/A | +| `parameters` | Dict[str, *Any*] | :heavy_check_mark: | N/A | +| `strict` | *OptionalNullable[bool]* | :heavy_minus_sign: | N/A | +| `type` | [components.AdditionalToolsItemToolType](../components/additionaltoolsitemtooltype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/components/additionaltoolsitemtooltype.mdx b/docs/components/additionaltoolsitemtooltype.mdx new file mode 100644 index 00000000..ef321af2 --- /dev/null +++ b/docs/components/additionaltoolsitemtooltype.mdx @@ -0,0 +1,15 @@ +--- +title: "AdditionalToolsItemToolType" +--- + +## Example Usage + +```python +from openrouter.components import AdditionalToolsItemToolType +value: AdditionalToolsItemToolType = "function" +``` + + +## Values + +- `"function"` diff --git a/docs/components/additionaltoolsitemtypefunction.mdx b/docs/components/additionaltoolsitemtypefunction.mdx deleted file mode 100644 index 00ce08ab..00000000 --- a/docs/components/additionaltoolsitemtypefunction.mdx +++ /dev/null @@ -1,15 +0,0 @@ ---- -title: "AdditionalToolsItemTypeFunction" ---- - -## Example Usage - -```python -from openrouter.components import AdditionalToolsItemTypeFunction -value: AdditionalToolsItemTypeFunction = "function" -``` - - -## Values - -- `"function"` diff --git a/docs/components/contentcompaction.mdx b/docs/components/contentcompaction.mdx index 805357e1..87f9c8d7 100644 --- a/docs/components/contentcompaction.mdx +++ b/docs/components/contentcompaction.mdx @@ -8,5 +8,4 @@ title: "ContentCompaction" | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | `cache_control` | [Optional[components.AnthropicCacheControlDirective]](../components/anthropiccachecontroldirective.mdx) | :heavy_minus_sign: | Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format. | \{
"type": "ephemeral"
} | | `content` | *Nullable[str]* | :heavy_check_mark: | N/A | | -| `encrypted_content` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | | | `type` | [components.MessagesMessageParamTypeCompaction](../components/messagesmessageparamtypecompaction.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/components/messagestooladditionblock.mdx b/docs/components/messagestooladditionblock.mdx index 5a532b3a..399c9cea 100644 --- a/docs/components/messagestooladditionblock.mdx +++ b/docs/components/messagestooladditionblock.mdx @@ -7,8 +7,7 @@ Loads a previously deferred tool (declared in `tools` with `defer_loading: true` ## Fields -| Field | Type | Required | Description | Example | -| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `cache_control` | [Optional[components.AnthropicCacheControlDirective]](../components/anthropiccachecontroldirective.mdx) | :heavy_minus_sign: | Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format. | \{
"type": "ephemeral"
} | -| `tool` | [components.MessagesToolAdditionBlockToolUnion](../components/messagestooladditionblocktoolunion.mdx) | :heavy_check_mark: | N/A | | -| `type` | [components.TypeToolAddition](../components/typetooladdition.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | +| `tool` | [components.MessagesToolAdditionBlockTool](../components/messagestooladditionblocktool.mdx) | :heavy_check_mark: | N/A | +| `type` | [components.TypeToolAddition](../components/typetooladdition.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/components/messagestooladditionblocktooltoolreference.mdx b/docs/components/messagestooladditionblocktool.mdx similarity index 97% rename from docs/components/messagestooladditionblocktooltoolreference.mdx rename to docs/components/messagestooladditionblocktool.mdx index f56ec1fd..459a5a4f 100644 --- a/docs/components/messagestooladditionblocktooltoolreference.mdx +++ b/docs/components/messagestooladditionblocktool.mdx @@ -1,5 +1,5 @@ --- -title: "MessagesToolAdditionBlockToolToolReference" +title: "MessagesToolAdditionBlockTool" --- ## Fields diff --git a/docs/components/messagestooladditionblocktoolmcptoolreference.mdx b/docs/components/messagestooladditionblocktoolmcptoolreference.mdx deleted file mode 100644 index 8f35a41f..00000000 --- a/docs/components/messagestooladditionblocktoolmcptoolreference.mdx +++ /dev/null @@ -1,11 +0,0 @@ ---- -title: "MessagesToolAdditionBlockToolMcpToolReference" ---- - -## Fields - -| Field | Type | Required | Description | -| -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -| `name` | *str* | :heavy_check_mark: | N/A | -| `server_name` | *str* | :heavy_check_mark: | N/A | -| `type` | [components.MessagesToolAdditionBlockTypeMcpToolReference](../components/messagestooladditionblocktypemcptoolreference.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/components/messagestooladditionblocktoolmcptoolsetreference.mdx b/docs/components/messagestooladditionblocktoolmcptoolsetreference.mdx deleted file mode 100644 index 807e3193..00000000 --- a/docs/components/messagestooladditionblocktoolmcptoolsetreference.mdx +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "MessagesToolAdditionBlockToolMcpToolsetReference" ---- - -## Fields - -| Field | Type | Required | Description | -| -------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- | -| `server_name` | *str* | :heavy_check_mark: | N/A | -| `type` | [components.MessagesToolAdditionBlockTypeMcpToolsetReference](../components/messagestooladditionblocktypemcptoolsetreference.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/components/messagestooladditionblocktoolunion.mdx b/docs/components/messagestooladditionblocktoolunion.mdx deleted file mode 100644 index fe8e0e54..00000000 --- a/docs/components/messagestooladditionblocktoolunion.mdx +++ /dev/null @@ -1,24 +0,0 @@ ---- -title: "MessagesToolAdditionBlockToolUnion" ---- - -## Supported Types - -### `components.MessagesToolAdditionBlockToolToolReference` - -```python -value: components.MessagesToolAdditionBlockToolToolReference = /* values here */ -``` - -### `components.MessagesToolAdditionBlockToolMcpToolReference` - -```python -value: components.MessagesToolAdditionBlockToolMcpToolReference = /* values here */ -``` - -### `components.MessagesToolAdditionBlockToolMcpToolsetReference` - -```python -value: components.MessagesToolAdditionBlockToolMcpToolsetReference = /* values here */ -``` - diff --git a/docs/components/messagestooladditionblocktypemcptoolreference.mdx b/docs/components/messagestooladditionblocktypemcptoolreference.mdx deleted file mode 100644 index f0f014ed..00000000 --- a/docs/components/messagestooladditionblocktypemcptoolreference.mdx +++ /dev/null @@ -1,15 +0,0 @@ ---- -title: "MessagesToolAdditionBlockTypeMcpToolReference" ---- - -## Example Usage - -```python -from openrouter.components import MessagesToolAdditionBlockTypeMcpToolReference -value: MessagesToolAdditionBlockTypeMcpToolReference = "mcp_tool_reference" -``` - - -## Values - -- `"mcp_tool_reference"` diff --git a/docs/components/messagestooladditionblocktypemcptoolsetreference.mdx b/docs/components/messagestooladditionblocktypemcptoolsetreference.mdx deleted file mode 100644 index 4799e82f..00000000 --- a/docs/components/messagestooladditionblocktypemcptoolsetreference.mdx +++ /dev/null @@ -1,15 +0,0 @@ ---- -title: "MessagesToolAdditionBlockTypeMcpToolsetReference" ---- - -## Example Usage - -```python -from openrouter.components import MessagesToolAdditionBlockTypeMcpToolsetReference -value: MessagesToolAdditionBlockTypeMcpToolsetReference = "mcp_toolset_reference" -``` - - -## Values - -- `"mcp_toolset_reference"` diff --git a/docs/components/messagestoolremovalblock.mdx b/docs/components/messagestoolremovalblock.mdx index a8f4a77b..79249301 100644 --- a/docs/components/messagestoolremovalblock.mdx +++ b/docs/components/messagestoolremovalblock.mdx @@ -7,8 +7,7 @@ Removes a tool from the conversation mid-conversation without invalidating the p ## Fields -| Field | Type | Required | Description | Example | -| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `cache_control` | [Optional[components.AnthropicCacheControlDirective]](../components/anthropiccachecontroldirective.mdx) | :heavy_minus_sign: | Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format. | \{
"type": "ephemeral"
} | -| `tool` | [components.MessagesToolRemovalBlockToolUnion](../components/messagestoolremovalblocktoolunion.mdx) | :heavy_check_mark: | N/A | | -| `type` | [components.TypeToolRemoval](../components/typetoolremoval.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | +| `tool` | [components.MessagesToolRemovalBlockTool](../components/messagestoolremovalblocktool.mdx) | :heavy_check_mark: | N/A | +| `type` | [components.TypeToolRemoval](../components/typetoolremoval.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/components/messagestoolremovalblocktooltoolreference.mdx b/docs/components/messagestoolremovalblocktool.mdx similarity index 97% rename from docs/components/messagestoolremovalblocktooltoolreference.mdx rename to docs/components/messagestoolremovalblocktool.mdx index 5700e11a..a9340a29 100644 --- a/docs/components/messagestoolremovalblocktooltoolreference.mdx +++ b/docs/components/messagestoolremovalblocktool.mdx @@ -1,5 +1,5 @@ --- -title: "MessagesToolRemovalBlockToolToolReference" +title: "MessagesToolRemovalBlockTool" --- ## Fields diff --git a/docs/components/messagestoolremovalblocktoolmcptoolreference.mdx b/docs/components/messagestoolremovalblocktoolmcptoolreference.mdx deleted file mode 100644 index 63a22858..00000000 --- a/docs/components/messagestoolremovalblocktoolmcptoolreference.mdx +++ /dev/null @@ -1,11 +0,0 @@ ---- -title: "MessagesToolRemovalBlockToolMcpToolReference" ---- - -## Fields - -| Field | Type | Required | Description | -| ------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------ | -| `name` | *str* | :heavy_check_mark: | N/A | -| `server_name` | *str* | :heavy_check_mark: | N/A | -| `type` | [components.MessagesToolRemovalBlockTypeMcpToolReference](../components/messagestoolremovalblocktypemcptoolreference.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/components/messagestoolremovalblocktoolmcptoolsetreference.mdx b/docs/components/messagestoolremovalblocktoolmcptoolsetreference.mdx deleted file mode 100644 index 39ce3ffd..00000000 --- a/docs/components/messagestoolremovalblocktoolmcptoolsetreference.mdx +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "MessagesToolRemovalBlockToolMcpToolsetReference" ---- - -## Fields - -| Field | Type | Required | Description | -| ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | -| `server_name` | *str* | :heavy_check_mark: | N/A | -| `type` | [components.MessagesToolRemovalBlockTypeMcpToolsetReference](../components/messagestoolremovalblocktypemcptoolsetreference.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/components/messagestoolremovalblocktoolunion.mdx b/docs/components/messagestoolremovalblocktoolunion.mdx deleted file mode 100644 index 896fc177..00000000 --- a/docs/components/messagestoolremovalblocktoolunion.mdx +++ /dev/null @@ -1,24 +0,0 @@ ---- -title: "MessagesToolRemovalBlockToolUnion" ---- - -## Supported Types - -### `components.MessagesToolRemovalBlockToolToolReference` - -```python -value: components.MessagesToolRemovalBlockToolToolReference = /* values here */ -``` - -### `components.MessagesToolRemovalBlockToolMcpToolReference` - -```python -value: components.MessagesToolRemovalBlockToolMcpToolReference = /* values here */ -``` - -### `components.MessagesToolRemovalBlockToolMcpToolsetReference` - -```python -value: components.MessagesToolRemovalBlockToolMcpToolsetReference = /* values here */ -``` - diff --git a/docs/components/messagestoolremovalblocktypemcptoolreference.mdx b/docs/components/messagestoolremovalblocktypemcptoolreference.mdx deleted file mode 100644 index 183c5b2a..00000000 --- a/docs/components/messagestoolremovalblocktypemcptoolreference.mdx +++ /dev/null @@ -1,15 +0,0 @@ ---- -title: "MessagesToolRemovalBlockTypeMcpToolReference" ---- - -## Example Usage - -```python -from openrouter.components import MessagesToolRemovalBlockTypeMcpToolReference -value: MessagesToolRemovalBlockTypeMcpToolReference = "mcp_tool_reference" -``` - - -## Values - -- `"mcp_tool_reference"` diff --git a/docs/components/messagestoolremovalblocktypemcptoolsetreference.mdx b/docs/components/messagestoolremovalblocktypemcptoolsetreference.mdx deleted file mode 100644 index 8f5189ad..00000000 --- a/docs/components/messagestoolremovalblocktypemcptoolsetreference.mdx +++ /dev/null @@ -1,15 +0,0 @@ ---- -title: "MessagesToolRemovalBlockTypeMcpToolsetReference" ---- - -## Example Usage - -```python -from openrouter.components import MessagesToolRemovalBlockTypeMcpToolsetReference -value: MessagesToolRemovalBlockTypeMcpToolsetReference = "mcp_toolset_reference" -``` - - -## Values - -- `"mcp_toolset_reference"` diff --git a/pyproject.toml b/pyproject.toml index 1bb07f75..6f4b3e39 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "openrouter" -version = "1.0.20" +version = "1.0.21" description = "Official Python Client SDK for OpenRouter." authors = [{ name = "OpenRouter" },] readme = "README-PYPI.md" diff --git a/src/openrouter/_version.py b/src/openrouter/_version.py index d89fbfec..154d73fa 100644 --- a/src/openrouter/_version.py +++ b/src/openrouter/_version.py @@ -3,10 +3,10 @@ import importlib.metadata __title__: str = "openrouter" -__version__: str = "1.0.20" +__version__: str = "1.0.21" __openapi_doc_version__: str = "1.0.0" __gen_version__: str = "2.914.0" -__user_agent__: str = "speakeasy-sdk/python 1.0.20 2.914.0 1.0.0 openrouter" +__user_agent__: str = "speakeasy-sdk/python 1.0.21 2.914.0 1.0.0 openrouter" try: if __package__ is not None: diff --git a/src/openrouter/components/__init__.py b/src/openrouter/components/__init__.py index 1a1bea47..af44c2e3 100644 --- a/src/openrouter/components/__init__.py +++ b/src/openrouter/components/__init__.py @@ -14,10 +14,10 @@ AdditionalToolsItemTool, AdditionalToolsItemToolFunction, AdditionalToolsItemToolFunctionTypedDict, + AdditionalToolsItemToolType, AdditionalToolsItemToolTypedDict, AdditionalToolsItemToolUnion, AdditionalToolsItemToolUnionTypedDict, - AdditionalToolsItemTypeFunction, AdditionalToolsItemTypedDict, TypeAdditionalTools, ) @@ -1632,32 +1632,16 @@ ) from .messagestooladditionblock import ( MessagesToolAdditionBlock, - MessagesToolAdditionBlockToolMcpToolReference, - MessagesToolAdditionBlockToolMcpToolReferenceTypedDict, - MessagesToolAdditionBlockToolMcpToolsetReference, - MessagesToolAdditionBlockToolMcpToolsetReferenceTypedDict, - MessagesToolAdditionBlockToolToolReference, - MessagesToolAdditionBlockToolToolReferenceTypedDict, - MessagesToolAdditionBlockToolUnion, - MessagesToolAdditionBlockToolUnionTypedDict, - MessagesToolAdditionBlockTypeMcpToolReference, - MessagesToolAdditionBlockTypeMcpToolsetReference, + MessagesToolAdditionBlockTool, + MessagesToolAdditionBlockToolTypedDict, MessagesToolAdditionBlockTypeToolReference, MessagesToolAdditionBlockTypedDict, TypeToolAddition, ) from .messagestoolremovalblock import ( MessagesToolRemovalBlock, - MessagesToolRemovalBlockToolMcpToolReference, - MessagesToolRemovalBlockToolMcpToolReferenceTypedDict, - MessagesToolRemovalBlockToolMcpToolsetReference, - MessagesToolRemovalBlockToolMcpToolsetReferenceTypedDict, - MessagesToolRemovalBlockToolToolReference, - MessagesToolRemovalBlockToolToolReferenceTypedDict, - MessagesToolRemovalBlockToolUnion, - MessagesToolRemovalBlockToolUnionTypedDict, - MessagesToolRemovalBlockTypeMcpToolReference, - MessagesToolRemovalBlockTypeMcpToolsetReference, + MessagesToolRemovalBlockTool, + MessagesToolRemovalBlockToolTypedDict, MessagesToolRemovalBlockTypeToolReference, MessagesToolRemovalBlockTypedDict, TypeToolRemoval, @@ -2922,10 +2906,10 @@ "AdditionalToolsItemTool", "AdditionalToolsItemToolFunction", "AdditionalToolsItemToolFunctionTypedDict", + "AdditionalToolsItemToolType", "AdditionalToolsItemToolTypedDict", "AdditionalToolsItemToolUnion", "AdditionalToolsItemToolUnionTypedDict", - "AdditionalToolsItemTypeFunction", "AdditionalToolsItemTypedDict", "AdvisorNestedTool", "AdvisorNestedToolTypedDict", @@ -4010,29 +3994,13 @@ "MessagesSearchModelsServerToolType", "MessagesSearchModelsServerToolTypedDict", "MessagesToolAdditionBlock", - "MessagesToolAdditionBlockToolMcpToolReference", - "MessagesToolAdditionBlockToolMcpToolReferenceTypedDict", - "MessagesToolAdditionBlockToolMcpToolsetReference", - "MessagesToolAdditionBlockToolMcpToolsetReferenceTypedDict", - "MessagesToolAdditionBlockToolToolReference", - "MessagesToolAdditionBlockToolToolReferenceTypedDict", - "MessagesToolAdditionBlockToolUnion", - "MessagesToolAdditionBlockToolUnionTypedDict", - "MessagesToolAdditionBlockTypeMcpToolReference", - "MessagesToolAdditionBlockTypeMcpToolsetReference", + "MessagesToolAdditionBlockTool", + "MessagesToolAdditionBlockToolTypedDict", "MessagesToolAdditionBlockTypeToolReference", "MessagesToolAdditionBlockTypedDict", "MessagesToolRemovalBlock", - "MessagesToolRemovalBlockToolMcpToolReference", - "MessagesToolRemovalBlockToolMcpToolReferenceTypedDict", - "MessagesToolRemovalBlockToolMcpToolsetReference", - "MessagesToolRemovalBlockToolMcpToolsetReferenceTypedDict", - "MessagesToolRemovalBlockToolToolReference", - "MessagesToolRemovalBlockToolToolReferenceTypedDict", - "MessagesToolRemovalBlockToolUnion", - "MessagesToolRemovalBlockToolUnionTypedDict", - "MessagesToolRemovalBlockTypeMcpToolReference", - "MessagesToolRemovalBlockTypeMcpToolsetReference", + "MessagesToolRemovalBlockTool", + "MessagesToolRemovalBlockToolTypedDict", "MessagesToolRemovalBlockTypeToolReference", "MessagesToolRemovalBlockTypedDict", "MetadataLevel", @@ -5043,10 +5011,10 @@ "AdditionalToolsItemTool": ".additionaltoolsitem", "AdditionalToolsItemToolFunction": ".additionaltoolsitem", "AdditionalToolsItemToolFunctionTypedDict": ".additionaltoolsitem", + "AdditionalToolsItemToolType": ".additionaltoolsitem", "AdditionalToolsItemToolTypedDict": ".additionaltoolsitem", "AdditionalToolsItemToolUnion": ".additionaltoolsitem", "AdditionalToolsItemToolUnionTypedDict": ".additionaltoolsitem", - "AdditionalToolsItemTypeFunction": ".additionaltoolsitem", "AdditionalToolsItemTypedDict": ".additionaltoolsitem", "TypeAdditionalTools": ".additionaltoolsitem", "AdvisorNestedTool": ".advisornestedtool", @@ -6241,30 +6209,14 @@ "MessagesSearchModelsServerToolType": ".messagessearchmodelsservertool", "MessagesSearchModelsServerToolTypedDict": ".messagessearchmodelsservertool", "MessagesToolAdditionBlock": ".messagestooladditionblock", - "MessagesToolAdditionBlockToolMcpToolReference": ".messagestooladditionblock", - "MessagesToolAdditionBlockToolMcpToolReferenceTypedDict": ".messagestooladditionblock", - "MessagesToolAdditionBlockToolMcpToolsetReference": ".messagestooladditionblock", - "MessagesToolAdditionBlockToolMcpToolsetReferenceTypedDict": ".messagestooladditionblock", - "MessagesToolAdditionBlockToolToolReference": ".messagestooladditionblock", - "MessagesToolAdditionBlockToolToolReferenceTypedDict": ".messagestooladditionblock", - "MessagesToolAdditionBlockToolUnion": ".messagestooladditionblock", - "MessagesToolAdditionBlockToolUnionTypedDict": ".messagestooladditionblock", - "MessagesToolAdditionBlockTypeMcpToolReference": ".messagestooladditionblock", - "MessagesToolAdditionBlockTypeMcpToolsetReference": ".messagestooladditionblock", + "MessagesToolAdditionBlockTool": ".messagestooladditionblock", + "MessagesToolAdditionBlockToolTypedDict": ".messagestooladditionblock", "MessagesToolAdditionBlockTypeToolReference": ".messagestooladditionblock", "MessagesToolAdditionBlockTypedDict": ".messagestooladditionblock", "TypeToolAddition": ".messagestooladditionblock", "MessagesToolRemovalBlock": ".messagestoolremovalblock", - "MessagesToolRemovalBlockToolMcpToolReference": ".messagestoolremovalblock", - "MessagesToolRemovalBlockToolMcpToolReferenceTypedDict": ".messagestoolremovalblock", - "MessagesToolRemovalBlockToolMcpToolsetReference": ".messagestoolremovalblock", - "MessagesToolRemovalBlockToolMcpToolsetReferenceTypedDict": ".messagestoolremovalblock", - "MessagesToolRemovalBlockToolToolReference": ".messagestoolremovalblock", - "MessagesToolRemovalBlockToolToolReferenceTypedDict": ".messagestoolremovalblock", - "MessagesToolRemovalBlockToolUnion": ".messagestoolremovalblock", - "MessagesToolRemovalBlockToolUnionTypedDict": ".messagestoolremovalblock", - "MessagesToolRemovalBlockTypeMcpToolReference": ".messagestoolremovalblock", - "MessagesToolRemovalBlockTypeMcpToolsetReference": ".messagestoolremovalblock", + "MessagesToolRemovalBlockTool": ".messagestoolremovalblock", + "MessagesToolRemovalBlockToolTypedDict": ".messagestoolremovalblock", "MessagesToolRemovalBlockTypeToolReference": ".messagestoolremovalblock", "MessagesToolRemovalBlockTypedDict": ".messagestoolremovalblock", "TypeToolRemoval": ".messagestoolremovalblock", diff --git a/src/openrouter/components/additionaltoolsitem.py b/src/openrouter/components/additionaltoolsitem.py index c9851ef1..2cef174a 100644 --- a/src/openrouter/components/additionaltoolsitem.py +++ b/src/openrouter/components/additionaltoolsitem.py @@ -116,7 +116,7 @@ def additional_properties(self, value): self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] -AdditionalToolsItemTypeFunction = Literal["function",] +AdditionalToolsItemToolType = Literal["function",] class AdditionalToolsItemToolFunctionTypedDict(TypedDict): @@ -124,7 +124,7 @@ class AdditionalToolsItemToolFunctionTypedDict(TypedDict): name: str parameters: Nullable[Dict[str, Any]] - type: AdditionalToolsItemTypeFunction + type: AdditionalToolsItemToolType description: NotRequired[Nullable[str]] strict: NotRequired[Nullable[bool]] @@ -136,7 +136,7 @@ class AdditionalToolsItemToolFunction(BaseModel): parameters: Nullable[Dict[str, Any]] - type: AdditionalToolsItemTypeFunction + type: AdditionalToolsItemToolType description: OptionalNullable[str] = UNSET diff --git a/src/openrouter/components/messagesmessageparam.py b/src/openrouter/components/messagesmessageparam.py index 67bf044b..b2cde9fb 100644 --- a/src/openrouter/components/messagesmessageparam.py +++ b/src/openrouter/components/messagesmessageparam.py @@ -37,14 +37,7 @@ MessagesToolRemovalBlock, MessagesToolRemovalBlockTypedDict, ) -from openrouter.types import ( - BaseModel, - Nullable, - OptionalNullable, - UNSET, - UNSET_SENTINEL, - UnrecognizedStr, -) +from openrouter.types import BaseModel, Nullable, UNSET_SENTINEL, UnrecognizedStr from openrouter.utils import get_discriminator from pydantic import Discriminator, Tag, model_serializer from typing import Any, List, Literal, Optional, Union @@ -59,7 +52,6 @@ class ContentCompactionTypedDict(TypedDict): type: MessagesMessageParamTypeCompaction cache_control: NotRequired[AnthropicCacheControlDirectiveTypedDict] r"""Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format.""" - encrypted_content: NotRequired[Nullable[str]] class ContentCompaction(BaseModel): @@ -70,12 +62,10 @@ class ContentCompaction(BaseModel): cache_control: Optional[AnthropicCacheControlDirective] = None r"""Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format.""" - encrypted_content: OptionalNullable[str] = UNSET - @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = set(["cache_control", "encrypted_content"]) - nullable_fields = set(["content", "encrypted_content"]) + optional_fields = set(["cache_control"]) + nullable_fields = set(["content"]) serialized = handler(self) m = {} @@ -384,13 +374,13 @@ def serialize_model(self, handler): MessagesMessageParamContentUnion4TypedDict = TypeAliasType( "MessagesMessageParamContentUnion4TypedDict", Union[ - ContentRedactedThinkingTypedDict, - AnthropicImageBlockParamTypedDict, MessagesToolRemovalBlockTypedDict, MessagesToolAdditionBlockTypedDict, + ContentRedactedThinkingTypedDict, + ContentCompactionTypedDict, + AnthropicImageBlockParamTypedDict, ContentThinkingTypedDict, MessagesAdvisorToolResultBlockTypedDict, - ContentCompactionTypedDict, AnthropicTextBlockParamTypedDict, ContentWebSearchToolResultTypedDict, ContentToolUseTypedDict, diff --git a/src/openrouter/components/messagestooladditionblock.py b/src/openrouter/components/messagestooladditionblock.py index 4c081d8d..d6be5ce8 100644 --- a/src/openrouter/components/messagestooladditionblock.py +++ b/src/openrouter/components/messagestooladditionblock.py @@ -1,121 +1,38 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .anthropiccachecontroldirective import ( - AnthropicCacheControlDirective, - AnthropicCacheControlDirectiveTypedDict, -) -from openrouter.types import BaseModel, UNSET_SENTINEL -from openrouter.utils import get_discriminator -from pydantic import Discriminator, Tag, model_serializer -from typing import Literal, Optional, Union -from typing_extensions import Annotated, NotRequired, TypeAliasType, TypedDict - - -MessagesToolAdditionBlockTypeMcpToolsetReference = Literal["mcp_toolset_reference",] - - -class MessagesToolAdditionBlockToolMcpToolsetReferenceTypedDict(TypedDict): - server_name: str - type: MessagesToolAdditionBlockTypeMcpToolsetReference - - -class MessagesToolAdditionBlockToolMcpToolsetReference(BaseModel): - server_name: str - - type: MessagesToolAdditionBlockTypeMcpToolsetReference - - -MessagesToolAdditionBlockTypeMcpToolReference = Literal["mcp_tool_reference",] - - -class MessagesToolAdditionBlockToolMcpToolReferenceTypedDict(TypedDict): - name: str - server_name: str - type: MessagesToolAdditionBlockTypeMcpToolReference - - -class MessagesToolAdditionBlockToolMcpToolReference(BaseModel): - name: str - - server_name: str - - type: MessagesToolAdditionBlockTypeMcpToolReference +from openrouter.types import BaseModel +from typing import Literal +from typing_extensions import TypedDict MessagesToolAdditionBlockTypeToolReference = Literal["tool_reference",] -class MessagesToolAdditionBlockToolToolReferenceTypedDict(TypedDict): +class MessagesToolAdditionBlockToolTypedDict(TypedDict): name: str type: MessagesToolAdditionBlockTypeToolReference -class MessagesToolAdditionBlockToolToolReference(BaseModel): +class MessagesToolAdditionBlockTool(BaseModel): name: str type: MessagesToolAdditionBlockTypeToolReference -MessagesToolAdditionBlockToolUnionTypedDict = TypeAliasType( - "MessagesToolAdditionBlockToolUnionTypedDict", - Union[ - MessagesToolAdditionBlockToolToolReferenceTypedDict, - MessagesToolAdditionBlockToolMcpToolsetReferenceTypedDict, - MessagesToolAdditionBlockToolMcpToolReferenceTypedDict, - ], -) - - -MessagesToolAdditionBlockToolUnion = Annotated[ - Union[ - Annotated[MessagesToolAdditionBlockToolToolReference, Tag("tool_reference")], - Annotated[ - MessagesToolAdditionBlockToolMcpToolReference, Tag("mcp_tool_reference") - ], - Annotated[ - MessagesToolAdditionBlockToolMcpToolsetReference, - Tag("mcp_toolset_reference"), - ], - ], - Discriminator(lambda m: get_discriminator(m, "type", "type")), -] - - TypeToolAddition = Literal["tool_addition",] class MessagesToolAdditionBlockTypedDict(TypedDict): r"""Loads a previously deferred tool (declared in `tools` with `defer_loading: true`) mid-conversation without invalidating the prompt cache. Only valid in `role: \"system\"` messages. Not supported on Claude Sonnet 5 or models older than Claude Opus 4.8.""" - tool: MessagesToolAdditionBlockToolUnionTypedDict + tool: MessagesToolAdditionBlockToolTypedDict type: TypeToolAddition - cache_control: NotRequired[AnthropicCacheControlDirectiveTypedDict] - r"""Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format.""" class MessagesToolAdditionBlock(BaseModel): r"""Loads a previously deferred tool (declared in `tools` with `defer_loading: true`) mid-conversation without invalidating the prompt cache. Only valid in `role: \"system\"` messages. Not supported on Claude Sonnet 5 or models older than Claude Opus 4.8.""" - tool: MessagesToolAdditionBlockToolUnion + tool: MessagesToolAdditionBlockTool type: TypeToolAddition - - cache_control: Optional[AnthropicCacheControlDirective] = None - r"""Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format.""" - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = set(["cache_control"]) - serialized = handler(self) - m = {} - - for n, f in type(self).model_fields.items(): - k = f.alias or n - val = serialized.get(k, serialized.get(n)) - - if val != UNSET_SENTINEL: - if val is not None or k not in optional_fields: - m[k] = val - - return m diff --git a/src/openrouter/components/messagestoolremovalblock.py b/src/openrouter/components/messagestoolremovalblock.py index c06c11fd..32238d76 100644 --- a/src/openrouter/components/messagestoolremovalblock.py +++ b/src/openrouter/components/messagestoolremovalblock.py @@ -1,121 +1,38 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .anthropiccachecontroldirective import ( - AnthropicCacheControlDirective, - AnthropicCacheControlDirectiveTypedDict, -) -from openrouter.types import BaseModel, UNSET_SENTINEL -from openrouter.utils import get_discriminator -from pydantic import Discriminator, Tag, model_serializer -from typing import Literal, Optional, Union -from typing_extensions import Annotated, NotRequired, TypeAliasType, TypedDict - - -MessagesToolRemovalBlockTypeMcpToolsetReference = Literal["mcp_toolset_reference",] - - -class MessagesToolRemovalBlockToolMcpToolsetReferenceTypedDict(TypedDict): - server_name: str - type: MessagesToolRemovalBlockTypeMcpToolsetReference - - -class MessagesToolRemovalBlockToolMcpToolsetReference(BaseModel): - server_name: str - - type: MessagesToolRemovalBlockTypeMcpToolsetReference - - -MessagesToolRemovalBlockTypeMcpToolReference = Literal["mcp_tool_reference",] - - -class MessagesToolRemovalBlockToolMcpToolReferenceTypedDict(TypedDict): - name: str - server_name: str - type: MessagesToolRemovalBlockTypeMcpToolReference - - -class MessagesToolRemovalBlockToolMcpToolReference(BaseModel): - name: str - - server_name: str - - type: MessagesToolRemovalBlockTypeMcpToolReference +from openrouter.types import BaseModel +from typing import Literal +from typing_extensions import TypedDict MessagesToolRemovalBlockTypeToolReference = Literal["tool_reference",] -class MessagesToolRemovalBlockToolToolReferenceTypedDict(TypedDict): +class MessagesToolRemovalBlockToolTypedDict(TypedDict): name: str type: MessagesToolRemovalBlockTypeToolReference -class MessagesToolRemovalBlockToolToolReference(BaseModel): +class MessagesToolRemovalBlockTool(BaseModel): name: str type: MessagesToolRemovalBlockTypeToolReference -MessagesToolRemovalBlockToolUnionTypedDict = TypeAliasType( - "MessagesToolRemovalBlockToolUnionTypedDict", - Union[ - MessagesToolRemovalBlockToolToolReferenceTypedDict, - MessagesToolRemovalBlockToolMcpToolsetReferenceTypedDict, - MessagesToolRemovalBlockToolMcpToolReferenceTypedDict, - ], -) - - -MessagesToolRemovalBlockToolUnion = Annotated[ - Union[ - Annotated[MessagesToolRemovalBlockToolToolReference, Tag("tool_reference")], - Annotated[ - MessagesToolRemovalBlockToolMcpToolReference, Tag("mcp_tool_reference") - ], - Annotated[ - MessagesToolRemovalBlockToolMcpToolsetReference, - Tag("mcp_toolset_reference"), - ], - ], - Discriminator(lambda m: get_discriminator(m, "type", "type")), -] - - TypeToolRemoval = Literal["tool_removal",] class MessagesToolRemovalBlockTypedDict(TypedDict): r"""Removes a tool from the conversation mid-conversation without invalidating the prompt cache. Only valid in `role: \"system\"` messages. Not supported on Claude Sonnet 5 or models older than Claude Opus 4.8.""" - tool: MessagesToolRemovalBlockToolUnionTypedDict + tool: MessagesToolRemovalBlockToolTypedDict type: TypeToolRemoval - cache_control: NotRequired[AnthropicCacheControlDirectiveTypedDict] - r"""Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format.""" class MessagesToolRemovalBlock(BaseModel): r"""Removes a tool from the conversation mid-conversation without invalidating the prompt cache. Only valid in `role: \"system\"` messages. Not supported on Claude Sonnet 5 or models older than Claude Opus 4.8.""" - tool: MessagesToolRemovalBlockToolUnion + tool: MessagesToolRemovalBlockTool type: TypeToolRemoval - - cache_control: Optional[AnthropicCacheControlDirective] = None - r"""Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format.""" - - @model_serializer(mode="wrap") - def serialize_model(self, handler): - optional_fields = set(["cache_control"]) - serialized = handler(self) - m = {} - - for n, f in type(self).model_fields.items(): - k = f.alias or n - val = serialized.get(k, serialized.get(n)) - - if val != UNSET_SENTINEL: - if val is not None or k not in optional_fields: - m[k] = val - - return m diff --git a/uv.lock b/uv.lock index 5d4d9e4d..23ac6d48 100644 --- a/uv.lock +++ b/uv.lock @@ -213,7 +213,7 @@ wheels = [ [[package]] name = "openrouter" -version = "1.0.20" +version = "1.0.21" source = { editable = "." } dependencies = [ { name = "httpcore" }, From 4ede2d4618ff4ad441a8b15f6fe7037be8a8e3fc Mon Sep 17 00:00:00 2001 From: "speakeasy-github[bot]" <128539517+speakeasy-github[bot]@users.noreply.github.com> Date: Fri, 24 Jul 2026 21:37:52 +0000 Subject: [PATCH 2/2] empty commit to trigger [run-tests] workflow