diff --git a/pyproject.toml b/pyproject.toml index 495a3467..181f6454 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -3,7 +3,7 @@ name = "elevenlabs" [tool.poetry] name = "elevenlabs" -version = "v2.9.1" +version = "v2.9.2" description = "" readme = "README.md" authors = [] diff --git a/reference.md b/reference.md index 7bba54de..d188d81b 100644 --- a/reference.md +++ b/reference.md @@ -659,7 +659,7 @@ Defaults to None.
-**apply_text_normalization:** `typing.Optional[BodyTextToSpeechV1TextToSpeechVoiceIdPostApplyTextNormalization]` — This parameter controls text normalization with three modes: 'auto', 'on', and 'off'. When set to 'auto', the system will automatically decide whether to apply text normalization (e.g., spelling out numbers). With 'on', text normalization will always be applied, while with 'off', it will be skipped. For 'eleven_turbo_v2_5' and 'eleven_flash_v2_5' models, text normalization can only be enabled with Enterprise plans. +**apply_text_normalization:** `typing.Optional[BodyTextToSpeechV1TextToSpeechVoiceIdPostApplyTextNormalization]` — This parameter controls text normalization with three modes: 'auto', 'on', and 'off'. When set to 'auto', the system will automatically decide whether to apply text normalization (e.g., spelling out numbers). With 'on', text normalization will always be applied, while with 'off', it will be skipped. Cannot be turned on for 'eleven_turbo_v2_5' or 'eleven_flash_v2_5' models.
@@ -869,7 +869,7 @@ Defaults to None. **apply_text_normalization:** `typing.Optional[ BodyTextToSpeechWithTimestampsV1TextToSpeechVoiceIdWithTimestampsPostApplyTextNormalization -]` — This parameter controls text normalization with three modes: 'auto', 'on', and 'off'. When set to 'auto', the system will automatically decide whether to apply text normalization (e.g., spelling out numbers). With 'on', text normalization will always be applied, while with 'off', it will be skipped. For 'eleven_turbo_v2_5' and 'eleven_flash_v2_5' models, text normalization can only be enabled with Enterprise plans. +]` — This parameter controls text normalization with three modes: 'auto', 'on', and 'off'. When set to 'auto', the system will automatically decide whether to apply text normalization (e.g., spelling out numbers). With 'on', text normalization will always be applied, while with 'off', it will be skipped. Cannot be turned on for 'eleven_turbo_v2_5' or 'eleven_flash_v2_5' models. @@ -1081,7 +1081,7 @@ Defaults to None. **apply_text_normalization:** `typing.Optional[ BodyTextToSpeechStreamingV1TextToSpeechVoiceIdStreamPostApplyTextNormalization -]` — This parameter controls text normalization with three modes: 'auto', 'on', and 'off'. When set to 'auto', the system will automatically decide whether to apply text normalization (e.g., spelling out numbers). With 'on', text normalization will always be applied, while with 'off', it will be skipped. For 'eleven_turbo_v2_5' and 'eleven_flash_v2_5' models, text normalization can only be enabled with Enterprise plans. +]` — This parameter controls text normalization with three modes: 'auto', 'on', and 'off'. When set to 'auto', the system will automatically decide whether to apply text normalization (e.g., spelling out numbers). With 'on', text normalization will always be applied, while with 'off', it will be skipped. Cannot be turned on for 'eleven_turbo_v2_5' or 'eleven_flash_v2_5' models. @@ -1295,7 +1295,7 @@ Defaults to None. **apply_text_normalization:** `typing.Optional[ BodyTextToSpeechStreamingWithTimestampsV1TextToSpeechVoiceIdStreamWithTimestampsPostApplyTextNormalization -]` — This parameter controls text normalization with three modes: 'auto', 'on', and 'off'. When set to 'auto', the system will automatically decide whether to apply text normalization (e.g., spelling out numbers). With 'on', text normalization will always be applied, while with 'off', it will be skipped. For 'eleven_turbo_v2_5' and 'eleven_flash_v2_5' models, text normalization can only be enabled with Enterprise plans. +]` — This parameter controls text normalization with three modes: 'auto', 'on', and 'off'. When set to 'auto', the system will automatically decide whether to apply text normalization (e.g., spelling out numbers). With 'on', text normalization will always be applied, while with 'off', it will be skipped. Cannot be turned on for 'eleven_turbo_v2_5' or 'eleven_flash_v2_5' models. @@ -5716,22 +5716,6 @@ client.conversational_ai.conversations.get_webrtc_token(
-**source:** `typing.Optional[ConversationInitiationSource]` — The source of the conversation initiation. - -
-
- -
-
- -**version:** `typing.Optional[str]` — The SDK version number - -
-
- -
-
- **request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration.
@@ -6172,6 +6156,14 @@ client.conversational_ai.agents.create(
+**workflow:** `typing.Optional[typing.Optional[typing.Any]]` + +
+
+ +
+
+ **name:** `typing.Optional[str]` — A name to make the agent easier to find
@@ -6414,6 +6406,14 @@ client.conversational_ai.agents.update(
+**workflow:** `typing.Optional[typing.Optional[typing.Any]]` + +
+
+ +
+
+ **name:** `typing.Optional[str]` — A name to make the agent easier to find
diff --git a/src/elevenlabs/__init__.py b/src/elevenlabs/__init__.py index 12099d71..2bdfd730 100644 --- a/src/elevenlabs/__init__.py +++ b/src/elevenlabs/__init__.py @@ -17,7 +17,6 @@ AdditionalFormatResponseModel, AdditionalFormats, Age, - AgentBan, AgentCallLimits, AgentConfig, AgentConfigOverride, @@ -190,6 +189,7 @@ ConversationSimulationSpecification, ConversationSimulationSpecificationDynamicVariablesValue, ConversationSummaryResponseModel, + ConversationSummaryResponseModelDirection, ConversationSummaryResponseModelStatus, ConversationTokenDbModel, ConversationTokenPurpose, @@ -407,8 +407,6 @@ McpServersResponseModel, McpToolApprovalHash, McpToolApprovalPolicy, - McpToolConfigInput, - McpToolConfigOutput, MetricRecord, MetricType, Model, @@ -557,6 +555,7 @@ SpeechHistoryItemResponseModelVoiceCategory, SpeechToTextCharacterResponseModel, SpeechToTextChunkResponseModel, + SpeechToTextWebhookResponseModel, SpeechToTextWordResponseModel, SpeechToTextWordResponseModelType, SrtExportOptions, @@ -814,7 +813,6 @@ "AdditionalFormatResponseModel", "AdditionalFormats", "Age", - "AgentBan", "AgentCallLimits", "AgentConfig", "AgentConfigOverride", @@ -1008,6 +1006,7 @@ "ConversationSimulationSpecification", "ConversationSimulationSpecificationDynamicVariablesValue", "ConversationSummaryResponseModel", + "ConversationSummaryResponseModelDirection", "ConversationSummaryResponseModelStatus", "ConversationTokenDbModel", "ConversationTokenPurpose", @@ -1231,8 +1230,6 @@ "McpServersResponseModel", "McpToolApprovalHash", "McpToolApprovalPolicy", - "McpToolConfigInput", - "McpToolConfigOutput", "MetricRecord", "MetricType", "Model", @@ -1395,6 +1392,7 @@ "SpeechToTextConvertRequestFileFormat", "SpeechToTextConvertRequestTimestampsGranularity", "SpeechToTextConvertResponse", + "SpeechToTextWebhookResponseModel", "SpeechToTextWordResponseModel", "SpeechToTextWordResponseModelType", "SrtExportOptions", diff --git a/src/elevenlabs/conversational_ai/agents/client.py b/src/elevenlabs/conversational_ai/agents/client.py index 6e852507..b05ac8fc 100644 --- a/src/elevenlabs/conversational_ai/agents/client.py +++ b/src/elevenlabs/conversational_ai/agents/client.py @@ -49,6 +49,7 @@ def create( *, conversation_config: ConversationalConfig, platform_settings: typing.Optional[AgentPlatformSettingsRequestModel] = OMIT, + workflow: typing.Optional[typing.Optional[typing.Any]] = OMIT, name: typing.Optional[str] = OMIT, tags: typing.Optional[typing.Sequence[str]] = OMIT, request_options: typing.Optional[RequestOptions] = None, @@ -64,6 +65,8 @@ def create( platform_settings : typing.Optional[AgentPlatformSettingsRequestModel] Platform settings for the agent are all settings that aren't related to the conversation orchestration and content. + workflow : typing.Optional[typing.Optional[typing.Any]] + name : typing.Optional[str] A name to make the agent easier to find @@ -92,6 +95,7 @@ def create( _response = self._raw_client.create( conversation_config=conversation_config, platform_settings=platform_settings, + workflow=workflow, name=name, tags=tags, request_options=request_options, @@ -165,6 +169,7 @@ def update( *, conversation_config: typing.Optional[ConversationalConfig] = OMIT, platform_settings: typing.Optional[AgentPlatformSettingsRequestModel] = OMIT, + workflow: typing.Optional[typing.Optional[typing.Any]] = OMIT, name: typing.Optional[str] = OMIT, tags: typing.Optional[typing.Sequence[str]] = OMIT, request_options: typing.Optional[RequestOptions] = None, @@ -183,6 +188,8 @@ def update( platform_settings : typing.Optional[AgentPlatformSettingsRequestModel] Platform settings for the agent are all settings that aren't related to the conversation orchestration and content. + workflow : typing.Optional[typing.Optional[typing.Any]] + name : typing.Optional[str] A name to make the agent easier to find @@ -212,6 +219,7 @@ def update( agent_id, conversation_config=conversation_config, platform_settings=platform_settings, + workflow=workflow, name=name, tags=tags, request_options=request_options, @@ -457,6 +465,7 @@ async def create( *, conversation_config: ConversationalConfig, platform_settings: typing.Optional[AgentPlatformSettingsRequestModel] = OMIT, + workflow: typing.Optional[typing.Optional[typing.Any]] = OMIT, name: typing.Optional[str] = OMIT, tags: typing.Optional[typing.Sequence[str]] = OMIT, request_options: typing.Optional[RequestOptions] = None, @@ -472,6 +481,8 @@ async def create( platform_settings : typing.Optional[AgentPlatformSettingsRequestModel] Platform settings for the agent are all settings that aren't related to the conversation orchestration and content. + workflow : typing.Optional[typing.Optional[typing.Any]] + name : typing.Optional[str] A name to make the agent easier to find @@ -508,6 +519,7 @@ async def main() -> None: _response = await self._raw_client.create( conversation_config=conversation_config, platform_settings=platform_settings, + workflow=workflow, name=name, tags=tags, request_options=request_options, @@ -599,6 +611,7 @@ async def update( *, conversation_config: typing.Optional[ConversationalConfig] = OMIT, platform_settings: typing.Optional[AgentPlatformSettingsRequestModel] = OMIT, + workflow: typing.Optional[typing.Optional[typing.Any]] = OMIT, name: typing.Optional[str] = OMIT, tags: typing.Optional[typing.Sequence[str]] = OMIT, request_options: typing.Optional[RequestOptions] = None, @@ -617,6 +630,8 @@ async def update( platform_settings : typing.Optional[AgentPlatformSettingsRequestModel] Platform settings for the agent are all settings that aren't related to the conversation orchestration and content. + workflow : typing.Optional[typing.Optional[typing.Any]] + name : typing.Optional[str] A name to make the agent easier to find @@ -654,6 +669,7 @@ async def main() -> None: agent_id, conversation_config=conversation_config, platform_settings=platform_settings, + workflow=workflow, name=name, tags=tags, request_options=request_options, diff --git a/src/elevenlabs/conversational_ai/agents/raw_client.py b/src/elevenlabs/conversational_ai/agents/raw_client.py index cc7ec855..f8bdc1b9 100644 --- a/src/elevenlabs/conversational_ai/agents/raw_client.py +++ b/src/elevenlabs/conversational_ai/agents/raw_client.py @@ -34,6 +34,7 @@ def create( *, conversation_config: ConversationalConfig, platform_settings: typing.Optional[AgentPlatformSettingsRequestModel] = OMIT, + workflow: typing.Optional[typing.Optional[typing.Any]] = OMIT, name: typing.Optional[str] = OMIT, tags: typing.Optional[typing.Sequence[str]] = OMIT, request_options: typing.Optional[RequestOptions] = None, @@ -49,6 +50,8 @@ def create( platform_settings : typing.Optional[AgentPlatformSettingsRequestModel] Platform settings for the agent are all settings that aren't related to the conversation orchestration and content. + workflow : typing.Optional[typing.Optional[typing.Any]] + name : typing.Optional[str] A name to make the agent easier to find @@ -73,6 +76,7 @@ def create( "platform_settings": convert_and_respect_annotation_metadata( object_=platform_settings, annotation=AgentPlatformSettingsRequestModel, direction="write" ), + "workflow": workflow, "name": name, "tags": tags, }, @@ -204,6 +208,7 @@ def update( *, conversation_config: typing.Optional[ConversationalConfig] = OMIT, platform_settings: typing.Optional[AgentPlatformSettingsRequestModel] = OMIT, + workflow: typing.Optional[typing.Optional[typing.Any]] = OMIT, name: typing.Optional[str] = OMIT, tags: typing.Optional[typing.Sequence[str]] = OMIT, request_options: typing.Optional[RequestOptions] = None, @@ -222,6 +227,8 @@ def update( platform_settings : typing.Optional[AgentPlatformSettingsRequestModel] Platform settings for the agent are all settings that aren't related to the conversation orchestration and content. + workflow : typing.Optional[typing.Optional[typing.Any]] + name : typing.Optional[str] A name to make the agent easier to find @@ -246,6 +253,7 @@ def update( "platform_settings": convert_and_respect_annotation_metadata( object_=platform_settings, annotation=AgentPlatformSettingsRequestModel, direction="write" ), + "workflow": workflow, "name": name, "tags": tags, }, @@ -573,6 +581,7 @@ async def create( *, conversation_config: ConversationalConfig, platform_settings: typing.Optional[AgentPlatformSettingsRequestModel] = OMIT, + workflow: typing.Optional[typing.Optional[typing.Any]] = OMIT, name: typing.Optional[str] = OMIT, tags: typing.Optional[typing.Sequence[str]] = OMIT, request_options: typing.Optional[RequestOptions] = None, @@ -588,6 +597,8 @@ async def create( platform_settings : typing.Optional[AgentPlatformSettingsRequestModel] Platform settings for the agent are all settings that aren't related to the conversation orchestration and content. + workflow : typing.Optional[typing.Optional[typing.Any]] + name : typing.Optional[str] A name to make the agent easier to find @@ -612,6 +623,7 @@ async def create( "platform_settings": convert_and_respect_annotation_metadata( object_=platform_settings, annotation=AgentPlatformSettingsRequestModel, direction="write" ), + "workflow": workflow, "name": name, "tags": tags, }, @@ -745,6 +757,7 @@ async def update( *, conversation_config: typing.Optional[ConversationalConfig] = OMIT, platform_settings: typing.Optional[AgentPlatformSettingsRequestModel] = OMIT, + workflow: typing.Optional[typing.Optional[typing.Any]] = OMIT, name: typing.Optional[str] = OMIT, tags: typing.Optional[typing.Sequence[str]] = OMIT, request_options: typing.Optional[RequestOptions] = None, @@ -763,6 +776,8 @@ async def update( platform_settings : typing.Optional[AgentPlatformSettingsRequestModel] Platform settings for the agent are all settings that aren't related to the conversation orchestration and content. + workflow : typing.Optional[typing.Optional[typing.Any]] + name : typing.Optional[str] A name to make the agent easier to find @@ -787,6 +802,7 @@ async def update( "platform_settings": convert_and_respect_annotation_metadata( object_=platform_settings, annotation=AgentPlatformSettingsRequestModel, direction="write" ), + "workflow": workflow, "name": name, "tags": tags, }, diff --git a/src/elevenlabs/conversational_ai/conversations/client.py b/src/elevenlabs/conversational_ai/conversations/client.py index 092e646b..a223be81 100644 --- a/src/elevenlabs/conversational_ai/conversations/client.py +++ b/src/elevenlabs/conversational_ai/conversations/client.py @@ -4,7 +4,6 @@ from ...core.client_wrapper import AsyncClientWrapper, SyncClientWrapper from ...core.request_options import RequestOptions -from ...types.conversation_initiation_source import ConversationInitiationSource from ...types.conversation_signed_url_response_model import ConversationSignedUrlResponseModel from ...types.evaluation_success_result import EvaluationSuccessResult from ...types.get_conversation_response_model import GetConversationResponseModel @@ -72,8 +71,6 @@ def get_webrtc_token( *, agent_id: str, participant_name: typing.Optional[str] = None, - source: typing.Optional[ConversationInitiationSource] = None, - version: typing.Optional[str] = None, request_options: typing.Optional[RequestOptions] = None, ) -> TokenResponseModel: """ @@ -87,12 +84,6 @@ def get_webrtc_token( participant_name : typing.Optional[str] Optional custom participant name. If not provided, user ID will be used - source : typing.Optional[ConversationInitiationSource] - The source of the conversation initiation. - - version : typing.Optional[str] - The SDK version number - request_options : typing.Optional[RequestOptions] Request-specific configuration. @@ -113,11 +104,7 @@ def get_webrtc_token( ) """ _response = self._raw_client.get_webrtc_token( - agent_id=agent_id, - participant_name=participant_name, - source=source, - version=version, - request_options=request_options, + agent_id=agent_id, participant_name=participant_name, request_options=request_options ) return _response.data @@ -324,8 +311,6 @@ async def get_webrtc_token( *, agent_id: str, participant_name: typing.Optional[str] = None, - source: typing.Optional[ConversationInitiationSource] = None, - version: typing.Optional[str] = None, request_options: typing.Optional[RequestOptions] = None, ) -> TokenResponseModel: """ @@ -339,12 +324,6 @@ async def get_webrtc_token( participant_name : typing.Optional[str] Optional custom participant name. If not provided, user ID will be used - source : typing.Optional[ConversationInitiationSource] - The source of the conversation initiation. - - version : typing.Optional[str] - The SDK version number - request_options : typing.Optional[RequestOptions] Request-specific configuration. @@ -373,11 +352,7 @@ async def main() -> None: asyncio.run(main()) """ _response = await self._raw_client.get_webrtc_token( - agent_id=agent_id, - participant_name=participant_name, - source=source, - version=version, - request_options=request_options, + agent_id=agent_id, participant_name=participant_name, request_options=request_options ) return _response.data diff --git a/src/elevenlabs/conversational_ai/conversations/raw_client.py b/src/elevenlabs/conversational_ai/conversations/raw_client.py index 5e95db50..eeb7f5ad 100644 --- a/src/elevenlabs/conversational_ai/conversations/raw_client.py +++ b/src/elevenlabs/conversational_ai/conversations/raw_client.py @@ -10,7 +10,6 @@ from ...core.request_options import RequestOptions from ...core.unchecked_base_model import construct_type from ...errors.unprocessable_entity_error import UnprocessableEntityError -from ...types.conversation_initiation_source import ConversationInitiationSource from ...types.conversation_signed_url_response_model import ConversationSignedUrlResponseModel from ...types.evaluation_success_result import EvaluationSuccessResult from ...types.get_conversation_response_model import GetConversationResponseModel @@ -82,8 +81,6 @@ def get_webrtc_token( *, agent_id: str, participant_name: typing.Optional[str] = None, - source: typing.Optional[ConversationInitiationSource] = None, - version: typing.Optional[str] = None, request_options: typing.Optional[RequestOptions] = None, ) -> HttpResponse[TokenResponseModel]: """ @@ -97,12 +94,6 @@ def get_webrtc_token( participant_name : typing.Optional[str] Optional custom participant name. If not provided, user ID will be used - source : typing.Optional[ConversationInitiationSource] - The source of the conversation initiation. - - version : typing.Optional[str] - The SDK version number - request_options : typing.Optional[RequestOptions] Request-specific configuration. @@ -117,8 +108,6 @@ def get_webrtc_token( params={ "agent_id": agent_id, "participant_name": participant_name, - "source": source, - "version": version, }, request_options=request_options, ) @@ -404,8 +393,6 @@ async def get_webrtc_token( *, agent_id: str, participant_name: typing.Optional[str] = None, - source: typing.Optional[ConversationInitiationSource] = None, - version: typing.Optional[str] = None, request_options: typing.Optional[RequestOptions] = None, ) -> AsyncHttpResponse[TokenResponseModel]: """ @@ -419,12 +406,6 @@ async def get_webrtc_token( participant_name : typing.Optional[str] Optional custom participant name. If not provided, user ID will be used - source : typing.Optional[ConversationInitiationSource] - The source of the conversation initiation. - - version : typing.Optional[str] - The SDK version number - request_options : typing.Optional[RequestOptions] Request-specific configuration. @@ -439,8 +420,6 @@ async def get_webrtc_token( params={ "agent_id": agent_id, "participant_name": participant_name, - "source": source, - "version": version, }, request_options=request_options, ) diff --git a/src/elevenlabs/core/client_wrapper.py b/src/elevenlabs/core/client_wrapper.py index 7548f6e7..8ce36e71 100644 --- a/src/elevenlabs/core/client_wrapper.py +++ b/src/elevenlabs/core/client_wrapper.py @@ -14,10 +14,10 @@ def __init__(self, *, api_key: typing.Optional[str] = None, base_url: str, timeo def get_headers(self) -> typing.Dict[str, str]: headers: typing.Dict[str, str] = { - "User-Agent": "elevenlabs/v2.9.1", + "User-Agent": "elevenlabs/v2.9.2", "X-Fern-Language": "Python", "X-Fern-SDK-Name": "elevenlabs", - "X-Fern-SDK-Version": "v2.9.1", + "X-Fern-SDK-Version": "v2.9.2", } if self._api_key is not None: headers["xi-api-key"] = self._api_key diff --git a/src/elevenlabs/speech_to_text/types/speech_to_text_convert_response.py b/src/elevenlabs/speech_to_text/types/speech_to_text_convert_response.py index 0c6220bb..625287a0 100644 --- a/src/elevenlabs/speech_to_text/types/speech_to_text_convert_response.py +++ b/src/elevenlabs/speech_to_text/types/speech_to_text_convert_response.py @@ -4,5 +4,8 @@ from ...types.multichannel_speech_to_text_response_model import MultichannelSpeechToTextResponseModel from ...types.speech_to_text_chunk_response_model import SpeechToTextChunkResponseModel +from ...types.speech_to_text_webhook_response_model import SpeechToTextWebhookResponseModel -SpeechToTextConvertResponse = typing.Union[SpeechToTextChunkResponseModel, MultichannelSpeechToTextResponseModel] +SpeechToTextConvertResponse = typing.Union[ + SpeechToTextChunkResponseModel, MultichannelSpeechToTextResponseModel, SpeechToTextWebhookResponseModel +] diff --git a/src/elevenlabs/text_to_speech/client.py b/src/elevenlabs/text_to_speech/client.py index f8dd1e90..0659c5b2 100644 --- a/src/elevenlabs/text_to_speech/client.py +++ b/src/elevenlabs/text_to_speech/client.py @@ -133,7 +133,7 @@ def convert( If true, we won't use PVC version of the voice for the generation but the IVC version. This is a temporary workaround for higher latency in PVC versions. apply_text_normalization : typing.Optional[BodyTextToSpeechV1TextToSpeechVoiceIdPostApplyTextNormalization] - This parameter controls text normalization with three modes: 'auto', 'on', and 'off'. When set to 'auto', the system will automatically decide whether to apply text normalization (e.g., spelling out numbers). With 'on', text normalization will always be applied, while with 'off', it will be skipped. For 'eleven_turbo_v2_5' and 'eleven_flash_v2_5' models, text normalization can only be enabled with Enterprise plans. + This parameter controls text normalization with three modes: 'auto', 'on', and 'off'. When set to 'auto', the system will automatically decide whether to apply text normalization (e.g., spelling out numbers). With 'on', text normalization will always be applied, while with 'off', it will be skipped. Cannot be turned on for 'eleven_turbo_v2_5' or 'eleven_flash_v2_5' models. apply_language_text_normalization : typing.Optional[bool] This parameter controls language text normalization. This helps with proper pronunciation of text in some supported languages. WARNING: This parameter can heavily increase the latency of the request. Currently only supported for Japanese. @@ -266,7 +266,7 @@ def convert_with_timestamps( If true, we won't use PVC version of the voice for the generation but the IVC version. This is a temporary workaround for higher latency in PVC versions. apply_text_normalization : typing.Optional[BodyTextToSpeechWithTimestampsV1TextToSpeechVoiceIdWithTimestampsPostApplyTextNormalization] - This parameter controls text normalization with three modes: 'auto', 'on', and 'off'. When set to 'auto', the system will automatically decide whether to apply text normalization (e.g., spelling out numbers). With 'on', text normalization will always be applied, while with 'off', it will be skipped. For 'eleven_turbo_v2_5' and 'eleven_flash_v2_5' models, text normalization can only be enabled with Enterprise plans. + This parameter controls text normalization with three modes: 'auto', 'on', and 'off'. When set to 'auto', the system will automatically decide whether to apply text normalization (e.g., spelling out numbers). With 'on', text normalization will always be applied, while with 'off', it will be skipped. Cannot be turned on for 'eleven_turbo_v2_5' or 'eleven_flash_v2_5' models. apply_language_text_normalization : typing.Optional[bool] This parameter controls language text normalization. This helps with proper pronunciation of text in some supported languages. WARNING: This parameter can heavily increase the latency of the request. Currently only supported for Japanese. @@ -397,7 +397,7 @@ def stream( If true, we won't use PVC version of the voice for the generation but the IVC version. This is a temporary workaround for higher latency in PVC versions. apply_text_normalization : typing.Optional[BodyTextToSpeechStreamingV1TextToSpeechVoiceIdStreamPostApplyTextNormalization] - This parameter controls text normalization with three modes: 'auto', 'on', and 'off'. When set to 'auto', the system will automatically decide whether to apply text normalization (e.g., spelling out numbers). With 'on', text normalization will always be applied, while with 'off', it will be skipped. For 'eleven_turbo_v2_5' and 'eleven_flash_v2_5' models, text normalization can only be enabled with Enterprise plans. + This parameter controls text normalization with three modes: 'auto', 'on', and 'off'. When set to 'auto', the system will automatically decide whether to apply text normalization (e.g., spelling out numbers). With 'on', text normalization will always be applied, while with 'off', it will be skipped. Cannot be turned on for 'eleven_turbo_v2_5' or 'eleven_flash_v2_5' models. apply_language_text_normalization : typing.Optional[bool] This parameter controls language text normalization. This helps with proper pronunciation of text in some supported languages. WARNING: This parameter can heavily increase the latency of the request. Currently only supported for Japanese. @@ -530,7 +530,7 @@ def stream_with_timestamps( If true, we won't use PVC version of the voice for the generation but the IVC version. This is a temporary workaround for higher latency in PVC versions. apply_text_normalization : typing.Optional[BodyTextToSpeechStreamingWithTimestampsV1TextToSpeechVoiceIdStreamWithTimestampsPostApplyTextNormalization] - This parameter controls text normalization with three modes: 'auto', 'on', and 'off'. When set to 'auto', the system will automatically decide whether to apply text normalization (e.g., spelling out numbers). With 'on', text normalization will always be applied, while with 'off', it will be skipped. For 'eleven_turbo_v2_5' and 'eleven_flash_v2_5' models, text normalization can only be enabled with Enterprise plans. + This parameter controls text normalization with three modes: 'auto', 'on', and 'off'. When set to 'auto', the system will automatically decide whether to apply text normalization (e.g., spelling out numbers). With 'on', text normalization will always be applied, while with 'off', it will be skipped. Cannot be turned on for 'eleven_turbo_v2_5' or 'eleven_flash_v2_5' models. apply_language_text_normalization : typing.Optional[bool] This parameter controls language text normalization. This helps with proper pronunciation of text in some supported languages. WARNING: This parameter can heavily increase the latency of the request. Currently only supported for Japanese. @@ -681,7 +681,7 @@ async def convert( If true, we won't use PVC version of the voice for the generation but the IVC version. This is a temporary workaround for higher latency in PVC versions. apply_text_normalization : typing.Optional[BodyTextToSpeechV1TextToSpeechVoiceIdPostApplyTextNormalization] - This parameter controls text normalization with three modes: 'auto', 'on', and 'off'. When set to 'auto', the system will automatically decide whether to apply text normalization (e.g., spelling out numbers). With 'on', text normalization will always be applied, while with 'off', it will be skipped. For 'eleven_turbo_v2_5' and 'eleven_flash_v2_5' models, text normalization can only be enabled with Enterprise plans. + This parameter controls text normalization with three modes: 'auto', 'on', and 'off'. When set to 'auto', the system will automatically decide whether to apply text normalization (e.g., spelling out numbers). With 'on', text normalization will always be applied, while with 'off', it will be skipped. Cannot be turned on for 'eleven_turbo_v2_5' or 'eleven_flash_v2_5' models. apply_language_text_normalization : typing.Optional[bool] This parameter controls language text normalization. This helps with proper pronunciation of text in some supported languages. WARNING: This parameter can heavily increase the latency of the request. Currently only supported for Japanese. @@ -823,7 +823,7 @@ async def convert_with_timestamps( If true, we won't use PVC version of the voice for the generation but the IVC version. This is a temporary workaround for higher latency in PVC versions. apply_text_normalization : typing.Optional[BodyTextToSpeechWithTimestampsV1TextToSpeechVoiceIdWithTimestampsPostApplyTextNormalization] - This parameter controls text normalization with three modes: 'auto', 'on', and 'off'. When set to 'auto', the system will automatically decide whether to apply text normalization (e.g., spelling out numbers). With 'on', text normalization will always be applied, while with 'off', it will be skipped. For 'eleven_turbo_v2_5' and 'eleven_flash_v2_5' models, text normalization can only be enabled with Enterprise plans. + This parameter controls text normalization with three modes: 'auto', 'on', and 'off'. When set to 'auto', the system will automatically decide whether to apply text normalization (e.g., spelling out numbers). With 'on', text normalization will always be applied, while with 'off', it will be skipped. Cannot be turned on for 'eleven_turbo_v2_5' or 'eleven_flash_v2_5' models. apply_language_text_normalization : typing.Optional[bool] This parameter controls language text normalization. This helps with proper pronunciation of text in some supported languages. WARNING: This parameter can heavily increase the latency of the request. Currently only supported for Japanese. @@ -962,7 +962,7 @@ async def stream( If true, we won't use PVC version of the voice for the generation but the IVC version. This is a temporary workaround for higher latency in PVC versions. apply_text_normalization : typing.Optional[BodyTextToSpeechStreamingV1TextToSpeechVoiceIdStreamPostApplyTextNormalization] - This parameter controls text normalization with three modes: 'auto', 'on', and 'off'. When set to 'auto', the system will automatically decide whether to apply text normalization (e.g., spelling out numbers). With 'on', text normalization will always be applied, while with 'off', it will be skipped. For 'eleven_turbo_v2_5' and 'eleven_flash_v2_5' models, text normalization can only be enabled with Enterprise plans. + This parameter controls text normalization with three modes: 'auto', 'on', and 'off'. When set to 'auto', the system will automatically decide whether to apply text normalization (e.g., spelling out numbers). With 'on', text normalization will always be applied, while with 'off', it will be skipped. Cannot be turned on for 'eleven_turbo_v2_5' or 'eleven_flash_v2_5' models. apply_language_text_normalization : typing.Optional[bool] This parameter controls language text normalization. This helps with proper pronunciation of text in some supported languages. WARNING: This parameter can heavily increase the latency of the request. Currently only supported for Japanese. @@ -1104,7 +1104,7 @@ async def stream_with_timestamps( If true, we won't use PVC version of the voice for the generation but the IVC version. This is a temporary workaround for higher latency in PVC versions. apply_text_normalization : typing.Optional[BodyTextToSpeechStreamingWithTimestampsV1TextToSpeechVoiceIdStreamWithTimestampsPostApplyTextNormalization] - This parameter controls text normalization with three modes: 'auto', 'on', and 'off'. When set to 'auto', the system will automatically decide whether to apply text normalization (e.g., spelling out numbers). With 'on', text normalization will always be applied, while with 'off', it will be skipped. For 'eleven_turbo_v2_5' and 'eleven_flash_v2_5' models, text normalization can only be enabled with Enterprise plans. + This parameter controls text normalization with three modes: 'auto', 'on', and 'off'. When set to 'auto', the system will automatically decide whether to apply text normalization (e.g., spelling out numbers). With 'on', text normalization will always be applied, while with 'off', it will be skipped. Cannot be turned on for 'eleven_turbo_v2_5' or 'eleven_flash_v2_5' models. apply_language_text_normalization : typing.Optional[bool] This parameter controls language text normalization. This helps with proper pronunciation of text in some supported languages. WARNING: This parameter can heavily increase the latency of the request. Currently only supported for Japanese. diff --git a/src/elevenlabs/text_to_speech/raw_client.py b/src/elevenlabs/text_to_speech/raw_client.py index 6febd529..db7bc925 100644 --- a/src/elevenlabs/text_to_speech/raw_client.py +++ b/src/elevenlabs/text_to_speech/raw_client.py @@ -132,7 +132,7 @@ def convert( If true, we won't use PVC version of the voice for the generation but the IVC version. This is a temporary workaround for higher latency in PVC versions. apply_text_normalization : typing.Optional[BodyTextToSpeechV1TextToSpeechVoiceIdPostApplyTextNormalization] - This parameter controls text normalization with three modes: 'auto', 'on', and 'off'. When set to 'auto', the system will automatically decide whether to apply text normalization (e.g., spelling out numbers). With 'on', text normalization will always be applied, while with 'off', it will be skipped. For 'eleven_turbo_v2_5' and 'eleven_flash_v2_5' models, text normalization can only be enabled with Enterprise plans. + This parameter controls text normalization with three modes: 'auto', 'on', and 'off'. When set to 'auto', the system will automatically decide whether to apply text normalization (e.g., spelling out numbers). With 'on', text normalization will always be applied, while with 'off', it will be skipped. Cannot be turned on for 'eleven_turbo_v2_5' or 'eleven_flash_v2_5' models. apply_language_text_normalization : typing.Optional[bool] This parameter controls language text normalization. This helps with proper pronunciation of text in some supported languages. WARNING: This parameter can heavily increase the latency of the request. Currently only supported for Japanese. @@ -293,7 +293,7 @@ def convert_with_timestamps( If true, we won't use PVC version of the voice for the generation but the IVC version. This is a temporary workaround for higher latency in PVC versions. apply_text_normalization : typing.Optional[BodyTextToSpeechWithTimestampsV1TextToSpeechVoiceIdWithTimestampsPostApplyTextNormalization] - This parameter controls text normalization with three modes: 'auto', 'on', and 'off'. When set to 'auto', the system will automatically decide whether to apply text normalization (e.g., spelling out numbers). With 'on', text normalization will always be applied, while with 'off', it will be skipped. For 'eleven_turbo_v2_5' and 'eleven_flash_v2_5' models, text normalization can only be enabled with Enterprise plans. + This parameter controls text normalization with three modes: 'auto', 'on', and 'off'. When set to 'auto', the system will automatically decide whether to apply text normalization (e.g., spelling out numbers). With 'on', text normalization will always be applied, while with 'off', it will be skipped. Cannot be turned on for 'eleven_turbo_v2_5' or 'eleven_flash_v2_5' models. apply_language_text_normalization : typing.Optional[bool] This parameter controls language text normalization. This helps with proper pronunciation of text in some supported languages. WARNING: This parameter can heavily increase the latency of the request. Currently only supported for Japanese. @@ -452,7 +452,7 @@ def stream( If true, we won't use PVC version of the voice for the generation but the IVC version. This is a temporary workaround for higher latency in PVC versions. apply_text_normalization : typing.Optional[BodyTextToSpeechStreamingV1TextToSpeechVoiceIdStreamPostApplyTextNormalization] - This parameter controls text normalization with three modes: 'auto', 'on', and 'off'. When set to 'auto', the system will automatically decide whether to apply text normalization (e.g., spelling out numbers). With 'on', text normalization will always be applied, while with 'off', it will be skipped. For 'eleven_turbo_v2_5' and 'eleven_flash_v2_5' models, text normalization can only be enabled with Enterprise plans. + This parameter controls text normalization with three modes: 'auto', 'on', and 'off'. When set to 'auto', the system will automatically decide whether to apply text normalization (e.g., spelling out numbers). With 'on', text normalization will always be applied, while with 'off', it will be skipped. Cannot be turned on for 'eleven_turbo_v2_5' or 'eleven_flash_v2_5' models. apply_language_text_normalization : typing.Optional[bool] This parameter controls language text normalization. This helps with proper pronunciation of text in some supported languages. WARNING: This parameter can heavily increase the latency of the request. Currently only supported for Japanese. @@ -614,7 +614,7 @@ def stream_with_timestamps( If true, we won't use PVC version of the voice for the generation but the IVC version. This is a temporary workaround for higher latency in PVC versions. apply_text_normalization : typing.Optional[BodyTextToSpeechStreamingWithTimestampsV1TextToSpeechVoiceIdStreamWithTimestampsPostApplyTextNormalization] - This parameter controls text normalization with three modes: 'auto', 'on', and 'off'. When set to 'auto', the system will automatically decide whether to apply text normalization (e.g., spelling out numbers). With 'on', text normalization will always be applied, while with 'off', it will be skipped. For 'eleven_turbo_v2_5' and 'eleven_flash_v2_5' models, text normalization can only be enabled with Enterprise plans. + This parameter controls text normalization with three modes: 'auto', 'on', and 'off'. When set to 'auto', the system will automatically decide whether to apply text normalization (e.g., spelling out numbers). With 'on', text normalization will always be applied, while with 'off', it will be skipped. Cannot be turned on for 'eleven_turbo_v2_5' or 'eleven_flash_v2_5' models. apply_language_text_normalization : typing.Optional[bool] This parameter controls language text normalization. This helps with proper pronunciation of text in some supported languages. WARNING: This parameter can heavily increase the latency of the request. Currently only supported for Japanese. @@ -795,7 +795,7 @@ async def convert( If true, we won't use PVC version of the voice for the generation but the IVC version. This is a temporary workaround for higher latency in PVC versions. apply_text_normalization : typing.Optional[BodyTextToSpeechV1TextToSpeechVoiceIdPostApplyTextNormalization] - This parameter controls text normalization with three modes: 'auto', 'on', and 'off'. When set to 'auto', the system will automatically decide whether to apply text normalization (e.g., spelling out numbers). With 'on', text normalization will always be applied, while with 'off', it will be skipped. For 'eleven_turbo_v2_5' and 'eleven_flash_v2_5' models, text normalization can only be enabled with Enterprise plans. + This parameter controls text normalization with three modes: 'auto', 'on', and 'off'. When set to 'auto', the system will automatically decide whether to apply text normalization (e.g., spelling out numbers). With 'on', text normalization will always be applied, while with 'off', it will be skipped. Cannot be turned on for 'eleven_turbo_v2_5' or 'eleven_flash_v2_5' models. apply_language_text_normalization : typing.Optional[bool] This parameter controls language text normalization. This helps with proper pronunciation of text in some supported languages. WARNING: This parameter can heavily increase the latency of the request. Currently only supported for Japanese. @@ -957,7 +957,7 @@ async def convert_with_timestamps( If true, we won't use PVC version of the voice for the generation but the IVC version. This is a temporary workaround for higher latency in PVC versions. apply_text_normalization : typing.Optional[BodyTextToSpeechWithTimestampsV1TextToSpeechVoiceIdWithTimestampsPostApplyTextNormalization] - This parameter controls text normalization with three modes: 'auto', 'on', and 'off'. When set to 'auto', the system will automatically decide whether to apply text normalization (e.g., spelling out numbers). With 'on', text normalization will always be applied, while with 'off', it will be skipped. For 'eleven_turbo_v2_5' and 'eleven_flash_v2_5' models, text normalization can only be enabled with Enterprise plans. + This parameter controls text normalization with three modes: 'auto', 'on', and 'off'. When set to 'auto', the system will automatically decide whether to apply text normalization (e.g., spelling out numbers). With 'on', text normalization will always be applied, while with 'off', it will be skipped. Cannot be turned on for 'eleven_turbo_v2_5' or 'eleven_flash_v2_5' models. apply_language_text_normalization : typing.Optional[bool] This parameter controls language text normalization. This helps with proper pronunciation of text in some supported languages. WARNING: This parameter can heavily increase the latency of the request. Currently only supported for Japanese. @@ -1116,7 +1116,7 @@ async def stream( If true, we won't use PVC version of the voice for the generation but the IVC version. This is a temporary workaround for higher latency in PVC versions. apply_text_normalization : typing.Optional[BodyTextToSpeechStreamingV1TextToSpeechVoiceIdStreamPostApplyTextNormalization] - This parameter controls text normalization with three modes: 'auto', 'on', and 'off'. When set to 'auto', the system will automatically decide whether to apply text normalization (e.g., spelling out numbers). With 'on', text normalization will always be applied, while with 'off', it will be skipped. For 'eleven_turbo_v2_5' and 'eleven_flash_v2_5' models, text normalization can only be enabled with Enterprise plans. + This parameter controls text normalization with three modes: 'auto', 'on', and 'off'. When set to 'auto', the system will automatically decide whether to apply text normalization (e.g., spelling out numbers). With 'on', text normalization will always be applied, while with 'off', it will be skipped. Cannot be turned on for 'eleven_turbo_v2_5' or 'eleven_flash_v2_5' models. apply_language_text_normalization : typing.Optional[bool] This parameter controls language text normalization. This helps with proper pronunciation of text in some supported languages. WARNING: This parameter can heavily increase the latency of the request. Currently only supported for Japanese. @@ -1279,7 +1279,7 @@ async def stream_with_timestamps( If true, we won't use PVC version of the voice for the generation but the IVC version. This is a temporary workaround for higher latency in PVC versions. apply_text_normalization : typing.Optional[BodyTextToSpeechStreamingWithTimestampsV1TextToSpeechVoiceIdStreamWithTimestampsPostApplyTextNormalization] - This parameter controls text normalization with three modes: 'auto', 'on', and 'off'. When set to 'auto', the system will automatically decide whether to apply text normalization (e.g., spelling out numbers). With 'on', text normalization will always be applied, while with 'off', it will be skipped. For 'eleven_turbo_v2_5' and 'eleven_flash_v2_5' models, text normalization can only be enabled with Enterprise plans. + This parameter controls text normalization with three modes: 'auto', 'on', and 'off'. When set to 'auto', the system will automatically decide whether to apply text normalization (e.g., spelling out numbers). With 'on', text normalization will always be applied, while with 'off', it will be skipped. Cannot be turned on for 'eleven_turbo_v2_5' or 'eleven_flash_v2_5' models. apply_language_text_normalization : typing.Optional[bool] This parameter controls language text normalization. This helps with proper pronunciation of text in some supported languages. WARNING: This parameter can heavily increase the latency of the request. Currently only supported for Japanese. diff --git a/src/elevenlabs/types/__init__.py b/src/elevenlabs/types/__init__.py index 36270c35..93c50fc1 100644 --- a/src/elevenlabs/types/__init__.py +++ b/src/elevenlabs/types/__init__.py @@ -18,7 +18,6 @@ from .additional_format_response_model import AdditionalFormatResponseModel from .additional_formats import AdditionalFormats from .age import Age -from .agent_ban import AgentBan from .agent_call_limits import AgentCallLimits from .agent_config import AgentConfig from .agent_config_override import AgentConfigOverride @@ -237,6 +236,7 @@ ConversationSimulationSpecificationDynamicVariablesValue, ) from .conversation_summary_response_model import ConversationSummaryResponseModel +from .conversation_summary_response_model_direction import ConversationSummaryResponseModelDirection from .conversation_summary_response_model_status import ConversationSummaryResponseModelStatus from .conversation_token_db_model import ConversationTokenDbModel from .conversation_token_purpose import ConversationTokenPurpose @@ -480,8 +480,6 @@ from .mcp_servers_response_model import McpServersResponseModel from .mcp_tool_approval_hash import McpToolApprovalHash from .mcp_tool_approval_policy import McpToolApprovalPolicy -from .mcp_tool_config_input import McpToolConfigInput -from .mcp_tool_config_output import McpToolConfigOutput from .metric_record import MetricRecord from .metric_type import MetricType from .model import Model @@ -638,6 +636,7 @@ from .speech_history_item_response_model_voice_category import SpeechHistoryItemResponseModelVoiceCategory from .speech_to_text_character_response_model import SpeechToTextCharacterResponseModel from .speech_to_text_chunk_response_model import SpeechToTextChunkResponseModel +from .speech_to_text_webhook_response_model import SpeechToTextWebhookResponseModel from .speech_to_text_word_response_model import SpeechToTextWordResponseModel from .speech_to_text_word_response_model_type import SpeechToTextWordResponseModelType from .srt_export_options import SrtExportOptions @@ -828,7 +827,6 @@ "AdditionalFormatResponseModel", "AdditionalFormats", "Age", - "AgentBan", "AgentCallLimits", "AgentConfig", "AgentConfigOverride", @@ -1001,6 +999,7 @@ "ConversationSimulationSpecification", "ConversationSimulationSpecificationDynamicVariablesValue", "ConversationSummaryResponseModel", + "ConversationSummaryResponseModelDirection", "ConversationSummaryResponseModelStatus", "ConversationTokenDbModel", "ConversationTokenPurpose", @@ -1218,8 +1217,6 @@ "McpServersResponseModel", "McpToolApprovalHash", "McpToolApprovalPolicy", - "McpToolConfigInput", - "McpToolConfigOutput", "MetricRecord", "MetricType", "Model", @@ -1368,6 +1365,7 @@ "SpeechHistoryItemResponseModelVoiceCategory", "SpeechToTextCharacterResponseModel", "SpeechToTextChunkResponseModel", + "SpeechToTextWebhookResponseModel", "SpeechToTextWordResponseModel", "SpeechToTextWordResponseModelType", "SrtExportOptions", diff --git a/src/elevenlabs/types/conversation_summary_response_model.py b/src/elevenlabs/types/conversation_summary_response_model.py index b9051b02..ab3028a3 100644 --- a/src/elevenlabs/types/conversation_summary_response_model.py +++ b/src/elevenlabs/types/conversation_summary_response_model.py @@ -5,6 +5,7 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2 from ..core.unchecked_base_model import UncheckedBaseModel +from .conversation_summary_response_model_direction import ConversationSummaryResponseModelDirection from .conversation_summary_response_model_status import ConversationSummaryResponseModelStatus from .evaluation_success_result import EvaluationSuccessResult @@ -20,6 +21,7 @@ class ConversationSummaryResponseModel(UncheckedBaseModel): call_successful: EvaluationSuccessResult transcript_summary: typing.Optional[str] = None call_summary_title: typing.Optional[str] = None + direction: typing.Optional[ConversationSummaryResponseModelDirection] = None if IS_PYDANTIC_V2: model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 diff --git a/src/elevenlabs/types/conversation_summary_response_model_direction.py b/src/elevenlabs/types/conversation_summary_response_model_direction.py new file mode 100644 index 00000000..67bf4a28 --- /dev/null +++ b/src/elevenlabs/types/conversation_summary_response_model_direction.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +ConversationSummaryResponseModelDirection = typing.Union[typing.Literal["inbound", "outbound"], typing.Any] diff --git a/src/elevenlabs/types/features_usage_common_model.py b/src/elevenlabs/types/features_usage_common_model.py index 4fbdf03c..c642719a 100644 --- a/src/elevenlabs/types/features_usage_common_model.py +++ b/src/elevenlabs/types/features_usage_common_model.py @@ -19,6 +19,7 @@ class FeaturesUsageCommonModel(UncheckedBaseModel): pii_zrm_agent: typing.Optional[bool] = None tool_dynamic_variable_updates: typing.Optional[FeatureStatusCommonModel] = None is_livekit: typing.Optional[bool] = None + voicemail_detection: typing.Optional[FeatureStatusCommonModel] = None if IS_PYDANTIC_V2: model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 diff --git a/src/elevenlabs/types/get_agent_response_model.py b/src/elevenlabs/types/get_agent_response_model.py index 6e37d263..c8be5bba 100644 --- a/src/elevenlabs/types/get_agent_response_model.py +++ b/src/elevenlabs/types/get_agent_response_model.py @@ -45,6 +45,7 @@ class GetAgentResponseModel(UncheckedBaseModel): The phone numbers of the agent """ + workflow: typing.Optional[typing.Optional[typing.Any]] = None access_info: typing.Optional[ResourceAccessInfo] = pydantic.Field(default=None) """ The access information of the agent for the user diff --git a/src/elevenlabs/types/llm.py b/src/elevenlabs/types/llm.py index 36fb6ecb..9a27ef1e 100644 --- a/src/elevenlabs/types/llm.py +++ b/src/elevenlabs/types/llm.py @@ -11,6 +11,9 @@ "gpt-4.1", "gpt-4.1-mini", "gpt-4.1-nano", + "gpt-5", + "gpt-5-mini", + "gpt-5-nano", "gpt-3.5-turbo", "gemini-1.5-pro", "gemini-1.5-flash", @@ -26,7 +29,9 @@ "grok-beta", "custom-llm", "qwen3-4b", + "qwen3-30b-a3b", "watt-tool-8b", + "watt-tool-70b", "gemini-2.5-flash-preview-05-20", "gemini-2.5-flash-preview-04-17", "gemini-2.5-flash-lite-preview-06-17", @@ -41,6 +46,9 @@ "claude-3-5-sonnet@20240620", "claude-3-5-sonnet-v2@20241022", "claude-3-haiku@20240307", + "gpt-5-2025-08-07", + "gpt-5-mini-2025-08-07", + "gpt-5-nano-2025-08-07", "gpt-4.1-2025-04-14", "gpt-4.1-mini-2025-04-14", "gpt-4.1-nano-2025-04-14", diff --git a/src/elevenlabs/types/mcp_tool_config_input.py b/src/elevenlabs/types/mcp_tool_config_input.py deleted file mode 100644 index cc747910..00000000 --- a/src/elevenlabs/types/mcp_tool_config_input.py +++ /dev/null @@ -1,95 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -from __future__ import annotations - -import typing - -import pydantic -from ..core.pydantic_utilities import IS_PYDANTIC_V2, update_forward_refs -from ..core.unchecked_base_model import UncheckedBaseModel -from .dynamic_variable_assignment import DynamicVariableAssignment -from .integration_type import IntegrationType -from .mcp_approval_policy import McpApprovalPolicy - - -class McpToolConfigInput(UncheckedBaseModel): - """ - An MCP tool configuration that can be used to call MCP servers - """ - - name: str - description: str - response_timeout_secs: typing.Optional[int] = pydantic.Field(default=None) - """ - The maximum time in seconds to wait for the tool call to complete. - """ - - disable_interruptions: typing.Optional[bool] = pydantic.Field(default=None) - """ - If true, the user will not be able to interrupt the agent while this tool is running. - """ - - force_pre_tool_speech: typing.Optional[bool] = pydantic.Field(default=None) - """ - If true, the agent will speak before the tool call. - """ - - assignments: typing.Optional[typing.List[DynamicVariableAssignment]] = pydantic.Field(default=None) - """ - Configuration for extracting values from tool responses and assigning them to dynamic variables - """ - - integration_type: IntegrationType = pydantic.Field() - """ - The type of MCP tool - """ - - parameters: typing.Optional["ObjectJsonSchemaPropertyInput"] = pydantic.Field(default=None) - """ - Schema for any parameters the LLM needs to provide to the MCP tool. - """ - - approval_policy: typing.Optional[McpApprovalPolicy] = pydantic.Field(default=None) - """ - The approval policy for the MCP tool - """ - - mcp_tool_name: str = pydantic.Field() - """ - The name of the MCP tool to call - """ - - mcp_tool_description: str = pydantic.Field() - """ - The description of the MCP tool to call - """ - - mcp_server_id: str = pydantic.Field() - """ - The id of the MCP server to call - """ - - mcp_server_name: str = pydantic.Field() - """ - The name of the MCP server to call - """ - - mcp_input_schema: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = pydantic.Field(default=None) - """ - Original inputSchema dict for consistent hashing (pure MCP format) - """ - - if IS_PYDANTIC_V2: - model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 - else: - - class Config: - frozen = True - smart_union = True - extra = pydantic.Extra.allow - - -from .array_json_schema_property_input import ArrayJsonSchemaPropertyInput # noqa: E402, F401, I001 -from .object_json_schema_property_input import ObjectJsonSchemaPropertyInput # noqa: E402, F401, I001 - -update_forward_refs(McpToolConfigInput) diff --git a/src/elevenlabs/types/mcp_tool_config_output.py b/src/elevenlabs/types/mcp_tool_config_output.py deleted file mode 100644 index c4070882..00000000 --- a/src/elevenlabs/types/mcp_tool_config_output.py +++ /dev/null @@ -1,95 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -from __future__ import annotations - -import typing - -import pydantic -from ..core.pydantic_utilities import IS_PYDANTIC_V2, update_forward_refs -from ..core.unchecked_base_model import UncheckedBaseModel -from .dynamic_variable_assignment import DynamicVariableAssignment -from .integration_type import IntegrationType -from .mcp_approval_policy import McpApprovalPolicy - - -class McpToolConfigOutput(UncheckedBaseModel): - """ - An MCP tool configuration that can be used to call MCP servers - """ - - name: str - description: str - response_timeout_secs: typing.Optional[int] = pydantic.Field(default=None) - """ - The maximum time in seconds to wait for the tool call to complete. - """ - - disable_interruptions: typing.Optional[bool] = pydantic.Field(default=None) - """ - If true, the user will not be able to interrupt the agent while this tool is running. - """ - - force_pre_tool_speech: typing.Optional[bool] = pydantic.Field(default=None) - """ - If true, the agent will speak before the tool call. - """ - - assignments: typing.Optional[typing.List[DynamicVariableAssignment]] = pydantic.Field(default=None) - """ - Configuration for extracting values from tool responses and assigning them to dynamic variables - """ - - integration_type: IntegrationType = pydantic.Field() - """ - The type of MCP tool - """ - - parameters: typing.Optional["ObjectJsonSchemaPropertyOutput"] = pydantic.Field(default=None) - """ - Schema for any parameters the LLM needs to provide to the MCP tool. - """ - - approval_policy: typing.Optional[McpApprovalPolicy] = pydantic.Field(default=None) - """ - The approval policy for the MCP tool - """ - - mcp_tool_name: str = pydantic.Field() - """ - The name of the MCP tool to call - """ - - mcp_tool_description: str = pydantic.Field() - """ - The description of the MCP tool to call - """ - - mcp_server_id: str = pydantic.Field() - """ - The id of the MCP server to call - """ - - mcp_server_name: str = pydantic.Field() - """ - The name of the MCP server to call - """ - - mcp_input_schema: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = pydantic.Field(default=None) - """ - Original inputSchema dict for consistent hashing (pure MCP format) - """ - - if IS_PYDANTIC_V2: - model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 - else: - - class Config: - frozen = True - smart_union = True - extra = pydantic.Extra.allow - - -from .array_json_schema_property_output import ArrayJsonSchemaPropertyOutput # noqa: E402, F401, I001 -from .object_json_schema_property_output import ObjectJsonSchemaPropertyOutput # noqa: E402, F401, I001 - -update_forward_refs(McpToolConfigOutput) diff --git a/src/elevenlabs/types/prompt_agent_api_model_input_tools_item.py b/src/elevenlabs/types/prompt_agent_api_model_input_tools_item.py index 66996892..51395a29 100644 --- a/src/elevenlabs/types/prompt_agent_api_model_input_tools_item.py +++ b/src/elevenlabs/types/prompt_agent_api_model_input_tools_item.py @@ -10,8 +10,6 @@ from ..core.unchecked_base_model import UncheckedBaseModel, UnionMetadata from .dynamic_variable_assignment import DynamicVariableAssignment from .dynamic_variables_config import DynamicVariablesConfig -from .integration_type import IntegrationType -from .mcp_approval_policy import McpApprovalPolicy from .system_tool_config_input_params import SystemToolConfigInputParams from .webhook_tool_api_schema_config_input import WebhookToolApiSchemaConfigInput @@ -43,34 +41,16 @@ class Config: class PromptAgentApiModelInputToolsItem_Mcp(UncheckedBaseModel): - """ - The type of tool - """ - + value: typing.Optional[typing.Any] = None type: typing.Literal["mcp"] = "mcp" - name: str - description: str - response_timeout_secs: typing.Optional[int] = None - disable_interruptions: typing.Optional[bool] = None - force_pre_tool_speech: typing.Optional[bool] = None - assignments: typing.Optional[typing.List[DynamicVariableAssignment]] = None - integration_type: IntegrationType - parameters: typing.Optional["ObjectJsonSchemaPropertyInput"] = None - approval_policy: typing.Optional[McpApprovalPolicy] = None - mcp_tool_name: str - mcp_tool_description: str - mcp_server_id: str - mcp_server_name: str - mcp_input_schema: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = None if IS_PYDANTIC_V2: - model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 + model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(frozen=True) # type: ignore # Pydantic v2 else: class Config: frozen = True smart_union = True - extra = pydantic.Extra.allow class PromptAgentApiModelInputToolsItem_System(UncheckedBaseModel): @@ -135,5 +115,4 @@ class Config: UnionMetadata(discriminant="type"), ] update_forward_refs(PromptAgentApiModelInputToolsItem_Client) -update_forward_refs(PromptAgentApiModelInputToolsItem_Mcp) update_forward_refs(PromptAgentApiModelInputToolsItem_Webhook) diff --git a/src/elevenlabs/types/prompt_agent_api_model_output_tools_item.py b/src/elevenlabs/types/prompt_agent_api_model_output_tools_item.py index 971a5571..2867ae48 100644 --- a/src/elevenlabs/types/prompt_agent_api_model_output_tools_item.py +++ b/src/elevenlabs/types/prompt_agent_api_model_output_tools_item.py @@ -10,8 +10,6 @@ from ..core.unchecked_base_model import UncheckedBaseModel, UnionMetadata from .dynamic_variable_assignment import DynamicVariableAssignment from .dynamic_variables_config import DynamicVariablesConfig -from .integration_type import IntegrationType -from .mcp_approval_policy import McpApprovalPolicy from .system_tool_config_output_params import SystemToolConfigOutputParams from .webhook_tool_api_schema_config_output import WebhookToolApiSchemaConfigOutput @@ -43,34 +41,16 @@ class Config: class PromptAgentApiModelOutputToolsItem_Mcp(UncheckedBaseModel): - """ - The type of tool - """ - + value: typing.Optional[typing.Any] = None type: typing.Literal["mcp"] = "mcp" - name: str - description: str - response_timeout_secs: typing.Optional[int] = None - disable_interruptions: typing.Optional[bool] = None - force_pre_tool_speech: typing.Optional[bool] = None - assignments: typing.Optional[typing.List[DynamicVariableAssignment]] = None - integration_type: IntegrationType - parameters: typing.Optional["ObjectJsonSchemaPropertyOutput"] = None - approval_policy: typing.Optional[McpApprovalPolicy] = None - mcp_tool_name: str - mcp_tool_description: str - mcp_server_id: str - mcp_server_name: str - mcp_input_schema: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = None if IS_PYDANTIC_V2: - model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 + model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(frozen=True) # type: ignore # Pydantic v2 else: class Config: frozen = True smart_union = True - extra = pydantic.Extra.allow class PromptAgentApiModelOutputToolsItem_System(UncheckedBaseModel): @@ -135,5 +115,4 @@ class Config: UnionMetadata(discriminant="type"), ] update_forward_refs(PromptAgentApiModelOutputToolsItem_Client) -update_forward_refs(PromptAgentApiModelOutputToolsItem_Mcp) update_forward_refs(PromptAgentApiModelOutputToolsItem_Webhook) diff --git a/src/elevenlabs/types/agent_ban.py b/src/elevenlabs/types/speech_to_text_webhook_response_model.py similarity index 66% rename from src/elevenlabs/types/agent_ban.py rename to src/elevenlabs/types/speech_to_text_webhook_response_model.py index 78494965..59707adb 100644 --- a/src/elevenlabs/types/agent_ban.py +++ b/src/elevenlabs/types/speech_to_text_webhook_response_model.py @@ -5,13 +5,18 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2 from ..core.unchecked_base_model import UncheckedBaseModel -from .ban_reason_type import BanReasonType -class AgentBan(UncheckedBaseModel): - at_unix: int - reason: typing.Optional[str] = None - reason_type: BanReasonType +class SpeechToTextWebhookResponseModel(UncheckedBaseModel): + message: str = pydantic.Field() + """ + The message of the webhook response. + """ + + request_id: str = pydantic.Field() + """ + The request ID of the webhook response. + """ if IS_PYDANTIC_V2: model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 diff --git a/src/elevenlabs/types/tool_request_model_tool_config.py b/src/elevenlabs/types/tool_request_model_tool_config.py index e78cb9b2..707f2d3e 100644 --- a/src/elevenlabs/types/tool_request_model_tool_config.py +++ b/src/elevenlabs/types/tool_request_model_tool_config.py @@ -10,8 +10,6 @@ from ..core.unchecked_base_model import UncheckedBaseModel, UnionMetadata from .dynamic_variable_assignment import DynamicVariableAssignment from .dynamic_variables_config import DynamicVariablesConfig -from .integration_type import IntegrationType -from .mcp_approval_policy import McpApprovalPolicy from .system_tool_config_input_params import SystemToolConfigInputParams from .webhook_tool_api_schema_config_input import WebhookToolApiSchemaConfigInput @@ -43,34 +41,16 @@ class Config: class ToolRequestModelToolConfig_Mcp(UncheckedBaseModel): - """ - Configuration for the tool - """ - + value: typing.Optional[typing.Any] = None type: typing.Literal["mcp"] = "mcp" - name: str - description: str - response_timeout_secs: typing.Optional[int] = None - disable_interruptions: typing.Optional[bool] = None - force_pre_tool_speech: typing.Optional[bool] = None - assignments: typing.Optional[typing.List[DynamicVariableAssignment]] = None - integration_type: IntegrationType - parameters: typing.Optional["ObjectJsonSchemaPropertyInput"] = None - approval_policy: typing.Optional[McpApprovalPolicy] = None - mcp_tool_name: str - mcp_tool_description: str - mcp_server_id: str - mcp_server_name: str - mcp_input_schema: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = None if IS_PYDANTIC_V2: - model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 + model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(frozen=True) # type: ignore # Pydantic v2 else: class Config: frozen = True smart_union = True - extra = pydantic.Extra.allow class ToolRequestModelToolConfig_System(UncheckedBaseModel): @@ -135,5 +115,4 @@ class Config: UnionMetadata(discriminant="type"), ] update_forward_refs(ToolRequestModelToolConfig_Client) -update_forward_refs(ToolRequestModelToolConfig_Mcp) update_forward_refs(ToolRequestModelToolConfig_Webhook) diff --git a/src/elevenlabs/types/tool_response_model_tool_config.py b/src/elevenlabs/types/tool_response_model_tool_config.py index 03882150..f974c4ae 100644 --- a/src/elevenlabs/types/tool_response_model_tool_config.py +++ b/src/elevenlabs/types/tool_response_model_tool_config.py @@ -10,8 +10,6 @@ from ..core.unchecked_base_model import UncheckedBaseModel, UnionMetadata from .dynamic_variable_assignment import DynamicVariableAssignment from .dynamic_variables_config import DynamicVariablesConfig -from .integration_type import IntegrationType -from .mcp_approval_policy import McpApprovalPolicy from .system_tool_config_output_params import SystemToolConfigOutputParams from .webhook_tool_api_schema_config_output import WebhookToolApiSchemaConfigOutput @@ -43,34 +41,16 @@ class Config: class ToolResponseModelToolConfig_Mcp(UncheckedBaseModel): - """ - The type of tool - """ - + value: typing.Optional[typing.Any] = None type: typing.Literal["mcp"] = "mcp" - name: str - description: str - response_timeout_secs: typing.Optional[int] = None - disable_interruptions: typing.Optional[bool] = None - force_pre_tool_speech: typing.Optional[bool] = None - assignments: typing.Optional[typing.List[DynamicVariableAssignment]] = None - integration_type: IntegrationType - parameters: typing.Optional["ObjectJsonSchemaPropertyOutput"] = None - approval_policy: typing.Optional[McpApprovalPolicy] = None - mcp_tool_name: str - mcp_tool_description: str - mcp_server_id: str - mcp_server_name: str - mcp_input_schema: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = None if IS_PYDANTIC_V2: - model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 + model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(frozen=True) # type: ignore # Pydantic v2 else: class Config: frozen = True smart_union = True - extra = pydantic.Extra.allow class ToolResponseModelToolConfig_System(UncheckedBaseModel): @@ -135,5 +115,4 @@ class Config: UnionMetadata(discriminant="type"), ] update_forward_refs(ToolResponseModelToolConfig_Client) -update_forward_refs(ToolResponseModelToolConfig_Mcp) update_forward_refs(ToolResponseModelToolConfig_Webhook)