From 80fd2b7c01c182851c02fbf3d4b48a95d97722d5 Mon Sep 17 00:00:00 2001 From: Paul Asjes Date: Thu, 19 Feb 2026 11:56:17 +0100 Subject: [PATCH 1/4] Add missing parameters --- src/elevenlabs/music_custom.py | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/src/elevenlabs/music_custom.py b/src/elevenlabs/music_custom.py index 265b059c..4bfab53f 100644 --- a/src/elevenlabs/music_custom.py +++ b/src/elevenlabs/music_custom.py @@ -46,6 +46,10 @@ def compose_detailed( # type: ignore[override] composition_plan: typing.Optional[MusicPrompt] = OMIT, music_length_ms: typing.Optional[int] = OMIT, model_id: typing.Optional[typing.Literal["music_v1"]] = OMIT, + force_instrumental: typing.Optional[bool] = OMIT, + store_for_inpainting: typing.Optional[bool] = OMIT, + with_timestamps: typing.Optional[bool] = OMIT, + sign_with_c2pa: typing.Optional[bool] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> MultipartResponse: """ @@ -61,6 +65,10 @@ def compose_detailed( # type: ignore[override] composition_plan=composition_plan, music_length_ms=music_length_ms, model_id=model_id, + force_instrumental=force_instrumental, + store_for_inpainting=store_for_inpainting, + with_timestamps=with_timestamps, + sign_with_c_2_pa=sign_with_c2pa, request_options=request_options, ) @@ -172,6 +180,10 @@ async def compose_detailed( # type: ignore[override] composition_plan: typing.Optional[MusicPrompt] = OMIT, music_length_ms: typing.Optional[int] = OMIT, model_id: typing.Optional[typing.Literal["music_v1"]] = OMIT, + force_instrumental: typing.Optional[bool] = OMIT, + store_for_inpainting: typing.Optional[bool] = OMIT, + with_timestamps: typing.Optional[bool] = OMIT, + sign_with_c2pa: typing.Optional[bool] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> MultipartResponse: """ @@ -187,6 +199,10 @@ async def compose_detailed( # type: ignore[override] composition_plan=composition_plan, music_length_ms=music_length_ms, model_id=model_id, + force_instrumental=force_instrumental, + store_for_inpainting=store_for_inpainting, + with_timestamps=with_timestamps, + sign_with_c_2_pa=sign_with_c2pa, request_options=request_options, ) From 5953c3c5936026507e2ee8dc9984deb95efc589b Mon Sep 17 00:00:00 2001 From: Paul Asjes Date: Thu, 19 Feb 2026 12:00:09 +0100 Subject: [PATCH 2/4] bump version --- pyproject.toml | 2 +- src/elevenlabs/core/client_wrapper.py | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index eb5abd7b..06c3efab 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ dynamic = ["version"] [tool.poetry] name = "elevenlabs" -version = "v2.36.0" +version = "v2.36.1" description = "" readme = "README.md" authors = [] diff --git a/src/elevenlabs/core/client_wrapper.py b/src/elevenlabs/core/client_wrapper.py index 633b4804..39154332 100644 --- a/src/elevenlabs/core/client_wrapper.py +++ b/src/elevenlabs/core/client_wrapper.py @@ -22,10 +22,10 @@ def __init__( def get_headers(self) -> typing.Dict[str, str]: headers: typing.Dict[str, str] = { - "User-Agent": "elevenlabs/v2.36.0", + "User-Agent": "elevenlabs/v2.36.1", "X-Fern-Language": "Python", "X-Fern-SDK-Name": "elevenlabs", - "X-Fern-SDK-Version": "v2.36.0", + "X-Fern-SDK-Version": "v2.36.1", **(self.get_custom_headers() or {}), } if self._api_key is not None: From cd5c9614be5bf7d4e239274c39c71d5133294dcc Mon Sep 17 00:00:00 2001 From: Paul Asjes Date: Thu, 19 Feb 2026 12:19:55 +0100 Subject: [PATCH 3/4] Better way --- src/elevenlabs/music_custom.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/elevenlabs/music_custom.py b/src/elevenlabs/music_custom.py index 4bfab53f..5f0e9c18 100644 --- a/src/elevenlabs/music_custom.py +++ b/src/elevenlabs/music_custom.py @@ -51,6 +51,7 @@ def compose_detailed( # type: ignore[override] with_timestamps: typing.Optional[bool] = OMIT, sign_with_c2pa: typing.Optional[bool] = OMIT, request_options: typing.Optional[RequestOptions] = None, + **kwargs: typing.Any, ) -> MultipartResponse: """ Compose a song from a prompt or a composition plan with detailed response parsing. @@ -70,6 +71,7 @@ def compose_detailed( # type: ignore[override] with_timestamps=with_timestamps, sign_with_c_2_pa=sign_with_c2pa, request_options=request_options, + **kwargs, ) # Parse the stream using the parsing method @@ -185,6 +187,7 @@ async def compose_detailed( # type: ignore[override] with_timestamps: typing.Optional[bool] = OMIT, sign_with_c2pa: typing.Optional[bool] = OMIT, request_options: typing.Optional[RequestOptions] = None, + **kwargs: typing.Any, ) -> MultipartResponse: """ Compose a song from a prompt or a composition plan with detailed response parsing. @@ -204,6 +207,7 @@ async def compose_detailed( # type: ignore[override] with_timestamps=with_timestamps, sign_with_c_2_pa=sign_with_c2pa, request_options=request_options, + **kwargs, ) # Parse the stream using the parsing method From 8bc0c1b530e354170bf03602320ddee4d26b1f0f Mon Sep 17 00:00:00 2001 From: Paul Asjes Date: Thu, 19 Feb 2026 12:22:00 +0100 Subject: [PATCH 4/4] don't need these --- src/elevenlabs/music_custom.py | 8 -------- 1 file changed, 8 deletions(-) diff --git a/src/elevenlabs/music_custom.py b/src/elevenlabs/music_custom.py index 5f0e9c18..7fb53eeb 100644 --- a/src/elevenlabs/music_custom.py +++ b/src/elevenlabs/music_custom.py @@ -46,8 +46,6 @@ def compose_detailed( # type: ignore[override] composition_plan: typing.Optional[MusicPrompt] = OMIT, music_length_ms: typing.Optional[int] = OMIT, model_id: typing.Optional[typing.Literal["music_v1"]] = OMIT, - force_instrumental: typing.Optional[bool] = OMIT, - store_for_inpainting: typing.Optional[bool] = OMIT, with_timestamps: typing.Optional[bool] = OMIT, sign_with_c2pa: typing.Optional[bool] = OMIT, request_options: typing.Optional[RequestOptions] = None, @@ -66,8 +64,6 @@ def compose_detailed( # type: ignore[override] composition_plan=composition_plan, music_length_ms=music_length_ms, model_id=model_id, - force_instrumental=force_instrumental, - store_for_inpainting=store_for_inpainting, with_timestamps=with_timestamps, sign_with_c_2_pa=sign_with_c2pa, request_options=request_options, @@ -182,8 +178,6 @@ async def compose_detailed( # type: ignore[override] composition_plan: typing.Optional[MusicPrompt] = OMIT, music_length_ms: typing.Optional[int] = OMIT, model_id: typing.Optional[typing.Literal["music_v1"]] = OMIT, - force_instrumental: typing.Optional[bool] = OMIT, - store_for_inpainting: typing.Optional[bool] = OMIT, with_timestamps: typing.Optional[bool] = OMIT, sign_with_c2pa: typing.Optional[bool] = OMIT, request_options: typing.Optional[RequestOptions] = None, @@ -202,8 +196,6 @@ async def compose_detailed( # type: ignore[override] composition_plan=composition_plan, music_length_ms=music_length_ms, model_id=model_id, - force_instrumental=force_instrumental, - store_for_inpainting=store_for_inpainting, with_timestamps=with_timestamps, sign_with_c_2_pa=sign_with_c2pa, request_options=request_options,