twilio 3.70.0 → 3.72.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 (60) hide show
  1. package/CHANGES.md +100 -0
  2. package/README.md +1 -1
  3. package/lib/jwt/ClientCapability.d.ts +1 -1
  4. package/lib/rest/Insights.d.ts +2 -0
  5. package/lib/rest/Insights.js +8 -0
  6. package/lib/rest/Supersim.d.ts +2 -0
  7. package/lib/rest/Supersim.js +8 -0
  8. package/lib/rest/Voice.d.ts +2 -0
  9. package/lib/rest/Voice.js +9 -0
  10. package/lib/rest/api/v2010/account/call.d.ts +1 -1
  11. package/lib/rest/api/v2010/account/call.js +1 -1
  12. package/lib/rest/api/v2010/account/message.d.ts +2 -0
  13. package/lib/rest/api/v2010/account/message.js +4 -1
  14. package/lib/rest/conversations/v1/service/configuration/webhook.d.ts +172 -0
  15. package/lib/rest/conversations/v1/service/configuration/webhook.js +400 -0
  16. package/lib/rest/conversations/v1/service/configuration.d.ts +2 -0
  17. package/lib/rest/conversations/v1/service/configuration.js +13 -0
  18. package/lib/rest/flexApi/v1/configuration.d.ts +4 -0
  19. package/lib/rest/flexApi/v1/configuration.js +5 -0
  20. package/lib/rest/frontlineApi/v1/user.d.ts +4 -0
  21. package/lib/rest/frontlineApi/v1/user.js +10 -1
  22. package/lib/rest/insights/V1.d.ts +3 -0
  23. package/lib/rest/insights/V1.js +11 -0
  24. package/lib/rest/insights/v1/setting.d.ts +181 -0
  25. package/lib/rest/insights/v1/setting.js +384 -0
  26. package/lib/rest/media/v1/mediaProcessor.d.ts +4 -0
  27. package/lib/rest/media/v1/mediaProcessor.js +5 -1
  28. package/lib/rest/messaging/v1/brandRegistration/brandVetting.d.ts +46 -2
  29. package/lib/rest/messaging/v1/brandRegistration/brandVetting.js +139 -5
  30. package/lib/rest/messaging/v1/brandRegistration.d.ts +1 -1
  31. package/lib/rest/messaging/v1/brandRegistration.js +1 -1
  32. package/lib/rest/serverless/v1/service/build.d.ts +1 -1
  33. package/lib/rest/supersim/V1.d.ts +3 -0
  34. package/lib/rest/supersim/V1.js +11 -0
  35. package/lib/rest/supersim/v1/ipCommand.d.ts +362 -0
  36. package/lib/rest/supersim/v1/ipCommand.js +679 -0
  37. package/lib/rest/verify/v2/service/accessToken.d.ts +2 -0
  38. package/lib/rest/verify/v2/service/accessToken.js +3 -1
  39. package/lib/rest/verify/v2/service/entity/factor.d.ts +4 -2
  40. package/lib/rest/verify/v2/service/entity/factor.js +8 -3
  41. package/lib/rest/verify/v2/service/entity/newFactor.d.ts +2 -2
  42. package/lib/rest/verify/v2/service/entity/newFactor.js +1 -1
  43. package/lib/rest/verify/v2/service/verification.d.ts +4 -0
  44. package/lib/rest/verify/v2/service/verification.js +6 -1
  45. package/lib/rest/verify/v2/service.d.ts +6 -0
  46. package/lib/rest/verify/v2/service.js +12 -2
  47. package/lib/rest/verify/v2/verificationAttempt.d.ts +1 -1
  48. package/lib/rest/video/v1/room.d.ts +12 -0
  49. package/lib/rest/video/v1/room.js +19 -1
  50. package/lib/rest/voice/V1.d.ts +3 -0
  51. package/lib/rest/voice/V1.js +12 -0
  52. package/lib/rest/voice/v1/archivedCall.d.ts +136 -0
  53. package/lib/rest/voice/v1/archivedCall.js +325 -0
  54. package/lib/rest/wireless/v1/ratePlan.d.ts +1 -1
  55. package/lib/rest/wireless/v1/ratePlan.js +3 -3
  56. package/lib/rest/wireless/v1/sim.d.ts +4 -4
  57. package/lib/rest/wireless/v1/sim.js +17 -27
  58. package/lib/twiml/VoiceResponse.d.ts +1296 -24
  59. package/lib/twiml/VoiceResponse.js +2170 -82
  60. package/package.json +1 -1
@@ -0,0 +1,181 @@
1
+ /**
2
+ * This code was generated by
3
+ * \ / _ _ _| _ _
4
+ * | (_)\/(_)(_|\/| |(/_ v1.0.0
5
+ * / /
6
+ */
7
+
8
+ import Page = require('../../../base/Page');
9
+ import Response = require('../../../http/response');
10
+ import V1 = require('../V1');
11
+ import { SerializableClass } from '../../../interfaces';
12
+
13
+ /**
14
+ * Initialize the SettingList
15
+ *
16
+ * @param version - Version of the resource
17
+ */
18
+ declare function SettingList(version: V1): SettingListInstance;
19
+
20
+ /**
21
+ * Options to pass to fetch
22
+ *
23
+ * @property subaccountSid - The subaccount_sid
24
+ */
25
+ interface SettingInstanceFetchOptions {
26
+ subaccountSid?: string;
27
+ }
28
+
29
+ /**
30
+ * Options to pass to update
31
+ *
32
+ * @property advancedFeatures - The advanced_features
33
+ * @property subaccountSid - The subaccount_sid
34
+ * @property voiceTrace - The voice_trace
35
+ */
36
+ interface SettingInstanceUpdateOptions {
37
+ advancedFeatures?: boolean;
38
+ subaccountSid?: string;
39
+ voiceTrace?: boolean;
40
+ }
41
+
42
+ interface SettingListInstance {
43
+ /**
44
+ * @param sid - sid of instance
45
+ */
46
+ (sid: string): SettingContext;
47
+ /**
48
+ * Constructs a setting
49
+ */
50
+ get(): SettingContext;
51
+ /**
52
+ * Provide a user-friendly representation
53
+ */
54
+ toJSON(): any;
55
+ }
56
+
57
+ interface SettingPayload extends SettingResource, Page.TwilioResponsePayload {
58
+ }
59
+
60
+ interface SettingResource {
61
+ account_sid: string;
62
+ advanced_features: boolean;
63
+ url: string;
64
+ voice_trace: boolean;
65
+ }
66
+
67
+ interface SettingSolution {
68
+ }
69
+
70
+
71
+ declare class SettingContext {
72
+ /**
73
+ * Initialize the SettingContext
74
+ *
75
+ * @param version - Version of the resource
76
+ */
77
+ constructor(version: V1);
78
+
79
+ /**
80
+ * fetch a SettingInstance
81
+ *
82
+ * @param callback - Callback to handle processed record
83
+ */
84
+ fetch(callback?: (error: Error | null, items: SettingInstance) => any): Promise<SettingInstance>;
85
+ /**
86
+ * fetch a SettingInstance
87
+ *
88
+ * @param opts - Options for request
89
+ * @param callback - Callback to handle processed record
90
+ */
91
+ fetch(opts?: SettingInstanceFetchOptions, callback?: (error: Error | null, items: SettingInstance) => any): Promise<SettingInstance>;
92
+ /**
93
+ * Provide a user-friendly representation
94
+ */
95
+ toJSON(): any;
96
+ /**
97
+ * update a SettingInstance
98
+ *
99
+ * @param callback - Callback to handle processed record
100
+ */
101
+ update(callback?: (error: Error | null, items: SettingInstance) => any): Promise<SettingInstance>;
102
+ /**
103
+ * update a SettingInstance
104
+ *
105
+ * @param opts - Options for request
106
+ * @param callback - Callback to handle processed record
107
+ */
108
+ update(opts?: SettingInstanceUpdateOptions, callback?: (error: Error | null, items: SettingInstance) => any): Promise<SettingInstance>;
109
+ }
110
+
111
+
112
+ declare class SettingInstance extends SerializableClass {
113
+ /**
114
+ * Initialize the SettingContext
115
+ *
116
+ * @param version - Version of the resource
117
+ * @param payload - The instance payload
118
+ */
119
+ constructor(version: V1, payload: SettingPayload);
120
+
121
+ private _proxy: SettingContext;
122
+ accountSid: string;
123
+ advancedFeatures: boolean;
124
+ /**
125
+ * fetch a SettingInstance
126
+ *
127
+ * @param callback - Callback to handle processed record
128
+ */
129
+ fetch(callback?: (error: Error | null, items: SettingInstance) => any): Promise<SettingInstance>;
130
+ /**
131
+ * fetch a SettingInstance
132
+ *
133
+ * @param opts - Options for request
134
+ * @param callback - Callback to handle processed record
135
+ */
136
+ fetch(opts?: SettingInstanceFetchOptions, callback?: (error: Error | null, items: SettingInstance) => any): Promise<SettingInstance>;
137
+ /**
138
+ * Provide a user-friendly representation
139
+ */
140
+ toJSON(): any;
141
+ /**
142
+ * update a SettingInstance
143
+ *
144
+ * @param callback - Callback to handle processed record
145
+ */
146
+ update(callback?: (error: Error | null, items: SettingInstance) => any): Promise<SettingInstance>;
147
+ /**
148
+ * update a SettingInstance
149
+ *
150
+ * @param opts - Options for request
151
+ * @param callback - Callback to handle processed record
152
+ */
153
+ update(opts?: SettingInstanceUpdateOptions, callback?: (error: Error | null, items: SettingInstance) => any): Promise<SettingInstance>;
154
+ url: string;
155
+ voiceTrace: boolean;
156
+ }
157
+
158
+
159
+ declare class SettingPage extends Page<V1, SettingPayload, SettingResource, SettingInstance> {
160
+ /**
161
+ * Initialize the SettingPage
162
+ *
163
+ * @param version - Version of the resource
164
+ * @param response - Response from the API
165
+ * @param solution - Path solution
166
+ */
167
+ constructor(version: V1, response: Response<string>, solution: SettingSolution);
168
+
169
+ /**
170
+ * Build an instance of SettingInstance
171
+ *
172
+ * @param payload - Payload response from the API
173
+ */
174
+ getInstance(payload: SettingPayload): SettingInstance;
175
+ /**
176
+ * Provide a user-friendly representation
177
+ */
178
+ toJSON(): any;
179
+ }
180
+
181
+ export { SettingContext, SettingInstance, SettingInstanceFetchOptions, SettingInstanceUpdateOptions, SettingList, SettingListInstance, SettingPage, SettingPayload, SettingResource, SettingSolution }
@@ -0,0 +1,384 @@
1
+ 'use strict';
2
+
3
+ /* jshint ignore:start */
4
+ /**
5
+ * This code was generated by
6
+ * \ / _ _ _| _ _
7
+ * | (_)\/(_)(_|\/| |(/_ v1.0.0
8
+ * / /
9
+ */
10
+ /* jshint ignore:end */
11
+
12
+ var Q = require('q'); /* jshint ignore:line */
13
+ var _ = require('lodash'); /* jshint ignore:line */
14
+ var util = require('util'); /* jshint ignore:line */
15
+ var Page = require('../../../base/Page'); /* jshint ignore:line */
16
+ var serialize = require('../../../base/serialize'); /* jshint ignore:line */
17
+ var values = require('../../../base/values'); /* jshint ignore:line */
18
+
19
+ var SettingList;
20
+ var SettingPage;
21
+ var SettingInstance;
22
+ var SettingContext;
23
+
24
+ /* jshint ignore:start */
25
+ /**
26
+ * Initialize the SettingList
27
+ *
28
+ * @constructor Twilio.Insights.V1.SettingList
29
+ *
30
+ * @param {Twilio.Insights.V1} version - Version of the resource
31
+ */
32
+ /* jshint ignore:end */
33
+ SettingList = function SettingList(version) {
34
+ /* jshint ignore:start */
35
+ /**
36
+ * @function settings
37
+ * @memberof Twilio.Insights.V1#
38
+ *
39
+ * @param {string} sid - sid of instance
40
+ *
41
+ * @returns {Twilio.Insights.V1.SettingContext}
42
+ */
43
+ /* jshint ignore:end */
44
+ function SettingListInstance(sid) {
45
+ return SettingListInstance.get(sid);
46
+ }
47
+
48
+ SettingListInstance._version = version;
49
+ // Path Solution
50
+ SettingListInstance._solution = {};
51
+ /* jshint ignore:start */
52
+ /**
53
+ * Constructs a setting
54
+ *
55
+ * @function get
56
+ * @memberof Twilio.Insights.V1.SettingList#
57
+ *
58
+ * @returns {Twilio.Insights.V1.SettingContext}
59
+ */
60
+ /* jshint ignore:end */
61
+ SettingListInstance.get = function get() {
62
+ return new SettingContext(this._version);
63
+ };
64
+
65
+ /* jshint ignore:start */
66
+ /**
67
+ * Provide a user-friendly representation
68
+ *
69
+ * @function toJSON
70
+ * @memberof Twilio.Insights.V1.SettingList#
71
+ *
72
+ * @returns Object
73
+ */
74
+ /* jshint ignore:end */
75
+ SettingListInstance.toJSON = function toJSON() {
76
+ return this._solution;
77
+ };
78
+
79
+ SettingListInstance[util.inspect.custom] = function inspect(depth, options) {
80
+ return util.inspect(this.toJSON(), options);
81
+ };
82
+
83
+ return SettingListInstance;
84
+ };
85
+
86
+
87
+ /* jshint ignore:start */
88
+ /**
89
+ * Initialize the SettingPage
90
+ *
91
+ * @constructor Twilio.Insights.V1.SettingPage
92
+ *
93
+ * @param {V1} version - Version of the resource
94
+ * @param {Response<string>} response - Response from the API
95
+ * @param {SettingSolution} solution - Path solution
96
+ *
97
+ * @returns SettingPage
98
+ */
99
+ /* jshint ignore:end */
100
+ SettingPage = function SettingPage(version, response, solution) {
101
+ // Path Solution
102
+ this._solution = solution;
103
+
104
+ Page.prototype.constructor.call(this, version, response, this._solution);
105
+ };
106
+
107
+ _.extend(SettingPage.prototype, Page.prototype);
108
+ SettingPage.prototype.constructor = SettingPage;
109
+
110
+ /* jshint ignore:start */
111
+ /**
112
+ * Build an instance of SettingInstance
113
+ *
114
+ * @function getInstance
115
+ * @memberof Twilio.Insights.V1.SettingPage#
116
+ *
117
+ * @param {SettingPayload} payload - Payload response from the API
118
+ *
119
+ * @returns SettingInstance
120
+ */
121
+ /* jshint ignore:end */
122
+ SettingPage.prototype.getInstance = function getInstance(payload) {
123
+ return new SettingInstance(this._version, payload);
124
+ };
125
+
126
+ /* jshint ignore:start */
127
+ /**
128
+ * Provide a user-friendly representation
129
+ *
130
+ * @function toJSON
131
+ * @memberof Twilio.Insights.V1.SettingPage#
132
+ *
133
+ * @returns Object
134
+ */
135
+ /* jshint ignore:end */
136
+ SettingPage.prototype.toJSON = function toJSON() {
137
+ let clone = {};
138
+ _.forOwn(this, function(value, key) {
139
+ if (!_.startsWith(key, '_') && ! _.isFunction(value)) {
140
+ clone[key] = value;
141
+ }
142
+ });
143
+ return clone;
144
+ };
145
+
146
+ SettingPage.prototype[util.inspect.custom] = function inspect(depth, options) {
147
+ return util.inspect(this.toJSON(), options);
148
+ };
149
+
150
+
151
+ /* jshint ignore:start */
152
+ /**
153
+ * Initialize the SettingContext
154
+ *
155
+ * @constructor Twilio.Insights.V1.SettingInstance
156
+ *
157
+ * @property {string} accountSid - The account_sid
158
+ * @property {boolean} advancedFeatures - The advanced_features
159
+ * @property {boolean} voiceTrace - The voice_trace
160
+ * @property {string} url - The url
161
+ *
162
+ * @param {V1} version - Version of the resource
163
+ * @param {SettingPayload} payload - The instance payload
164
+ */
165
+ /* jshint ignore:end */
166
+ SettingInstance = function SettingInstance(version, payload) {
167
+ this._version = version;
168
+
169
+ // Marshaled Properties
170
+ this.accountSid = payload.account_sid; // jshint ignore:line
171
+ this.advancedFeatures = payload.advanced_features; // jshint ignore:line
172
+ this.voiceTrace = payload.voice_trace; // jshint ignore:line
173
+ this.url = payload.url; // jshint ignore:line
174
+
175
+ // Context
176
+ this._context = undefined;
177
+ this._solution = {};
178
+ };
179
+
180
+ Object.defineProperty(SettingInstance.prototype,
181
+ '_proxy', {
182
+ get: function() {
183
+ if (!this._context) {
184
+ this._context = new SettingContext(this._version);
185
+ }
186
+
187
+ return this._context;
188
+ }
189
+ });
190
+
191
+ /* jshint ignore:start */
192
+ /**
193
+ * fetch a SettingInstance
194
+ *
195
+ * @function fetch
196
+ * @memberof Twilio.Insights.V1.SettingInstance#
197
+ *
198
+ * @param {object} [opts] - Options for request
199
+ * @param {string} [opts.subaccountSid] - The subaccount_sid
200
+ * @param {function} [callback] - Callback to handle processed record
201
+ *
202
+ * @returns {Promise} Resolves to processed SettingInstance
203
+ */
204
+ /* jshint ignore:end */
205
+ SettingInstance.prototype.fetch = function fetch(opts, callback) {
206
+ return this._proxy.fetch(opts, callback);
207
+ };
208
+
209
+ /* jshint ignore:start */
210
+ /**
211
+ * update a SettingInstance
212
+ *
213
+ * @function update
214
+ * @memberof Twilio.Insights.V1.SettingInstance#
215
+ *
216
+ * @param {object} [opts] - Options for request
217
+ * @param {boolean} [opts.advancedFeatures] - The advanced_features
218
+ * @param {boolean} [opts.voiceTrace] - The voice_trace
219
+ * @param {string} [opts.subaccountSid] - The subaccount_sid
220
+ * @param {function} [callback] - Callback to handle processed record
221
+ *
222
+ * @returns {Promise} Resolves to processed SettingInstance
223
+ */
224
+ /* jshint ignore:end */
225
+ SettingInstance.prototype.update = function update(opts, callback) {
226
+ return this._proxy.update(opts, callback);
227
+ };
228
+
229
+ /* jshint ignore:start */
230
+ /**
231
+ * Provide a user-friendly representation
232
+ *
233
+ * @function toJSON
234
+ * @memberof Twilio.Insights.V1.SettingInstance#
235
+ *
236
+ * @returns Object
237
+ */
238
+ /* jshint ignore:end */
239
+ SettingInstance.prototype.toJSON = function toJSON() {
240
+ let clone = {};
241
+ _.forOwn(this, function(value, key) {
242
+ if (!_.startsWith(key, '_') && ! _.isFunction(value)) {
243
+ clone[key] = value;
244
+ }
245
+ });
246
+ return clone;
247
+ };
248
+
249
+ SettingInstance.prototype[util.inspect.custom] = function inspect(depth,
250
+ options) {
251
+ return util.inspect(this.toJSON(), options);
252
+ };
253
+
254
+
255
+ /* jshint ignore:start */
256
+ /**
257
+ * Initialize the SettingContext
258
+ *
259
+ * @constructor Twilio.Insights.V1.SettingContext
260
+ *
261
+ * @param {V1} version - Version of the resource
262
+ */
263
+ /* jshint ignore:end */
264
+ SettingContext = function SettingContext(version) {
265
+ this._version = version;
266
+
267
+ // Path Solution
268
+ this._solution = {};
269
+ this._uri = `/Voice/Settings`;
270
+ };
271
+
272
+ /* jshint ignore:start */
273
+ /**
274
+ * fetch a SettingInstance
275
+ *
276
+ * @function fetch
277
+ * @memberof Twilio.Insights.V1.SettingContext#
278
+ *
279
+ * @param {object} [opts] - Options for request
280
+ * @param {string} [opts.subaccountSid] - The subaccount_sid
281
+ * @param {function} [callback] - Callback to handle processed record
282
+ *
283
+ * @returns {Promise} Resolves to processed SettingInstance
284
+ */
285
+ /* jshint ignore:end */
286
+ SettingContext.prototype.fetch = function fetch(opts, callback) {
287
+ if (_.isFunction(opts)) {
288
+ callback = opts;
289
+ opts = {};
290
+ }
291
+ opts = opts || {};
292
+
293
+ var deferred = Q.defer();
294
+ var data = values.of({'SubaccountSid': _.get(opts, 'subaccountSid')});
295
+
296
+ var promise = this._version.fetch({uri: this._uri, method: 'GET', params: data});
297
+
298
+ promise = promise.then(function(payload) {
299
+ deferred.resolve(new SettingInstance(this._version, payload));
300
+ }.bind(this));
301
+
302
+ promise.catch(function(error) {
303
+ deferred.reject(error);
304
+ });
305
+
306
+ if (_.isFunction(callback)) {
307
+ deferred.promise.nodeify(callback);
308
+ }
309
+
310
+ return deferred.promise;
311
+ };
312
+
313
+ /* jshint ignore:start */
314
+ /**
315
+ * update a SettingInstance
316
+ *
317
+ * @function update
318
+ * @memberof Twilio.Insights.V1.SettingContext#
319
+ *
320
+ * @param {object} [opts] - Options for request
321
+ * @param {boolean} [opts.advancedFeatures] - The advanced_features
322
+ * @param {boolean} [opts.voiceTrace] - The voice_trace
323
+ * @param {string} [opts.subaccountSid] - The subaccount_sid
324
+ * @param {function} [callback] - Callback to handle processed record
325
+ *
326
+ * @returns {Promise} Resolves to processed SettingInstance
327
+ */
328
+ /* jshint ignore:end */
329
+ SettingContext.prototype.update = function update(opts, callback) {
330
+ if (_.isFunction(opts)) {
331
+ callback = opts;
332
+ opts = {};
333
+ }
334
+ opts = opts || {};
335
+
336
+ var deferred = Q.defer();
337
+ var data = values.of({
338
+ 'AdvancedFeatures': serialize.bool(_.get(opts, 'advancedFeatures')),
339
+ 'VoiceTrace': serialize.bool(_.get(opts, 'voiceTrace')),
340
+ 'SubaccountSid': _.get(opts, 'subaccountSid')
341
+ });
342
+
343
+ var promise = this._version.update({uri: this._uri, method: 'POST', data: data});
344
+
345
+ promise = promise.then(function(payload) {
346
+ deferred.resolve(new SettingInstance(this._version, payload));
347
+ }.bind(this));
348
+
349
+ promise.catch(function(error) {
350
+ deferred.reject(error);
351
+ });
352
+
353
+ if (_.isFunction(callback)) {
354
+ deferred.promise.nodeify(callback);
355
+ }
356
+
357
+ return deferred.promise;
358
+ };
359
+
360
+ /* jshint ignore:start */
361
+ /**
362
+ * Provide a user-friendly representation
363
+ *
364
+ * @function toJSON
365
+ * @memberof Twilio.Insights.V1.SettingContext#
366
+ *
367
+ * @returns Object
368
+ */
369
+ /* jshint ignore:end */
370
+ SettingContext.prototype.toJSON = function toJSON() {
371
+ return this._solution;
372
+ };
373
+
374
+ SettingContext.prototype[util.inspect.custom] = function inspect(depth, options)
375
+ {
376
+ return util.inspect(this.toJSON(), options);
377
+ };
378
+
379
+ module.exports = {
380
+ SettingList: SettingList,
381
+ SettingPage: SettingPage,
382
+ SettingInstance: SettingInstance,
383
+ SettingContext: SettingContext
384
+ };
@@ -158,6 +158,7 @@ interface MediaProcessorListInstance {
158
158
  * @property extension - The Media Extension name or URL
159
159
  * @property extensionContext - The Media Extension context
160
160
  * @property extensionEnvironment - The Media Extension environment
161
+ * @property maxDuration - Maximum MediaProcessor duration in minutes
161
162
  * @property statusCallback - The URL to send MediaProcessor event updates to your application
162
163
  * @property statusCallbackMethod - The HTTP method Twilio should use to call the `status_callback` URL
163
164
  */
@@ -165,6 +166,7 @@ interface MediaProcessorListInstanceCreateOptions {
165
166
  extension: string;
166
167
  extensionContext: string;
167
168
  extensionEnvironment?: object;
169
+ maxDuration?: number;
168
170
  statusCallback?: string;
169
171
  statusCallbackMethod?: string;
170
172
  }
@@ -248,6 +250,7 @@ interface MediaProcessorResource {
248
250
  ended_reason: string;
249
251
  extension: string;
250
252
  extension_context: string;
253
+ max_duration: number;
251
254
  sid: string;
252
255
  status: MediaProcessorStatus;
253
256
  status_callback: string;
@@ -311,6 +314,7 @@ declare class MediaProcessorInstance extends SerializableClass {
311
314
  * @param callback - Callback to handle processed record
312
315
  */
313
316
  fetch(callback?: (error: Error | null, items: MediaProcessorInstance) => any): Promise<MediaProcessorInstance>;
317
+ maxDuration: number;
314
318
  sid: string;
315
319
  status: MediaProcessorStatus;
316
320
  statusCallback: string;
@@ -66,6 +66,7 @@ MediaProcessorList = function MediaProcessorList(version) {
66
66
  * The URL to send MediaProcessor event updates to your application
67
67
  * @param {string} [opts.statusCallbackMethod] -
68
68
  * The HTTP method Twilio should use to call the `status_callback` URL
69
+ * @param {number} [opts.maxDuration] - Maximum MediaProcessor duration in minutes
69
70
  * @param {function} [callback] - Callback to handle processed record
70
71
  *
71
72
  * @returns {Promise} Resolves to processed MediaProcessorInstance
@@ -88,7 +89,8 @@ MediaProcessorList = function MediaProcessorList(version) {
88
89
  'ExtensionContext': _.get(opts, 'extensionContext'),
89
90
  'ExtensionEnvironment': serialize.object(_.get(opts, 'extensionEnvironment')),
90
91
  'StatusCallback': _.get(opts, 'statusCallback'),
91
- 'StatusCallbackMethod': _.get(opts, 'statusCallbackMethod')
92
+ 'StatusCallbackMethod': _.get(opts, 'statusCallbackMethod'),
93
+ 'MaxDuration': _.get(opts, 'maxDuration')
92
94
  });
93
95
 
94
96
  var promise = this._version.create({uri: this._uri, method: 'POST', data: data});
@@ -483,6 +485,7 @@ MediaProcessorPage.prototype[util.inspect.custom] = function inspect(depth,
483
485
  * The URL to which Twilio will send MediaProcessor event updates
484
486
  * @property {string} statusCallbackMethod -
485
487
  * The HTTP method Twilio should use to call the `status_callback` URL
488
+ * @property {number} maxDuration - Maximum MediaProcessor duration in minutes
486
489
  *
487
490
  * @param {V1} version - Version of the resource
488
491
  * @param {MediaProcessorPayload} payload - The instance payload
@@ -505,6 +508,7 @@ MediaProcessorInstance = function MediaProcessorInstance(version, payload, sid)
505
508
  this.endedReason = payload.ended_reason; // jshint ignore:line
506
509
  this.statusCallback = payload.status_callback; // jshint ignore:line
507
510
  this.statusCallbackMethod = payload.status_callback_method; // jshint ignore:line
511
+ this.maxDuration = deserialize.integer(payload.max_duration); // jshint ignore:line
508
512
 
509
513
  // Context
510
514
  this._context = undefined;
@@ -24,6 +24,10 @@ type BrandVettingVettingProvider = 'campaign-verify';
24
24
  declare function BrandVettingList(version: V1, brandSid: string): BrandVettingListInstance;
25
25
 
26
26
  interface BrandVettingListInstance {
27
+ /**
28
+ * @param sid - sid of instance
29
+ */
30
+ (sid: string): BrandVettingContext;
27
31
  /**
28
32
  * create a BrandVettingInstance
29
33
  *
@@ -62,6 +66,12 @@ interface BrandVettingListInstance {
62
66
  * @param callback - Function to process each record
63
67
  */
64
68
  each(opts?: BrandVettingListInstanceEachOptions, callback?: (item: BrandVettingInstance, done: (err?: Error) => void) => void): void;
69
+ /**
70
+ * Constructs a brand_vetting
71
+ *
72
+ * @param brandVettingSid - SID for third-party vetting record
73
+ */
74
+ get(brandVettingSid: string): BrandVettingContext;
65
75
  /**
66
76
  * Retrieve a single target page of BrandVettingInstance records from the API.
67
77
  *
@@ -228,6 +238,32 @@ interface BrandVettingSolution {
228
238
  }
229
239
 
230
240
 
241
+ declare class BrandVettingContext {
242
+ /**
243
+ * Initialize the BrandVettingContext
244
+ *
245
+ * PLEASE NOTE that this class contains beta products that are subject to change.
246
+ * Use them with caution.
247
+ *
248
+ * @param version - Version of the resource
249
+ * @param brandSid - A2P BrandRegistration Sid
250
+ * @param brandVettingSid - SID for third-party vetting record
251
+ */
252
+ constructor(version: V1, brandSid: string, brandVettingSid: string);
253
+
254
+ /**
255
+ * fetch a BrandVettingInstance
256
+ *
257
+ * @param callback - Callback to handle processed record
258
+ */
259
+ fetch(callback?: (error: Error | null, items: BrandVettingInstance) => any): Promise<BrandVettingInstance>;
260
+ /**
261
+ * Provide a user-friendly representation
262
+ */
263
+ toJSON(): any;
264
+ }
265
+
266
+
231
267
  declare class BrandVettingInstance extends SerializableClass {
232
268
  /**
233
269
  * Initialize the BrandVettingContext
@@ -238,14 +274,22 @@ declare class BrandVettingInstance extends SerializableClass {
238
274
  * @param version - Version of the resource
239
275
  * @param payload - The instance payload
240
276
  * @param brandSid - A2P BrandRegistration Sid
277
+ * @param brandVettingSid - SID for third-party vetting record
241
278
  */
242
- constructor(version: V1, payload: BrandVettingPayload, brandSid: string);
279
+ constructor(version: V1, payload: BrandVettingPayload, brandSid: string, brandVettingSid: string);
243
280
 
281
+ private _proxy: BrandVettingContext;
244
282
  accountSid: string;
245
283
  brandSid: string;
246
284
  brandVettingSid: string;
247
285
  dateCreated: Date;
248
286
  dateUpdated: Date;
287
+ /**
288
+ * fetch a BrandVettingInstance
289
+ *
290
+ * @param callback - Callback to handle processed record
291
+ */
292
+ fetch(callback?: (error: Error | null, items: BrandVettingInstance) => any): Promise<BrandVettingInstance>;
249
293
  /**
250
294
  * Provide a user-friendly representation
251
295
  */
@@ -283,4 +327,4 @@ declare class BrandVettingPage extends Page<V1, BrandVettingPayload, BrandVettin
283
327
  toJSON(): any;
284
328
  }
285
329
 
286
- export { BrandVettingInstance, BrandVettingList, BrandVettingListInstance, BrandVettingListInstanceCreateOptions, BrandVettingListInstanceEachOptions, BrandVettingListInstanceOptions, BrandVettingListInstancePageOptions, BrandVettingPage, BrandVettingPayload, BrandVettingResource, BrandVettingSolution, BrandVettingVettingProvider }
330
+ export { BrandVettingContext, BrandVettingInstance, BrandVettingList, BrandVettingListInstance, BrandVettingListInstanceCreateOptions, BrandVettingListInstanceEachOptions, BrandVettingListInstanceOptions, BrandVettingListInstancePageOptions, BrandVettingPage, BrandVettingPayload, BrandVettingResource, BrandVettingSolution, BrandVettingVettingProvider }