twilio-ruby 5.39.2 → 5.40.3

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 (164) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +1 -1
  3. data/CHANGES.md +107 -1
  4. data/CONTRIBUTING.md +2 -2
  5. data/ISSUE_TEMPLATE.md +5 -1
  6. data/PULL_REQUEST_TEMPLATE.md +1 -1
  7. data/README.md +4 -3
  8. data/lib/twilio-ruby/framework/version.rb +4 -8
  9. data/lib/twilio-ruby/rest/api/v2010/account/application.rb +6 -4
  10. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/local.rb +12 -3
  11. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/machine_to_machine.rb +12 -3
  12. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/mobile.rb +12 -3
  13. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/national.rb +12 -3
  14. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/shared_cost.rb +12 -3
  15. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/toll_free.rb +12 -3
  16. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/voip.rb +12 -3
  17. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +2 -1
  18. data/lib/twilio-ruby/rest/api/v2010/account/call/payment.rb +85 -60
  19. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +5 -2
  20. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +14 -0
  21. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +14 -0
  22. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +14 -0
  23. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +8 -1
  24. data/lib/twilio-ruby/rest/api/v2010/account/message/feedback.rb +3 -1
  25. data/lib/twilio-ruby/rest/api/v2010/account/usage/trigger.rb +2 -1
  26. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type/field_value.rb +8 -4
  27. data/lib/twilio-ruby/rest/autopilot/v1/assistant/query.rb +11 -4
  28. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/sample.rb +13 -6
  29. data/lib/twilio-ruby/rest/client.rb +7 -0
  30. data/lib/twilio-ruby/rest/conversations.rb +39 -3
  31. data/lib/twilio-ruby/rest/conversations/v1.rb +68 -5
  32. data/lib/twilio-ruby/rest/conversations/v1/configuration.rb +268 -0
  33. data/lib/twilio-ruby/rest/conversations/v1/configuration/webhook.rb +262 -0
  34. data/lib/twilio-ruby/rest/conversations/v1/conversation.rb +21 -10
  35. data/lib/twilio-ruby/rest/conversations/v1/conversation/message.rb +13 -10
  36. data/lib/twilio-ruby/rest/conversations/v1/conversation/message/delivery_receipt.rb +34 -19
  37. data/lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb +48 -32
  38. data/lib/twilio-ruby/rest/conversations/v1/conversation/webhook.rb +14 -11
  39. data/lib/twilio-ruby/rest/conversations/v1/credential.rb +427 -0
  40. data/lib/twilio-ruby/rest/conversations/v1/role.rb +374 -0
  41. data/lib/twilio-ruby/rest/conversations/v1/service.rb +442 -0
  42. data/lib/twilio-ruby/rest/conversations/v1/service/binding.rb +388 -0
  43. data/lib/twilio-ruby/rest/conversations/v1/service/configuration.rb +271 -0
  44. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb +315 -0
  45. data/lib/twilio-ruby/rest/conversations/v1/service/conversation.rb +586 -0
  46. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message.rb +549 -0
  47. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message/delivery_receipt.rb +394 -0
  48. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/participant.rb +519 -0
  49. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/webhook.rb +457 -0
  50. data/lib/twilio-ruby/rest/conversations/v1/service/role.rb +395 -0
  51. data/lib/twilio-ruby/rest/conversations/v1/service/user.rb +419 -0
  52. data/lib/twilio-ruby/rest/conversations/v1/user.rb +398 -0
  53. data/lib/twilio-ruby/rest/events.rb +72 -0
  54. data/lib/twilio-ruby/rest/events/v1.rb +90 -0
  55. data/lib/twilio-ruby/rest/events/v1/event_type.rb +291 -0
  56. data/lib/twilio-ruby/rest/events/v1/schema.rb +226 -0
  57. data/lib/twilio-ruby/rest/events/v1/schema/schema_version.rb +290 -0
  58. data/lib/twilio-ruby/rest/events/v1/sink.rb +380 -0
  59. data/lib/twilio-ruby/rest/events/v1/sink/sink_test.rb +115 -0
  60. data/lib/twilio-ruby/rest/events/v1/sink/sink_validate.rb +119 -0
  61. data/lib/twilio-ruby/rest/events/v1/subscription.rb +383 -0
  62. data/lib/twilio-ruby/rest/events/v1/subscription/subscribed_event.rb +216 -0
  63. data/lib/twilio-ruby/rest/fax/v1/fax.rb +2 -1
  64. data/lib/twilio-ruby/rest/messaging.rb +6 -0
  65. data/lib/twilio-ruby/rest/messaging/v1.rb +7 -0
  66. data/lib/twilio-ruby/rest/messaging/v1/deactivation.rb +164 -0
  67. data/lib/twilio-ruby/rest/messaging/v1/service.rb +6 -3
  68. data/lib/twilio-ruby/rest/notify/v1/credential.rb +12 -6
  69. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +10 -2
  70. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance.rb +3 -3
  71. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user.rb +16 -2
  72. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document.rb +18 -4
  73. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document.rb +10 -5
  74. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document/dependent_hosted_number_order.rb +6 -3
  75. data/lib/twilio-ruby/rest/preview/trusted_comms/business/insights.rb +1 -4
  76. data/lib/twilio-ruby/rest/proxy/v1/service/phone_number.rb +3 -1
  77. data/lib/twilio-ruby/rest/proxy/v1/service/session.rb +45 -4
  78. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb +14 -1
  79. data/lib/twilio-ruby/rest/serverless/v1/service.rb +13 -13
  80. data/lib/twilio-ruby/rest/serverless/v1/service/asset.rb +6 -6
  81. data/lib/twilio-ruby/rest/serverless/v1/service/asset/asset_version.rb +5 -5
  82. data/lib/twilio-ruby/rest/serverless/v1/service/build.rb +8 -8
  83. data/lib/twilio-ruby/rest/serverless/v1/service/environment.rb +6 -8
  84. data/lib/twilio-ruby/rest/serverless/v1/service/environment/deployment.rb +8 -8
  85. data/lib/twilio-ruby/rest/serverless/v1/service/environment/variable.rb +14 -14
  86. data/lib/twilio-ruby/rest/serverless/v1/service/function.rb +4 -4
  87. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version.rb +7 -7
  88. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version/function_version_content.rb +1 -1
  89. data/lib/twilio-ruby/rest/supersim/v1/fleet.rb +12 -11
  90. data/lib/twilio-ruby/rest/supersim/v1/sim.rb +17 -7
  91. data/lib/twilio-ruby/rest/supersim/v1/usage_record.rb +75 -9
  92. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/activity.rb +2 -1
  93. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +6 -2
  94. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +1 -4
  95. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +6 -2
  96. data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +38 -23
  97. data/lib/twilio-ruby/rest/trunking/v1/trunk/ip_access_control_list.rb +2 -1
  98. data/lib/twilio-ruby/rest/trunking/v1/trunk/phone_number.rb +2 -1
  99. data/lib/twilio-ruby/rest/trunking/v1/trunk/recording.rb +201 -0
  100. data/lib/twilio-ruby/rest/verify/v2/service.rb +21 -9
  101. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb +10 -2
  102. data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +7 -2
  103. data/lib/twilio-ruby/rest/video/v1/composition.rb +7 -3
  104. data/lib/twilio-ruby/rest/video/v1/composition_hook.rb +18 -9
  105. data/lib/twilio-ruby/rest/video/v1/room.rb +2 -1
  106. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribe_rule.rb +0 -6
  107. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions.rb +1 -4
  108. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +2 -1
  109. data/lib/twilio-ruby/rest/wireless/v1/sim/data_session.rb +5 -19
  110. data/lib/twilio-ruby/version.rb +1 -1
  111. data/spec/framework/version_spec.rb +53 -0
  112. data/spec/holodeck/holodeck.rb +3 -3
  113. data/spec/integration/api/v2010/account/incoming_phone_number/local_spec.rb +35 -36
  114. data/spec/integration/api/v2010/account/incoming_phone_number/mobile_spec.rb +39 -40
  115. data/spec/integration/api/v2010/account/incoming_phone_number/toll_free_spec.rb +35 -36
  116. data/spec/integration/api/v2010/account/incoming_phone_number_spec.rb +25 -23
  117. data/spec/integration/api/v2010/account/message_spec.rb +37 -0
  118. data/spec/integration/bulkexports/v1/export/day_spec.rb +5 -5
  119. data/spec/integration/bulkexports/v1/export_configuration_spec.rb +4 -4
  120. data/spec/integration/bulkexports/v1/export_spec.rb +3 -3
  121. data/spec/integration/conversations/v1/{webhook_spec.rb → configuration/webhook_spec.rb} +12 -8
  122. data/spec/integration/conversations/v1/configuration_spec.rb +87 -0
  123. data/spec/integration/conversations/v1/conversation/message/delivery_receipt_spec.rb +4 -0
  124. data/spec/integration/conversations/v1/conversation/message_spec.rb +38 -0
  125. data/spec/integration/conversations/v1/conversation/participant_spec.rb +60 -4
  126. data/spec/integration/conversations/v1/conversation_spec.rb +35 -0
  127. data/spec/integration/conversations/v1/credential_spec.rb +219 -0
  128. data/spec/integration/conversations/v1/role_spec.rb +249 -0
  129. data/spec/integration/conversations/v1/service/binding_spec.rb +166 -0
  130. data/spec/integration/conversations/v1/service/configuration/notification_spec.rb +115 -0
  131. data/spec/integration/conversations/v1/service/configuration_spec.rb +87 -0
  132. data/spec/integration/conversations/v1/service/conversation/message/delivery_receipt_spec.rb +144 -0
  133. data/spec/integration/conversations/v1/service/conversation/message_spec.rb +429 -0
  134. data/spec/integration/conversations/v1/service/conversation/participant_spec.rb +407 -0
  135. data/spec/integration/conversations/v1/service/conversation/webhook_spec.rb +299 -0
  136. data/spec/integration/conversations/v1/service/conversation_spec.rb +289 -0
  137. data/spec/integration/conversations/v1/service/role_spec.rb +260 -0
  138. data/spec/integration/conversations/v1/service/user_spec.rb +230 -0
  139. data/spec/integration/conversations/v1/service_spec.rb +174 -0
  140. data/spec/integration/conversations/v1/user_spec.rb +220 -0
  141. data/spec/integration/events/v1/event_type_spec.rb +133 -0
  142. data/spec/integration/events/v1/schema/schema_version_spec.rb +126 -0
  143. data/spec/integration/events/v1/schema_spec.rb +46 -0
  144. data/spec/integration/events/v1/sink/sink_test_spec.rb +42 -0
  145. data/spec/integration/events/v1/sink/sink_validate_spec.rb +44 -0
  146. data/spec/integration/events/v1/sink_spec.rb +217 -0
  147. data/spec/integration/events/v1/subscription/subscribed_event_spec.rb +91 -0
  148. data/spec/integration/events/v1/subscription_spec.rb +243 -0
  149. data/spec/integration/messaging/v1/deactivation_spec.rb +40 -0
  150. data/spec/integration/numbers/v2/regulatory_compliance/end_user_spec.rb +27 -0
  151. data/spec/integration/numbers/v2/regulatory_compliance/supporting_document_spec.rb +27 -0
  152. data/spec/integration/studio/v1/flow/execution/execution_step_spec.rb +1 -0
  153. data/spec/integration/studio/v2/flow/execution/execution_step_spec.rb +1 -0
  154. data/spec/integration/supersim/v1/sim_spec.rb +23 -0
  155. data/spec/integration/supersim/v1/usage_record_spec.rb +463 -18
  156. data/spec/integration/trunking/v1/trunk/recording_spec.rb +79 -0
  157. data/spec/integration/trunking/v1/trunk_spec.rb +4 -0
  158. data/spec/integration/verify/v2/service/access_token_spec.rb +1 -1
  159. data/spec/integration/verify/v2/service/entity/challenge_spec.rb +8 -8
  160. data/spec/integration/video/v1/room_spec.rb +37 -0
  161. data/spec/integration/wireless/v1/sim/data_session_spec.rb +2 -2
  162. data/spec/spec_helper.rb +1 -1
  163. metadata +82 -5
  164. data/lib/twilio-ruby/rest/conversations/v1/webhook.rb +0 -262
@@ -0,0 +1,216 @@
1
+ ##
2
+ # This code was generated by
3
+ # \ / _ _ _| _ _
4
+ # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
+ # / /
6
+ #
7
+ # frozen_string_literal: true
8
+
9
+ module Twilio
10
+ module REST
11
+ class Events < Domain
12
+ class V1 < Version
13
+ class SubscriptionContext < InstanceContext
14
+ ##
15
+ # PLEASE NOTE that this class contains preview products that are subject to change. Use them with caution. If you currently do not have developer preview access, please contact help@twilio.com.
16
+ class SubscribedEventList < ListResource
17
+ ##
18
+ # Initialize the SubscribedEventList
19
+ # @param [Version] version Version that contains the resource
20
+ # @param [String] subscription_sid The unique SID identifier of the Subscription.
21
+ # @return [SubscribedEventList] SubscribedEventList
22
+ def initialize(version, subscription_sid: nil)
23
+ super(version)
24
+
25
+ # Path Solution
26
+ @solution = {subscription_sid: subscription_sid}
27
+ @uri = "/Subscriptions/#{@solution[:subscription_sid]}/SubscribedEvents"
28
+ end
29
+
30
+ ##
31
+ # Lists SubscribedEventInstance records from the API as a list.
32
+ # Unlike stream(), this operation is eager and will load `limit` records into
33
+ # memory before returning.
34
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
35
+ # guarantees to never return more than limit. Default is no limit
36
+ # @param [Integer] page_size Number of records to fetch per request, when
37
+ # not set will use the default value of 50 records. If no page_size is defined
38
+ # but a limit is defined, stream() will attempt to read the limit with the most
39
+ # efficient page size, i.e. min(limit, 1000)
40
+ # @return [Array] Array of up to limit results
41
+ def list(limit: nil, page_size: nil)
42
+ self.stream(limit: limit, page_size: page_size).entries
43
+ end
44
+
45
+ ##
46
+ # Streams SubscribedEventInstance records from the API as an Enumerable.
47
+ # This operation lazily loads records as efficiently as possible until the limit
48
+ # is reached.
49
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
50
+ # guarantees to never return more than limit. Default is no limit.
51
+ # @param [Integer] page_size Number of records to fetch per request, when
52
+ # not set will use the default value of 50 records. If no page_size is defined
53
+ # but a limit is defined, stream() will attempt to read the limit with the most
54
+ # efficient page size, i.e. min(limit, 1000)
55
+ # @return [Enumerable] Enumerable that will yield up to limit results
56
+ def stream(limit: nil, page_size: nil)
57
+ limits = @version.read_limits(limit, page_size)
58
+
59
+ page = self.page(page_size: limits[:page_size], )
60
+
61
+ @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
62
+ end
63
+
64
+ ##
65
+ # When passed a block, yields SubscribedEventInstance records from the API.
66
+ # This operation lazily loads records as efficiently as possible until the limit
67
+ # is reached.
68
+ def each
69
+ limits = @version.read_limits
70
+
71
+ page = self.page(page_size: limits[:page_size], )
72
+
73
+ @version.stream(page,
74
+ limit: limits[:limit],
75
+ page_limit: limits[:page_limit]).each {|x| yield x}
76
+ end
77
+
78
+ ##
79
+ # Retrieve a single page of SubscribedEventInstance records from the API.
80
+ # Request is executed immediately.
81
+ # @param [String] page_token PageToken provided by the API
82
+ # @param [Integer] page_number Page Number, this value is simply for client state
83
+ # @param [Integer] page_size Number of records to return, defaults to 50
84
+ # @return [Page] Page of SubscribedEventInstance
85
+ def page(page_token: :unset, page_number: :unset, page_size: :unset)
86
+ params = Twilio::Values.of({
87
+ 'PageToken' => page_token,
88
+ 'Page' => page_number,
89
+ 'PageSize' => page_size,
90
+ })
91
+
92
+ response = @version.page('GET', @uri, params: params)
93
+
94
+ SubscribedEventPage.new(@version, response, @solution)
95
+ end
96
+
97
+ ##
98
+ # Retrieve a single page of SubscribedEventInstance records from the API.
99
+ # Request is executed immediately.
100
+ # @param [String] target_url API-generated URL for the requested results page
101
+ # @return [Page] Page of SubscribedEventInstance
102
+ def get_page(target_url)
103
+ response = @version.domain.request(
104
+ 'GET',
105
+ target_url
106
+ )
107
+ SubscribedEventPage.new(@version, response, @solution)
108
+ end
109
+
110
+ ##
111
+ # Provide a user friendly representation
112
+ def to_s
113
+ '#<Twilio.Events.V1.SubscribedEventList>'
114
+ end
115
+ end
116
+
117
+ ##
118
+ # PLEASE NOTE that this class contains preview products that are subject to change. Use them with caution. If you currently do not have developer preview access, please contact help@twilio.com.
119
+ class SubscribedEventPage < Page
120
+ ##
121
+ # Initialize the SubscribedEventPage
122
+ # @param [Version] version Version that contains the resource
123
+ # @param [Response] response Response from the API
124
+ # @param [Hash] solution Path solution for the resource
125
+ # @return [SubscribedEventPage] SubscribedEventPage
126
+ def initialize(version, response, solution)
127
+ super(version, response)
128
+
129
+ # Path Solution
130
+ @solution = solution
131
+ end
132
+
133
+ ##
134
+ # Build an instance of SubscribedEventInstance
135
+ # @param [Hash] payload Payload response from the API
136
+ # @return [SubscribedEventInstance] SubscribedEventInstance
137
+ def get_instance(payload)
138
+ SubscribedEventInstance.new(@version, payload, subscription_sid: @solution[:subscription_sid], )
139
+ end
140
+
141
+ ##
142
+ # Provide a user friendly representation
143
+ def to_s
144
+ '<Twilio.Events.V1.SubscribedEventPage>'
145
+ end
146
+ end
147
+
148
+ ##
149
+ # PLEASE NOTE that this class contains preview products that are subject to change. Use them with caution. If you currently do not have developer preview access, please contact help@twilio.com.
150
+ class SubscribedEventInstance < InstanceResource
151
+ ##
152
+ # Initialize the SubscribedEventInstance
153
+ # @param [Version] version Version that contains the resource
154
+ # @param [Hash] payload payload that contains response from Twilio
155
+ # @param [String] subscription_sid The unique SID identifier of the Subscription.
156
+ # @return [SubscribedEventInstance] SubscribedEventInstance
157
+ def initialize(version, payload, subscription_sid: nil)
158
+ super(version)
159
+
160
+ # Marshaled Properties
161
+ @properties = {
162
+ 'account_sid' => payload['account_sid'],
163
+ 'type' => payload['type'],
164
+ 'version' => payload['version'].to_i,
165
+ 'subscription_sid' => payload['subscription_sid'],
166
+ 'url' => payload['url'],
167
+ }
168
+ end
169
+
170
+ ##
171
+ # @return [String] Account SID.
172
+ def account_sid
173
+ @properties['account_sid']
174
+ end
175
+
176
+ ##
177
+ # @return [String] Type of event being subscribed to.
178
+ def type
179
+ @properties['type']
180
+ end
181
+
182
+ ##
183
+ # @return [String] The schema version that the subscription should use.
184
+ def version
185
+ @properties['version']
186
+ end
187
+
188
+ ##
189
+ # @return [String] Subscription SID.
190
+ def subscription_sid
191
+ @properties['subscription_sid']
192
+ end
193
+
194
+ ##
195
+ # @return [String] The URL of this resource.
196
+ def url
197
+ @properties['url']
198
+ end
199
+
200
+ ##
201
+ # Provide a user friendly representation
202
+ def to_s
203
+ "<Twilio.Events.V1.SubscribedEventInstance>"
204
+ end
205
+
206
+ ##
207
+ # Provide a detailed, user friendly representation
208
+ def inspect
209
+ "<Twilio.Events.V1.SubscribedEventInstance>"
210
+ end
211
+ end
212
+ end
213
+ end
214
+ end
215
+ end
216
+ end
@@ -166,7 +166,8 @@ module Twilio
166
166
  # defaults to `fine`.
167
167
  # @param [String] status_callback The URL we should call using the `POST` method
168
168
  # to send [status
169
- # information](https://www.twilio.com/docs/fax/api/fax-resource#fax-status-callback) to your application when the status of the fax changes.
169
+ # information](https://www.twilio.com/docs/fax/api/fax-resource#fax-status-callback)
170
+ # to your application when the status of the fax changes.
170
171
  # @param [String] from The number the fax was sent from. Can be the phone number
171
172
  # in [E.164](https://www.twilio.com/docs/glossary/what-e164) format or the SIP
172
173
  # `from` value. The caller ID displayed to the recipient uses this value. If this
@@ -28,6 +28,12 @@ module Twilio
28
28
  @v1 ||= V1.new self
29
29
  end
30
30
 
31
+ ##
32
+ # @return [Twilio::REST::Messaging::V1::DeactivationsInstance]
33
+ def deactivations
34
+ self.v1.deactivations()
35
+ end
36
+
31
37
  ##
32
38
  # @param [String] sid The unique string that we created to identify the Service
33
39
  # resource.
@@ -15,9 +15,16 @@ module Twilio
15
15
  def initialize(domain)
16
16
  super
17
17
  @version = 'v1'
18
+ @deactivations = nil
18
19
  @services = nil
19
20
  end
20
21
 
22
+ ##
23
+ # @return [Twilio::REST::Messaging::V1::DeactivationsContext]
24
+ def deactivations
25
+ @deactivations ||= DeactivationsContext.new self
26
+ end
27
+
21
28
  ##
22
29
  # @param [String] sid The SID of the Service resource to fetch.
23
30
  # @return [Twilio::REST::Messaging::V1::ServiceContext] if sid was passed.
@@ -0,0 +1,164 @@
1
+ ##
2
+ # This code was generated by
3
+ # \ / _ _ _| _ _
4
+ # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
+ # / /
6
+ #
7
+ # frozen_string_literal: true
8
+
9
+ module Twilio
10
+ module REST
11
+ class Messaging < Domain
12
+ class V1 < Version
13
+ class DeactivationsList < ListResource
14
+ ##
15
+ # Initialize the DeactivationsList
16
+ # @param [Version] version Version that contains the resource
17
+ # @return [DeactivationsList] DeactivationsList
18
+ def initialize(version)
19
+ super(version)
20
+
21
+ # Path Solution
22
+ @solution = {}
23
+ end
24
+
25
+ ##
26
+ # Provide a user friendly representation
27
+ def to_s
28
+ '#<Twilio.Messaging.V1.DeactivationsList>'
29
+ end
30
+ end
31
+
32
+ class DeactivationsPage < Page
33
+ ##
34
+ # Initialize the DeactivationsPage
35
+ # @param [Version] version Version that contains the resource
36
+ # @param [Response] response Response from the API
37
+ # @param [Hash] solution Path solution for the resource
38
+ # @return [DeactivationsPage] DeactivationsPage
39
+ def initialize(version, response, solution)
40
+ super(version, response)
41
+
42
+ # Path Solution
43
+ @solution = solution
44
+ end
45
+
46
+ ##
47
+ # Build an instance of DeactivationsInstance
48
+ # @param [Hash] payload Payload response from the API
49
+ # @return [DeactivationsInstance] DeactivationsInstance
50
+ def get_instance(payload)
51
+ DeactivationsInstance.new(@version, payload, )
52
+ end
53
+
54
+ ##
55
+ # Provide a user friendly representation
56
+ def to_s
57
+ '<Twilio.Messaging.V1.DeactivationsPage>'
58
+ end
59
+ end
60
+
61
+ class DeactivationsContext < InstanceContext
62
+ ##
63
+ # Initialize the DeactivationsContext
64
+ # @param [Version] version Version that contains the resource
65
+ # @return [DeactivationsContext] DeactivationsContext
66
+ def initialize(version)
67
+ super(version)
68
+
69
+ # Path Solution
70
+ @solution = {}
71
+ @uri = "/Deactivations"
72
+ end
73
+
74
+ ##
75
+ # Fetch the DeactivationsInstance
76
+ # @param [Date] date The request will return a list of all United States Phone
77
+ # Numbers that were deactivated on the day specified by this parameter. This date
78
+ # should be specified in YYYY-MM-DD format.
79
+ # @return [DeactivationsInstance] Fetched DeactivationsInstance
80
+ def fetch(date: :unset)
81
+ params = Twilio::Values.of({'Date' => Twilio.serialize_iso8601_date(date), })
82
+
83
+ payload = @version.fetch('GET', @uri, params: params)
84
+
85
+ DeactivationsInstance.new(@version, payload, )
86
+ end
87
+
88
+ ##
89
+ # Provide a user friendly representation
90
+ def to_s
91
+ context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
92
+ "#<Twilio.Messaging.V1.DeactivationsContext #{context}>"
93
+ end
94
+
95
+ ##
96
+ # Provide a detailed, user friendly representation
97
+ def inspect
98
+ context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
99
+ "#<Twilio.Messaging.V1.DeactivationsContext #{context}>"
100
+ end
101
+ end
102
+
103
+ class DeactivationsInstance < InstanceResource
104
+ ##
105
+ # Initialize the DeactivationsInstance
106
+ # @param [Version] version Version that contains the resource
107
+ # @param [Hash] payload payload that contains response from Twilio
108
+ # @return [DeactivationsInstance] DeactivationsInstance
109
+ def initialize(version, payload)
110
+ super(version)
111
+
112
+ # Marshaled Properties
113
+ @properties = {'redirect_to' => payload['redirect_to'], }
114
+
115
+ # Context
116
+ @instance_context = nil
117
+ @params = {}
118
+ end
119
+
120
+ ##
121
+ # Generate an instance context for the instance, the context is capable of
122
+ # performing various actions. All instance actions are proxied to the context
123
+ # @return [DeactivationsContext] DeactivationsContext for this DeactivationsInstance
124
+ def context
125
+ unless @instance_context
126
+ @instance_context = DeactivationsContext.new(@version, )
127
+ end
128
+ @instance_context
129
+ end
130
+
131
+ ##
132
+ # @return [String] Redirect url to the list of deactivated numbers.
133
+ def redirect_to
134
+ @properties['redirect_to']
135
+ end
136
+
137
+ ##
138
+ # Fetch the DeactivationsInstance
139
+ # @param [Date] date The request will return a list of all United States Phone
140
+ # Numbers that were deactivated on the day specified by this parameter. This date
141
+ # should be specified in YYYY-MM-DD format.
142
+ # @return [DeactivationsInstance] Fetched DeactivationsInstance
143
+ def fetch(date: :unset)
144
+ context.fetch(date: date, )
145
+ end
146
+
147
+ ##
148
+ # Provide a user friendly representation
149
+ def to_s
150
+ values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
151
+ "<Twilio.Messaging.V1.DeactivationsInstance #{values}>"
152
+ end
153
+
154
+ ##
155
+ # Provide a detailed, user friendly representation
156
+ def inspect
157
+ values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
158
+ "<Twilio.Messaging.V1.DeactivationsInstance #{values}>"
159
+ end
160
+ end
161
+ end
162
+ end
163
+ end
164
+ end
@@ -41,7 +41,8 @@ module Twilio
41
41
  # @param [String] fallback_method The HTTP method we should use to call
42
42
  # `fallback_url`. Can be: `GET` or `POST`.
43
43
  # @param [String] status_callback The URL we should call to [pass status
44
- # updates](https://www.twilio.com/docs/sms/api/message-resource#message-status-values) about message delivery.
44
+ # updates](https://www.twilio.com/docs/sms/api/message-resource#message-status-values)
45
+ # about message delivery.
45
46
  # @param [Boolean] sticky_sender Whether to enable [Sticky
46
47
  # Sender](https://www.twilio.com/docs/sms/services#sticky-sender) on the Service
47
48
  # instance.
@@ -240,7 +241,8 @@ module Twilio
240
241
  # @param [String] fallback_method The HTTP method we should use to call
241
242
  # `fallback_url`. Can be: `GET` or `POST`.
242
243
  # @param [String] status_callback The URL we should call to [pass status
243
- # updates](https://www.twilio.com/docs/sms/api/message-resource#message-status-values) about message delivery.
244
+ # updates](https://www.twilio.com/docs/sms/api/message-resource#message-status-values)
245
+ # about message delivery.
244
246
  # @param [Boolean] sticky_sender Whether to enable [Sticky
245
247
  # Sender](https://www.twilio.com/docs/sms/services#sticky-sender) on the Service
246
248
  # instance.
@@ -557,7 +559,8 @@ module Twilio
557
559
  # @param [String] fallback_method The HTTP method we should use to call
558
560
  # `fallback_url`. Can be: `GET` or `POST`.
559
561
  # @param [String] status_callback The URL we should call to [pass status
560
- # updates](https://www.twilio.com/docs/sms/api/message-resource#message-status-values) about message delivery.
562
+ # updates](https://www.twilio.com/docs/sms/api/message-resource#message-status-values)
563
+ # about message delivery.
561
564
  # @param [Boolean] sticky_sender Whether to enable [Sticky
562
565
  # Sender](https://www.twilio.com/docs/sms/services#sticky-sender) on the Service
563
566
  # instance.