twilio-ruby 5.35.0 → 5.36.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 (56) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGES.md +28 -0
  3. data/README.md +2 -2
  4. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +87 -87
  5. data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +14 -0
  6. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +71 -71
  7. data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +29 -29
  8. data/lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb +27 -4
  9. data/lib/twilio-ruby/rest/flex_api/v1/channel.rb +2 -1
  10. data/lib/twilio-ruby/rest/flex_api/v1/configuration.rb +7 -0
  11. data/lib/twilio-ruby/rest/flex_api/v1/flex_flow.rb +6 -3
  12. data/lib/twilio-ruby/rest/preview/trusted_comms/business.rb +26 -0
  13. data/lib/twilio-ruby/rest/preview/trusted_comms/business/brand.rb +239 -0
  14. data/lib/twilio-ruby/rest/preview/trusted_comms/business/brand/branded_channel.rb +266 -0
  15. data/lib/twilio-ruby/rest/preview/trusted_comms/business/brand/branded_channel/channel.rb +197 -0
  16. data/lib/twilio-ruby/rest/serverless/v1/service/environment/log.rb +7 -0
  17. data/lib/twilio-ruby/rest/supersim.rb +11 -1
  18. data/lib/twilio-ruby/rest/supersim/v1.rb +16 -1
  19. data/lib/twilio-ruby/rest/supersim/v1/fleet.rb +10 -1
  20. data/lib/twilio-ruby/rest/supersim/v1/network.rb +315 -0
  21. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile.rb +53 -12
  22. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile/network_access_profile_network.rb +352 -0
  23. data/lib/twilio-ruby/rest/verify.rb +9 -0
  24. data/lib/twilio-ruby/rest/verify/v2.rb +16 -0
  25. data/lib/twilio-ruby/rest/verify/v2/form.rb +197 -0
  26. data/lib/twilio-ruby/rest/verify/v2/service.rb +26 -0
  27. data/lib/twilio-ruby/rest/verify/v2/service/entity.rb +379 -0
  28. data/lib/twilio-ruby/rest/verify/v2/service/entity/factor.rb +500 -0
  29. data/lib/twilio-ruby/rest/verify/v2/service/entity/factor/challenge.rb +494 -0
  30. data/lib/twilio-ruby/rest/video/v1/composition_settings.rb +8 -4
  31. data/lib/twilio-ruby/rest/video/v1/recording_settings.rb +8 -4
  32. data/lib/twilio-ruby/version.rb +1 -1
  33. data/spec/integration/api/v2010/account/call_spec.rb +5 -5
  34. data/spec/integration/api/v2010/account/conference_spec.rb +42 -14
  35. data/spec/integration/conversations/v1/conversation/participant_spec.rb +7 -0
  36. data/spec/integration/flex_api/v1/configuration_spec.rb +3 -0
  37. data/spec/integration/preview/trusted_comms/business/brand/branded_channel/channel_spec.rb +54 -0
  38. data/spec/integration/preview/trusted_comms/business/brand/branded_channel_spec.rb +52 -0
  39. data/spec/integration/preview/trusted_comms/business/brand_spec.rb +49 -0
  40. data/spec/integration/preview/trusted_comms/business_spec.rb +1 -0
  41. data/spec/integration/serverless/v1/service/environment/log_spec.rb +1 -0
  42. data/spec/integration/supersim/v1/fleet_spec.rb +4 -0
  43. data/spec/integration/supersim/v1/network_access_profile/network_access_profile_network_spec.rb +179 -0
  44. data/spec/integration/supersim/v1/network_access_profile_spec.rb +20 -5
  45. data/spec/integration/supersim/v1/network_spec.rb +139 -0
  46. data/spec/integration/trunking/v1/trunk/credential_list_spec.rb +13 -13
  47. data/spec/integration/trunking/v1/trunk/ip_access_control_list_spec.rb +23 -23
  48. data/spec/integration/trunking/v1/trunk/origination_url_spec.rb +28 -28
  49. data/spec/integration/trunking/v1/trunk/phone_number_spec.rb +17 -17
  50. data/spec/integration/trunking/v1/trunk_spec.rb +33 -33
  51. data/spec/integration/verify/v2/form_spec.rb +48 -0
  52. data/spec/integration/verify/v2/service/entity/factor/challenge_spec.rb +353 -0
  53. data/spec/integration/verify/v2/service/entity/factor_spec.rb +298 -0
  54. data/spec/integration/verify/v2/service/entity_spec.rb +201 -0
  55. data/spec/integration/verify/v2/service_spec.rb +24 -4
  56. metadata +29 -2
@@ -266,6 +266,7 @@ module Twilio
266
266
  'account_sid' => payload['account_sid'],
267
267
  'service_sid' => payload['service_sid'],
268
268
  'environment_sid' => payload['environment_sid'],
269
+ 'build_sid' => payload['build_sid'],
269
270
  'deployment_sid' => payload['deployment_sid'],
270
271
  'function_sid' => payload['function_sid'],
271
272
  'request_sid' => payload['request_sid'],
@@ -324,6 +325,12 @@ module Twilio
324
325
  @properties['environment_sid']
325
326
  end
326
327
 
328
+ ##
329
+ # @return [String] The SID of the build that corresponds to the log
330
+ def build_sid
331
+ @properties['build_sid']
332
+ end
333
+
327
334
  ##
328
335
  # @return [String] The SID of the deployment that corresponds to the log
329
336
  def deployment_sid
@@ -47,7 +47,17 @@ module Twilio
47
47
  end
48
48
 
49
49
  ##
50
- # @param [String] sid The sid
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.
51
61
  # @return [Twilio::REST::Supersim::V1::NetworkAccessProfileInstance] if sid was passed.
52
62
  # @return [Twilio::REST::Supersim::V1::NetworkAccessProfileList]
53
63
  def network_access_profiles(sid=:unset)
@@ -17,6 +17,7 @@ module Twilio
17
17
  @version = 'v1'
18
18
  @commands = nil
19
19
  @fleets = nil
20
+ @networks = nil
20
21
  @network_access_profiles = nil
21
22
  @sims = nil
22
23
  @usage_records = nil
@@ -51,7 +52,21 @@ module Twilio
51
52
  end
52
53
 
53
54
  ##
54
- # @param [String] sid The sid
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.
55
70
  # @return [Twilio::REST::Supersim::V1::NetworkAccessProfileContext] if sid was passed.
56
71
  # @return [Twilio::REST::Supersim::V1::NetworkAccessProfileList]
57
72
  def network_access_profiles(sid=:unset)
@@ -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
@@ -45,10 +46,11 @@ module Twilio
45
46
  # Access Profile that will control which cellular network operators the Fleet's
46
47
  # SIMs can connect to
47
48
  # @return [FleetInstance] Newly created FleetInstance
48
- def create(unique_name: :unset, data_enabled: :unset, commands_enabled: :unset, commands_url: :unset, commands_method: :unset, network_access_profile: :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)
49
50
  data = Twilio::Values.of({
50
51
  'UniqueName' => unique_name,
51
52
  'DataEnabled' => data_enabled,
53
+ 'DataLimit' => data_limit,
52
54
  'CommandsEnabled' => commands_enabled,
53
55
  'CommandsUrl' => commands_url,
54
56
  'CommandsMethod' => commands_method,
@@ -289,6 +291,7 @@ module Twilio
289
291
  'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
290
292
  'url' => payload['url'],
291
293
  'data_enabled' => payload['data_enabled'],
294
+ 'data_limit' => payload['data_limit'].to_i,
292
295
  'data_metering' => payload['data_metering'],
293
296
  'commands_enabled' => payload['commands_enabled'],
294
297
  'commands_url' => payload['commands_url'],
@@ -354,6 +357,12 @@ module Twilio
354
357
  @properties['data_enabled']
355
358
  end
356
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
+
357
366
  ##
358
367
  # @return [fleet.DataMetering] The model by which a SIM is metered and billed
359
368
  def data_metering
@@ -0,0 +1,315 @@
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 Supersim < Domain
12
+ class V1 < Version
13
+ ##
14
+ # 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.
15
+ class NetworkList < ListResource
16
+ ##
17
+ # Initialize the NetworkList
18
+ # @param [Version] version Version that contains the resource
19
+ # @return [NetworkList] NetworkList
20
+ def initialize(version)
21
+ super(version)
22
+
23
+ # Path Solution
24
+ @solution = {}
25
+ @uri = "/Networks"
26
+ end
27
+
28
+ ##
29
+ # Lists NetworkInstance records from the API as a list.
30
+ # Unlike stream(), this operation is eager and will load `limit` records into
31
+ # memory before returning.
32
+ # @param [String] iso_country The [ISO country
33
+ # code](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) of the Network resources
34
+ # to read.
35
+ # @param [String] mcc The 'mobile country code' of a country. Network resources
36
+ # with this `mcc` in their `identifiers` will be read.
37
+ # @param [String] mnc The 'mobile network code' of a mobile operator network.
38
+ # Network resources with this `mnc` in their `identifiers` will be read.
39
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
40
+ # guarantees to never return more than limit. Default is no limit
41
+ # @param [Integer] page_size Number of records to fetch per request, when
42
+ # not set will use the default value of 50 records. If no page_size is defined
43
+ # but a limit is defined, stream() will attempt to read the limit with the most
44
+ # efficient page size, i.e. min(limit, 1000)
45
+ # @return [Array] Array of up to limit results
46
+ def list(iso_country: :unset, mcc: :unset, mnc: :unset, limit: nil, page_size: nil)
47
+ self.stream(
48
+ iso_country: iso_country,
49
+ mcc: mcc,
50
+ mnc: mnc,
51
+ limit: limit,
52
+ page_size: page_size
53
+ ).entries
54
+ end
55
+
56
+ ##
57
+ # Streams NetworkInstance records from the API as an Enumerable.
58
+ # This operation lazily loads records as efficiently as possible until the limit
59
+ # is reached.
60
+ # @param [String] iso_country The [ISO country
61
+ # code](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) of the Network resources
62
+ # to read.
63
+ # @param [String] mcc The 'mobile country code' of a country. Network resources
64
+ # with this `mcc` in their `identifiers` will be read.
65
+ # @param [String] mnc The 'mobile network code' of a mobile operator network.
66
+ # Network resources with this `mnc` in their `identifiers` will be read.
67
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
68
+ # guarantees to never return more than limit. Default is no limit.
69
+ # @param [Integer] page_size Number of records to fetch per request, when
70
+ # not set will use the default value of 50 records. If no page_size is defined
71
+ # but a limit is defined, stream() will attempt to read the limit with the most
72
+ # efficient page size, i.e. min(limit, 1000)
73
+ # @return [Enumerable] Enumerable that will yield up to limit results
74
+ def stream(iso_country: :unset, mcc: :unset, mnc: :unset, limit: nil, page_size: nil)
75
+ limits = @version.read_limits(limit, page_size)
76
+
77
+ page = self.page(iso_country: iso_country, mcc: mcc, mnc: mnc, page_size: limits[:page_size], )
78
+
79
+ @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
80
+ end
81
+
82
+ ##
83
+ # When passed a block, yields NetworkInstance records from the API.
84
+ # This operation lazily loads records as efficiently as possible until the limit
85
+ # is reached.
86
+ def each
87
+ limits = @version.read_limits
88
+
89
+ page = self.page(page_size: limits[:page_size], )
90
+
91
+ @version.stream(page,
92
+ limit: limits[:limit],
93
+ page_limit: limits[:page_limit]).each {|x| yield x}
94
+ end
95
+
96
+ ##
97
+ # Retrieve a single page of NetworkInstance records from the API.
98
+ # Request is executed immediately.
99
+ # @param [String] iso_country The [ISO country
100
+ # code](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) of the Network resources
101
+ # to read.
102
+ # @param [String] mcc The 'mobile country code' of a country. Network resources
103
+ # with this `mcc` in their `identifiers` will be read.
104
+ # @param [String] mnc The 'mobile network code' of a mobile operator network.
105
+ # Network resources with this `mnc` in their `identifiers` will be read.
106
+ # @param [String] page_token PageToken provided by the API
107
+ # @param [Integer] page_number Page Number, this value is simply for client state
108
+ # @param [Integer] page_size Number of records to return, defaults to 50
109
+ # @return [Page] Page of NetworkInstance
110
+ def page(iso_country: :unset, mcc: :unset, mnc: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
111
+ params = Twilio::Values.of({
112
+ 'IsoCountry' => iso_country,
113
+ 'Mcc' => mcc,
114
+ 'Mnc' => mnc,
115
+ 'PageToken' => page_token,
116
+ 'Page' => page_number,
117
+ 'PageSize' => page_size,
118
+ })
119
+ response = @version.page(
120
+ 'GET',
121
+ @uri,
122
+ params
123
+ )
124
+ NetworkPage.new(@version, response, @solution)
125
+ end
126
+
127
+ ##
128
+ # Retrieve a single page of NetworkInstance records from the API.
129
+ # Request is executed immediately.
130
+ # @param [String] target_url API-generated URL for the requested results page
131
+ # @return [Page] Page of NetworkInstance
132
+ def get_page(target_url)
133
+ response = @version.domain.request(
134
+ 'GET',
135
+ target_url
136
+ )
137
+ NetworkPage.new(@version, response, @solution)
138
+ end
139
+
140
+ ##
141
+ # Provide a user friendly representation
142
+ def to_s
143
+ '#<Twilio.Supersim.V1.NetworkList>'
144
+ end
145
+ end
146
+
147
+ ##
148
+ # 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.
149
+ class NetworkPage < Page
150
+ ##
151
+ # Initialize the NetworkPage
152
+ # @param [Version] version Version that contains the resource
153
+ # @param [Response] response Response from the API
154
+ # @param [Hash] solution Path solution for the resource
155
+ # @return [NetworkPage] NetworkPage
156
+ def initialize(version, response, solution)
157
+ super(version, response)
158
+
159
+ # Path Solution
160
+ @solution = solution
161
+ end
162
+
163
+ ##
164
+ # Build an instance of NetworkInstance
165
+ # @param [Hash] payload Payload response from the API
166
+ # @return [NetworkInstance] NetworkInstance
167
+ def get_instance(payload)
168
+ NetworkInstance.new(@version, payload, )
169
+ end
170
+
171
+ ##
172
+ # Provide a user friendly representation
173
+ def to_s
174
+ '<Twilio.Supersim.V1.NetworkPage>'
175
+ end
176
+ end
177
+
178
+ ##
179
+ # 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.
180
+ class NetworkContext < InstanceContext
181
+ ##
182
+ # Initialize the NetworkContext
183
+ # @param [Version] version Version that contains the resource
184
+ # @param [String] sid The SID of the Network resource to fetch.
185
+ # @return [NetworkContext] NetworkContext
186
+ def initialize(version, sid)
187
+ super(version)
188
+
189
+ # Path Solution
190
+ @solution = {sid: sid, }
191
+ @uri = "/Networks/#{@solution[:sid]}"
192
+ end
193
+
194
+ ##
195
+ # Fetch a NetworkInstance
196
+ # @return [NetworkInstance] Fetched NetworkInstance
197
+ def fetch
198
+ params = Twilio::Values.of({})
199
+
200
+ payload = @version.fetch(
201
+ 'GET',
202
+ @uri,
203
+ params,
204
+ )
205
+
206
+ NetworkInstance.new(@version, payload, sid: @solution[:sid], )
207
+ end
208
+
209
+ ##
210
+ # Provide a user friendly representation
211
+ def to_s
212
+ context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
213
+ "#<Twilio.Supersim.V1.NetworkContext #{context}>"
214
+ end
215
+
216
+ ##
217
+ # Provide a detailed, user friendly representation
218
+ def inspect
219
+ context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
220
+ "#<Twilio.Supersim.V1.NetworkContext #{context}>"
221
+ end
222
+ end
223
+
224
+ ##
225
+ # 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.
226
+ class NetworkInstance < InstanceResource
227
+ ##
228
+ # Initialize the NetworkInstance
229
+ # @param [Version] version Version that contains the resource
230
+ # @param [Hash] payload payload that contains response from Twilio
231
+ # @param [String] sid The SID of the Network resource to fetch.
232
+ # @return [NetworkInstance] NetworkInstance
233
+ def initialize(version, payload, sid: nil)
234
+ super(version)
235
+
236
+ # Marshaled Properties
237
+ @properties = {
238
+ 'sid' => payload['sid'],
239
+ 'friendly_name' => payload['friendly_name'],
240
+ 'url' => payload['url'],
241
+ 'iso_country' => payload['iso_country'],
242
+ 'identifiers' => payload['identifiers'],
243
+ }
244
+
245
+ # Context
246
+ @instance_context = nil
247
+ @params = {'sid' => sid || @properties['sid'], }
248
+ end
249
+
250
+ ##
251
+ # Generate an instance context for the instance, the context is capable of
252
+ # performing various actions. All instance actions are proxied to the context
253
+ # @return [NetworkContext] NetworkContext for this NetworkInstance
254
+ def context
255
+ unless @instance_context
256
+ @instance_context = NetworkContext.new(@version, @params['sid'], )
257
+ end
258
+ @instance_context
259
+ end
260
+
261
+ ##
262
+ # @return [String] The unique string that identifies the resource
263
+ def sid
264
+ @properties['sid']
265
+ end
266
+
267
+ ##
268
+ # @return [String] A human readable identifier of this resource
269
+ def friendly_name
270
+ @properties['friendly_name']
271
+ end
272
+
273
+ ##
274
+ # @return [String] The absolute URL of the Network resource
275
+ def url
276
+ @properties['url']
277
+ end
278
+
279
+ ##
280
+ # @return [String] The ISO country code of the Network resource
281
+ def iso_country
282
+ @properties['iso_country']
283
+ end
284
+
285
+ ##
286
+ # @return [Hash] The MCC/MNCs included in the Network resource
287
+ def identifiers
288
+ @properties['identifiers']
289
+ end
290
+
291
+ ##
292
+ # Fetch a NetworkInstance
293
+ # @return [NetworkInstance] Fetched NetworkInstance
294
+ def fetch
295
+ context.fetch
296
+ end
297
+
298
+ ##
299
+ # Provide a user friendly representation
300
+ def to_s
301
+ values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
302
+ "<Twilio.Supersim.V1.NetworkInstance #{values}>"
303
+ end
304
+
305
+ ##
306
+ # Provide a detailed, user friendly representation
307
+ def inspect
308
+ values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
309
+ "<Twilio.Supersim.V1.NetworkInstance #{values}>"
310
+ end
311
+ end
312
+ end
313
+ end
314
+ end
315
+ end
@@ -28,8 +28,11 @@ module Twilio
28
28
  ##
29
29
  # Retrieve a single page of NetworkAccessProfileInstance records from the API.
30
30
  # Request is executed immediately.
31
- # @param [String] unique_name The unique_name
32
- # @param [String] networks The networks
31
+ # @param [String] unique_name An application-defined string that uniquely
32
+ # identifies the resource. It can be used in place of the resource's `sid` in the
33
+ # URL to address the resource.
34
+ # @param [String] networks List of Network SIDs that this Network Access Profile
35
+ # will allow connections to.
33
36
  # @return [NetworkAccessProfileInstance] Newly created NetworkAccessProfileInstance
34
37
  def create(unique_name: :unset, networks: :unset)
35
38
  data = Twilio::Values.of({
@@ -172,7 +175,7 @@ module Twilio
172
175
  ##
173
176
  # Initialize the NetworkAccessProfileContext
174
177
  # @param [Version] version Version that contains the resource
175
- # @param [String] sid The sid
178
+ # @param [String] sid The SID of the Network Access Profile resource to fetch.
176
179
  # @return [NetworkAccessProfileContext] NetworkAccessProfileContext
177
180
  def initialize(version, sid)
178
181
  super(version)
@@ -180,6 +183,9 @@ module Twilio
180
183
  # Path Solution
181
184
  @solution = {sid: sid, }
182
185
  @uri = "/NetworkAccessProfiles/#{@solution[:sid]}"
186
+
187
+ # Dependents
188
+ @networks = nil
183
189
  end
184
190
 
185
191
  ##
@@ -199,7 +205,7 @@ module Twilio
199
205
 
200
206
  ##
201
207
  # Update the NetworkAccessProfileInstance
202
- # @param [String] unique_name The unique_name
208
+ # @param [String] unique_name The new unique name of the Network Access Profile.
203
209
  # @return [NetworkAccessProfileInstance] Updated NetworkAccessProfileInstance
204
210
  def update(unique_name: :unset)
205
211
  data = Twilio::Values.of({'UniqueName' => unique_name, })
@@ -213,6 +219,27 @@ module Twilio
213
219
  NetworkAccessProfileInstance.new(@version, payload, sid: @solution[:sid], )
214
220
  end
215
221
 
222
+ ##
223
+ # Access the networks
224
+ # @return [NetworkAccessProfileNetworkList]
225
+ # @return [NetworkAccessProfileNetworkContext] if sid was passed.
226
+ def networks(sid=:unset)
227
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
228
+
229
+ if sid != :unset
230
+ return NetworkAccessProfileNetworkContext.new(@version, @solution[:sid], sid, )
231
+ end
232
+
233
+ unless @networks
234
+ @networks = NetworkAccessProfileNetworkList.new(
235
+ @version,
236
+ network_access_profile_sid: @solution[:sid],
237
+ )
238
+ end
239
+
240
+ @networks
241
+ end
242
+
216
243
  ##
217
244
  # Provide a user friendly representation
218
245
  def to_s
@@ -235,7 +262,7 @@ module Twilio
235
262
  # Initialize the NetworkAccessProfileInstance
236
263
  # @param [Version] version Version that contains the resource
237
264
  # @param [Hash] payload payload that contains response from Twilio
238
- # @param [String] sid The sid
265
+ # @param [String] sid The SID of the Network Access Profile resource to fetch.
239
266
  # @return [NetworkAccessProfileInstance] NetworkAccessProfileInstance
240
267
  def initialize(version, payload, sid: nil)
241
268
  super(version)
@@ -248,6 +275,7 @@ module Twilio
248
275
  'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
249
276
  'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
250
277
  'url' => payload['url'],
278
+ 'links' => payload['links'],
251
279
  }
252
280
 
253
281
  # Context
@@ -267,41 +295,47 @@ module Twilio
267
295
  end
268
296
 
269
297
  ##
270
- # @return [String] The sid
298
+ # @return [String] The unique string that identifies the resource
271
299
  def sid
272
300
  @properties['sid']
273
301
  end
274
302
 
275
303
  ##
276
- # @return [String] The unique_name
304
+ # @return [String] An application-defined string that uniquely identifies the resource
277
305
  def unique_name
278
306
  @properties['unique_name']
279
307
  end
280
308
 
281
309
  ##
282
- # @return [String] The account_sid
310
+ # @return [String] The SID of the Account that the Network Access Profile belongs to
283
311
  def account_sid
284
312
  @properties['account_sid']
285
313
  end
286
314
 
287
315
  ##
288
- # @return [Time] The date_created
316
+ # @return [Time] The ISO 8601 date and time in GMT when the resource was created
289
317
  def date_created
290
318
  @properties['date_created']
291
319
  end
292
320
 
293
321
  ##
294
- # @return [Time] The date_updated
322
+ # @return [Time] The ISO 8601 date and time in GMT when the resource was last updated
295
323
  def date_updated
296
324
  @properties['date_updated']
297
325
  end
298
326
 
299
327
  ##
300
- # @return [String] The url
328
+ # @return [String] The absolute URL of the resource
301
329
  def url
302
330
  @properties['url']
303
331
  end
304
332
 
333
+ ##
334
+ # @return [String] The links
335
+ def links
336
+ @properties['links']
337
+ end
338
+
305
339
  ##
306
340
  # Fetch a NetworkAccessProfileInstance
307
341
  # @return [NetworkAccessProfileInstance] Fetched NetworkAccessProfileInstance
@@ -311,12 +345,19 @@ module Twilio
311
345
 
312
346
  ##
313
347
  # Update the NetworkAccessProfileInstance
314
- # @param [String] unique_name The unique_name
348
+ # @param [String] unique_name The new unique name of the Network Access Profile.
315
349
  # @return [NetworkAccessProfileInstance] Updated NetworkAccessProfileInstance
316
350
  def update(unique_name: :unset)
317
351
  context.update(unique_name: unique_name, )
318
352
  end
319
353
 
354
+ ##
355
+ # Access the networks
356
+ # @return [networks] networks
357
+ def networks
358
+ context.networks
359
+ end
360
+
320
361
  ##
321
362
  # Provide a user friendly representation
322
363
  def to_s