From dbda867e8e7ac01dbfe04aadcec7fa6bc318d54b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Carolina=20L=C3=B3pez?= Date: Thu, 24 Jul 2025 01:23:16 -0500 Subject: [PATCH 1/3] Remove not existence class ServiceList (#878) --- twilio/rest/preview/__init__.py | 9 --------- 1 file changed, 9 deletions(-) diff --git a/twilio/rest/preview/__init__.py b/twilio/rest/preview/__init__.py index 7a175b902..c4658c62e 100644 --- a/twilio/rest/preview/__init__.py +++ b/twilio/rest/preview/__init__.py @@ -50,15 +50,6 @@ def installed_add_ons(self) -> InstalledAddOnList: ) return self.marketplace.installed_add_ons - @property - def services(self) -> ServiceList: - warn( - "services is deprecated. Use sync.services instead.", - DeprecationWarning, - stacklevel=2, - ) - return self.sync.services - @property def commands(self) -> CommandList: warn( From d85d3e378040e38d15a378a2aa4eac395eed9318 Mon Sep 17 00:00:00 2001 From: Twilio Date: Thu, 24 Jul 2025 07:58:54 +0000 Subject: [PATCH 2/3] [Librarian] Regenerated @ 4b32678e9d8859e19f1feb1af566eea8533a36c9 51518c9f2f9294597fd0471d5c647016ef4023ee --- CHANGES.md | 14 ++++ .../rest/events/v1/subscription/__init__.py | 24 ++----- twilio/rest/insights/v1/call_summaries.py | 72 +++++++++++++++++++ twilio/rest/numbers/v1/__init__.py | 24 +++---- ...hook_configuration_fetch.py => webhook.py} | 26 +++---- 5 files changed, 111 insertions(+), 49 deletions(-) rename twilio/rest/numbers/v1/{porting_webhook_configuration_fetch.py => webhook.py} (78%) diff --git a/CHANGES.md b/CHANGES.md index d6e5e522d..275a6c6d4 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -3,6 +3,20 @@ twilio-python Changelog Here you can see the full list of changes between each twilio-python release. +[2025-07-24] Version 9.7.0 +-------------------------- +**Library - Fix** +- [PR #878](https://github.com/twilio/twilio-python/pull/878): Remove not existence class ServiceList. Thanks to [@lopenchi](https://github.com/lopenchi)! + +**Events** +- Remove `SinkSid` parameter when updating subscriptions. **(breaking change)** + +**Twiml** +- Remove Duplicates. +- Add Polly Generative voices. +- Add Latest Google (Chirp3-HD) voices. + + [2025-07-10] Version 9.6.5 -------------------------- **Library - Fix** diff --git a/twilio/rest/events/v1/subscription/__init__.py b/twilio/rest/events/v1/subscription/__init__.py index 872c9ed7d..b6d85033c 100644 --- a/twilio/rest/events/v1/subscription/__init__.py +++ b/twilio/rest/events/v1/subscription/__init__.py @@ -110,39 +110,31 @@ async def fetch_async(self) -> "SubscriptionInstance": return await self._proxy.fetch_async() def update( - self, - description: Union[str, object] = values.unset, - sink_sid: Union[str, object] = values.unset, + self, description: Union[str, object] = values.unset ) -> "SubscriptionInstance": """ Update the SubscriptionInstance :param description: A human readable description for the Subscription. - :param sink_sid: The SID of the sink that events selected by this subscription should be sent to. Sink must be active for the subscription to be created. :returns: The updated SubscriptionInstance """ return self._proxy.update( description=description, - sink_sid=sink_sid, ) async def update_async( - self, - description: Union[str, object] = values.unset, - sink_sid: Union[str, object] = values.unset, + self, description: Union[str, object] = values.unset ) -> "SubscriptionInstance": """ Asynchronous coroutine to update the SubscriptionInstance :param description: A human readable description for the Subscription. - :param sink_sid: The SID of the sink that events selected by this subscription should be sent to. Sink must be active for the subscription to be created. :returns: The updated SubscriptionInstance """ return await self._proxy.update_async( description=description, - sink_sid=sink_sid, ) @property @@ -250,15 +242,12 @@ async def fetch_async(self) -> SubscriptionInstance: ) def update( - self, - description: Union[str, object] = values.unset, - sink_sid: Union[str, object] = values.unset, + self, description: Union[str, object] = values.unset ) -> SubscriptionInstance: """ Update the SubscriptionInstance :param description: A human readable description for the Subscription. - :param sink_sid: The SID of the sink that events selected by this subscription should be sent to. Sink must be active for the subscription to be created. :returns: The updated SubscriptionInstance """ @@ -266,7 +255,6 @@ def update( data = values.of( { "Description": description, - "SinkSid": sink_sid, } ) headers = values.of({}) @@ -282,15 +270,12 @@ def update( return SubscriptionInstance(self._version, payload, sid=self._solution["sid"]) async def update_async( - self, - description: Union[str, object] = values.unset, - sink_sid: Union[str, object] = values.unset, + self, description: Union[str, object] = values.unset ) -> SubscriptionInstance: """ Asynchronous coroutine to update the SubscriptionInstance :param description: A human readable description for the Subscription. - :param sink_sid: The SID of the sink that events selected by this subscription should be sent to. Sink must be active for the subscription to be created. :returns: The updated SubscriptionInstance """ @@ -298,7 +283,6 @@ async def update_async( data = values.of( { "Description": description, - "SinkSid": sink_sid, } ) headers = values.of({}) diff --git a/twilio/rest/insights/v1/call_summaries.py b/twilio/rest/insights/v1/call_summaries.py index 0a75e3845..47426b9fb 100644 --- a/twilio/rest/insights/v1/call_summaries.py +++ b/twilio/rest/insights/v1/call_summaries.py @@ -205,6 +205,10 @@ def stream( branded_enabled: Union[bool, object] = values.unset, voice_integrity_enabled: Union[bool, object] = values.unset, branded_bundle_sid: Union[str, object] = values.unset, + branded_logo: Union[bool, object] = values.unset, + branded_type: Union[str, object] = values.unset, + branded_use_case: Union[str, object] = values.unset, + branded_call_reason: Union[str, object] = values.unset, voice_integrity_bundle_sid: Union[str, object] = values.unset, voice_integrity_use_case: Union[str, object] = values.unset, business_profile_identity: Union[str, object] = values.unset, @@ -246,6 +250,10 @@ def stream( :param bool branded_enabled: A boolean flag indicating whether or not the calls were branded using Twilio Branded Calls. One of 'true' or 'false' :param bool voice_integrity_enabled: A boolean flag indicating whether or not the phone number had voice integrity enabled.One of 'true' or 'false' :param str branded_bundle_sid: A unique SID identifier of the Branded Call. + :param bool branded_logo: Indicates whether the branded logo was displayed during the in_brand branded call. Possible values are true (logo was present) or false (logo was not present). + :param str branded_type: Indicates whether the Branded Call is in_band vs out_of_band. + :param str branded_use_case: Specifies the user-defined purpose for the call, as provided during the setup of in_band branded calling. + :param str branded_call_reason: Specifies the user-defined reason for the call, which will be displayed to the end user on their mobile device during an in_band branded call. :param str voice_integrity_bundle_sid: A unique SID identifier of the Voice Integrity Profile. :param str voice_integrity_use_case: A Voice Integrity Use Case . Is of type enum. One of 'abandoned_cart', 'appointment_reminders', 'appointment_scheduling', 'asset_management', 'automated_support', 'call_tracking', 'click_to_call', 'contact_tracing', 'contactless_delivery', 'customer_support', 'dating/social', 'delivery_notifications', 'distance_learning', 'emergency_notifications', 'employee_notifications', 'exam_proctoring', 'field_notifications', 'first_responder', 'fraud_alerts', 'group_messaging', 'identify_&_verification', 'intelligent_routing', 'lead_alerts', 'lead_distribution', 'lead_generation', 'lead_management', 'lead_nurturing', 'marketing_events', 'mass_alerts', 'meetings/collaboration', 'order_notifications', 'outbound_dialer', 'pharmacy', 'phone_system', 'purchase_confirmation', 'remote_appointments', 'rewards_program', 'self-service', 'service_alerts', 'shift_management', 'survey/research', 'telehealth', 'telemarketing', 'therapy_(individual+group)'. :param str business_profile_identity: A Business Identity of the calls. Is of type enum. One of 'direct_customer', 'isv_reseller_or_partner'. @@ -289,6 +297,10 @@ def stream( branded_enabled=branded_enabled, voice_integrity_enabled=voice_integrity_enabled, branded_bundle_sid=branded_bundle_sid, + branded_logo=branded_logo, + branded_type=branded_type, + branded_use_case=branded_use_case, + branded_call_reason=branded_call_reason, voice_integrity_bundle_sid=voice_integrity_bundle_sid, voice_integrity_use_case=voice_integrity_use_case, business_profile_identity=business_profile_identity, @@ -330,6 +342,10 @@ async def stream_async( branded_enabled: Union[bool, object] = values.unset, voice_integrity_enabled: Union[bool, object] = values.unset, branded_bundle_sid: Union[str, object] = values.unset, + branded_logo: Union[bool, object] = values.unset, + branded_type: Union[str, object] = values.unset, + branded_use_case: Union[str, object] = values.unset, + branded_call_reason: Union[str, object] = values.unset, voice_integrity_bundle_sid: Union[str, object] = values.unset, voice_integrity_use_case: Union[str, object] = values.unset, business_profile_identity: Union[str, object] = values.unset, @@ -371,6 +387,10 @@ async def stream_async( :param bool branded_enabled: A boolean flag indicating whether or not the calls were branded using Twilio Branded Calls. One of 'true' or 'false' :param bool voice_integrity_enabled: A boolean flag indicating whether or not the phone number had voice integrity enabled.One of 'true' or 'false' :param str branded_bundle_sid: A unique SID identifier of the Branded Call. + :param bool branded_logo: Indicates whether the branded logo was displayed during the in_brand branded call. Possible values are true (logo was present) or false (logo was not present). + :param str branded_type: Indicates whether the Branded Call is in_band vs out_of_band. + :param str branded_use_case: Specifies the user-defined purpose for the call, as provided during the setup of in_band branded calling. + :param str branded_call_reason: Specifies the user-defined reason for the call, which will be displayed to the end user on their mobile device during an in_band branded call. :param str voice_integrity_bundle_sid: A unique SID identifier of the Voice Integrity Profile. :param str voice_integrity_use_case: A Voice Integrity Use Case . Is of type enum. One of 'abandoned_cart', 'appointment_reminders', 'appointment_scheduling', 'asset_management', 'automated_support', 'call_tracking', 'click_to_call', 'contact_tracing', 'contactless_delivery', 'customer_support', 'dating/social', 'delivery_notifications', 'distance_learning', 'emergency_notifications', 'employee_notifications', 'exam_proctoring', 'field_notifications', 'first_responder', 'fraud_alerts', 'group_messaging', 'identify_&_verification', 'intelligent_routing', 'lead_alerts', 'lead_distribution', 'lead_generation', 'lead_management', 'lead_nurturing', 'marketing_events', 'mass_alerts', 'meetings/collaboration', 'order_notifications', 'outbound_dialer', 'pharmacy', 'phone_system', 'purchase_confirmation', 'remote_appointments', 'rewards_program', 'self-service', 'service_alerts', 'shift_management', 'survey/research', 'telehealth', 'telemarketing', 'therapy_(individual+group)'. :param str business_profile_identity: A Business Identity of the calls. Is of type enum. One of 'direct_customer', 'isv_reseller_or_partner'. @@ -414,6 +434,10 @@ async def stream_async( branded_enabled=branded_enabled, voice_integrity_enabled=voice_integrity_enabled, branded_bundle_sid=branded_bundle_sid, + branded_logo=branded_logo, + branded_type=branded_type, + branded_use_case=branded_use_case, + branded_call_reason=branded_call_reason, voice_integrity_bundle_sid=voice_integrity_bundle_sid, voice_integrity_use_case=voice_integrity_use_case, business_profile_identity=business_profile_identity, @@ -455,6 +479,10 @@ def list( branded_enabled: Union[bool, object] = values.unset, voice_integrity_enabled: Union[bool, object] = values.unset, branded_bundle_sid: Union[str, object] = values.unset, + branded_logo: Union[bool, object] = values.unset, + branded_type: Union[str, object] = values.unset, + branded_use_case: Union[str, object] = values.unset, + branded_call_reason: Union[str, object] = values.unset, voice_integrity_bundle_sid: Union[str, object] = values.unset, voice_integrity_use_case: Union[str, object] = values.unset, business_profile_identity: Union[str, object] = values.unset, @@ -495,6 +523,10 @@ def list( :param bool branded_enabled: A boolean flag indicating whether or not the calls were branded using Twilio Branded Calls. One of 'true' or 'false' :param bool voice_integrity_enabled: A boolean flag indicating whether or not the phone number had voice integrity enabled.One of 'true' or 'false' :param str branded_bundle_sid: A unique SID identifier of the Branded Call. + :param bool branded_logo: Indicates whether the branded logo was displayed during the in_brand branded call. Possible values are true (logo was present) or false (logo was not present). + :param str branded_type: Indicates whether the Branded Call is in_band vs out_of_band. + :param str branded_use_case: Specifies the user-defined purpose for the call, as provided during the setup of in_band branded calling. + :param str branded_call_reason: Specifies the user-defined reason for the call, which will be displayed to the end user on their mobile device during an in_band branded call. :param str voice_integrity_bundle_sid: A unique SID identifier of the Voice Integrity Profile. :param str voice_integrity_use_case: A Voice Integrity Use Case . Is of type enum. One of 'abandoned_cart', 'appointment_reminders', 'appointment_scheduling', 'asset_management', 'automated_support', 'call_tracking', 'click_to_call', 'contact_tracing', 'contactless_delivery', 'customer_support', 'dating/social', 'delivery_notifications', 'distance_learning', 'emergency_notifications', 'employee_notifications', 'exam_proctoring', 'field_notifications', 'first_responder', 'fraud_alerts', 'group_messaging', 'identify_&_verification', 'intelligent_routing', 'lead_alerts', 'lead_distribution', 'lead_generation', 'lead_management', 'lead_nurturing', 'marketing_events', 'mass_alerts', 'meetings/collaboration', 'order_notifications', 'outbound_dialer', 'pharmacy', 'phone_system', 'purchase_confirmation', 'remote_appointments', 'rewards_program', 'self-service', 'service_alerts', 'shift_management', 'survey/research', 'telehealth', 'telemarketing', 'therapy_(individual+group)'. :param str business_profile_identity: A Business Identity of the calls. Is of type enum. One of 'direct_customer', 'isv_reseller_or_partner'. @@ -538,6 +570,10 @@ def list( branded_enabled=branded_enabled, voice_integrity_enabled=voice_integrity_enabled, branded_bundle_sid=branded_bundle_sid, + branded_logo=branded_logo, + branded_type=branded_type, + branded_use_case=branded_use_case, + branded_call_reason=branded_call_reason, voice_integrity_bundle_sid=voice_integrity_bundle_sid, voice_integrity_use_case=voice_integrity_use_case, business_profile_identity=business_profile_identity, @@ -579,6 +615,10 @@ async def list_async( branded_enabled: Union[bool, object] = values.unset, voice_integrity_enabled: Union[bool, object] = values.unset, branded_bundle_sid: Union[str, object] = values.unset, + branded_logo: Union[bool, object] = values.unset, + branded_type: Union[str, object] = values.unset, + branded_use_case: Union[str, object] = values.unset, + branded_call_reason: Union[str, object] = values.unset, voice_integrity_bundle_sid: Union[str, object] = values.unset, voice_integrity_use_case: Union[str, object] = values.unset, business_profile_identity: Union[str, object] = values.unset, @@ -619,6 +659,10 @@ async def list_async( :param bool branded_enabled: A boolean flag indicating whether or not the calls were branded using Twilio Branded Calls. One of 'true' or 'false' :param bool voice_integrity_enabled: A boolean flag indicating whether or not the phone number had voice integrity enabled.One of 'true' or 'false' :param str branded_bundle_sid: A unique SID identifier of the Branded Call. + :param bool branded_logo: Indicates whether the branded logo was displayed during the in_brand branded call. Possible values are true (logo was present) or false (logo was not present). + :param str branded_type: Indicates whether the Branded Call is in_band vs out_of_band. + :param str branded_use_case: Specifies the user-defined purpose for the call, as provided during the setup of in_band branded calling. + :param str branded_call_reason: Specifies the user-defined reason for the call, which will be displayed to the end user on their mobile device during an in_band branded call. :param str voice_integrity_bundle_sid: A unique SID identifier of the Voice Integrity Profile. :param str voice_integrity_use_case: A Voice Integrity Use Case . Is of type enum. One of 'abandoned_cart', 'appointment_reminders', 'appointment_scheduling', 'asset_management', 'automated_support', 'call_tracking', 'click_to_call', 'contact_tracing', 'contactless_delivery', 'customer_support', 'dating/social', 'delivery_notifications', 'distance_learning', 'emergency_notifications', 'employee_notifications', 'exam_proctoring', 'field_notifications', 'first_responder', 'fraud_alerts', 'group_messaging', 'identify_&_verification', 'intelligent_routing', 'lead_alerts', 'lead_distribution', 'lead_generation', 'lead_management', 'lead_nurturing', 'marketing_events', 'mass_alerts', 'meetings/collaboration', 'order_notifications', 'outbound_dialer', 'pharmacy', 'phone_system', 'purchase_confirmation', 'remote_appointments', 'rewards_program', 'self-service', 'service_alerts', 'shift_management', 'survey/research', 'telehealth', 'telemarketing', 'therapy_(individual+group)'. :param str business_profile_identity: A Business Identity of the calls. Is of type enum. One of 'direct_customer', 'isv_reseller_or_partner'. @@ -663,6 +707,10 @@ async def list_async( branded_enabled=branded_enabled, voice_integrity_enabled=voice_integrity_enabled, branded_bundle_sid=branded_bundle_sid, + branded_logo=branded_logo, + branded_type=branded_type, + branded_use_case=branded_use_case, + branded_call_reason=branded_call_reason, voice_integrity_bundle_sid=voice_integrity_bundle_sid, voice_integrity_use_case=voice_integrity_use_case, business_profile_identity=business_profile_identity, @@ -704,6 +752,10 @@ def page( branded_enabled: Union[bool, object] = values.unset, voice_integrity_enabled: Union[bool, object] = values.unset, branded_bundle_sid: Union[str, object] = values.unset, + branded_logo: Union[bool, object] = values.unset, + branded_type: Union[str, object] = values.unset, + branded_use_case: Union[str, object] = values.unset, + branded_call_reason: Union[str, object] = values.unset, voice_integrity_bundle_sid: Union[str, object] = values.unset, voice_integrity_use_case: Union[str, object] = values.unset, business_profile_identity: Union[str, object] = values.unset, @@ -744,6 +796,10 @@ def page( :param branded_enabled: A boolean flag indicating whether or not the calls were branded using Twilio Branded Calls. One of 'true' or 'false' :param voice_integrity_enabled: A boolean flag indicating whether or not the phone number had voice integrity enabled.One of 'true' or 'false' :param branded_bundle_sid: A unique SID identifier of the Branded Call. + :param branded_logo: Indicates whether the branded logo was displayed during the in_brand branded call. Possible values are true (logo was present) or false (logo was not present). + :param branded_type: Indicates whether the Branded Call is in_band vs out_of_band. + :param branded_use_case: Specifies the user-defined purpose for the call, as provided during the setup of in_band branded calling. + :param branded_call_reason: Specifies the user-defined reason for the call, which will be displayed to the end user on their mobile device during an in_band branded call. :param voice_integrity_bundle_sid: A unique SID identifier of the Voice Integrity Profile. :param voice_integrity_use_case: A Voice Integrity Use Case . Is of type enum. One of 'abandoned_cart', 'appointment_reminders', 'appointment_scheduling', 'asset_management', 'automated_support', 'call_tracking', 'click_to_call', 'contact_tracing', 'contactless_delivery', 'customer_support', 'dating/social', 'delivery_notifications', 'distance_learning', 'emergency_notifications', 'employee_notifications', 'exam_proctoring', 'field_notifications', 'first_responder', 'fraud_alerts', 'group_messaging', 'identify_&_verification', 'intelligent_routing', 'lead_alerts', 'lead_distribution', 'lead_generation', 'lead_management', 'lead_nurturing', 'marketing_events', 'mass_alerts', 'meetings/collaboration', 'order_notifications', 'outbound_dialer', 'pharmacy', 'phone_system', 'purchase_confirmation', 'remote_appointments', 'rewards_program', 'self-service', 'service_alerts', 'shift_management', 'survey/research', 'telehealth', 'telemarketing', 'therapy_(individual+group)'. :param business_profile_identity: A Business Identity of the calls. Is of type enum. One of 'direct_customer', 'isv_reseller_or_partner'. @@ -786,6 +842,10 @@ def page( voice_integrity_enabled ), "BrandedBundleSid": branded_bundle_sid, + "BrandedLogo": serialize.boolean_to_string(branded_logo), + "BrandedType": branded_type, + "BrandedUseCase": branded_use_case, + "BrandedCallReason": branded_call_reason, "VoiceIntegrityBundleSid": voice_integrity_bundle_sid, "VoiceIntegrityUseCase": voice_integrity_use_case, "BusinessProfileIdentity": business_profile_identity, @@ -837,6 +897,10 @@ async def page_async( branded_enabled: Union[bool, object] = values.unset, voice_integrity_enabled: Union[bool, object] = values.unset, branded_bundle_sid: Union[str, object] = values.unset, + branded_logo: Union[bool, object] = values.unset, + branded_type: Union[str, object] = values.unset, + branded_use_case: Union[str, object] = values.unset, + branded_call_reason: Union[str, object] = values.unset, voice_integrity_bundle_sid: Union[str, object] = values.unset, voice_integrity_use_case: Union[str, object] = values.unset, business_profile_identity: Union[str, object] = values.unset, @@ -877,6 +941,10 @@ async def page_async( :param branded_enabled: A boolean flag indicating whether or not the calls were branded using Twilio Branded Calls. One of 'true' or 'false' :param voice_integrity_enabled: A boolean flag indicating whether or not the phone number had voice integrity enabled.One of 'true' or 'false' :param branded_bundle_sid: A unique SID identifier of the Branded Call. + :param branded_logo: Indicates whether the branded logo was displayed during the in_brand branded call. Possible values are true (logo was present) or false (logo was not present). + :param branded_type: Indicates whether the Branded Call is in_band vs out_of_band. + :param branded_use_case: Specifies the user-defined purpose for the call, as provided during the setup of in_band branded calling. + :param branded_call_reason: Specifies the user-defined reason for the call, which will be displayed to the end user on their mobile device during an in_band branded call. :param voice_integrity_bundle_sid: A unique SID identifier of the Voice Integrity Profile. :param voice_integrity_use_case: A Voice Integrity Use Case . Is of type enum. One of 'abandoned_cart', 'appointment_reminders', 'appointment_scheduling', 'asset_management', 'automated_support', 'call_tracking', 'click_to_call', 'contact_tracing', 'contactless_delivery', 'customer_support', 'dating/social', 'delivery_notifications', 'distance_learning', 'emergency_notifications', 'employee_notifications', 'exam_proctoring', 'field_notifications', 'first_responder', 'fraud_alerts', 'group_messaging', 'identify_&_verification', 'intelligent_routing', 'lead_alerts', 'lead_distribution', 'lead_generation', 'lead_management', 'lead_nurturing', 'marketing_events', 'mass_alerts', 'meetings/collaboration', 'order_notifications', 'outbound_dialer', 'pharmacy', 'phone_system', 'purchase_confirmation', 'remote_appointments', 'rewards_program', 'self-service', 'service_alerts', 'shift_management', 'survey/research', 'telehealth', 'telemarketing', 'therapy_(individual+group)'. :param business_profile_identity: A Business Identity of the calls. Is of type enum. One of 'direct_customer', 'isv_reseller_or_partner'. @@ -919,6 +987,10 @@ async def page_async( voice_integrity_enabled ), "BrandedBundleSid": branded_bundle_sid, + "BrandedLogo": serialize.boolean_to_string(branded_logo), + "BrandedType": branded_type, + "BrandedUseCase": branded_use_case, + "BrandedCallReason": branded_call_reason, "VoiceIntegrityBundleSid": voice_integrity_bundle_sid, "VoiceIntegrityUseCase": voice_integrity_use_case, "BusinessProfileIdentity": business_profile_identity, diff --git a/twilio/rest/numbers/v1/__init__.py b/twilio/rest/numbers/v1/__init__.py index 043364c3d..68f078a88 100644 --- a/twilio/rest/numbers/v1/__init__.py +++ b/twilio/rest/numbers/v1/__init__.py @@ -28,12 +28,10 @@ from twilio.rest.numbers.v1.porting_webhook_configuration_delete import ( PortingWebhookConfigurationDeleteList, ) -from twilio.rest.numbers.v1.porting_webhook_configuration_fetch import ( - PortingWebhookConfigurationFetchList, -) from twilio.rest.numbers.v1.signing_request_configuration import ( SigningRequestConfigurationList, ) +from twilio.rest.numbers.v1.webhook import WebhookList class V1(Version): @@ -58,12 +56,10 @@ def __init__(self, domain: Domain): self._porting_webhook_configurations_delete: Optional[ PortingWebhookConfigurationDeleteList ] = None - self._porting_webhook_configuration_fetch: Optional[ - PortingWebhookConfigurationFetchList - ] = None self._signing_request_configurations: Optional[ SigningRequestConfigurationList ] = None + self._webhook: Optional[WebhookList] = None @property def bulk_eligibilities(self) -> BulkEligibilityList: @@ -111,22 +107,18 @@ def porting_webhook_configurations_delete( ) return self._porting_webhook_configurations_delete - @property - def porting_webhook_configuration_fetch( - self, - ) -> PortingWebhookConfigurationFetchList: - if self._porting_webhook_configuration_fetch is None: - self._porting_webhook_configuration_fetch = ( - PortingWebhookConfigurationFetchList(self) - ) - return self._porting_webhook_configuration_fetch - @property def signing_request_configurations(self) -> SigningRequestConfigurationList: if self._signing_request_configurations is None: self._signing_request_configurations = SigningRequestConfigurationList(self) return self._signing_request_configurations + @property + def webhook(self) -> WebhookList: + if self._webhook is None: + self._webhook = WebhookList(self) + return self._webhook + def __repr__(self) -> str: """ Provide a friendly representation diff --git a/twilio/rest/numbers/v1/porting_webhook_configuration_fetch.py b/twilio/rest/numbers/v1/webhook.py similarity index 78% rename from twilio/rest/numbers/v1/porting_webhook_configuration_fetch.py rename to twilio/rest/numbers/v1/webhook.py index 5d381768c..69bd55632 100644 --- a/twilio/rest/numbers/v1/porting_webhook_configuration_fetch.py +++ b/twilio/rest/numbers/v1/webhook.py @@ -21,7 +21,7 @@ from twilio.base.version import Version -class PortingWebhookConfigurationFetchInstance(InstanceResource): +class WebhookInstance(InstanceResource): """ :ivar url: The URL of the webhook configuration request :ivar port_in_target_url: The complete webhook url that will be called when a notification event for port in request or port in phone number happens @@ -52,14 +52,14 @@ def __repr__(self) -> str: :returns: Machine friendly representation """ - return "" + return "" -class PortingWebhookConfigurationFetchList(ListResource): +class WebhookList(ListResource): def __init__(self, version: Version): """ - Initialize the PortingWebhookConfigurationFetchList + Initialize the WebhookList :param version: Version that contains the resource @@ -68,12 +68,12 @@ def __init__(self, version: Version): self._uri = "/Porting/Configuration/Webhook" - def fetch(self) -> PortingWebhookConfigurationFetchInstance: + def fetch(self) -> WebhookInstance: """ - Asynchronously fetch the PortingWebhookConfigurationFetchInstance + Asynchronously fetch the WebhookInstance - :returns: The fetched PortingWebhookConfigurationFetchInstance + :returns: The fetched WebhookInstance """ headers = values.of({"Content-Type": "application/x-www-form-urlencoded"}) @@ -81,14 +81,14 @@ def fetch(self) -> PortingWebhookConfigurationFetchInstance: payload = self._version.fetch(method="GET", uri=self._uri, headers=headers) - return PortingWebhookConfigurationFetchInstance(self._version, payload) + return WebhookInstance(self._version, payload) - async def fetch_async(self) -> PortingWebhookConfigurationFetchInstance: + async def fetch_async(self) -> WebhookInstance: """ - Asynchronously fetch the PortingWebhookConfigurationFetchInstance + Asynchronously fetch the WebhookInstance - :returns: The fetched PortingWebhookConfigurationFetchInstance + :returns: The fetched WebhookInstance """ headers = values.of({"Content-Type": "application/x-www-form-urlencoded"}) @@ -98,7 +98,7 @@ async def fetch_async(self) -> PortingWebhookConfigurationFetchInstance: method="GET", uri=self._uri, headers=headers ) - return PortingWebhookConfigurationFetchInstance(self._version, payload) + return WebhookInstance(self._version, payload) def __repr__(self) -> str: """ @@ -106,4 +106,4 @@ def __repr__(self) -> str: :returns: Machine friendly representation """ - return "" + return "" From f408b89da9801da245884d53b47cfa3ac6773090 Mon Sep 17 00:00:00 2001 From: Twilio Date: Thu, 24 Jul 2025 08:04:05 +0000 Subject: [PATCH 3/3] Release 9.7.0 --- setup.py | 2 +- twilio/__init__.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/setup.py b/setup.py index c2eb466aa..9e2011fcf 100644 --- a/setup.py +++ b/setup.py @@ -13,7 +13,7 @@ setup( name="twilio", - version="9.6.5", + version="9.7.0", description="Twilio API client and TwiML generator", author="Twilio", help_center="https://www.twilio.com/help/contact", diff --git a/twilio/__init__.py b/twilio/__init__.py index f28471b91..a22434958 100644 --- a/twilio/__init__.py +++ b/twilio/__init__.py @@ -1,2 +1,2 @@ -__version_info__ = ("9", "6", "5") +__version_info__ = ("9", "7", "0") __version__ = ".".join(__version_info__) pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy