twilio-ruby 7.10.6 → 7.11.1

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 (105) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/test-and-deploy.yml +43 -67
  3. data/.gitignore +0 -1
  4. data/CHANGES.md +57 -0
  5. data/Gemfile +2 -0
  6. data/Gemfile.lock +154 -0
  7. data/README.md +3 -3
  8. data/Rakefile +1 -1
  9. data/lib/twilio-ruby/rest/accounts/v1/auth_token_promotion.rb +25 -6
  10. data/lib/twilio-ruby/rest/accounts/v1/secondary_auth_token.rb +48 -12
  11. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +6 -0
  12. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +56 -2
  13. data/lib/twilio-ruby/rest/client.rb +0 -5
  14. data/lib/twilio-ruby/rest/content/v1/content/approval_create.rb +11 -1
  15. data/lib/twilio-ruby/rest/conversations/v1/conversation/message.rb +10 -10
  16. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message.rb +10 -10
  17. data/lib/twilio-ruby/rest/conversations/v2/action.rb +507 -0
  18. data/lib/twilio-ruby/rest/conversations/v2/communication.rb +43 -21
  19. data/lib/twilio-ruby/rest/conversations/v2/configuration.rb +59 -21
  20. data/lib/twilio-ruby/rest/conversations/v2/conversation.rb +28 -28
  21. data/lib/twilio-ruby/rest/conversations/v2/operation.rb +10 -10
  22. data/lib/twilio-ruby/rest/conversations/v2/participant.rb +58 -58
  23. data/lib/twilio-ruby/rest/conversations/v2.rb +61 -45
  24. data/lib/twilio-ruby/rest/iam/v1/new_api_key.rb +2 -2
  25. data/lib/twilio-ruby/rest/iam/v1/o_auth_app.rb +15 -2
  26. data/lib/twilio-ruby/rest/iam_base.rb +6 -1
  27. data/lib/twilio-ruby/rest/insights/v1/call/call_summary.rb +7 -0
  28. data/lib/twilio-ruby/rest/insights/v1/call/event.rb +7 -0
  29. data/lib/twilio-ruby/rest/insights/v1/call_summaries.rb +7 -0
  30. data/lib/twilio-ruby/rest/insights/v3/metadata.rb +1 -1
  31. data/lib/twilio-ruby/rest/insights/v3/query.rb +1 -1
  32. data/lib/twilio-ruby/rest/insights/v3.rb +1 -1
  33. data/lib/twilio-ruby/rest/intelligence/v3/conversation.rb +8 -8
  34. data/lib/twilio-ruby/rest/intelligence/v3/rule_execution.rb +502 -0
  35. data/lib/twilio-ruby/rest/intelligence/v3.rb +6 -0
  36. data/lib/twilio-ruby/rest/knowledge/v2/chunk.rb +28 -0
  37. data/lib/twilio-ruby/rest/knowledge/v2/knowledge.rb +38 -0
  38. data/lib/twilio-ruby/rest/knowledge/v2/search.rb +8 -117
  39. data/lib/twilio-ruby/rest/knowledge/v2.rb +1 -2
  40. data/lib/twilio-ruby/rest/memory/v1/bulk.rb +9 -118
  41. data/lib/twilio-ruby/rest/memory/v1/conversation_summary.rb +13 -5
  42. data/lib/twilio-ruby/rest/memory/v1/data_mapping.rb +6 -12
  43. data/lib/twilio-ruby/rest/memory/v1/identifier.rb +1 -1
  44. data/lib/twilio-ruby/rest/memory/v1/identity_resolution_setting.rb +11 -132
  45. data/lib/twilio-ruby/rest/memory/v1/import.rb +28 -5
  46. data/lib/twilio-ruby/rest/memory/v1/lookup.rb +1 -1
  47. data/lib/twilio-ruby/rest/memory/v1/observation.rb +70 -18
  48. data/lib/twilio-ruby/rest/memory/v1/operation.rb +1 -1
  49. data/lib/twilio-ruby/rest/memory/v1/profile.rb +87 -2
  50. data/lib/twilio-ruby/rest/memory/v1/recall.rb +1 -1
  51. data/lib/twilio-ruby/rest/memory/v1/revision.rb +1 -1
  52. data/lib/twilio-ruby/rest/memory/v1/store.rb +46 -1
  53. data/lib/twilio-ruby/rest/memory/v1/trait.rb +1 -1
  54. data/lib/twilio-ruby/rest/memory/v1/trait_group.rb +56 -6
  55. data/lib/twilio-ruby/rest/memory/v1.rb +3 -46
  56. data/lib/twilio-ruby/rest/messaging/v1/brand_registration.rb +0 -18
  57. data/lib/twilio-ruby/rest/messaging/v2/channels_sender.rb +23 -4
  58. data/lib/twilio-ruby/rest/messaging/v3/typing_indicator.rb +4 -4
  59. data/lib/twilio-ruby/rest/numbers/v1/sms_verification.rb +231 -0
  60. data/lib/twilio-ruby/rest/numbers/v1/sms_verification_check.rb +238 -0
  61. data/lib/twilio-ruby/rest/numbers/v1/voice_verification.rb +245 -0
  62. data/lib/twilio-ruby/rest/numbers/v1/voice_verification_check.rb +224 -0
  63. data/lib/twilio-ruby/rest/numbers/v1.rb +24 -0
  64. data/lib/twilio-ruby/rest/{assistants/v1/session.rb → numbers/v2/caller_id.rb} +141 -127
  65. data/lib/twilio-ruby/rest/numbers/v2.rb +16 -0
  66. data/lib/twilio-ruby/rest/oauth/v2/authorize.rb +14 -2
  67. data/lib/twilio-ruby/rest/oauth/v2/oauth_authorization_server.rb +259 -0
  68. data/lib/twilio-ruby/rest/oauth/v2/token.rb +8 -2
  69. data/lib/twilio-ruby/rest/preview_iam/versionless/organization.rb +0 -19
  70. data/lib/twilio-ruby/rest/routes/v3/phone_number.rb +465 -0
  71. data/lib/twilio-ruby/rest/routes/v3.rb +50 -0
  72. data/lib/twilio-ruby/rest/routes_base.rb +6 -1
  73. data/lib/twilio-ruby/rest/trusthub/v1/a2p_brand_registration.rb +330 -0
  74. data/lib/twilio-ruby/rest/trusthub/v1/a2p_brand_registration_embedded_session.rb +233 -0
  75. data/lib/twilio-ruby/rest/trusthub/v1/a2p_campaign_registration.rb +321 -0
  76. data/lib/twilio-ruby/rest/trusthub/v1/a2p_campaign_registration_embedded_session.rb +233 -0
  77. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles_provisional_copy.rb +445 -0
  78. data/lib/twilio-ruby/rest/trusthub/v1/trust_products_provisional_copy.rb +445 -0
  79. data/lib/twilio-ruby/rest/trusthub/v1.rb +74 -0
  80. data/lib/twilio-ruby/rest/voice/v2/account_default_configuration.rb +556 -0
  81. data/lib/twilio-ruby/rest/voice/v2/configuration/default.rb +356 -0
  82. data/lib/twilio-ruby/rest/voice/v2/configuration.rb +412 -0
  83. data/lib/twilio-ruby/rest/voice/v2/recording.rb +616 -0
  84. data/lib/twilio-ruby/rest/voice/v2/transcription.rb +591 -0
  85. data/lib/twilio-ruby/rest/voice/v2/type.rb +518 -0
  86. data/lib/twilio-ruby/rest/voice/v2.rb +141 -0
  87. data/lib/twilio-ruby/rest/voice_base.rb +5 -0
  88. data/lib/twilio-ruby/twiml/voice_response.rb +6 -68
  89. data/lib/twilio-ruby/version.rb +1 -1
  90. data/twilio-ruby.gemspec +1 -1
  91. metadata +34 -21
  92. data/lib/twilio-ruby/rest/assistants/v1/assistant/assistants_knowledge.rb +0 -558
  93. data/lib/twilio-ruby/rest/assistants/v1/assistant/assistants_tool.rb +0 -558
  94. data/lib/twilio-ruby/rest/assistants/v1/assistant/feedback.rb +0 -431
  95. data/lib/twilio-ruby/rest/assistants/v1/assistant/message.rb +0 -296
  96. data/lib/twilio-ruby/rest/assistants/v1/assistant.rb +0 -927
  97. data/lib/twilio-ruby/rest/assistants/v1/knowledge/chunk.rb +0 -325
  98. data/lib/twilio-ruby/rest/assistants/v1/knowledge/knowledge_status.rb +0 -349
  99. data/lib/twilio-ruby/rest/assistants/v1/knowledge.rb +0 -871
  100. data/lib/twilio-ruby/rest/assistants/v1/policy.rb +0 -364
  101. data/lib/twilio-ruby/rest/assistants/v1/session/message.rb +0 -360
  102. data/lib/twilio-ruby/rest/assistants/v1/tool.rb +0 -847
  103. data/lib/twilio-ruby/rest/assistants/v1.rb +0 -104
  104. data/lib/twilio-ruby/rest/assistants.rb +0 -6
  105. data/lib/twilio-ruby/rest/assistants_base.rb +0 -38
@@ -5,7 +5,7 @@
5
5
  # | |_|_| | |___ | |__| |__| | | | |__] |___ | \| |___ | \ | | | |__| | \
6
6
  #
7
7
  # Twilio Memory API
8
- # APIs for managing memory stores, profiles, events, and conversational intelligence capabilities.
8
+ # APIs for managing memory stores, profiles, and conversational intelligence capabilities.
9
9
  #
10
10
  # NOTE: This class is auto generated by OpenAPI Generator.
11
11
  # https://openapi-generator.tech
@@ -329,6 +329,64 @@ module Twilio
329
329
  ProfileInstanceMetadata.new(@version, profile_instance, response.headers, response.status_code)
330
330
  end
331
331
 
332
+ ##
333
+ # Fetch the ProfileInstance
334
+ # @param [String] trait_groups Comma separated list of trait group names to include.
335
+ # @return [ProfileInstance] Fetched ProfileInstance
336
+ def fetch(
337
+ trait_groups: :unset
338
+ )
339
+
340
+ params = Twilio::Values.of({
341
+ 'traitGroups' => trait_groups,
342
+ })
343
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
344
+
345
+
346
+
347
+
348
+
349
+ payload = @version.fetch('GET', @uri, params: params, headers: headers)
350
+ ProfileInstance.new(
351
+ @version,
352
+ payload,
353
+ store_id: @solution[:store_id],
354
+ profile_id: @solution[:profile_id],
355
+ )
356
+ end
357
+
358
+ ##
359
+ # Fetch the ProfileInstanceMetadata
360
+ # @param [String] trait_groups Comma separated list of trait group names to include.
361
+ # @return [ProfileInstance] Fetched ProfileInstance
362
+ def fetch_with_metadata(
363
+ trait_groups: :unset
364
+ )
365
+
366
+ params = Twilio::Values.of({
367
+ 'traitGroups' => trait_groups,
368
+ })
369
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
370
+
371
+
372
+
373
+
374
+
375
+ response = @version.fetch_with_metadata('GET', @uri, params: params, headers: headers)
376
+ profile_instance = ProfileInstance.new(
377
+ @version,
378
+ response.body,
379
+ store_id: @solution[:store_id],
380
+ profile_id: @solution[:profile_id],
381
+ )
382
+ ProfileInstanceMetadata.new(
383
+ @version,
384
+ profile_instance,
385
+ response.headers,
386
+ response.status_code
387
+ )
388
+ end
389
+
332
390
  ##
333
391
  # Patch the ProfileInstance
334
392
  # @param [ProfilePatch] profile_patch
@@ -551,6 +609,8 @@ module Twilio
551
609
  @properties = {
552
610
  'id' => payload['id'],
553
611
  'message' => payload['message'],
612
+ 'created_at' => Twilio.deserialize_iso8601_datetime(payload['created_at']),
613
+ 'traits' => payload['traits'],
554
614
  'profiles' => payload['profiles'],
555
615
  'meta' => payload['meta'],
556
616
  }
@@ -583,6 +643,18 @@ module Twilio
583
643
  @properties['message']
584
644
  end
585
645
 
646
+ ##
647
+ # @return [Time] The time the profile was created.
648
+ def created_at
649
+ @properties['created_at']
650
+ end
651
+
652
+ ##
653
+ # @return [Hash<String, Hash<String, Object>>] Multiple trait groups.
654
+ def traits
655
+ @properties['traits']
656
+ end
657
+
586
658
  ##
587
659
  # @return [Array<String>]
588
660
  def profiles
@@ -590,7 +662,7 @@ module Twilio
590
662
  end
591
663
 
592
664
  ##
593
- # @return [ProfilesMeta]
665
+ # @return [IdentityProfilesMeta]
594
666
  def meta
595
667
  @properties['meta']
596
668
  end
@@ -603,6 +675,19 @@ module Twilio
603
675
  context.delete
604
676
  end
605
677
 
678
+ ##
679
+ # Fetch the ProfileInstance
680
+ # @param [String] trait_groups Comma separated list of trait group names to include.
681
+ # @return [ProfileInstance] Fetched ProfileInstance
682
+ def fetch(
683
+ trait_groups: :unset
684
+ )
685
+
686
+ context.fetch(
687
+ trait_groups: trait_groups,
688
+ )
689
+ end
690
+
606
691
  ##
607
692
  # Patch the ProfileInstance
608
693
  # @param [ProfilePatch] profile_patch
@@ -5,7 +5,7 @@
5
5
  # | |_|_| | |___ | |__| |__| | | | |__] |___ | \| |___ | \ | | | |__| | \
6
6
  #
7
7
  # Twilio Memory API
8
- # APIs for managing memory stores, profiles, events, and conversational intelligence capabilities.
8
+ # APIs for managing memory stores, profiles, and conversational intelligence capabilities.
9
9
  #
10
10
  # NOTE: This class is auto generated by OpenAPI Generator.
11
11
  # https://openapi-generator.tech
@@ -5,7 +5,7 @@
5
5
  # | |_|_| | |___ | |__| |__| | | | |__] |___ | \| |___ | \ | | | |__| | \
6
6
  #
7
7
  # Twilio Memory API
8
- # APIs for managing memory stores, profiles, events, and conversational intelligence capabilities.
8
+ # APIs for managing memory stores, profiles, and conversational intelligence capabilities.
9
9
  #
10
10
  # NOTE: This class is auto generated by OpenAPI Generator.
11
11
  # https://openapi-generator.tech
@@ -5,7 +5,7 @@
5
5
  # | |_|_| | |___ | |__| |__| | | | |__] |___ | \| |___ | \ | | | |__| | \
6
6
  #
7
7
  # Twilio Memory API
8
- # APIs for managing memory stores, profiles, events, and conversational intelligence capabilities.
8
+ # APIs for managing memory stores, profiles, and conversational intelligence capabilities.
9
9
  #
10
10
  # NOTE: This class is auto generated by OpenAPI Generator.
11
11
  # https://openapi-generator.tech
@@ -300,6 +300,43 @@ module Twilio
300
300
 
301
301
 
302
302
  end
303
+ ##
304
+ # Delete the StoreInstance
305
+ # @return [Boolean] True if delete succeeds, false otherwise
306
+ def delete
307
+
308
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
309
+
310
+
311
+
312
+ response = @version.delete_with_metadata('DELETE', @uri, headers: headers)
313
+ StoreInstance.new(
314
+ @version,
315
+ response.body,
316
+ store_id: @solution[:store_id],
317
+ )
318
+
319
+ end
320
+
321
+ ##
322
+ # Delete the StoreInstanceMetadata
323
+ # @return [Boolean] True if delete succeeds, false otherwise
324
+ def delete_with_metadata
325
+
326
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
327
+
328
+
329
+
330
+ response = @version.delete_with_metadata('DELETE', @uri, headers: headers)
331
+ store_instance = StoreInstance.new(
332
+ @version,
333
+ response.body,
334
+ account_sid: @solution[:account_sid],
335
+ sid: @solution[:sid],
336
+ )
337
+ StoreInstanceMetadata.new(@version, store_instance, response.headers, response.status_code)
338
+ end
339
+
303
340
  ##
304
341
  # Fetch the StoreInstance
305
342
  # @return [StoreInstance] Fetched StoreInstance
@@ -656,6 +693,14 @@ module Twilio
656
693
  @properties['meta']
657
694
  end
658
695
 
696
+ ##
697
+ # Delete the StoreInstance
698
+ # @return [Boolean] True if delete succeeds, false otherwise
699
+ def delete
700
+
701
+ context.delete
702
+ end
703
+
659
704
  ##
660
705
  # Fetch the StoreInstance
661
706
  # @return [StoreInstance] Fetched StoreInstance
@@ -5,7 +5,7 @@
5
5
  # | |_|_| | |___ | |__| |__| | | | |__] |___ | \| |___ | \ | | | |__| | \
6
6
  #
7
7
  # Twilio Memory API
8
- # APIs for managing memory stores, profiles, events, and conversational intelligence capabilities.
8
+ # APIs for managing memory stores, profiles, and conversational intelligence capabilities.
9
9
  #
10
10
  # NOTE: This class is auto generated by OpenAPI Generator.
11
11
  # https://openapi-generator.tech
@@ -5,7 +5,7 @@
5
5
  # | |_|_| | |___ | |__| |__| | | | |__] |___ | \| |___ | \ | | | |__| | \
6
6
  #
7
7
  # Twilio Memory API
8
- # APIs for managing memory stores, profiles, events, and conversational intelligence capabilities.
8
+ # APIs for managing memory stores, profiles, and conversational intelligence capabilities.
9
9
  #
10
10
  # NOTE: This class is auto generated by OpenAPI Generator.
11
11
  # https://openapi-generator.tech
@@ -38,17 +38,20 @@ module Twilio
38
38
  class TraitDefinition
39
39
  # @param [data_type]: [String] Data type of the Trait, such as STRING, NUMBER, BOOLEAN, ARRAY. For DELETE operations in PATCH requests, set this to an empty string (\"\") to mark the trait for deletion.
40
40
  # @param [description]: [String] Description of the Trait, providing additional context or information.
41
+ # @param [validation_rule]: [ValidationRule]
41
42
  # @param [id_type_promotion]: [String] The name of the identifier type to promote the trait value to, such as ''email'', ''phone'', ''user_id'', etc. This allows the trait to be mapped to an identifier in Identity Resolution. The identifier type should be configured in the Identity Resolution Settings.
42
- attr_accessor :data_type, :description, :id_type_promotion
43
+ attr_accessor :data_type, :description, :validation_rule, :id_type_promotion
43
44
  def initialize(payload)
44
45
  @data_type = payload["data_type"]
45
46
  @description = payload["description"]
47
+ @validation_rule = payload["validation_rule"]
46
48
  @id_type_promotion = payload["id_type_promotion"]
47
49
  end
48
50
  def to_json(options = {})
49
51
  {
50
52
  "dataType": @data_type,
51
53
  "description": @description,
54
+ "validationRule": @validation_rule,
52
55
  "idTypePromotion": @id_type_promotion,
53
56
  }.to_json(options)
54
57
  end
@@ -57,7 +60,7 @@ module Twilio
57
60
  class TraitGroupRequest
58
61
  # @param [display_name]: [String] Unique name of the Trait Group
59
62
  # @param [description]: [String] description of the Trait Group
60
- # @param [traits]: [Hash<String, TraitGroupCoreTraitsValue>] Map of traits belonging to this Trait Group, keyed by trait name.
63
+ # @param [traits]: [Hash<String, TraitGroupRequestTraits>] Map of traits belonging to this Trait Group, keyed by trait name.
61
64
  attr_accessor :display_name, :description, :traits
62
65
  def initialize(payload)
63
66
  @display_name = payload["display_name"]
@@ -73,6 +76,28 @@ module Twilio
73
76
  end
74
77
  end
75
78
 
79
+ class TraitGroupRequestTraits
80
+ # @param [data_type]: [String] Data type of the Trait, such as STRING, NUMBER, BOOLEAN, ARRAY. For DELETE operations in PATCH requests, set this to an empty string (\"\") to mark the trait for deletion.
81
+ # @param [description]: [String] Description of the Trait, providing additional context or information.
82
+ # @param [validation_rule]: [ValidationRule]
83
+ # @param [id_type_promotion]: [String] The name of the identifier type to promote the trait value to, such as ''email'', ''phone'', ''user_id'', etc. This allows the trait to be mapped to an identifier in Identity Resolution. The identifier type should be configured in the Identity Resolution Settings.
84
+ attr_accessor :data_type, :description, :validation_rule, :id_type_promotion
85
+ def initialize(payload)
86
+ @data_type = payload["data_type"]
87
+ @description = payload["description"]
88
+ @validation_rule = payload["validation_rule"]
89
+ @id_type_promotion = payload["id_type_promotion"]
90
+ end
91
+ def to_json(options = {})
92
+ {
93
+ "dataType": @data_type,
94
+ "description": @description,
95
+ "validationRule": @validation_rule,
96
+ "idTypePromotion": @id_type_promotion,
97
+ }.to_json(options)
98
+ end
99
+ end
100
+
76
101
  class ValidationRule
77
102
  # @param [pattern]: [String] Regex pattern (max 1000 chars)
78
103
  # @param [min_length]: [Integer] Minimum string length
@@ -127,17 +152,20 @@ module Twilio
127
152
  class TraitDefinition
128
153
  # @param [data_type]: [String] Data type of the Trait, such as STRING, NUMBER, BOOLEAN, ARRAY. For DELETE operations in PATCH requests, set this to an empty string (\"\") to mark the trait for deletion.
129
154
  # @param [description]: [String] Description of the Trait, providing additional context or information.
155
+ # @param [validation_rule]: [ValidationRule]
130
156
  # @param [id_type_promotion]: [String] The name of the identifier type to promote the trait value to, such as ''email'', ''phone'', ''user_id'', etc. This allows the trait to be mapped to an identifier in Identity Resolution. The identifier type should be configured in the Identity Resolution Settings.
131
- attr_accessor :data_type, :description, :id_type_promotion
157
+ attr_accessor :data_type, :description, :validation_rule, :id_type_promotion
132
158
  def initialize(payload)
133
159
  @data_type = payload["data_type"]
134
160
  @description = payload["description"]
161
+ @validation_rule = payload["validation_rule"]
135
162
  @id_type_promotion = payload["id_type_promotion"]
136
163
  end
137
164
  def to_json(options = {})
138
165
  {
139
166
  "dataType": @data_type,
140
167
  "description": @description,
168
+ "validationRule": @validation_rule,
141
169
  "idTypePromotion": @id_type_promotion,
142
170
  }.to_json(options)
143
171
  end
@@ -146,7 +174,7 @@ module Twilio
146
174
  class TraitGroupRequest
147
175
  # @param [display_name]: [String] Unique name of the Trait Group
148
176
  # @param [description]: [String] description of the Trait Group
149
- # @param [traits]: [Hash<String, TraitGroupCoreTraitsValue>] Map of traits belonging to this Trait Group, keyed by trait name.
177
+ # @param [traits]: [Hash<String, TraitGroupRequestTraits>] Map of traits belonging to this Trait Group, keyed by trait name.
150
178
  attr_accessor :display_name, :description, :traits
151
179
  def initialize(payload)
152
180
  @display_name = payload["display_name"]
@@ -162,6 +190,28 @@ module Twilio
162
190
  end
163
191
  end
164
192
 
193
+ class TraitGroupRequestTraits
194
+ # @param [data_type]: [String] Data type of the Trait, such as STRING, NUMBER, BOOLEAN, ARRAY. For DELETE operations in PATCH requests, set this to an empty string (\"\") to mark the trait for deletion.
195
+ # @param [description]: [String] Description of the Trait, providing additional context or information.
196
+ # @param [validation_rule]: [ValidationRule]
197
+ # @param [id_type_promotion]: [String] The name of the identifier type to promote the trait value to, such as ''email'', ''phone'', ''user_id'', etc. This allows the trait to be mapped to an identifier in Identity Resolution. The identifier type should be configured in the Identity Resolution Settings.
198
+ attr_accessor :data_type, :description, :validation_rule, :id_type_promotion
199
+ def initialize(payload)
200
+ @data_type = payload["data_type"]
201
+ @description = payload["description"]
202
+ @validation_rule = payload["validation_rule"]
203
+ @id_type_promotion = payload["id_type_promotion"]
204
+ end
205
+ def to_json(options = {})
206
+ {
207
+ "dataType": @data_type,
208
+ "description": @description,
209
+ "validationRule": @validation_rule,
210
+ "idTypePromotion": @id_type_promotion,
211
+ }.to_json(options)
212
+ end
213
+ end
214
+
165
215
  class ValidationRule
166
216
  # @param [pattern]: [String] Regex pattern (max 1000 chars)
167
217
  # @param [min_length]: [Integer] Minimum string length
@@ -826,7 +876,7 @@ module Twilio
826
876
  end
827
877
 
828
878
  ##
829
- # @return [Hash<String, TraitGroupCoreTraitsValue>] Map of traits that are part of this Trait Group, where the key is the trait name and the value is the trait's definition.
879
+ # @return [Hash<String, TraitGroupCoreTraits>] Map of traits that are part of this Trait Group, where the key is the trait name and the value is the trait's definition.
830
880
  def traits
831
881
  @properties['traits']
832
882
  end
@@ -5,7 +5,7 @@
5
5
  # | |_|_| | |___ | |__| |__| | | | |__] |___ | \| |___ | \ | | | |__| | \
6
6
  #
7
7
  # Twilio Memory API
8
- # APIs for managing memory stores, profiles, events, and conversational intelligence capabilities.
8
+ # APIs for managing memory stores, profiles, and conversational intelligence capabilities.
9
9
  #
10
10
  # NOTE: This class is auto generated by OpenAPI Generator.
11
11
  # https://openapi-generator.tech
@@ -24,7 +24,6 @@ module Twilio
24
24
  @bulk = nil
25
25
  @conversation_summaries = nil
26
26
  @data_mappings = nil
27
- @events = nil
28
27
  @identifiers = nil
29
28
  @identity_resolution_settings = nil
30
29
  @imports = nil
@@ -41,7 +40,6 @@ module Twilio
41
40
 
42
41
  ##
43
42
  # @param [String] store_id A unique Memory Store ID using Twilio Type ID (TTID) format
44
- # @return [Twilio::REST::Memory::V1::BulkContext] if storeId was passed.
45
43
  # @return [Twilio::REST::Memory::V1::BulkList]
46
44
  def bulk(store_id=:unset)
47
45
  if store_id.nil?
@@ -51,7 +49,7 @@ module Twilio
51
49
  if store_id == :unset
52
50
  @bulk ||= BulkList.new self
53
51
  else
54
- BulkContext.new(self, store_id)
52
+ BulkList.new(self, store_id: store_id)
55
53
  end
56
54
  end
57
55
  ##
@@ -101,46 +99,6 @@ module Twilio
101
99
  end
102
100
  end
103
101
  ##
104
- # @param [String] store_id The storeId identifier
105
- # @param [String] profile_id The profileId identifier
106
- # @return [Twilio::REST::Memory::V1::EventList]
107
- def events(store_id=:unset, profile_id=:unset)
108
- if store_id.nil?
109
- raise ArgumentError, 'store_id cannot be nil'
110
- end
111
- if profile_id.nil?
112
- raise ArgumentError, 'profile_id cannot be nil'
113
- end
114
-
115
- if store_id == :unset && profile_id == :unset
116
- @events ||= EventList.new self
117
- elsif store_id != :unset && profile_id == :unset
118
- EventList.new(self, store_id: store_id)
119
- else
120
- EventList.new(self, store_id: store_id, profile_id: profile_id)
121
- end
122
- end
123
- ##
124
- # @param [String] store_id The storeId identifier
125
- # @param [String] profile_id The profileId identifier
126
- # @return [Twilio::REST::Memory::V1::EventList]
127
- def events(store_id=:unset, profile_id=:unset)
128
- if store_id.nil?
129
- raise ArgumentError, 'store_id cannot be nil'
130
- end
131
- if profile_id.nil?
132
- raise ArgumentError, 'profile_id cannot be nil'
133
- end
134
-
135
- if store_id == :unset && profile_id == :unset
136
- @events ||= EventList.new self
137
- elsif store_id != :unset && profile_id == :unset
138
- EventList.new(self, store_id: store_id)
139
- else
140
- EventList.new(self, store_id: store_id, profile_id: profile_id)
141
- end
142
- end
143
- ##
144
102
  # @param [String] store_id A unique Memory Store ID using Twilio Type ID (TTID) format
145
103
  # @param [String] profile_id The unique identifier for the profile using Twilio Type ID (TTID) format.
146
104
  # @param [String] id_type
@@ -167,7 +125,6 @@ module Twilio
167
125
  end
168
126
  ##
169
127
  # @param [String] store_id A unique Memory Store ID using Twilio Type ID (TTID) format
170
- # @return [Twilio::REST::Memory::V1::IdentityResolutionSettingContext] if storeId was passed.
171
128
  # @return [Twilio::REST::Memory::V1::IdentityResolutionSettingList]
172
129
  def identity_resolution_settings(store_id=:unset)
173
130
  if store_id.nil?
@@ -177,7 +134,7 @@ module Twilio
177
134
  if store_id == :unset
178
135
  @identity_resolution_settings ||= IdentityResolutionSettingList.new self
179
136
  else
180
- IdentityResolutionSettingContext.new(self, store_id)
137
+ IdentityResolutionSettingList.new(self, store_id: store_id)
181
138
  end
182
139
  end
183
140
  ##
@@ -255,7 +255,6 @@ module Twilio
255
255
  # Dependents
256
256
  @brand_registration_otps = nil
257
257
  @brand_vettings = nil
258
- @brand_registration2_fa = nil
259
258
  end
260
259
  ##
261
260
  # Fetch the BrandRegistrationInstance
@@ -375,16 +374,6 @@ module Twilio
375
374
 
376
375
  @brand_vettings
377
376
  end
378
- ##
379
- # Access the brand_registration2_fa
380
- # @return [BrandRegistration2FaList]
381
- # @return [BrandRegistration2FaContext]
382
- def brand_registration2_fa
383
- BrandRegistration2FaContext.new(
384
- @version,
385
- @solution[:sid]
386
- )
387
- end
388
377
 
389
378
  ##
390
379
  # Provide a user friendly representation
@@ -748,13 +737,6 @@ module Twilio
748
737
  context.brand_vettings
749
738
  end
750
739
 
751
- ##
752
- # Access the brand_registration2_fa
753
- # @return [brand_registration2_fa] brand_registration2_fa
754
- def brand_registration2_fa
755
- context.brand_registration2_fa
756
- end
757
-
758
740
  ##
759
741
  # Provide a user friendly representation
760
742
  def to_s
@@ -121,12 +121,14 @@ module Twilio
121
121
 
122
122
  class MessagingV2ChannelsSenderRequestsCreate
123
123
  # @param [sender_id]: [String] The ID of the sender in `whatsapp:<E.164_PHONE_NUMBER>` format.
124
+ # @param [friendly_name]: [String] Optional display label for the sender in the Twilio Console.
124
125
  # @param [configuration]: [ChannelsSenderList.MessagingV2ChannelsSenderConfiguration]
125
126
  # @param [webhook]: [ChannelsSenderList.MessagingV2ChannelsSenderWebhook]
126
127
  # @param [profile]: [ChannelsSenderList.MessagingV2ChannelsSenderProfile]
127
- attr_accessor :sender_id, :configuration, :webhook, :profile
128
+ attr_accessor :sender_id, :friendly_name, :configuration, :webhook, :profile
128
129
  def initialize(payload)
129
130
  @sender_id = payload["sender_id"]
131
+ @friendly_name = payload["friendly_name"]
130
132
  @configuration = payload["configuration"]
131
133
  @webhook = payload["webhook"]
132
134
  @profile = payload["profile"]
@@ -134,6 +136,7 @@ module Twilio
134
136
  def to_json(options = {})
135
137
  {
136
138
  "sender_id": @sender_id,
139
+ "friendly_name": @friendly_name,
137
140
  "configuration": @configuration,
138
141
  "webhook": @webhook,
139
142
  "profile": @profile,
@@ -142,17 +145,20 @@ module Twilio
142
145
  end
143
146
 
144
147
  class MessagingV2ChannelsSenderRequestsUpdate
148
+ # @param [friendly_name]: [String] Optional display label for the sender in the Twilio Console.
145
149
  # @param [configuration]: [ChannelsSenderList.MessagingV2ChannelsSenderConfiguration]
146
150
  # @param [webhook]: [ChannelsSenderList.MessagingV2ChannelsSenderWebhook]
147
151
  # @param [profile]: [ChannelsSenderList.MessagingV2ChannelsSenderProfile]
148
- attr_accessor :configuration, :webhook, :profile
152
+ attr_accessor :friendly_name, :configuration, :webhook, :profile
149
153
  def initialize(payload)
154
+ @friendly_name = payload["friendly_name"]
150
155
  @configuration = payload["configuration"]
151
156
  @webhook = payload["webhook"]
152
157
  @profile = payload["profile"]
153
158
  end
154
159
  def to_json(options = {})
155
160
  {
161
+ "friendly_name": @friendly_name,
156
162
  "configuration": @configuration,
157
163
  "webhook": @webhook,
158
164
  "profile": @profile,
@@ -301,12 +307,14 @@ module Twilio
301
307
 
302
308
  class MessagingV2ChannelsSenderRequestsCreate
303
309
  # @param [sender_id]: [String] The ID of the sender in `whatsapp:<E.164_PHONE_NUMBER>` format.
310
+ # @param [friendly_name]: [String] Optional display label for the sender in the Twilio Console.
304
311
  # @param [configuration]: [ChannelsSenderList.MessagingV2ChannelsSenderConfiguration]
305
312
  # @param [webhook]: [ChannelsSenderList.MessagingV2ChannelsSenderWebhook]
306
313
  # @param [profile]: [ChannelsSenderList.MessagingV2ChannelsSenderProfile]
307
- attr_accessor :sender_id, :configuration, :webhook, :profile
314
+ attr_accessor :sender_id, :friendly_name, :configuration, :webhook, :profile
308
315
  def initialize(payload)
309
316
  @sender_id = payload["sender_id"]
317
+ @friendly_name = payload["friendly_name"]
310
318
  @configuration = payload["configuration"]
311
319
  @webhook = payload["webhook"]
312
320
  @profile = payload["profile"]
@@ -314,6 +322,7 @@ module Twilio
314
322
  def to_json(options = {})
315
323
  {
316
324
  "sender_id": @sender_id,
325
+ "friendly_name": @friendly_name,
317
326
  "configuration": @configuration,
318
327
  "webhook": @webhook,
319
328
  "profile": @profile,
@@ -322,17 +331,20 @@ module Twilio
322
331
  end
323
332
 
324
333
  class MessagingV2ChannelsSenderRequestsUpdate
334
+ # @param [friendly_name]: [String] Optional display label for the sender in the Twilio Console.
325
335
  # @param [configuration]: [ChannelsSenderList.MessagingV2ChannelsSenderConfiguration]
326
336
  # @param [webhook]: [ChannelsSenderList.MessagingV2ChannelsSenderWebhook]
327
337
  # @param [profile]: [ChannelsSenderList.MessagingV2ChannelsSenderProfile]
328
- attr_accessor :configuration, :webhook, :profile
338
+ attr_accessor :friendly_name, :configuration, :webhook, :profile
329
339
  def initialize(payload)
340
+ @friendly_name = payload["friendly_name"]
330
341
  @configuration = payload["configuration"]
331
342
  @webhook = payload["webhook"]
332
343
  @profile = payload["profile"]
333
344
  end
334
345
  def to_json(options = {})
335
346
  {
347
+ "friendly_name": @friendly_name,
336
348
  "configuration": @configuration,
337
349
  "webhook": @webhook,
338
350
  "profile": @profile,
@@ -883,6 +895,7 @@ module Twilio
883
895
  'sid' => payload['sid'],
884
896
  'status' => payload['status'],
885
897
  'sender_id' => payload['sender_id'],
898
+ 'friendly_name' => payload['friendly_name'],
886
899
  'configuration' => payload['configuration'],
887
900
  'webhook' => payload['webhook'],
888
901
  'profile' => payload['profile'],
@@ -926,6 +939,12 @@ module Twilio
926
939
  @properties['sender_id']
927
940
  end
928
941
 
942
+ ##
943
+ # @return [String] Optional display label for the sender in the Twilio Console.
944
+ def friendly_name
945
+ @properties['friendly_name']
946
+ end
947
+
929
948
  ##
930
949
  # @return [MessagingV2ChannelsSenderConfiguration]
931
950
  def configuration
@@ -20,11 +20,11 @@ module Twilio
20
20
  class TypingIndicatorList < ListResource
21
21
 
22
22
  class TypingIndicatorRequest
23
- # @param [channel]: [String] The messaging channel. Must be \"APPLE\".
23
+ # @param [channel]: [String] The messaging channel. Must be \"RCS\".
24
24
  # @param [message_id]: [String] The SID of a recent inbound message from the recipient. Must be an SM or MM SID format.
25
- # @param [from]: [String] The Apple Messages for Business identifier of the sender (business).
26
- # @param [to]: [String] The Apple Messages for Business identifier of the recipient (customer).
27
- # @param [event]: [String] The type of typing event. \"START\" indicates the agent began typing, \"END\" indicates the agent stopped typing. Defaults to \"START\".
25
+ # @param [from]: [String] The RCS agent identifier of the sender (business).
26
+ # @param [to]: [String] The RCS recipient identifier in E.164 format prefixed with \"rcs:\".
27
+ # @param [event]: [String] The type of typing event. Currently only \"START\" is supported for RCS, indicating the agent began typing. Defaults to \"START\".
28
28
  attr_accessor :channel, :message_id, :from, :to, :event
29
29
  def initialize(payload)
30
30
  @channel = payload["channel"]