twilio-ruby 7.6.5 → 7.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (34) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGES.md +51 -0
  3. data/README.md +2 -2
  4. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +4 -4
  5. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +4 -4
  6. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +4 -4
  7. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +4 -4
  8. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +4 -4
  9. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +4 -4
  10. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +4 -4
  11. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +4 -4
  12. data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +4 -4
  13. data/lib/twilio-ruby/rest/api/v2010/account/usage/trigger.rb +5 -5
  14. data/lib/twilio-ruby/rest/content/v1/content.rb +4 -1
  15. data/lib/twilio-ruby/rest/events/v1/subscription.rb +2 -8
  16. data/lib/twilio-ruby/rest/flex_api/v1/assessments.rb +3 -3
  17. data/lib/twilio-ruby/rest/flex_api/v1/insights_assessments_comment.rb +3 -3
  18. data/lib/twilio-ruby/rest/flex_api/v2/web_channels.rb +3 -0
  19. data/lib/twilio-ruby/rest/iam/v1/get_api_keys.rb +7 -0
  20. data/lib/twilio-ruby/rest/insights/v1/call_summaries.rb +27 -3
  21. data/lib/twilio-ruby/rest/messaging/v1/brand_registration.rb +18 -0
  22. data/lib/twilio-ruby/rest/messaging/v2/channels_sender.rb +171 -26
  23. data/lib/twilio-ruby/rest/messaging/v2.rb +1 -1
  24. data/lib/twilio-ruby/rest/numbers/v1/porting_port_in.rb +21 -0
  25. data/lib/twilio-ruby/rest/numbers/v1/{porting_webhook_configuration_fetch.rb → webhook.rb} +20 -20
  26. data/lib/twilio-ruby/rest/numbers/v1.rb +6 -6
  27. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb +7 -0
  28. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step.rb +7 -0
  29. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step.rb +7 -0
  30. data/lib/twilio-ruby/rest/verify/v2/service/entity/new_factor.rb +7 -0
  31. data/lib/twilio-ruby/rest/verify/v2/service.rb +61 -0
  32. data/lib/twilio-ruby/rest/voice_base.rb +1 -6
  33. data/lib/twilio-ruby/version.rb +1 -1
  34. metadata +3 -3
@@ -264,7 +264,7 @@ module Twilio
264
264
  end
265
265
 
266
266
  ##
267
- # @return [Float] The offset
267
+ # @return [String] The offset
268
268
  def offset
269
269
  @properties['offset']
270
270
  end
@@ -276,7 +276,7 @@ module Twilio
276
276
  end
277
277
 
278
278
  ##
279
- # @return [Float] The weightage given to this comment
279
+ # @return [String] The weightage given to this comment
280
280
  def weight
281
281
  @properties['weight']
282
282
  end
@@ -306,7 +306,7 @@ module Twilio
306
306
  end
307
307
 
308
308
  ##
309
- # @return [Float] The timestamp when the record is inserted
309
+ # @return [String] The timestamp when the record is inserted
310
310
  def timestamp
311
311
  @properties['timestamp']
312
312
  end
@@ -36,6 +36,7 @@ module Twilio
36
36
  # @param [String] chat_friendly_name The Conversation's friendly name. See the [Conversation resource](https://www.twilio.com/docs/conversations/api/conversation-resource) for an example.
37
37
  # @param [String] customer_friendly_name The Conversation participant's friendly name. See the [Conversation Participant Resource](https://www.twilio.com/docs/conversations/api/conversation-participant-resource) for an example.
38
38
  # @param [String] pre_engagement_data The pre-engagement data.
39
+ # @param [String] identity The Identity of the guest user. See the [Conversation User Resource](https://www.twilio.com/docs/conversations/api/user-resource) for an example.
39
40
  # @param [String] ui_version The Ui-Version HTTP request header
40
41
  # @return [WebChannelsInstance] Created WebChannelsInstance
41
42
  def create(
@@ -43,6 +44,7 @@ module Twilio
43
44
  chat_friendly_name: :unset,
44
45
  customer_friendly_name: :unset,
45
46
  pre_engagement_data: :unset,
47
+ identity: :unset,
46
48
  ui_version: :unset
47
49
  )
48
50
 
@@ -51,6 +53,7 @@ module Twilio
51
53
  'ChatFriendlyName' => chat_friendly_name,
52
54
  'CustomerFriendlyName' => customer_friendly_name,
53
55
  'PreEngagementData' => pre_engagement_data,
56
+ 'Identity' => identity,
54
57
  })
55
58
 
56
59
  headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', 'Ui-Version' => ui_version, })
@@ -179,6 +179,7 @@ module Twilio
179
179
  'friendly_name' => payload['friendly_name'],
180
180
  'date_created' => Twilio.deserialize_rfc2822(payload['date_created']),
181
181
  'date_updated' => Twilio.deserialize_rfc2822(payload['date_updated']),
182
+ 'flags' => payload['flags'],
182
183
  }
183
184
  end
184
185
 
@@ -207,6 +208,12 @@ module Twilio
207
208
  @properties['date_updated']
208
209
  end
209
210
 
211
+ ##
212
+ # @return [Array<String>]
213
+ def flags
214
+ @properties['flags']
215
+ end
216
+
210
217
  ##
211
218
  # Provide a user friendly representation
212
219
  def to_s
@@ -61,6 +61,10 @@ module Twilio
61
61
  # @param [Boolean] branded_enabled A boolean flag indicating whether or not the calls were branded using Twilio Branded Calls. One of 'true' or 'false'
62
62
  # @param [Boolean] voice_integrity_enabled A boolean flag indicating whether or not the phone number had voice integrity enabled.One of 'true' or 'false'
63
63
  # @param [String] branded_bundle_sid A unique SID identifier of the Branded Call.
64
+ # @param [Boolean] 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).
65
+ # @param [String] branded_type Indicates whether the Branded Call is in_band vs out_of_band.
66
+ # @param [String] branded_use_case Specifies the user-defined purpose for the call, as provided during the setup of in_band branded calling.
67
+ # @param [String] 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.
64
68
  # @param [String] voice_integrity_bundle_sid A unique SID identifier of the Voice Integrity Profile.
65
69
  # @param [String] 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)'.
66
70
  # @param [String] business_profile_identity A Business Identity of the calls. Is of type enum. One of 'direct_customer', 'isv_reseller_or_partner'.
@@ -74,7 +78,7 @@ module Twilio
74
78
  # but a limit is defined, stream() will attempt to read the limit with the most
75
79
  # efficient page size, i.e. min(limit, 1000)
76
80
  # @return [Array] Array of up to limit results
77
- def list(from: :unset, to: :unset, from_carrier: :unset, to_carrier: :unset, from_country_code: :unset, to_country_code: :unset, verified_caller: :unset, has_tag: :unset, start_time: :unset, end_time: :unset, call_type: :unset, call_state: :unset, direction: :unset, processing_state: :unset, sort_by: :unset, subaccount: :unset, abnormal_session: :unset, answered_by: :unset, answered_by_annotation: :unset, connectivity_issue_annotation: :unset, quality_issue_annotation: :unset, spam_annotation: :unset, call_score_annotation: :unset, branded_enabled: :unset, voice_integrity_enabled: :unset, branded_bundle_sid: :unset, voice_integrity_bundle_sid: :unset, voice_integrity_use_case: :unset, business_profile_identity: :unset, business_profile_industry: :unset, business_profile_bundle_sid: :unset, business_profile_type: :unset, limit: nil, page_size: nil)
81
+ def list(from: :unset, to: :unset, from_carrier: :unset, to_carrier: :unset, from_country_code: :unset, to_country_code: :unset, verified_caller: :unset, has_tag: :unset, start_time: :unset, end_time: :unset, call_type: :unset, call_state: :unset, direction: :unset, processing_state: :unset, sort_by: :unset, subaccount: :unset, abnormal_session: :unset, answered_by: :unset, answered_by_annotation: :unset, connectivity_issue_annotation: :unset, quality_issue_annotation: :unset, spam_annotation: :unset, call_score_annotation: :unset, branded_enabled: :unset, voice_integrity_enabled: :unset, branded_bundle_sid: :unset, branded_logo: :unset, branded_type: :unset, branded_use_case: :unset, branded_call_reason: :unset, voice_integrity_bundle_sid: :unset, voice_integrity_use_case: :unset, business_profile_identity: :unset, business_profile_industry: :unset, business_profile_bundle_sid: :unset, business_profile_type: :unset, limit: nil, page_size: nil)
78
82
  self.stream(
79
83
  from: from,
80
84
  to: to,
@@ -102,6 +106,10 @@ module Twilio
102
106
  branded_enabled: branded_enabled,
103
107
  voice_integrity_enabled: voice_integrity_enabled,
104
108
  branded_bundle_sid: branded_bundle_sid,
109
+ branded_logo: branded_logo,
110
+ branded_type: branded_type,
111
+ branded_use_case: branded_use_case,
112
+ branded_call_reason: branded_call_reason,
105
113
  voice_integrity_bundle_sid: voice_integrity_bundle_sid,
106
114
  voice_integrity_use_case: voice_integrity_use_case,
107
115
  business_profile_identity: business_profile_identity,
@@ -143,6 +151,10 @@ module Twilio
143
151
  # @param [Boolean] branded_enabled A boolean flag indicating whether or not the calls were branded using Twilio Branded Calls. One of 'true' or 'false'
144
152
  # @param [Boolean] voice_integrity_enabled A boolean flag indicating whether or not the phone number had voice integrity enabled.One of 'true' or 'false'
145
153
  # @param [String] branded_bundle_sid A unique SID identifier of the Branded Call.
154
+ # @param [Boolean] 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).
155
+ # @param [String] branded_type Indicates whether the Branded Call is in_band vs out_of_band.
156
+ # @param [String] branded_use_case Specifies the user-defined purpose for the call, as provided during the setup of in_band branded calling.
157
+ # @param [String] 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.
146
158
  # @param [String] voice_integrity_bundle_sid A unique SID identifier of the Voice Integrity Profile.
147
159
  # @param [String] 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)'.
148
160
  # @param [String] business_profile_identity A Business Identity of the calls. Is of type enum. One of 'direct_customer', 'isv_reseller_or_partner'.
@@ -156,7 +168,7 @@ module Twilio
156
168
  # but a limit is defined, stream() will attempt to read the limit with the most
157
169
  # efficient page size, i.e. min(limit, 1000)
158
170
  # @return [Enumerable] Enumerable that will yield up to limit results
159
- def stream(from: :unset, to: :unset, from_carrier: :unset, to_carrier: :unset, from_country_code: :unset, to_country_code: :unset, verified_caller: :unset, has_tag: :unset, start_time: :unset, end_time: :unset, call_type: :unset, call_state: :unset, direction: :unset, processing_state: :unset, sort_by: :unset, subaccount: :unset, abnormal_session: :unset, answered_by: :unset, answered_by_annotation: :unset, connectivity_issue_annotation: :unset, quality_issue_annotation: :unset, spam_annotation: :unset, call_score_annotation: :unset, branded_enabled: :unset, voice_integrity_enabled: :unset, branded_bundle_sid: :unset, voice_integrity_bundle_sid: :unset, voice_integrity_use_case: :unset, business_profile_identity: :unset, business_profile_industry: :unset, business_profile_bundle_sid: :unset, business_profile_type: :unset, limit: nil, page_size: nil)
171
+ def stream(from: :unset, to: :unset, from_carrier: :unset, to_carrier: :unset, from_country_code: :unset, to_country_code: :unset, verified_caller: :unset, has_tag: :unset, start_time: :unset, end_time: :unset, call_type: :unset, call_state: :unset, direction: :unset, processing_state: :unset, sort_by: :unset, subaccount: :unset, abnormal_session: :unset, answered_by: :unset, answered_by_annotation: :unset, connectivity_issue_annotation: :unset, quality_issue_annotation: :unset, spam_annotation: :unset, call_score_annotation: :unset, branded_enabled: :unset, voice_integrity_enabled: :unset, branded_bundle_sid: :unset, branded_logo: :unset, branded_type: :unset, branded_use_case: :unset, branded_call_reason: :unset, voice_integrity_bundle_sid: :unset, voice_integrity_use_case: :unset, business_profile_identity: :unset, business_profile_industry: :unset, business_profile_bundle_sid: :unset, business_profile_type: :unset, limit: nil, page_size: nil)
160
172
  limits = @version.read_limits(limit, page_size)
161
173
 
162
174
  page = self.page(
@@ -186,6 +198,10 @@ module Twilio
186
198
  branded_enabled: branded_enabled,
187
199
  voice_integrity_enabled: voice_integrity_enabled,
188
200
  branded_bundle_sid: branded_bundle_sid,
201
+ branded_logo: branded_logo,
202
+ branded_type: branded_type,
203
+ branded_use_case: branded_use_case,
204
+ branded_call_reason: branded_call_reason,
189
205
  voice_integrity_bundle_sid: voice_integrity_bundle_sid,
190
206
  voice_integrity_use_case: voice_integrity_use_case,
191
207
  business_profile_identity: business_profile_identity,
@@ -240,6 +256,10 @@ module Twilio
240
256
  # @param [Boolean] branded_enabled A boolean flag indicating whether or not the calls were branded using Twilio Branded Calls. One of 'true' or 'false'
241
257
  # @param [Boolean] voice_integrity_enabled A boolean flag indicating whether or not the phone number had voice integrity enabled.One of 'true' or 'false'
242
258
  # @param [String] branded_bundle_sid A unique SID identifier of the Branded Call.
259
+ # @param [Boolean] 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).
260
+ # @param [String] branded_type Indicates whether the Branded Call is in_band vs out_of_band.
261
+ # @param [String] branded_use_case Specifies the user-defined purpose for the call, as provided during the setup of in_band branded calling.
262
+ # @param [String] 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.
243
263
  # @param [String] voice_integrity_bundle_sid A unique SID identifier of the Voice Integrity Profile.
244
264
  # @param [String] 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)'.
245
265
  # @param [String] business_profile_identity A Business Identity of the calls. Is of type enum. One of 'direct_customer', 'isv_reseller_or_partner'.
@@ -250,7 +270,7 @@ module Twilio
250
270
  # @param [Integer] page_number Page Number, this value is simply for client state
251
271
  # @param [Integer] page_size Number of records to return, defaults to 50
252
272
  # @return [Page] Page of CallSummariesInstance
253
- def page(from: :unset, to: :unset, from_carrier: :unset, to_carrier: :unset, from_country_code: :unset, to_country_code: :unset, verified_caller: :unset, has_tag: :unset, start_time: :unset, end_time: :unset, call_type: :unset, call_state: :unset, direction: :unset, processing_state: :unset, sort_by: :unset, subaccount: :unset, abnormal_session: :unset, answered_by: :unset, answered_by_annotation: :unset, connectivity_issue_annotation: :unset, quality_issue_annotation: :unset, spam_annotation: :unset, call_score_annotation: :unset, branded_enabled: :unset, voice_integrity_enabled: :unset, branded_bundle_sid: :unset, voice_integrity_bundle_sid: :unset, voice_integrity_use_case: :unset, business_profile_identity: :unset, business_profile_industry: :unset, business_profile_bundle_sid: :unset, business_profile_type: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
273
+ def page(from: :unset, to: :unset, from_carrier: :unset, to_carrier: :unset, from_country_code: :unset, to_country_code: :unset, verified_caller: :unset, has_tag: :unset, start_time: :unset, end_time: :unset, call_type: :unset, call_state: :unset, direction: :unset, processing_state: :unset, sort_by: :unset, subaccount: :unset, abnormal_session: :unset, answered_by: :unset, answered_by_annotation: :unset, connectivity_issue_annotation: :unset, quality_issue_annotation: :unset, spam_annotation: :unset, call_score_annotation: :unset, branded_enabled: :unset, voice_integrity_enabled: :unset, branded_bundle_sid: :unset, branded_logo: :unset, branded_type: :unset, branded_use_case: :unset, branded_call_reason: :unset, voice_integrity_bundle_sid: :unset, voice_integrity_use_case: :unset, business_profile_identity: :unset, business_profile_industry: :unset, business_profile_bundle_sid: :unset, business_profile_type: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
254
274
  params = Twilio::Values.of({
255
275
  'From' => from,
256
276
  'To' => to,
@@ -278,6 +298,10 @@ module Twilio
278
298
  'BrandedEnabled' => branded_enabled,
279
299
  'VoiceIntegrityEnabled' => voice_integrity_enabled,
280
300
  'BrandedBundleSid' => branded_bundle_sid,
301
+ 'BrandedLogo' => branded_logo,
302
+ 'BrandedType' => branded_type,
303
+ 'BrandedUseCase' => branded_use_case,
304
+ 'BrandedCallReason' => branded_call_reason,
281
305
  'VoiceIntegrityBundleSid' => voice_integrity_bundle_sid,
282
306
  'VoiceIntegrityUseCase' => voice_integrity_use_case,
283
307
  'BusinessProfileIdentity' => business_profile_identity,
@@ -180,6 +180,7 @@ module Twilio
180
180
  # Dependents
181
181
  @brand_registration_otps = nil
182
182
  @brand_vettings = nil
183
+ @brand_registration2_fa = nil
183
184
  end
184
185
  ##
185
186
  # Fetch the BrandRegistrationInstance
@@ -249,6 +250,16 @@ module Twilio
249
250
 
250
251
  @brand_vettings
251
252
  end
253
+ ##
254
+ # Access the brand_registration2_fa
255
+ # @return [BrandRegistration2FaList]
256
+ # @return [BrandRegistration2FaContext]
257
+ def brand_registration2_fa
258
+ BrandRegistration2FaContext.new(
259
+ @version,
260
+ @solution[:sid]
261
+ )
262
+ end
252
263
 
253
264
  ##
254
265
  # Provide a user friendly representation
@@ -503,6 +514,13 @@ module Twilio
503
514
  context.brand_vettings
504
515
  end
505
516
 
517
+ ##
518
+ # Access the brand_registration2_fa
519
+ # @return [brand_registration2_fa] brand_registration2_fa
520
+ def brand_registration2_fa
521
+ context.brand_registration2_fa
522
+ end
523
+
506
524
  ##
507
525
  # Provide a user friendly representation
508
526
  def to_s
@@ -20,24 +20,34 @@ module Twilio
20
20
  class ChannelsSenderList < ListResource
21
21
 
22
22
  class MessagingV2ChannelsSenderProfile
23
- # @param [name]: [String] The name of the sender.
24
- # @param [about]: [String] The about text of the sender.
23
+ # @param [name]: [String] The name of the sender. Required for WhatsApp senders and must follow [Meta's display name guidelines](https://www.facebook.com/business/help/757569725593362).
24
+ # @param [about]: [String] The profile about text for the sender.
25
25
  # @param [address]: [String] The address of the sender.
26
26
  # @param [description]: [String] The description of the sender.
27
- # @param [emails]: [Hash] The emails of the sender.
28
27
  # @param [logo_url]: [String] The logo URL of the sender.
29
- # @param [vertical]: [String] The vertical of the sender. Allowed values are: - \"Automotive\" - \"Beauty, Spa and Salon\" - \"Clothing and Apparel\" - \"Education\" - \"Entertainment\" - \"Event Planning and Service\" - \"Finance and Banking\" - \"Food and Grocery\" - \"Public Service\" - \"Hotel and Lodging\" - \"Medical and Health\" - \"Non-profit\" - \"Professional Services\" - \"Shopping and Retail\" - \"Travel and Transportation\" - \"Restaurant\" - \"Other\"
28
+ # @param [banner_url]: [String] The banner URL of the sender.
29
+ # @param [privacy_url]: [String] The privacy URL of the sender. Must be a publicly accessible HTTP or HTTPS URI associated with the sender.
30
+ # @param [terms_of_service_url]: [String] The terms of service URL of the sender.
31
+ # @param [accent_color]: [String] The color theme of the sender. Must be in hex format and have at least a 4:5:1 contrast ratio against white.
32
+ # @param [vertical]: [String] The vertical of the sender. Allowed values are: - `Automotive` - `Beauty, Spa and Salon` - `Clothing and Apparel` - `Education` - `Entertainment` - `Event Planning and Service` - `Finance and Banking` - `Food and Grocery` - `Public Service` - `Hotel and Lodging` - `Medical and Health` - `Non-profit` - `Professional Services` - `Shopping and Retail` - `Travel and Transportation` - `Restaurant` - `Other`
30
33
  # @param [websites]: [Hash] The websites of the sender.
31
- attr_accessor :name, :about, :address, :description, :emails, :logo_url, :vertical, :websites
34
+ # @param [emails]: [Hash] The emails of the sender.
35
+ # @param [phone_numbers]: [Hash] The phone numbers of the sender.
36
+ attr_accessor :name, :about, :address, :description, :logo_url, :banner_url, :privacy_url, :terms_of_service_url, :accent_color, :vertical, :websites, :emails, :phone_numbers
32
37
  def initialize(payload)
33
38
  @name = payload["name"]
34
39
  @about = payload["about"]
35
40
  @address = payload["address"]
36
41
  @description = payload["description"]
37
- @emails = payload["emails"]
38
42
  @logo_url = payload["logo_url"]
43
+ @banner_url = payload["banner_url"]
44
+ @privacy_url = payload["privacy_url"]
45
+ @terms_of_service_url = payload["terms_of_service_url"]
46
+ @accent_color = payload["accent_color"]
39
47
  @vertical = payload["vertical"]
40
48
  @websites = payload["websites"]
49
+ @emails = payload["emails"]
50
+ @phone_numbers = payload["phone_numbers"]
41
51
  end
42
52
  def to_json(options = {})
43
53
  {
@@ -45,15 +55,20 @@ module Twilio
45
55
  "about": @about,
46
56
  "address": @address,
47
57
  "description": @description,
48
- "emails": @emails,
49
58
  "logo_url": @logo_url,
59
+ "banner_url": @banner_url,
60
+ "privacy_url": @privacy_url,
61
+ "terms_of_service_url": @terms_of_service_url,
62
+ "accent_color": @accent_color,
50
63
  "vertical": @vertical,
51
64
  "websites": @websites,
65
+ "emails": @emails,
66
+ "phone_numbers": @phone_numbers,
52
67
  }.to_json(options)
53
68
  end
54
69
  end
55
70
 
56
- class MessagingV2ChannelsSenderProfileResponseEmails
71
+ class MessagingV2ChannelsSenderProfileGenericResponseEmails
57
72
  # @param [email]: [String]
58
73
  # @param [label]: [String]
59
74
  attr_accessor :email, :label
@@ -69,7 +84,23 @@ module Twilio
69
84
  end
70
85
  end
71
86
 
72
- class MessagingV2ChannelsSenderProfileResponseWebsites
87
+ class MessagingV2ChannelsSenderProfileGenericResponsePhoneNumbers
88
+ # @param [phone_number]: [String]
89
+ # @param [label]: [String]
90
+ attr_accessor :phone_number, :label
91
+ def initialize(payload)
92
+ @phone_number = payload["phone_number"]
93
+ @label = payload["label"]
94
+ end
95
+ def to_json(options = {})
96
+ {
97
+ "phone_number": @phone_number,
98
+ "label": @label,
99
+ }.to_json(options)
100
+ end
101
+ end
102
+
103
+ class MessagingV2ChannelsSenderProfileGenericResponseWebsites
73
104
  # @param [website]: [String]
74
105
  # @param [label]: [String]
75
106
  attr_accessor :website, :label
@@ -86,7 +117,7 @@ module Twilio
86
117
  end
87
118
 
88
119
  class MessagingV2ChannelsSenderRequestsCreate
89
- # @param [sender_id]: [String] The ID of this Sender prefixed with the channel, e.g., `whatsapp:E.164`
120
+ # @param [sender_id]: [String] The ID of the sender in `whatsapp:<E.164_PHONE_NUMBER>` format.
90
121
  # @param [configuration]: [ChannelsSenderList.MessagingV2ChannelsSenderConfiguration]
91
122
  # @param [webhook]: [ChannelsSenderList.MessagingV2ChannelsSenderWebhook]
92
123
  # @param [profile]: [ChannelsSenderList.MessagingV2ChannelsSenderProfile]
@@ -126,26 +157,74 @@ module Twilio
126
157
  end
127
158
  end
128
159
 
160
+ class MessagingV2RcsCarrier
161
+ # @param [name]: [String] The name of the carrier. For example, `Verizon` or `AT&T` for US.
162
+ # @param [status]: [MessagingV2RcsCarrierStatus]
163
+ attr_accessor :name, :status
164
+ def initialize(payload)
165
+ @name = payload["name"]
166
+ @status = payload["status"]
167
+ end
168
+ def to_json(options = {})
169
+ {
170
+ "name": @name,
171
+ "status": @status,
172
+ }.to_json(options)
173
+ end
174
+ end
175
+
176
+ class MessagingV2RcsComplianceCountryResponse
177
+ # @param [country]: [String] The ISO 3166-1 alpha-2 country code.
178
+ # @param [registration_sid]: [String] The default compliance registration SID (e.g., from CR-Google) that applies to all countries unless overridden in the `countries` array.
179
+ # @param [status]: [MessagingV2RcsCountryStatus]
180
+ # @param [carriers]: [Array<MessagingV2RcsCarrier>]
181
+ attr_accessor :country, :registration_sid, :status, :carriers
182
+ def initialize(payload)
183
+ @country = payload["country"]
184
+ @registration_sid = payload["registration_sid"]
185
+ @status = payload["status"]
186
+ @carriers = payload["carriers"]
187
+ end
188
+ def to_json(options = {})
189
+ {
190
+ "country": @country,
191
+ "registration_sid": @registration_sid,
192
+ "status": @status,
193
+ "carriers": @carriers,
194
+ }.to_json(options)
195
+ end
196
+ end
197
+
129
198
 
130
199
  class MessagingV2ChannelsSenderProfile
131
- # @param [name]: [String] The name of the sender.
132
- # @param [about]: [String] The about text of the sender.
200
+ # @param [name]: [String] The name of the sender. Required for WhatsApp senders and must follow [Meta's display name guidelines](https://www.facebook.com/business/help/757569725593362).
201
+ # @param [about]: [String] The profile about text for the sender.
133
202
  # @param [address]: [String] The address of the sender.
134
203
  # @param [description]: [String] The description of the sender.
135
- # @param [emails]: [Hash] The emails of the sender.
136
204
  # @param [logo_url]: [String] The logo URL of the sender.
137
- # @param [vertical]: [String] The vertical of the sender. Allowed values are: - \"Automotive\" - \"Beauty, Spa and Salon\" - \"Clothing and Apparel\" - \"Education\" - \"Entertainment\" - \"Event Planning and Service\" - \"Finance and Banking\" - \"Food and Grocery\" - \"Public Service\" - \"Hotel and Lodging\" - \"Medical and Health\" - \"Non-profit\" - \"Professional Services\" - \"Shopping and Retail\" - \"Travel and Transportation\" - \"Restaurant\" - \"Other\"
205
+ # @param [banner_url]: [String] The banner URL of the sender.
206
+ # @param [privacy_url]: [String] The privacy URL of the sender. Must be a publicly accessible HTTP or HTTPS URI associated with the sender.
207
+ # @param [terms_of_service_url]: [String] The terms of service URL of the sender.
208
+ # @param [accent_color]: [String] The color theme of the sender. Must be in hex format and have at least a 4:5:1 contrast ratio against white.
209
+ # @param [vertical]: [String] The vertical of the sender. Allowed values are: - `Automotive` - `Beauty, Spa and Salon` - `Clothing and Apparel` - `Education` - `Entertainment` - `Event Planning and Service` - `Finance and Banking` - `Food and Grocery` - `Public Service` - `Hotel and Lodging` - `Medical and Health` - `Non-profit` - `Professional Services` - `Shopping and Retail` - `Travel and Transportation` - `Restaurant` - `Other`
138
210
  # @param [websites]: [Hash] The websites of the sender.
139
- attr_accessor :name, :about, :address, :description, :emails, :logo_url, :vertical, :websites
211
+ # @param [emails]: [Hash] The emails of the sender.
212
+ # @param [phone_numbers]: [Hash] The phone numbers of the sender.
213
+ attr_accessor :name, :about, :address, :description, :logo_url, :banner_url, :privacy_url, :terms_of_service_url, :accent_color, :vertical, :websites, :emails, :phone_numbers
140
214
  def initialize(payload)
141
215
  @name = payload["name"]
142
216
  @about = payload["about"]
143
217
  @address = payload["address"]
144
218
  @description = payload["description"]
145
- @emails = payload["emails"]
146
219
  @logo_url = payload["logo_url"]
220
+ @banner_url = payload["banner_url"]
221
+ @privacy_url = payload["privacy_url"]
222
+ @terms_of_service_url = payload["terms_of_service_url"]
223
+ @accent_color = payload["accent_color"]
147
224
  @vertical = payload["vertical"]
148
225
  @websites = payload["websites"]
226
+ @emails = payload["emails"]
227
+ @phone_numbers = payload["phone_numbers"]
149
228
  end
150
229
  def to_json(options = {})
151
230
  {
@@ -153,15 +232,20 @@ module Twilio
153
232
  "about": @about,
154
233
  "address": @address,
155
234
  "description": @description,
156
- "emails": @emails,
157
235
  "logo_url": @logo_url,
236
+ "banner_url": @banner_url,
237
+ "privacy_url": @privacy_url,
238
+ "terms_of_service_url": @terms_of_service_url,
239
+ "accent_color": @accent_color,
158
240
  "vertical": @vertical,
159
241
  "websites": @websites,
242
+ "emails": @emails,
243
+ "phone_numbers": @phone_numbers,
160
244
  }.to_json(options)
161
245
  end
162
246
  end
163
247
 
164
- class MessagingV2ChannelsSenderProfileResponseEmails
248
+ class MessagingV2ChannelsSenderProfileGenericResponseEmails
165
249
  # @param [email]: [String]
166
250
  # @param [label]: [String]
167
251
  attr_accessor :email, :label
@@ -177,7 +261,23 @@ module Twilio
177
261
  end
178
262
  end
179
263
 
180
- class MessagingV2ChannelsSenderProfileResponseWebsites
264
+ class MessagingV2ChannelsSenderProfileGenericResponsePhoneNumbers
265
+ # @param [phone_number]: [String]
266
+ # @param [label]: [String]
267
+ attr_accessor :phone_number, :label
268
+ def initialize(payload)
269
+ @phone_number = payload["phone_number"]
270
+ @label = payload["label"]
271
+ end
272
+ def to_json(options = {})
273
+ {
274
+ "phone_number": @phone_number,
275
+ "label": @label,
276
+ }.to_json(options)
277
+ end
278
+ end
279
+
280
+ class MessagingV2ChannelsSenderProfileGenericResponseWebsites
181
281
  # @param [website]: [String]
182
282
  # @param [label]: [String]
183
283
  attr_accessor :website, :label
@@ -194,7 +294,7 @@ module Twilio
194
294
  end
195
295
 
196
296
  class MessagingV2ChannelsSenderRequestsCreate
197
- # @param [sender_id]: [String] The ID of this Sender prefixed with the channel, e.g., `whatsapp:E.164`
297
+ # @param [sender_id]: [String] The ID of the sender in `whatsapp:<E.164_PHONE_NUMBER>` format.
198
298
  # @param [configuration]: [ChannelsSenderList.MessagingV2ChannelsSenderConfiguration]
199
299
  # @param [webhook]: [ChannelsSenderList.MessagingV2ChannelsSenderWebhook]
200
300
  # @param [profile]: [ChannelsSenderList.MessagingV2ChannelsSenderProfile]
@@ -234,6 +334,44 @@ module Twilio
234
334
  end
235
335
  end
236
336
 
337
+ class MessagingV2RcsCarrier
338
+ # @param [name]: [String] The name of the carrier. For example, `Verizon` or `AT&T` for US.
339
+ # @param [status]: [MessagingV2RcsCarrierStatus]
340
+ attr_accessor :name, :status
341
+ def initialize(payload)
342
+ @name = payload["name"]
343
+ @status = payload["status"]
344
+ end
345
+ def to_json(options = {})
346
+ {
347
+ "name": @name,
348
+ "status": @status,
349
+ }.to_json(options)
350
+ end
351
+ end
352
+
353
+ class MessagingV2RcsComplianceCountryResponse
354
+ # @param [country]: [String] The ISO 3166-1 alpha-2 country code.
355
+ # @param [registration_sid]: [String] The default compliance registration SID (e.g., from CR-Google) that applies to all countries unless overridden in the `countries` array.
356
+ # @param [status]: [MessagingV2RcsCountryStatus]
357
+ # @param [carriers]: [Array<MessagingV2RcsCarrier>]
358
+ attr_accessor :country, :registration_sid, :status, :carriers
359
+ def initialize(payload)
360
+ @country = payload["country"]
361
+ @registration_sid = payload["registration_sid"]
362
+ @status = payload["status"]
363
+ @carriers = payload["carriers"]
364
+ end
365
+ def to_json(options = {})
366
+ {
367
+ "country": @country,
368
+ "registration_sid": @registration_sid,
369
+ "status": @status,
370
+ "carriers": @carriers,
371
+ }.to_json(options)
372
+ end
373
+ end
374
+
237
375
 
238
376
  ##
239
377
  # Initialize the ChannelsSenderList
@@ -373,7 +511,7 @@ module Twilio
373
511
  ##
374
512
  # Initialize the ChannelsSenderContext
375
513
  # @param [Version] version Version that contains the resource
376
- # @param [String] sid A 34 character string that uniquely identifies this Sender.
514
+ # @param [String] sid The SID of the sender.
377
515
  # @return [ChannelsSenderContext] ChannelsSenderContext
378
516
  def initialize(version, sid)
379
517
  super(version)
@@ -503,6 +641,7 @@ module Twilio
503
641
  'profile' => payload['profile'],
504
642
  'properties' => payload['properties'],
505
643
  'offline_reasons' => payload['offline_reasons'],
644
+ 'compliance' => payload['compliance'],
506
645
  'url' => payload['url'],
507
646
  }
508
647
 
@@ -523,7 +662,7 @@ module Twilio
523
662
  end
524
663
 
525
664
  ##
526
- # @return [String] A 34 character string that uniquely identifies this Sender.
665
+ # @return [String] The SID of the sender.
527
666
  def sid
528
667
  @properties['sid']
529
668
  end
@@ -535,7 +674,7 @@ module Twilio
535
674
  end
536
675
 
537
676
  ##
538
- # @return [String] The ID of this Sender prefixed with the channel, e.g., `whatsapp:E.164`
677
+ # @return [String] The ID of the sender in `whatsapp:<E.164_PHONE_NUMBER>` format.
539
678
  def sender_id
540
679
  @properties['sender_id']
541
680
  end
@@ -553,7 +692,7 @@ module Twilio
553
692
  end
554
693
 
555
694
  ##
556
- # @return [MessagingV2ChannelsSenderProfileResponse]
695
+ # @return [MessagingV2ChannelsSenderProfileGenericResponse]
557
696
  def profile
558
697
  @properties['profile']
559
698
  end
@@ -565,13 +704,19 @@ module Twilio
565
704
  end
566
705
 
567
706
  ##
568
- # @return [Array<MessagingV2ChannelsSenderOfflineReasonsItems>] Reasons why the sender is offline., e.g., [{\"code\": \"21211400\", \"message\": \"Whatsapp business account is banned by provider {provider_name} | Credit line is assigned to another BSP\", \"more_info\": \"https://www.twilio.com/docs/errors/21211400\"}]
707
+ # @return [Array<MessagingV2ChannelsSenderOfflineReasonsItems>] The reasons why the sender is offline.
569
708
  def offline_reasons
570
709
  @properties['offline_reasons']
571
710
  end
572
711
 
573
712
  ##
574
- # @return [String] The URL of this resource, relative to `https://messaging.twilio.com`.
713
+ # @return [MessagingV2RcsComplianceResponse]
714
+ def compliance
715
+ @properties['compliance']
716
+ end
717
+
718
+ ##
719
+ # @return [String] The URL of the resource.
575
720
  def url
576
721
  @properties['url']
577
722
  end
@@ -25,7 +25,7 @@ module Twilio
25
25
  end
26
26
 
27
27
  ##
28
- # @param [String] sid A 34 character string that uniquely identifies this Sender.
28
+ # @param [String] sid The SID of the sender.
29
29
  # @return [Twilio::REST::Messaging::V2::ChannelsSenderContext] if sid was passed.
30
30
  # @return [Twilio::REST::Messaging::V2::ChannelsSenderList]
31
31
  def channels_senders(sid=:unset)
@@ -175,6 +175,9 @@ module Twilio
175
175
  'port_in_request_status' => payload['port_in_request_status'],
176
176
  'losing_carrier_information' => payload['losing_carrier_information'],
177
177
  'phone_numbers' => payload['phone_numbers'],
178
+ 'bundle_sid' => payload['bundle_sid'],
179
+ 'portability_advance_carrier' => payload['portability_advance_carrier'],
180
+ 'auto_cancel_approval_numbers' => payload['auto_cancel_approval_numbers'],
178
181
  'documents' => payload['documents'],
179
182
  'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
180
183
  }
@@ -255,6 +258,24 @@ module Twilio
255
258
  @properties['phone_numbers']
256
259
  end
257
260
 
261
+ ##
262
+ # @return [String] The bundle sid is an optional identifier to reference a group of regulatory documents for a port request.
263
+ def bundle_sid
264
+ @properties['bundle_sid']
265
+ end
266
+
267
+ ##
268
+ # @return [String] A field only required for Japan port in requests. It is a unique identifier for the donor carrier service the line is being ported from.
269
+ def portability_advance_carrier
270
+ @properties['portability_advance_carrier']
271
+ end
272
+
273
+ ##
274
+ # @return [String] Japan specific field, indicates the number of phone numbers to automatically approve for cancellation.
275
+ def auto_cancel_approval_numbers
276
+ @properties['auto_cancel_approval_numbers']
277
+ end
278
+
258
279
  ##
259
280
  # @return [Array<String>] List of document SIDs for all phone numbers included in the port in request. At least one document SID referring to a document of the type Utility Bill is required.
260
281
  def documents