twilio-ruby 5.33.0 → 5.36.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (116) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +8 -0
  3. data/.rubocop_todo.yml +5 -26
  4. data/.travis.yml +9 -1
  5. data/CHANGES.md +110 -0
  6. data/README.md +17 -2
  7. data/lib/twilio-ruby.rb +4 -12
  8. data/lib/twilio-ruby/framework/error.rb +3 -3
  9. data/lib/twilio-ruby/jwt/jwt.rb +6 -0
  10. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +90 -90
  11. data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +14 -0
  12. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +75 -72
  13. data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +29 -29
  14. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +38 -3
  15. data/lib/twilio-ruby/rest/autopilot.rb +6 -0
  16. data/lib/twilio-ruby/rest/autopilot/v1.rb +7 -0
  17. data/lib/twilio-ruby/rest/autopilot/v1/restore_assistant.rb +198 -0
  18. data/lib/twilio-ruby/rest/client.rb +35 -8
  19. data/lib/twilio-ruby/rest/conversations/v1/conversation.rb +19 -3
  20. data/lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb +27 -4
  21. data/lib/twilio-ruby/rest/flex_api/v1/channel.rb +2 -1
  22. data/lib/twilio-ruby/rest/flex_api/v1/configuration.rb +7 -0
  23. data/lib/twilio-ruby/rest/flex_api/v1/flex_flow.rb +20 -11
  24. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle.rb +26 -0
  25. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/evaluation.rb +324 -0
  26. data/lib/twilio-ruby/rest/preview/trusted_comms/business.rb +26 -0
  27. data/lib/twilio-ruby/rest/preview/trusted_comms/business/brand.rb +239 -0
  28. data/lib/twilio-ruby/rest/preview/trusted_comms/business/brand/branded_channel.rb +266 -0
  29. data/lib/twilio-ruby/rest/preview/trusted_comms/business/brand/branded_channel/channel.rb +197 -0
  30. data/lib/twilio-ruby/rest/serverless/v1/service/environment/log.rb +7 -0
  31. data/lib/twilio-ruby/rest/studio.rb +2 -2
  32. data/lib/twilio-ruby/rest/studio/v1/flow/execution.rb +26 -0
  33. data/lib/twilio-ruby/rest/studio/v2.rb +3 -3
  34. data/lib/twilio-ruby/rest/studio/v2/flow.rb +7 -0
  35. data/lib/twilio-ruby/rest/studio/v2/flow/execution.rb +71 -24
  36. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_context.rb +12 -11
  37. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step.rb +21 -20
  38. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step/execution_step_context.rb +18 -15
  39. data/lib/twilio-ruby/rest/supersim.rb +18 -0
  40. data/lib/twilio-ruby/rest/supersim/v1.rb +30 -0
  41. data/lib/twilio-ruby/rest/supersim/v1/fleet.rb +53 -10
  42. data/lib/twilio-ruby/rest/supersim/v1/network.rb +315 -0
  43. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile.rb +378 -0
  44. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile/network_access_profile_network.rb +352 -0
  45. data/lib/twilio-ruby/rest/verify.rb +9 -0
  46. data/lib/twilio-ruby/rest/verify/v2.rb +16 -0
  47. data/lib/twilio-ruby/rest/verify/v2/form.rb +197 -0
  48. data/lib/twilio-ruby/rest/verify/v2/service.rb +48 -3
  49. data/lib/twilio-ruby/rest/verify/v2/service/entity.rb +379 -0
  50. data/lib/twilio-ruby/rest/verify/v2/service/entity/factor.rb +500 -0
  51. data/lib/twilio-ruby/rest/verify/v2/service/entity/factor/challenge.rb +494 -0
  52. data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +3 -3
  53. data/lib/twilio-ruby/rest/video/v1/composition_settings.rb +8 -12
  54. data/lib/twilio-ruby/rest/video/v1/recording_settings.rb +8 -12
  55. data/lib/twilio-ruby/rest/voice.rb +36 -0
  56. data/lib/twilio-ruby/rest/voice/v1.rb +64 -0
  57. data/lib/twilio-ruby/rest/voice/v1/byoc_trunk.rb +513 -0
  58. data/lib/twilio-ruby/rest/voice/v1/connection_policy.rb +379 -0
  59. data/lib/twilio-ruby/rest/voice/v1/connection_policy/connection_policy_target.rb +458 -0
  60. data/lib/twilio-ruby/rest/voice/v1/ip_record.rb +366 -0
  61. data/lib/twilio-ruby/rest/voice/v1/source_ip_mapping.rb +346 -0
  62. data/lib/twilio-ruby/twiml/twiml.rb +4 -0
  63. data/lib/twilio-ruby/twiml/voice_response.rb +3 -2
  64. data/lib/twilio-ruby/util/configuration.rb +9 -1
  65. data/lib/twilio-ruby/version.rb +1 -1
  66. data/spec/integration/api/v2010/account/call_spec.rb +5 -5
  67. data/spec/integration/api/v2010/account/conference_spec.rb +42 -14
  68. data/spec/integration/api/v2010/account/sip/domain_spec.rb +12 -4
  69. data/spec/integration/api/v2010/account/token_spec.rb +23 -11
  70. data/spec/integration/autopilot/v1/restore_assistant_spec.rb +53 -0
  71. data/spec/integration/bulkexports/v1/export/day_spec.rb +1 -1
  72. data/spec/integration/conversations/v1/conversation/participant_spec.rb +7 -0
  73. data/spec/integration/conversations/v1/conversation_spec.rb +4 -0
  74. data/spec/integration/flex_api/v1/configuration_spec.rb +3 -0
  75. data/spec/integration/numbers/v2/regulatory_compliance/bundle/evaluation_spec.rb +623 -0
  76. data/spec/integration/numbers/v2/regulatory_compliance/bundle_spec.rb +4 -0
  77. data/spec/integration/preview/bulk_exports/export/day_spec.rb +1 -1
  78. data/spec/integration/preview/trusted_comms/business/brand/branded_channel/channel_spec.rb +54 -0
  79. data/spec/integration/preview/trusted_comms/business/brand/branded_channel_spec.rb +52 -0
  80. data/spec/integration/preview/trusted_comms/business/brand_spec.rb +49 -0
  81. data/spec/integration/preview/trusted_comms/business_spec.rb +1 -0
  82. data/spec/integration/serverless/v1/service/asset/asset_version_spec.rb +1 -1
  83. data/spec/integration/serverless/v1/service/build_spec.rb +4 -4
  84. data/spec/integration/serverless/v1/service/environment/log_spec.rb +1 -0
  85. data/spec/integration/serverless/v1/service/function/function_version_spec.rb +1 -1
  86. data/spec/integration/studio/v1/flow/execution_spec.rb +46 -0
  87. data/spec/integration/studio/v2/flow/execution_spec.rb +45 -0
  88. data/spec/integration/studio/v2/flow_spec.rb +4 -0
  89. data/spec/integration/studio/v2/flow_validate_spec.rb +2 -2
  90. data/spec/integration/supersim/v1/fleet_spec.rb +12 -4
  91. data/spec/integration/supersim/v1/network_access_profile/network_access_profile_network_spec.rb +179 -0
  92. data/spec/integration/supersim/v1/network_access_profile_spec.rb +223 -0
  93. data/spec/integration/supersim/v1/network_spec.rb +139 -0
  94. data/spec/integration/trunking/v1/trunk/credential_list_spec.rb +13 -13
  95. data/spec/integration/trunking/v1/trunk/ip_access_control_list_spec.rb +23 -23
  96. data/spec/integration/trunking/v1/trunk/origination_url_spec.rb +28 -28
  97. data/spec/integration/trunking/v1/trunk/phone_number_spec.rb +17 -17
  98. data/spec/integration/trunking/v1/trunk_spec.rb +33 -33
  99. data/spec/integration/verify/v2/form_spec.rb +48 -0
  100. data/spec/integration/verify/v2/service/entity/factor/challenge_spec.rb +353 -0
  101. data/spec/integration/verify/v2/service/entity/factor_spec.rb +298 -0
  102. data/spec/integration/verify/v2/service/entity_spec.rb +201 -0
  103. data/spec/integration/verify/v2/service_spec.rb +28 -4
  104. data/spec/integration/video/v1/composition_settings_spec.rb +2 -2
  105. data/spec/integration/video/v1/recording_settings_spec.rb +2 -2
  106. data/spec/integration/video/v1/recording_spec.rb +2 -2
  107. data/spec/integration/video/v1/room/recording_spec.rb +2 -2
  108. data/spec/integration/voice/v1/byoc_trunk_spec.rb +250 -0
  109. data/spec/integration/voice/v1/connection_policy/connection_policy_target_spec.rb +246 -0
  110. data/spec/integration/voice/v1/connection_policy_spec.rb +226 -0
  111. data/spec/integration/voice/v1/ip_record_spec.rb +223 -0
  112. data/spec/integration/voice/v1/source_ip_mapping_spec.rb +219 -0
  113. data/spec/rest/client_spec.rb +173 -23
  114. data/spec/util/configuration_spec.rb +12 -0
  115. data/twilio-ruby.gemspec +4 -4
  116. metadata +67 -10
@@ -18,8 +18,8 @@ module Twilio
18
18
  ##
19
19
  # Initialize the ExecutionContextList
20
20
  # @param [Version] version Version that contains the resource
21
- # @param [String] flow_sid The flow_sid
22
- # @param [String] execution_sid The execution_sid
21
+ # @param [String] flow_sid The SID of the Flow.
22
+ # @param [String] execution_sid The SID of the context's Execution resource.
23
23
  # @return [ExecutionContextList] ExecutionContextList
24
24
  def initialize(version, flow_sid: nil, execution_sid: nil)
25
25
  super(version)
@@ -77,8 +77,9 @@ module Twilio
77
77
  ##
78
78
  # Initialize the ExecutionContextContext
79
79
  # @param [Version] version Version that contains the resource
80
- # @param [String] flow_sid The flow_sid
81
- # @param [String] execution_sid The execution_sid
80
+ # @param [String] flow_sid The SID of the Flow with the Execution context to
81
+ # fetch.
82
+ # @param [String] execution_sid The SID of the Execution context to fetch.
82
83
  # @return [ExecutionContextContext] ExecutionContextContext
83
84
  def initialize(version, flow_sid, execution_sid)
84
85
  super(version)
@@ -130,8 +131,8 @@ module Twilio
130
131
  # Initialize the ExecutionContextInstance
131
132
  # @param [Version] version Version that contains the resource
132
133
  # @param [Hash] payload payload that contains response from Twilio
133
- # @param [String] flow_sid The flow_sid
134
- # @param [String] execution_sid The execution_sid
134
+ # @param [String] flow_sid The SID of the Flow.
135
+ # @param [String] execution_sid The SID of the context's Execution resource.
135
136
  # @return [ExecutionContextInstance] ExecutionContextInstance
136
137
  def initialize(version, payload, flow_sid: nil, execution_sid: nil)
137
138
  super(version)
@@ -166,31 +167,31 @@ module Twilio
166
167
  end
167
168
 
168
169
  ##
169
- # @return [String] The account_sid
170
+ # @return [String] The SID of the Account that created the resource
170
171
  def account_sid
171
172
  @properties['account_sid']
172
173
  end
173
174
 
174
175
  ##
175
- # @return [Hash] The context
176
+ # @return [Hash] The current state of the flow
176
177
  def context
177
178
  @properties['context']
178
179
  end
179
180
 
180
181
  ##
181
- # @return [String] The flow_sid
182
+ # @return [String] The SID of the Flow
182
183
  def flow_sid
183
184
  @properties['flow_sid']
184
185
  end
185
186
 
186
187
  ##
187
- # @return [String] The execution_sid
188
+ # @return [String] The SID of the Execution
188
189
  def execution_sid
189
190
  @properties['execution_sid']
190
191
  end
191
192
 
192
193
  ##
193
- # @return [String] The url
194
+ # @return [String] The absolute URL of the resource
194
195
  def url
195
196
  @properties['url']
196
197
  end
@@ -18,8 +18,8 @@ module Twilio
18
18
  ##
19
19
  # Initialize the ExecutionStepList
20
20
  # @param [Version] version Version that contains the resource
21
- # @param [String] flow_sid The flow_sid
22
- # @param [String] execution_sid The execution_sid
21
+ # @param [String] flow_sid The SID of the Flow.
22
+ # @param [String] execution_sid The SID of the Step's Execution resource.
23
23
  # @return [ExecutionStepList] ExecutionStepList
24
24
  def initialize(version, flow_sid: nil, execution_sid: nil)
25
25
  super(version)
@@ -160,9 +160,10 @@ module Twilio
160
160
  ##
161
161
  # Initialize the ExecutionStepContext
162
162
  # @param [Version] version Version that contains the resource
163
- # @param [String] flow_sid The flow_sid
164
- # @param [String] execution_sid The execution_sid
165
- # @param [String] sid The sid
163
+ # @param [String] flow_sid The SID of the Flow with the Step to fetch.
164
+ # @param [String] execution_sid The SID of the Execution resource with the Step to
165
+ # fetch.
166
+ # @param [String] sid The SID of the ExecutionStep resource to fetch.
166
167
  # @return [ExecutionStepContext] ExecutionStepContext
167
168
  def initialize(version, flow_sid, execution_sid, sid)
168
169
  super(version)
@@ -231,9 +232,9 @@ module Twilio
231
232
  # Initialize the ExecutionStepInstance
232
233
  # @param [Version] version Version that contains the resource
233
234
  # @param [Hash] payload payload that contains response from Twilio
234
- # @param [String] flow_sid The flow_sid
235
- # @param [String] execution_sid The execution_sid
236
- # @param [String] sid The sid
235
+ # @param [String] flow_sid The SID of the Flow.
236
+ # @param [String] execution_sid The SID of the Step's Execution resource.
237
+ # @param [String] sid The SID of the ExecutionStep resource to fetch.
237
238
  # @return [ExecutionStepInstance] ExecutionStepInstance
238
239
  def initialize(version, payload, flow_sid: nil, execution_sid: nil, sid: nil)
239
240
  super(version)
@@ -280,73 +281,73 @@ module Twilio
280
281
  end
281
282
 
282
283
  ##
283
- # @return [String] The sid
284
+ # @return [String] The unique string that identifies the resource
284
285
  def sid
285
286
  @properties['sid']
286
287
  end
287
288
 
288
289
  ##
289
- # @return [String] The account_sid
290
+ # @return [String] The SID of the Account that created the resource
290
291
  def account_sid
291
292
  @properties['account_sid']
292
293
  end
293
294
 
294
295
  ##
295
- # @return [String] The flow_sid
296
+ # @return [String] The SID of the Flow
296
297
  def flow_sid
297
298
  @properties['flow_sid']
298
299
  end
299
300
 
300
301
  ##
301
- # @return [String] The execution_sid
302
+ # @return [String] The SID of the Execution
302
303
  def execution_sid
303
304
  @properties['execution_sid']
304
305
  end
305
306
 
306
307
  ##
307
- # @return [String] The name
308
+ # @return [String] The event that caused the Flow to transition to the Step
308
309
  def name
309
310
  @properties['name']
310
311
  end
311
312
 
312
313
  ##
313
- # @return [Hash] The context
314
+ # @return [Hash] The current state of the flow
314
315
  def context
315
316
  @properties['context']
316
317
  end
317
318
 
318
319
  ##
319
- # @return [String] The transitioned_from
320
+ # @return [String] The Widget that preceded the Widget for the Step
320
321
  def transitioned_from
321
322
  @properties['transitioned_from']
322
323
  end
323
324
 
324
325
  ##
325
- # @return [String] The transitioned_to
326
+ # @return [String] The Widget that will follow the Widget for the Step
326
327
  def transitioned_to
327
328
  @properties['transitioned_to']
328
329
  end
329
330
 
330
331
  ##
331
- # @return [Time] The date_created
332
+ # @return [Time] The ISO 8601 date and time in GMT when the resource was created
332
333
  def date_created
333
334
  @properties['date_created']
334
335
  end
335
336
 
336
337
  ##
337
- # @return [Time] The date_updated
338
+ # @return [Time] The ISO 8601 date and time in GMT when the resource was last updated
338
339
  def date_updated
339
340
  @properties['date_updated']
340
341
  end
341
342
 
342
343
  ##
343
- # @return [String] The url
344
+ # @return [String] The absolute URL of the resource
344
345
  def url
345
346
  @properties['url']
346
347
  end
347
348
 
348
349
  ##
349
- # @return [String] The links
350
+ # @return [String] The URLs of related resources
350
351
  def links
351
352
  @properties['links']
352
353
  end
@@ -19,9 +19,10 @@ module Twilio
19
19
  ##
20
20
  # Initialize the ExecutionStepContextList
21
21
  # @param [Version] version Version that contains the resource
22
- # @param [String] flow_sid The flow_sid
23
- # @param [String] execution_sid The execution_sid
24
- # @param [String] step_sid The step_sid
22
+ # @param [String] flow_sid The SID of the Flow.
23
+ # @param [String] execution_sid The SID of the context's Execution resource.
24
+ # @param [String] step_sid The SID of the Step that the context is associated
25
+ # with.
25
26
  # @return [ExecutionStepContextList] ExecutionStepContextList
26
27
  def initialize(version, flow_sid: nil, execution_sid: nil, step_sid: nil)
27
28
  super(version)
@@ -80,9 +81,10 @@ module Twilio
80
81
  ##
81
82
  # Initialize the ExecutionStepContextContext
82
83
  # @param [Version] version Version that contains the resource
83
- # @param [String] flow_sid The flow_sid
84
- # @param [String] execution_sid The execution_sid
85
- # @param [String] step_sid The step_sid
84
+ # @param [String] flow_sid The SID of the Flow with the Step to fetch.
85
+ # @param [String] execution_sid The SID of the Execution resource with the Step to
86
+ # fetch.
87
+ # @param [String] step_sid The SID of the Step to fetch.
86
88
  # @return [ExecutionStepContextContext] ExecutionStepContextContext
87
89
  def initialize(version, flow_sid, execution_sid, step_sid)
88
90
  super(version)
@@ -135,9 +137,10 @@ module Twilio
135
137
  # Initialize the ExecutionStepContextInstance
136
138
  # @param [Version] version Version that contains the resource
137
139
  # @param [Hash] payload payload that contains response from Twilio
138
- # @param [String] flow_sid The flow_sid
139
- # @param [String] execution_sid The execution_sid
140
- # @param [String] step_sid The step_sid
140
+ # @param [String] flow_sid The SID of the Flow.
141
+ # @param [String] execution_sid The SID of the context's Execution resource.
142
+ # @param [String] step_sid The SID of the Step that the context is associated
143
+ # with.
141
144
  # @return [ExecutionStepContextInstance] ExecutionStepContextInstance
142
145
  def initialize(version, payload, flow_sid: nil, execution_sid: nil, step_sid: nil)
143
146
  super(version)
@@ -174,37 +177,37 @@ module Twilio
174
177
  end
175
178
 
176
179
  ##
177
- # @return [String] The account_sid
180
+ # @return [String] The SID of the Account that created the resource
178
181
  def account_sid
179
182
  @properties['account_sid']
180
183
  end
181
184
 
182
185
  ##
183
- # @return [Hash] The context
186
+ # @return [Hash] The current state of the flow
184
187
  def context
185
188
  @properties['context']
186
189
  end
187
190
 
188
191
  ##
189
- # @return [String] The execution_sid
192
+ # @return [String] The SID of the Execution
190
193
  def execution_sid
191
194
  @properties['execution_sid']
192
195
  end
193
196
 
194
197
  ##
195
- # @return [String] The flow_sid
198
+ # @return [String] The SID of the Flow
196
199
  def flow_sid
197
200
  @properties['flow_sid']
198
201
  end
199
202
 
200
203
  ##
201
- # @return [String] The step_sid
204
+ # @return [String] Step SID
202
205
  def step_sid
203
206
  @properties['step_sid']
204
207
  end
205
208
 
206
209
  ##
207
- # @return [String] The url
210
+ # @return [String] The absolute URL of the resource
208
211
  def url
209
212
  @properties['url']
210
213
  end
@@ -46,6 +46,24 @@ module Twilio
46
46
  self.v1.fleets(sid)
47
47
  end
48
48
 
49
+ ##
50
+ # @param [String] sid The unique string that we created to identify the Network
51
+ # resource.
52
+ # @return [Twilio::REST::Supersim::V1::NetworkInstance] if sid was passed.
53
+ # @return [Twilio::REST::Supersim::V1::NetworkList]
54
+ def networks(sid=:unset)
55
+ self.v1.networks(sid)
56
+ end
57
+
58
+ ##
59
+ # @param [String] sid The unique string that identifies the Network Access Profile
60
+ # resource.
61
+ # @return [Twilio::REST::Supersim::V1::NetworkAccessProfileInstance] if sid was passed.
62
+ # @return [Twilio::REST::Supersim::V1::NetworkAccessProfileList]
63
+ def network_access_profiles(sid=:unset)
64
+ self.v1.network_access_profiles(sid)
65
+ end
66
+
49
67
  ##
50
68
  # @param [String] sid The unique string that identifies the Sim resource.
51
69
  # @return [Twilio::REST::Supersim::V1::SimInstance] if sid was passed.
@@ -17,6 +17,8 @@ module Twilio
17
17
  @version = 'v1'
18
18
  @commands = nil
19
19
  @fleets = nil
20
+ @networks = nil
21
+ @network_access_profiles = nil
20
22
  @sims = nil
21
23
  @usage_records = nil
22
24
  end
@@ -49,6 +51,34 @@ module Twilio
49
51
  end
50
52
  end
51
53
 
54
+ ##
55
+ # @param [String] sid The SID of the Network resource to fetch.
56
+ # @return [Twilio::REST::Supersim::V1::NetworkContext] if sid was passed.
57
+ # @return [Twilio::REST::Supersim::V1::NetworkList]
58
+ def networks(sid=:unset)
59
+ if sid.nil?
60
+ raise ArgumentError, 'sid cannot be nil'
61
+ elsif sid == :unset
62
+ @networks ||= NetworkList.new self
63
+ else
64
+ NetworkContext.new(self, sid)
65
+ end
66
+ end
67
+
68
+ ##
69
+ # @param [String] sid The SID of the Network Access Profile resource to fetch.
70
+ # @return [Twilio::REST::Supersim::V1::NetworkAccessProfileContext] if sid was passed.
71
+ # @return [Twilio::REST::Supersim::V1::NetworkAccessProfileList]
72
+ def network_access_profiles(sid=:unset)
73
+ if sid.nil?
74
+ raise ArgumentError, 'sid cannot be nil'
75
+ elsif sid == :unset
76
+ @network_access_profiles ||= NetworkAccessProfileList.new self
77
+ else
78
+ NetworkAccessProfileContext.new(self, sid)
79
+ end
80
+ end
81
+
52
82
  ##
53
83
  # @param [String] sid The SID of the Sim resource to fetch.
54
84
  # @return [Twilio::REST::Supersim::V1::SimContext] if sid was passed.
@@ -33,6 +33,7 @@ module Twilio
33
33
  # URL to address the resource.
34
34
  # @param [Boolean] data_enabled Defines whether SIMs in the Fleet are capable of
35
35
  # using 2G/3G/4G/LTE/CAT-M/NB-IoT data connectivity
36
+ # @param [String] data_limit The data_limit
36
37
  # @param [Boolean] commands_enabled Defines whether SIMs in the Fleet are capable
37
38
  # of sending and receiving Commands via SMS.
38
39
  # @param [String] commands_url The URL that will receive a webhook when a SIM in
@@ -41,14 +42,19 @@ module Twilio
41
42
  # @param [String] commands_method A string representing the HTTP method to use
42
43
  # when making a request to `commands_url`. Can be one of POST or GET. Defaults to
43
44
  # POST.
45
+ # @param [String] network_access_profile The SID or unique name of the Network
46
+ # Access Profile that will control which cellular network operators the Fleet's
47
+ # SIMs can connect to
44
48
  # @return [FleetInstance] Newly created FleetInstance
45
- def create(unique_name: :unset, data_enabled: :unset, commands_enabled: :unset, commands_url: :unset, commands_method: :unset)
49
+ def create(unique_name: :unset, data_enabled: :unset, data_limit: :unset, commands_enabled: :unset, commands_url: :unset, commands_method: :unset, network_access_profile: :unset)
46
50
  data = Twilio::Values.of({
47
51
  'UniqueName' => unique_name,
48
52
  'DataEnabled' => data_enabled,
53
+ 'DataLimit' => data_limit,
49
54
  'CommandsEnabled' => commands_enabled,
50
55
  'CommandsUrl' => commands_url,
51
56
  'CommandsMethod' => commands_method,
57
+ 'NetworkAccessProfile' => network_access_profile,
52
58
  })
53
59
 
54
60
  payload = @version.create(
@@ -64,6 +70,9 @@ module Twilio
64
70
  # Lists FleetInstance records from the API as a list.
65
71
  # Unlike stream(), this operation is eager and will load `limit` records into
66
72
  # memory before returning.
73
+ # @param [String] network_access_profile The SID or unique name of the Network
74
+ # Access Profile that controls which cellular network operators the Fleet's SIMs
75
+ # can connect to
67
76
  # @param [Integer] limit Upper limit for the number of records to return. stream()
68
77
  # guarantees to never return more than limit. Default is no limit
69
78
  # @param [Integer] page_size Number of records to fetch per request, when
@@ -71,14 +80,21 @@ module Twilio
71
80
  # but a limit is defined, stream() will attempt to read the limit with the most
72
81
  # efficient page size, i.e. min(limit, 1000)
73
82
  # @return [Array] Array of up to limit results
74
- def list(limit: nil, page_size: nil)
75
- self.stream(limit: limit, page_size: page_size).entries
83
+ def list(network_access_profile: :unset, limit: nil, page_size: nil)
84
+ self.stream(
85
+ network_access_profile: network_access_profile,
86
+ limit: limit,
87
+ page_size: page_size
88
+ ).entries
76
89
  end
77
90
 
78
91
  ##
79
92
  # Streams FleetInstance records from the API as an Enumerable.
80
93
  # This operation lazily loads records as efficiently as possible until the limit
81
94
  # is reached.
95
+ # @param [String] network_access_profile The SID or unique name of the Network
96
+ # Access Profile that controls which cellular network operators the Fleet's SIMs
97
+ # can connect to
82
98
  # @param [Integer] limit Upper limit for the number of records to return. stream()
83
99
  # guarantees to never return more than limit. Default is no limit.
84
100
  # @param [Integer] page_size Number of records to fetch per request, when
@@ -86,10 +102,10 @@ module Twilio
86
102
  # but a limit is defined, stream() will attempt to read the limit with the most
87
103
  # efficient page size, i.e. min(limit, 1000)
88
104
  # @return [Enumerable] Enumerable that will yield up to limit results
89
- def stream(limit: nil, page_size: nil)
105
+ def stream(network_access_profile: :unset, limit: nil, page_size: nil)
90
106
  limits = @version.read_limits(limit, page_size)
91
107
 
92
- page = self.page(page_size: limits[:page_size], )
108
+ page = self.page(network_access_profile: network_access_profile, page_size: limits[:page_size], )
93
109
 
94
110
  @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
95
111
  end
@@ -111,12 +127,16 @@ module Twilio
111
127
  ##
112
128
  # Retrieve a single page of FleetInstance records from the API.
113
129
  # Request is executed immediately.
130
+ # @param [String] network_access_profile The SID or unique name of the Network
131
+ # Access Profile that controls which cellular network operators the Fleet's SIMs
132
+ # can connect to
114
133
  # @param [String] page_token PageToken provided by the API
115
134
  # @param [Integer] page_number Page Number, this value is simply for client state
116
135
  # @param [Integer] page_size Number of records to return, defaults to 50
117
136
  # @return [Page] Page of FleetInstance
118
- def page(page_token: :unset, page_number: :unset, page_size: :unset)
137
+ def page(network_access_profile: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
119
138
  params = Twilio::Values.of({
139
+ 'NetworkAccessProfile' => network_access_profile,
120
140
  'PageToken' => page_token,
121
141
  'Page' => page_number,
122
142
  'PageSize' => page_size,
@@ -216,9 +236,15 @@ module Twilio
216
236
  # @param [String] unique_name An application-defined string that uniquely
217
237
  # identifies the resource. It can be used in place of the resource's `sid` in the
218
238
  # URL to address the resource.
239
+ # @param [String] network_access_profile The SID or unique name of the Network
240
+ # Access Profile that will control which cellular network operators the Fleet's
241
+ # SIMs can connect to
219
242
  # @return [FleetInstance] Updated FleetInstance
220
- def update(unique_name: :unset)
221
- data = Twilio::Values.of({'UniqueName' => unique_name, })
243
+ def update(unique_name: :unset, network_access_profile: :unset)
244
+ data = Twilio::Values.of({
245
+ 'UniqueName' => unique_name,
246
+ 'NetworkAccessProfile' => network_access_profile,
247
+ })
222
248
 
223
249
  payload = @version.update(
224
250
  'POST',
@@ -265,10 +291,12 @@ module Twilio
265
291
  'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
266
292
  'url' => payload['url'],
267
293
  'data_enabled' => payload['data_enabled'],
294
+ 'data_limit' => payload['data_limit'].to_i,
268
295
  'data_metering' => payload['data_metering'],
269
296
  'commands_enabled' => payload['commands_enabled'],
270
297
  'commands_url' => payload['commands_url'],
271
298
  'commands_method' => payload['commands_method'],
299
+ 'network_access_profile_sid' => payload['network_access_profile_sid'],
272
300
  }
273
301
 
274
302
  # Context
@@ -329,6 +357,12 @@ module Twilio
329
357
  @properties['data_enabled']
330
358
  end
331
359
 
360
+ ##
361
+ # @return [String] The total data usage (download and upload combined) in Megabytes that each Sim resource assigned to the Fleet resource can consume
362
+ def data_limit
363
+ @properties['data_limit']
364
+ end
365
+
332
366
  ##
333
367
  # @return [fleet.DataMetering] The model by which a SIM is metered and billed
334
368
  def data_metering
@@ -353,6 +387,12 @@ module Twilio
353
387
  @properties['commands_method']
354
388
  end
355
389
 
390
+ ##
391
+ # @return [String] The SID of the Network Access Profile of the Fleet
392
+ def network_access_profile_sid
393
+ @properties['network_access_profile_sid']
394
+ end
395
+
356
396
  ##
357
397
  # Fetch a FleetInstance
358
398
  # @return [FleetInstance] Fetched FleetInstance
@@ -365,9 +405,12 @@ module Twilio
365
405
  # @param [String] unique_name An application-defined string that uniquely
366
406
  # identifies the resource. It can be used in place of the resource's `sid` in the
367
407
  # URL to address the resource.
408
+ # @param [String] network_access_profile The SID or unique name of the Network
409
+ # Access Profile that will control which cellular network operators the Fleet's
410
+ # SIMs can connect to
368
411
  # @return [FleetInstance] Updated FleetInstance
369
- def update(unique_name: :unset)
370
- context.update(unique_name: unique_name, )
412
+ def update(unique_name: :unset, network_access_profile: :unset)
413
+ context.update(unique_name: unique_name, network_access_profile: network_access_profile, )
371
414
  end
372
415
 
373
416
  ##