twilio-ruby 5.32.0 → 5.33.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 (35) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGES.md +26 -0
  3. data/README.md +2 -2
  4. data/lib/twilio-ruby/jwt/task_router.rb +2 -2
  5. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +22 -3
  6. data/lib/twilio-ruby/rest/authy/v1/service.rb +14 -5
  7. data/lib/twilio-ruby/rest/authy/v1/service/entity/factor/challenge.rb +89 -0
  8. data/lib/twilio-ruby/rest/bulkexports.rb +54 -0
  9. data/lib/twilio-ruby/rest/bulkexports/v1.rb +58 -0
  10. data/lib/twilio-ruby/rest/bulkexports/v1/export.rb +254 -0
  11. data/lib/twilio-ruby/rest/bulkexports/v1/export/day.rb +316 -0
  12. data/lib/twilio-ruby/rest/bulkexports/v1/export/export_custom_job.rb +298 -0
  13. data/lib/twilio-ruby/rest/bulkexports/v1/export/job.rb +253 -0
  14. data/lib/twilio-ruby/rest/bulkexports/v1/export_configuration.rb +242 -0
  15. data/lib/twilio-ruby/rest/chat/v2/service/user.rb +1 -1
  16. data/lib/twilio-ruby/rest/client.rb +7 -0
  17. data/lib/twilio-ruby/rest/flex_api/v1/configuration.rb +14 -0
  18. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +1 -1
  19. data/lib/twilio-ruby/rest/serverless/v1/service/environment/deployment.rb +1 -1
  20. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version.rb +30 -0
  21. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version/function_version_content.rb +247 -0
  22. data/lib/twilio-ruby/rest/supersim/v1/sim.rb +5 -5
  23. data/lib/twilio-ruby/version.rb +1 -1
  24. data/spec/integration/api/v2010/account/sip/domain_spec.rb +8 -4
  25. data/spec/integration/authy/v1/service/entity/factor/challenge_spec.rb +91 -0
  26. data/spec/integration/bulkexports/v1/export/day_spec.rb +117 -0
  27. data/spec/integration/bulkexports/v1/export/export_custom_job_spec.rb +129 -0
  28. data/spec/integration/bulkexports/v1/export/job_spec.rb +80 -0
  29. data/spec/integration/bulkexports/v1/export_configuration_spec.rb +79 -0
  30. data/spec/integration/bulkexports/v1/export_spec.rb +45 -0
  31. data/spec/integration/flex_api/v1/configuration_spec.rb +150 -0
  32. data/spec/integration/serverless/v1/service/environment/deployment_spec.rb +3 -4
  33. data/spec/integration/serverless/v1/service/function/function_version/function_version_content_spec.rb +52 -0
  34. data/spec/integration/serverless/v1/service/function/function_version_spec.rb +4 -1
  35. metadata +22 -2
@@ -0,0 +1,316 @@
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 Bulkexports < Domain
12
+ class V1 < Version
13
+ class ExportContext < InstanceContext
14
+ ##
15
+ # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
16
+ class DayList < ListResource
17
+ ##
18
+ # Initialize the DayList
19
+ # @param [Version] version Version that contains the resource
20
+ # @param [String] resource_type The type of communication – Messages, Calls
21
+ # @return [DayList] DayList
22
+ def initialize(version, resource_type: nil)
23
+ super(version)
24
+
25
+ # Path Solution
26
+ @solution = {resource_type: resource_type}
27
+ @uri = "/Exports/#{@solution[:resource_type]}/Days"
28
+ end
29
+
30
+ ##
31
+ # Lists DayInstance 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 [String] next_token The next_token
35
+ # @param [String] previous_token The previous_token
36
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
37
+ # guarantees to never return more than limit. Default is no limit
38
+ # @param [Integer] page_size Number of records to fetch per request, when
39
+ # not set will use the default value of 50 records. If no page_size is defined
40
+ # but a limit is defined, stream() will attempt to read the limit with the most
41
+ # efficient page size, i.e. min(limit, 1000)
42
+ # @return [Array] Array of up to limit results
43
+ def list(next_token: :unset, previous_token: :unset, limit: nil, page_size: nil)
44
+ self.stream(
45
+ next_token: next_token,
46
+ previous_token: previous_token,
47
+ limit: limit,
48
+ page_size: page_size
49
+ ).entries
50
+ end
51
+
52
+ ##
53
+ # Streams DayInstance records from the API as an Enumerable.
54
+ # This operation lazily loads records as efficiently as possible until the limit
55
+ # is reached.
56
+ # @param [String] next_token The next_token
57
+ # @param [String] previous_token The previous_token
58
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
59
+ # guarantees to never return more than limit. Default is no limit.
60
+ # @param [Integer] page_size Number of records to fetch per request, when
61
+ # not set will use the default value of 50 records. If no page_size is defined
62
+ # but a limit is defined, stream() will attempt to read the limit with the most
63
+ # efficient page size, i.e. min(limit, 1000)
64
+ # @return [Enumerable] Enumerable that will yield up to limit results
65
+ def stream(next_token: :unset, previous_token: :unset, limit: nil, page_size: nil)
66
+ limits = @version.read_limits(limit, page_size)
67
+
68
+ page = self.page(
69
+ next_token: next_token,
70
+ previous_token: previous_token,
71
+ page_size: limits[:page_size],
72
+ )
73
+
74
+ @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
75
+ end
76
+
77
+ ##
78
+ # When passed a block, yields DayInstance records from the API.
79
+ # This operation lazily loads records as efficiently as possible until the limit
80
+ # is reached.
81
+ def each
82
+ limits = @version.read_limits
83
+
84
+ page = self.page(page_size: limits[:page_size], )
85
+
86
+ @version.stream(page,
87
+ limit: limits[:limit],
88
+ page_limit: limits[:page_limit]).each {|x| yield x}
89
+ end
90
+
91
+ ##
92
+ # Retrieve a single page of DayInstance records from the API.
93
+ # Request is executed immediately.
94
+ # @param [String] next_token The next_token
95
+ # @param [String] previous_token The previous_token
96
+ # @param [String] page_token PageToken provided by the API
97
+ # @param [Integer] page_number Page Number, this value is simply for client state
98
+ # @param [Integer] page_size Number of records to return, defaults to 50
99
+ # @return [Page] Page of DayInstance
100
+ def page(next_token: :unset, previous_token: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
101
+ params = Twilio::Values.of({
102
+ 'NextToken' => next_token,
103
+ 'PreviousToken' => previous_token,
104
+ 'PageToken' => page_token,
105
+ 'Page' => page_number,
106
+ 'PageSize' => page_size,
107
+ })
108
+ response = @version.page(
109
+ 'GET',
110
+ @uri,
111
+ params
112
+ )
113
+ DayPage.new(@version, response, @solution)
114
+ end
115
+
116
+ ##
117
+ # Retrieve a single page of DayInstance records from the API.
118
+ # Request is executed immediately.
119
+ # @param [String] target_url API-generated URL for the requested results page
120
+ # @return [Page] Page of DayInstance
121
+ def get_page(target_url)
122
+ response = @version.domain.request(
123
+ 'GET',
124
+ target_url
125
+ )
126
+ DayPage.new(@version, response, @solution)
127
+ end
128
+
129
+ ##
130
+ # Provide a user friendly representation
131
+ def to_s
132
+ '#<Twilio.Bulkexports.V1.DayList>'
133
+ end
134
+ end
135
+
136
+ ##
137
+ # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
138
+ class DayPage < Page
139
+ ##
140
+ # Initialize the DayPage
141
+ # @param [Version] version Version that contains the resource
142
+ # @param [Response] response Response from the API
143
+ # @param [Hash] solution Path solution for the resource
144
+ # @return [DayPage] DayPage
145
+ def initialize(version, response, solution)
146
+ super(version, response)
147
+
148
+ # Path Solution
149
+ @solution = solution
150
+ end
151
+
152
+ ##
153
+ # Build an instance of DayInstance
154
+ # @param [Hash] payload Payload response from the API
155
+ # @return [DayInstance] DayInstance
156
+ def get_instance(payload)
157
+ DayInstance.new(@version, payload, resource_type: @solution[:resource_type], )
158
+ end
159
+
160
+ ##
161
+ # Provide a user friendly representation
162
+ def to_s
163
+ '<Twilio.Bulkexports.V1.DayPage>'
164
+ end
165
+ end
166
+
167
+ ##
168
+ # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
169
+ class DayContext < InstanceContext
170
+ ##
171
+ # Initialize the DayContext
172
+ # @param [Version] version Version that contains the resource
173
+ # @param [String] resource_type The type of communication – Messages, Calls
174
+ # @param [String] day The ISO 8601 format date of the resources in the file, for a
175
+ # UTC day
176
+ # @return [DayContext] DayContext
177
+ def initialize(version, resource_type, day)
178
+ super(version)
179
+
180
+ # Path Solution
181
+ @solution = {resource_type: resource_type, day: day, }
182
+ @uri = "/Exports/#{@solution[:resource_type]}/Days/#{@solution[:day]}"
183
+ end
184
+
185
+ ##
186
+ # Fetch a DayInstance
187
+ # @return [DayInstance] Fetched DayInstance
188
+ def fetch
189
+ params = Twilio::Values.of({})
190
+
191
+ payload = @version.fetch(
192
+ 'GET',
193
+ @uri,
194
+ params,
195
+ )
196
+
197
+ DayInstance.new(@version, payload, resource_type: @solution[:resource_type], day: @solution[:day], )
198
+ end
199
+
200
+ ##
201
+ # Provide a user friendly representation
202
+ def to_s
203
+ context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
204
+ "#<Twilio.Bulkexports.V1.DayContext #{context}>"
205
+ end
206
+
207
+ ##
208
+ # Provide a detailed, user friendly representation
209
+ def inspect
210
+ context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
211
+ "#<Twilio.Bulkexports.V1.DayContext #{context}>"
212
+ end
213
+ end
214
+
215
+ ##
216
+ # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
217
+ class DayInstance < InstanceResource
218
+ ##
219
+ # Initialize the DayInstance
220
+ # @param [Version] version Version that contains the resource
221
+ # @param [Hash] payload payload that contains response from Twilio
222
+ # @param [String] resource_type The type of communication – Messages, Calls
223
+ # @param [String] day The ISO 8601 format date of the resources in the file, for a
224
+ # UTC day
225
+ # @return [DayInstance] DayInstance
226
+ def initialize(version, payload, resource_type: nil, day: nil)
227
+ super(version)
228
+
229
+ # Marshaled Properties
230
+ @properties = {
231
+ 'redirect_to' => payload['redirect_to'],
232
+ 'day' => payload['day'],
233
+ 'size' => payload['size'].to_i,
234
+ 'create_date' => payload['create_date'],
235
+ 'friendly_name' => payload['friendly_name'],
236
+ 'resource_type' => payload['resource_type'],
237
+ }
238
+
239
+ # Context
240
+ @instance_context = nil
241
+ @params = {'resource_type' => resource_type, 'day' => day || @properties['day'], }
242
+ end
243
+
244
+ ##
245
+ # Generate an instance context for the instance, the context is capable of
246
+ # performing various actions. All instance actions are proxied to the context
247
+ # @return [DayContext] DayContext for this DayInstance
248
+ def context
249
+ unless @instance_context
250
+ @instance_context = DayContext.new(@version, @params['resource_type'], @params['day'], )
251
+ end
252
+ @instance_context
253
+ end
254
+
255
+ ##
256
+ # @return [String] The redirect_to
257
+ def redirect_to
258
+ @properties['redirect_to']
259
+ end
260
+
261
+ ##
262
+ # @return [String] The date of the data in the file
263
+ def day
264
+ @properties['day']
265
+ end
266
+
267
+ ##
268
+ # @return [String] Size of the file in bytes
269
+ def size
270
+ @properties['size']
271
+ end
272
+
273
+ ##
274
+ # @return [String] The date when resource is created
275
+ def create_date
276
+ @properties['create_date']
277
+ end
278
+
279
+ ##
280
+ # @return [String] The friendly name specified when creating the job
281
+ def friendly_name
282
+ @properties['friendly_name']
283
+ end
284
+
285
+ ##
286
+ # @return [String] The type of communication – Messages, Calls
287
+ def resource_type
288
+ @properties['resource_type']
289
+ end
290
+
291
+ ##
292
+ # Fetch a DayInstance
293
+ # @return [DayInstance] Fetched DayInstance
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.Bulkexports.V1.DayInstance #{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.Bulkexports.V1.DayInstance #{values}>"
310
+ end
311
+ end
312
+ end
313
+ end
314
+ end
315
+ end
316
+ end
@@ -0,0 +1,298 @@
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 Bulkexports < Domain
12
+ class V1 < Version
13
+ class ExportContext < InstanceContext
14
+ ##
15
+ # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
16
+ class ExportCustomJobList < ListResource
17
+ ##
18
+ # Initialize the ExportCustomJobList
19
+ # @param [Version] version Version that contains the resource
20
+ # @param [String] resource_type The type of communication – Messages, Calls
21
+ # @return [ExportCustomJobList] ExportCustomJobList
22
+ def initialize(version, resource_type: nil)
23
+ super(version)
24
+
25
+ # Path Solution
26
+ @solution = {resource_type: resource_type}
27
+ @uri = "/Exports/#{@solution[:resource_type]}/Jobs"
28
+ end
29
+
30
+ ##
31
+ # Lists ExportCustomJobInstance 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 [String] next_token The token for the next page of job results, and may
35
+ # be null if there are no more pages
36
+ # @param [String] previous_token The token for the previous page of results, and
37
+ # may be null if this is the first page
38
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
39
+ # guarantees to never return more than limit. Default is no limit
40
+ # @param [Integer] page_size Number of records to fetch per request, when
41
+ # not set will use the default value of 50 records. If no page_size is defined
42
+ # but a limit is defined, stream() will attempt to read the limit with the most
43
+ # efficient page size, i.e. min(limit, 1000)
44
+ # @return [Array] Array of up to limit results
45
+ def list(next_token: :unset, previous_token: :unset, limit: nil, page_size: nil)
46
+ self.stream(
47
+ next_token: next_token,
48
+ previous_token: previous_token,
49
+ limit: limit,
50
+ page_size: page_size
51
+ ).entries
52
+ end
53
+
54
+ ##
55
+ # Streams ExportCustomJobInstance records from the API as an Enumerable.
56
+ # This operation lazily loads records as efficiently as possible until the limit
57
+ # is reached.
58
+ # @param [String] next_token The token for the next page of job results, and may
59
+ # be null if there are no more pages
60
+ # @param [String] previous_token The token for the previous page of results, and
61
+ # may be null if this is the first page
62
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
63
+ # guarantees to never return more than limit. Default is no limit.
64
+ # @param [Integer] page_size Number of records to fetch per request, when
65
+ # not set will use the default value of 50 records. If no page_size is defined
66
+ # but a limit is defined, stream() will attempt to read the limit with the most
67
+ # efficient page size, i.e. min(limit, 1000)
68
+ # @return [Enumerable] Enumerable that will yield up to limit results
69
+ def stream(next_token: :unset, previous_token: :unset, limit: nil, page_size: nil)
70
+ limits = @version.read_limits(limit, page_size)
71
+
72
+ page = self.page(
73
+ next_token: next_token,
74
+ previous_token: previous_token,
75
+ page_size: limits[:page_size],
76
+ )
77
+
78
+ @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
79
+ end
80
+
81
+ ##
82
+ # When passed a block, yields ExportCustomJobInstance records from the API.
83
+ # This operation lazily loads records as efficiently as possible until the limit
84
+ # is reached.
85
+ def each
86
+ limits = @version.read_limits
87
+
88
+ page = self.page(page_size: limits[:page_size], )
89
+
90
+ @version.stream(page,
91
+ limit: limits[:limit],
92
+ page_limit: limits[:page_limit]).each {|x| yield x}
93
+ end
94
+
95
+ ##
96
+ # Retrieve a single page of ExportCustomJobInstance records from the API.
97
+ # Request is executed immediately.
98
+ # @param [String] next_token The token for the next page of job results, and may
99
+ # be null if there are no more pages
100
+ # @param [String] previous_token The token for the previous page of results, and
101
+ # may be null if this is the first page
102
+ # @param [String] page_token PageToken provided by the API
103
+ # @param [Integer] page_number Page Number, this value is simply for client state
104
+ # @param [Integer] page_size Number of records to return, defaults to 50
105
+ # @return [Page] Page of ExportCustomJobInstance
106
+ def page(next_token: :unset, previous_token: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
107
+ params = Twilio::Values.of({
108
+ 'NextToken' => next_token,
109
+ 'PreviousToken' => previous_token,
110
+ 'PageToken' => page_token,
111
+ 'Page' => page_number,
112
+ 'PageSize' => page_size,
113
+ })
114
+ response = @version.page(
115
+ 'GET',
116
+ @uri,
117
+ params
118
+ )
119
+ ExportCustomJobPage.new(@version, response, @solution)
120
+ end
121
+
122
+ ##
123
+ # Retrieve a single page of ExportCustomJobInstance records from the API.
124
+ # Request is executed immediately.
125
+ # @param [String] target_url API-generated URL for the requested results page
126
+ # @return [Page] Page of ExportCustomJobInstance
127
+ def get_page(target_url)
128
+ response = @version.domain.request(
129
+ 'GET',
130
+ target_url
131
+ )
132
+ ExportCustomJobPage.new(@version, response, @solution)
133
+ end
134
+
135
+ ##
136
+ # Retrieve a single page of ExportCustomJobInstance records from the API.
137
+ # Request is executed immediately.
138
+ # @param [String] friendly_name The friendly_name
139
+ # @param [String] start_day The start_day
140
+ # @param [String] end_day The end_day
141
+ # @param [String] webhook_url The webhook_url
142
+ # @param [String] webhook_method The webhook_method
143
+ # @param [String] email The email
144
+ # @return [ExportCustomJobInstance] Newly created ExportCustomJobInstance
145
+ def create(friendly_name: :unset, start_day: :unset, end_day: :unset, webhook_url: :unset, webhook_method: :unset, email: :unset)
146
+ data = Twilio::Values.of({
147
+ 'FriendlyName' => friendly_name,
148
+ 'StartDay' => start_day,
149
+ 'EndDay' => end_day,
150
+ 'WebhookUrl' => webhook_url,
151
+ 'WebhookMethod' => webhook_method,
152
+ 'Email' => email,
153
+ })
154
+
155
+ payload = @version.create(
156
+ 'POST',
157
+ @uri,
158
+ data: data
159
+ )
160
+
161
+ ExportCustomJobInstance.new(@version, payload, resource_type: @solution[:resource_type], )
162
+ end
163
+
164
+ ##
165
+ # Provide a user friendly representation
166
+ def to_s
167
+ '#<Twilio.Bulkexports.V1.ExportCustomJobList>'
168
+ end
169
+ end
170
+
171
+ ##
172
+ # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
173
+ class ExportCustomJobPage < Page
174
+ ##
175
+ # Initialize the ExportCustomJobPage
176
+ # @param [Version] version Version that contains the resource
177
+ # @param [Response] response Response from the API
178
+ # @param [Hash] solution Path solution for the resource
179
+ # @return [ExportCustomJobPage] ExportCustomJobPage
180
+ def initialize(version, response, solution)
181
+ super(version, response)
182
+
183
+ # Path Solution
184
+ @solution = solution
185
+ end
186
+
187
+ ##
188
+ # Build an instance of ExportCustomJobInstance
189
+ # @param [Hash] payload Payload response from the API
190
+ # @return [ExportCustomJobInstance] ExportCustomJobInstance
191
+ def get_instance(payload)
192
+ ExportCustomJobInstance.new(@version, payload, resource_type: @solution[:resource_type], )
193
+ end
194
+
195
+ ##
196
+ # Provide a user friendly representation
197
+ def to_s
198
+ '<Twilio.Bulkexports.V1.ExportCustomJobPage>'
199
+ end
200
+ end
201
+
202
+ ##
203
+ # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
204
+ class ExportCustomJobInstance < InstanceResource
205
+ ##
206
+ # Initialize the ExportCustomJobInstance
207
+ # @param [Version] version Version that contains the resource
208
+ # @param [Hash] payload payload that contains response from Twilio
209
+ # @param [String] resource_type The type of communication – Messages, Calls
210
+ # @return [ExportCustomJobInstance] ExportCustomJobInstance
211
+ def initialize(version, payload, resource_type: nil)
212
+ super(version)
213
+
214
+ # Marshaled Properties
215
+ @properties = {
216
+ 'friendly_name' => payload['friendly_name'],
217
+ 'resource_type' => payload['resource_type'],
218
+ 'start_day' => payload['start_day'],
219
+ 'end_day' => payload['end_day'],
220
+ 'webhook_url' => payload['webhook_url'],
221
+ 'webhook_method' => payload['webhook_method'],
222
+ 'email' => payload['email'],
223
+ 'job_sid' => payload['job_sid'],
224
+ 'details' => payload['details'],
225
+ }
226
+ end
227
+
228
+ ##
229
+ # @return [String] The friendly name specified when creating the job
230
+ def friendly_name
231
+ @properties['friendly_name']
232
+ end
233
+
234
+ ##
235
+ # @return [String] The type of communication – Messages, Calls
236
+ def resource_type
237
+ @properties['resource_type']
238
+ end
239
+
240
+ ##
241
+ # @return [String] The start time for the export specified when creating the job
242
+ def start_day
243
+ @properties['start_day']
244
+ end
245
+
246
+ ##
247
+ # @return [String] The end time for the export specified when creating the job
248
+ def end_day
249
+ @properties['end_day']
250
+ end
251
+
252
+ ##
253
+ # @return [String] The optional webhook url called on completion
254
+ def webhook_url
255
+ @properties['webhook_url']
256
+ end
257
+
258
+ ##
259
+ # @return [String] This is the method used to call the webhook
260
+ def webhook_method
261
+ @properties['webhook_method']
262
+ end
263
+
264
+ ##
265
+ # @return [String] The optional email to send the completion notification to
266
+ def email
267
+ @properties['email']
268
+ end
269
+
270
+ ##
271
+ # @return [String] The job_sid returned when the export was created
272
+ def job_sid
273
+ @properties['job_sid']
274
+ end
275
+
276
+ ##
277
+ # @return [Hash] The details
278
+ def details
279
+ @properties['details']
280
+ end
281
+
282
+ ##
283
+ # Provide a user friendly representation
284
+ def to_s
285
+ "<Twilio.Bulkexports.V1.ExportCustomJobInstance>"
286
+ end
287
+
288
+ ##
289
+ # Provide a detailed, user friendly representation
290
+ def inspect
291
+ "<Twilio.Bulkexports.V1.ExportCustomJobInstance>"
292
+ end
293
+ end
294
+ end
295
+ end
296
+ end
297
+ end
298
+ end