twilio-ruby 7.8.6 → 7.8.8
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.
- checksums.yaml +4 -4
- data/CHANGES.md +23 -0
- data/README.md +2 -2
- data/lib/twilio-ruby/base/client_base.rb +28 -1
- data/lib/twilio-ruby/rest/content/v1/content.rb +677 -1
- data/lib/twilio-ruby/rest/iam/v1/o_auth_app.rb +462 -0
- data/lib/twilio-ruby/rest/iam/v1.rb +15 -0
- data/lib/twilio-ruby/rest/messaging/v1/domain_validate_dn.rb +208 -0
- data/lib/twilio-ruby/rest/messaging/v1.rb +15 -0
- data/lib/twilio-ruby/rest/numbers/v2/application.rb +378 -0
- data/lib/twilio-ruby/rest/numbers/v2.rb +15 -0
- data/lib/twilio-ruby/rest/oauth/v2/token.rb +6 -1
- data/lib/twilio-ruby/rest/trusthub/v1/compliance_tollfree_inquiries.rb +3 -0
- data/lib/twilio-ruby/version.rb +1 -1
- metadata +5 -2
|
@@ -191,6 +191,650 @@ module Twilio
|
|
|
191
191
|
end
|
|
192
192
|
end
|
|
193
193
|
|
|
194
|
+
class ContentUpdateRequest
|
|
195
|
+
# @param [friendly_name]: [String] User defined name of the content
|
|
196
|
+
# @param [variables]: [Hash<String, String>] Key value pairs of variable name to value
|
|
197
|
+
# @param [language]: [String] Language code for the content
|
|
198
|
+
# @param [types]: [ContentList.Types]
|
|
199
|
+
attr_accessor :friendly_name, :variables, :language, :types
|
|
200
|
+
def initialize(payload)
|
|
201
|
+
@friendly_name = payload["friendly_name"]
|
|
202
|
+
@variables = payload["variables"]
|
|
203
|
+
@language = payload["language"]
|
|
204
|
+
@types = payload["types"]
|
|
205
|
+
end
|
|
206
|
+
def to_json(options = {})
|
|
207
|
+
{
|
|
208
|
+
"friendly_name": @friendly_name,
|
|
209
|
+
"variables": @variables,
|
|
210
|
+
"language": @language,
|
|
211
|
+
"types": @types,
|
|
212
|
+
}.to_json(options)
|
|
213
|
+
end
|
|
214
|
+
end
|
|
215
|
+
|
|
216
|
+
class FlowsPage
|
|
217
|
+
# @param [id]: [String]
|
|
218
|
+
# @param [next_page_id]: [String]
|
|
219
|
+
# @param [title]: [String]
|
|
220
|
+
# @param [subtitle]: [String]
|
|
221
|
+
# @param [layout]: [Array<ContentList.FlowsPageComponent>]
|
|
222
|
+
attr_accessor :id, :next_page_id, :title, :subtitle, :layout
|
|
223
|
+
def initialize(payload)
|
|
224
|
+
@id = payload["id"]
|
|
225
|
+
@next_page_id = payload["next_page_id"]
|
|
226
|
+
@title = payload["title"]
|
|
227
|
+
@subtitle = payload["subtitle"]
|
|
228
|
+
@layout = payload["layout"]
|
|
229
|
+
end
|
|
230
|
+
def to_json(options = {})
|
|
231
|
+
{
|
|
232
|
+
"id": @id,
|
|
233
|
+
"next_page_id": @next_page_id,
|
|
234
|
+
"title": @title,
|
|
235
|
+
"subtitle": @subtitle,
|
|
236
|
+
"layout": @layout,
|
|
237
|
+
}.to_json(options)
|
|
238
|
+
end
|
|
239
|
+
end
|
|
240
|
+
|
|
241
|
+
class FlowsPageComponent
|
|
242
|
+
# @param [label]: [String]
|
|
243
|
+
# @param [type]: [String]
|
|
244
|
+
attr_accessor :label, :type
|
|
245
|
+
def initialize(payload)
|
|
246
|
+
@label = payload["label"]
|
|
247
|
+
@type = payload["type"]
|
|
248
|
+
end
|
|
249
|
+
def to_json(options = {})
|
|
250
|
+
{
|
|
251
|
+
"label": @label,
|
|
252
|
+
"type": @type,
|
|
253
|
+
}.to_json(options)
|
|
254
|
+
end
|
|
255
|
+
end
|
|
256
|
+
|
|
257
|
+
class ListItem
|
|
258
|
+
# @param [id]: [String]
|
|
259
|
+
# @param [item]: [String]
|
|
260
|
+
# @param [description]: [String]
|
|
261
|
+
attr_accessor :id, :item, :description
|
|
262
|
+
def initialize(payload)
|
|
263
|
+
@id = payload["id"]
|
|
264
|
+
@item = payload["item"]
|
|
265
|
+
@description = payload["description"]
|
|
266
|
+
end
|
|
267
|
+
def to_json(options = {})
|
|
268
|
+
{
|
|
269
|
+
"id": @id,
|
|
270
|
+
"item": @item,
|
|
271
|
+
"description": @description,
|
|
272
|
+
}.to_json(options)
|
|
273
|
+
end
|
|
274
|
+
end
|
|
275
|
+
|
|
276
|
+
class QuickReplyAction
|
|
277
|
+
# @param [type]: [QuickReplyActionType]
|
|
278
|
+
# @param [title]: [String]
|
|
279
|
+
# @param [id]: [String]
|
|
280
|
+
attr_accessor :type, :title, :id
|
|
281
|
+
def initialize(payload)
|
|
282
|
+
@type = payload["type"]
|
|
283
|
+
@title = payload["title"]
|
|
284
|
+
@id = payload["id"]
|
|
285
|
+
end
|
|
286
|
+
def to_json(options = {})
|
|
287
|
+
{
|
|
288
|
+
"type": @type,
|
|
289
|
+
"title": @title,
|
|
290
|
+
"id": @id,
|
|
291
|
+
}.to_json(options)
|
|
292
|
+
end
|
|
293
|
+
end
|
|
294
|
+
|
|
295
|
+
class TwilioCallToAction
|
|
296
|
+
# @param [body]: [String]
|
|
297
|
+
# @param [actions]: [Array<ContentList.CallToActionAction>]
|
|
298
|
+
attr_accessor :body, :actions
|
|
299
|
+
def initialize(payload)
|
|
300
|
+
@body = payload["body"]
|
|
301
|
+
@actions = payload["actions"]
|
|
302
|
+
end
|
|
303
|
+
def to_json(options = {})
|
|
304
|
+
{
|
|
305
|
+
"body": @body,
|
|
306
|
+
"actions": @actions,
|
|
307
|
+
}.to_json(options)
|
|
308
|
+
end
|
|
309
|
+
end
|
|
310
|
+
|
|
311
|
+
class TwilioCard
|
|
312
|
+
# @param [title]: [String]
|
|
313
|
+
# @param [subtitle]: [String]
|
|
314
|
+
# @param [media]: [Array<String>]
|
|
315
|
+
# @param [actions]: [Array<ContentList.CardAction>]
|
|
316
|
+
attr_accessor :title, :subtitle, :media, :actions
|
|
317
|
+
def initialize(payload)
|
|
318
|
+
@title = payload["title"]
|
|
319
|
+
@subtitle = payload["subtitle"]
|
|
320
|
+
@media = payload["media"]
|
|
321
|
+
@actions = payload["actions"]
|
|
322
|
+
end
|
|
323
|
+
def to_json(options = {})
|
|
324
|
+
{
|
|
325
|
+
"title": @title,
|
|
326
|
+
"subtitle": @subtitle,
|
|
327
|
+
"media": @media,
|
|
328
|
+
"actions": @actions,
|
|
329
|
+
}.to_json(options)
|
|
330
|
+
end
|
|
331
|
+
end
|
|
332
|
+
|
|
333
|
+
class TwilioCarousel
|
|
334
|
+
# @param [body]: [String]
|
|
335
|
+
# @param [cards]: [Array<ContentList.CarouselCard>]
|
|
336
|
+
attr_accessor :body, :cards
|
|
337
|
+
def initialize(payload)
|
|
338
|
+
@body = payload["body"]
|
|
339
|
+
@cards = payload["cards"]
|
|
340
|
+
end
|
|
341
|
+
def to_json(options = {})
|
|
342
|
+
{
|
|
343
|
+
"body": @body,
|
|
344
|
+
"cards": @cards,
|
|
345
|
+
}.to_json(options)
|
|
346
|
+
end
|
|
347
|
+
end
|
|
348
|
+
|
|
349
|
+
class TwilioCatalog
|
|
350
|
+
# @param [title]: [String]
|
|
351
|
+
# @param [body]: [String]
|
|
352
|
+
# @param [subtitle]: [String]
|
|
353
|
+
# @param [id]: [String]
|
|
354
|
+
# @param [items]: [Array<ContentList.CatalogItem>]
|
|
355
|
+
# @param [dynamic_items]: [String]
|
|
356
|
+
attr_accessor :title, :body, :subtitle, :id, :items, :dynamic_items
|
|
357
|
+
def initialize(payload)
|
|
358
|
+
@title = payload["title"]
|
|
359
|
+
@body = payload["body"]
|
|
360
|
+
@subtitle = payload["subtitle"]
|
|
361
|
+
@id = payload["id"]
|
|
362
|
+
@items = payload["items"]
|
|
363
|
+
@dynamic_items = payload["dynamic_items"]
|
|
364
|
+
end
|
|
365
|
+
def to_json(options = {})
|
|
366
|
+
{
|
|
367
|
+
"title": @title,
|
|
368
|
+
"body": @body,
|
|
369
|
+
"subtitle": @subtitle,
|
|
370
|
+
"id": @id,
|
|
371
|
+
"items": @items,
|
|
372
|
+
"dynamic_items": @dynamic_items,
|
|
373
|
+
}.to_json(options)
|
|
374
|
+
end
|
|
375
|
+
end
|
|
376
|
+
|
|
377
|
+
class TwilioFlows
|
|
378
|
+
# @param [body]: [String]
|
|
379
|
+
# @param [button_text]: [String]
|
|
380
|
+
# @param [subtitle]: [String]
|
|
381
|
+
# @param [media_url]: [String]
|
|
382
|
+
# @param [pages]: [Array<ContentList.FlowsPage>]
|
|
383
|
+
# @param [type]: [String]
|
|
384
|
+
attr_accessor :body, :button_text, :subtitle, :media_url, :pages, :type
|
|
385
|
+
def initialize(payload)
|
|
386
|
+
@body = payload["body"]
|
|
387
|
+
@button_text = payload["button_text"]
|
|
388
|
+
@subtitle = payload["subtitle"]
|
|
389
|
+
@media_url = payload["media_url"]
|
|
390
|
+
@pages = payload["pages"]
|
|
391
|
+
@type = payload["type"]
|
|
392
|
+
end
|
|
393
|
+
def to_json(options = {})
|
|
394
|
+
{
|
|
395
|
+
"body": @body,
|
|
396
|
+
"button_text": @button_text,
|
|
397
|
+
"subtitle": @subtitle,
|
|
398
|
+
"media_url": @media_url,
|
|
399
|
+
"pages": @pages,
|
|
400
|
+
"type": @type,
|
|
401
|
+
}.to_json(options)
|
|
402
|
+
end
|
|
403
|
+
end
|
|
404
|
+
|
|
405
|
+
class TwilioListPicker
|
|
406
|
+
# @param [body]: [String]
|
|
407
|
+
# @param [button]: [String]
|
|
408
|
+
# @param [items]: [Array<ContentList.ListItem>]
|
|
409
|
+
attr_accessor :body, :button, :items
|
|
410
|
+
def initialize(payload)
|
|
411
|
+
@body = payload["body"]
|
|
412
|
+
@button = payload["button"]
|
|
413
|
+
@items = payload["items"]
|
|
414
|
+
end
|
|
415
|
+
def to_json(options = {})
|
|
416
|
+
{
|
|
417
|
+
"body": @body,
|
|
418
|
+
"button": @button,
|
|
419
|
+
"items": @items,
|
|
420
|
+
}.to_json(options)
|
|
421
|
+
end
|
|
422
|
+
end
|
|
423
|
+
|
|
424
|
+
class TwilioLocation
|
|
425
|
+
# @param [latitude]: [Float]
|
|
426
|
+
# @param [longitude]: [Float]
|
|
427
|
+
# @param [label]: [String]
|
|
428
|
+
# @param [id]: [String]
|
|
429
|
+
# @param [address]: [String]
|
|
430
|
+
attr_accessor :latitude, :longitude, :label, :id, :address
|
|
431
|
+
def initialize(payload)
|
|
432
|
+
@latitude = payload["latitude"]
|
|
433
|
+
@longitude = payload["longitude"]
|
|
434
|
+
@label = payload["label"]
|
|
435
|
+
@id = payload["id"]
|
|
436
|
+
@address = payload["address"]
|
|
437
|
+
end
|
|
438
|
+
def to_json(options = {})
|
|
439
|
+
{
|
|
440
|
+
"latitude": @latitude,
|
|
441
|
+
"longitude": @longitude,
|
|
442
|
+
"label": @label,
|
|
443
|
+
"id": @id,
|
|
444
|
+
"address": @address,
|
|
445
|
+
}.to_json(options)
|
|
446
|
+
end
|
|
447
|
+
end
|
|
448
|
+
|
|
449
|
+
class TwilioMedia
|
|
450
|
+
# @param [body]: [String]
|
|
451
|
+
# @param [media]: [Array<String>]
|
|
452
|
+
attr_accessor :body, :media
|
|
453
|
+
def initialize(payload)
|
|
454
|
+
@body = payload["body"]
|
|
455
|
+
@media = payload["media"]
|
|
456
|
+
end
|
|
457
|
+
def to_json(options = {})
|
|
458
|
+
{
|
|
459
|
+
"body": @body,
|
|
460
|
+
"media": @media,
|
|
461
|
+
}.to_json(options)
|
|
462
|
+
end
|
|
463
|
+
end
|
|
464
|
+
|
|
465
|
+
class TwilioQuickReply
|
|
466
|
+
# @param [body]: [String]
|
|
467
|
+
# @param [actions]: [Array<ContentList.QuickReplyAction>]
|
|
468
|
+
attr_accessor :body, :actions
|
|
469
|
+
def initialize(payload)
|
|
470
|
+
@body = payload["body"]
|
|
471
|
+
@actions = payload["actions"]
|
|
472
|
+
end
|
|
473
|
+
def to_json(options = {})
|
|
474
|
+
{
|
|
475
|
+
"body": @body,
|
|
476
|
+
"actions": @actions,
|
|
477
|
+
}.to_json(options)
|
|
478
|
+
end
|
|
479
|
+
end
|
|
480
|
+
|
|
481
|
+
class TwilioSchedule
|
|
482
|
+
# @param [id]: [String]
|
|
483
|
+
# @param [title]: [String]
|
|
484
|
+
# @param [time_slots]: [String]
|
|
485
|
+
attr_accessor :id, :title, :time_slots
|
|
486
|
+
def initialize(payload)
|
|
487
|
+
@id = payload["id"]
|
|
488
|
+
@title = payload["title"]
|
|
489
|
+
@time_slots = payload["time_slots"]
|
|
490
|
+
end
|
|
491
|
+
def to_json(options = {})
|
|
492
|
+
{
|
|
493
|
+
"id": @id,
|
|
494
|
+
"title": @title,
|
|
495
|
+
"timeSlots": @time_slots,
|
|
496
|
+
}.to_json(options)
|
|
497
|
+
end
|
|
498
|
+
end
|
|
499
|
+
|
|
500
|
+
class TwilioText
|
|
501
|
+
# @param [body]: [String]
|
|
502
|
+
attr_accessor :body
|
|
503
|
+
def initialize(payload)
|
|
504
|
+
@body = payload["body"]
|
|
505
|
+
end
|
|
506
|
+
def to_json(options = {})
|
|
507
|
+
{
|
|
508
|
+
"body": @body,
|
|
509
|
+
}.to_json(options)
|
|
510
|
+
end
|
|
511
|
+
end
|
|
512
|
+
|
|
513
|
+
class Types
|
|
514
|
+
# @param [twilio_text]: [ContentList.TwilioText]
|
|
515
|
+
# @param [twilio_media]: [ContentList.TwilioMedia]
|
|
516
|
+
# @param [twilio_location]: [ContentList.TwilioLocation]
|
|
517
|
+
# @param [twilio_list_picker]: [ContentList.TwilioListPicker]
|
|
518
|
+
# @param [twilio_call_to_action]: [ContentList.TwilioCallToAction]
|
|
519
|
+
# @param [twilio_quick_reply]: [ContentList.TwilioQuickReply]
|
|
520
|
+
# @param [twilio_card]: [ContentList.TwilioCard]
|
|
521
|
+
# @param [twilio_catalog]: [ContentList.TwilioCatalog]
|
|
522
|
+
# @param [twilio_carousel]: [ContentList.TwilioCarousel]
|
|
523
|
+
# @param [twilio_flows]: [ContentList.TwilioFlows]
|
|
524
|
+
# @param [twilio_schedule]: [ContentList.TwilioSchedule]
|
|
525
|
+
# @param [whatsapp_card]: [ContentList.WhatsappCard]
|
|
526
|
+
# @param [whatsapp_authentication]: [ContentList.WhatsappAuthentication]
|
|
527
|
+
# @param [whatsapp_flows]: [ContentList.WhatsappFlows]
|
|
528
|
+
attr_accessor :twilio_text, :twilio_media, :twilio_location, :twilio_list_picker, :twilio_call_to_action, :twilio_quick_reply, :twilio_card, :twilio_catalog, :twilio_carousel, :twilio_flows, :twilio_schedule, :whatsapp_card, :whatsapp_authentication, :whatsapp_flows
|
|
529
|
+
def initialize(payload)
|
|
530
|
+
@twilio_text = payload["twilio_text"]
|
|
531
|
+
@twilio_media = payload["twilio_media"]
|
|
532
|
+
@twilio_location = payload["twilio_location"]
|
|
533
|
+
@twilio_list_picker = payload["twilio_list_picker"]
|
|
534
|
+
@twilio_call_to_action = payload["twilio_call_to_action"]
|
|
535
|
+
@twilio_quick_reply = payload["twilio_quick_reply"]
|
|
536
|
+
@twilio_card = payload["twilio_card"]
|
|
537
|
+
@twilio_catalog = payload["twilio_catalog"]
|
|
538
|
+
@twilio_carousel = payload["twilio_carousel"]
|
|
539
|
+
@twilio_flows = payload["twilio_flows"]
|
|
540
|
+
@twilio_schedule = payload["twilio_schedule"]
|
|
541
|
+
@whatsapp_card = payload["whatsapp_card"]
|
|
542
|
+
@whatsapp_authentication = payload["whatsapp_authentication"]
|
|
543
|
+
@whatsapp_flows = payload["whatsapp_flows"]
|
|
544
|
+
end
|
|
545
|
+
def to_json(options = {})
|
|
546
|
+
{
|
|
547
|
+
"twilio/text": @twilio_text,
|
|
548
|
+
"twilio/media": @twilio_media,
|
|
549
|
+
"twilio/location": @twilio_location,
|
|
550
|
+
"twilio/list-picker": @twilio_list_picker,
|
|
551
|
+
"twilio/call-to-action": @twilio_call_to_action,
|
|
552
|
+
"twilio/quick-reply": @twilio_quick_reply,
|
|
553
|
+
"twilio/card": @twilio_card,
|
|
554
|
+
"twilio/catalog": @twilio_catalog,
|
|
555
|
+
"twilio/carousel": @twilio_carousel,
|
|
556
|
+
"twilio/flows": @twilio_flows,
|
|
557
|
+
"twilio/schedule": @twilio_schedule,
|
|
558
|
+
"whatsapp/card": @whatsapp_card,
|
|
559
|
+
"whatsapp/authentication": @whatsapp_authentication,
|
|
560
|
+
"whatsapp/flows": @whatsapp_flows,
|
|
561
|
+
}.to_json(options)
|
|
562
|
+
end
|
|
563
|
+
end
|
|
564
|
+
|
|
565
|
+
class WhatsappAuthentication
|
|
566
|
+
# @param [add_security_recommendation]: [Boolean]
|
|
567
|
+
# @param [code_expiration_minutes]: [Float]
|
|
568
|
+
# @param [actions]: [Array<ContentList.AuthenticationAction>]
|
|
569
|
+
attr_accessor :add_security_recommendation, :code_expiration_minutes, :actions
|
|
570
|
+
def initialize(payload)
|
|
571
|
+
@add_security_recommendation = payload["add_security_recommendation"]
|
|
572
|
+
@code_expiration_minutes = payload["code_expiration_minutes"]
|
|
573
|
+
@actions = payload["actions"]
|
|
574
|
+
end
|
|
575
|
+
def to_json(options = {})
|
|
576
|
+
{
|
|
577
|
+
"add_security_recommendation": @add_security_recommendation,
|
|
578
|
+
"code_expiration_minutes": @code_expiration_minutes,
|
|
579
|
+
"actions": @actions,
|
|
580
|
+
}.to_json(options)
|
|
581
|
+
end
|
|
582
|
+
end
|
|
583
|
+
|
|
584
|
+
class WhatsappCard
|
|
585
|
+
# @param [body]: [String]
|
|
586
|
+
# @param [footer]: [String]
|
|
587
|
+
# @param [media]: [Array<String>]
|
|
588
|
+
# @param [header_text]: [String]
|
|
589
|
+
# @param [actions]: [Array<ContentList.CardAction>]
|
|
590
|
+
attr_accessor :body, :footer, :media, :header_text, :actions
|
|
591
|
+
def initialize(payload)
|
|
592
|
+
@body = payload["body"]
|
|
593
|
+
@footer = payload["footer"]
|
|
594
|
+
@media = payload["media"]
|
|
595
|
+
@header_text = payload["header_text"]
|
|
596
|
+
@actions = payload["actions"]
|
|
597
|
+
end
|
|
598
|
+
def to_json(options = {})
|
|
599
|
+
{
|
|
600
|
+
"body": @body,
|
|
601
|
+
"footer": @footer,
|
|
602
|
+
"media": @media,
|
|
603
|
+
"header_text": @header_text,
|
|
604
|
+
"actions": @actions,
|
|
605
|
+
}.to_json(options)
|
|
606
|
+
end
|
|
607
|
+
end
|
|
608
|
+
|
|
609
|
+
class WhatsappFlows
|
|
610
|
+
# @param [body]: [String]
|
|
611
|
+
# @param [button_text]: [String]
|
|
612
|
+
# @param [subtitle]: [String]
|
|
613
|
+
# @param [media_url]: [String]
|
|
614
|
+
# @param [flow_id]: [String]
|
|
615
|
+
# @param [flow_token]: [String]
|
|
616
|
+
# @param [flow_first_page_id]: [String]
|
|
617
|
+
# @param [is_flow_first_page_endpoint]: [Boolean]
|
|
618
|
+
attr_accessor :body, :button_text, :subtitle, :media_url, :flow_id, :flow_token, :flow_first_page_id, :is_flow_first_page_endpoint
|
|
619
|
+
def initialize(payload)
|
|
620
|
+
@body = payload["body"]
|
|
621
|
+
@button_text = payload["button_text"]
|
|
622
|
+
@subtitle = payload["subtitle"]
|
|
623
|
+
@media_url = payload["media_url"]
|
|
624
|
+
@flow_id = payload["flow_id"]
|
|
625
|
+
@flow_token = payload["flow_token"]
|
|
626
|
+
@flow_first_page_id = payload["flow_first_page_id"]
|
|
627
|
+
@is_flow_first_page_endpoint = payload["is_flow_first_page_endpoint"]
|
|
628
|
+
end
|
|
629
|
+
def to_json(options = {})
|
|
630
|
+
{
|
|
631
|
+
"body": @body,
|
|
632
|
+
"button_text": @button_text,
|
|
633
|
+
"subtitle": @subtitle,
|
|
634
|
+
"media_url": @media_url,
|
|
635
|
+
"flow_id": @flow_id,
|
|
636
|
+
"flow_token": @flow_token,
|
|
637
|
+
"flow_first_page_id": @flow_first_page_id,
|
|
638
|
+
"is_flow_first_page_endpoint": @is_flow_first_page_endpoint,
|
|
639
|
+
}.to_json(options)
|
|
640
|
+
end
|
|
641
|
+
end
|
|
642
|
+
|
|
643
|
+
|
|
644
|
+
class AuthenticationAction
|
|
645
|
+
# @param [type]: [AuthenticationActionType]
|
|
646
|
+
# @param [copy_code_text]: [String]
|
|
647
|
+
attr_accessor :type, :copy_code_text
|
|
648
|
+
def initialize(payload)
|
|
649
|
+
@type = payload["type"]
|
|
650
|
+
@copy_code_text = payload["copy_code_text"]
|
|
651
|
+
end
|
|
652
|
+
def to_json(options = {})
|
|
653
|
+
{
|
|
654
|
+
"type": @type,
|
|
655
|
+
"copy_code_text": @copy_code_text,
|
|
656
|
+
}.to_json(options)
|
|
657
|
+
end
|
|
658
|
+
end
|
|
659
|
+
|
|
660
|
+
class CallToActionAction
|
|
661
|
+
# @param [type]: [CallToActionActionType]
|
|
662
|
+
# @param [title]: [String]
|
|
663
|
+
# @param [url]: [String]
|
|
664
|
+
# @param [phone]: [String]
|
|
665
|
+
# @param [code]: [String]
|
|
666
|
+
# @param [id]: [String]
|
|
667
|
+
attr_accessor :type, :title, :url, :phone, :code, :id
|
|
668
|
+
def initialize(payload)
|
|
669
|
+
@type = payload["type"]
|
|
670
|
+
@title = payload["title"]
|
|
671
|
+
@url = payload["url"]
|
|
672
|
+
@phone = payload["phone"]
|
|
673
|
+
@code = payload["code"]
|
|
674
|
+
@id = payload["id"]
|
|
675
|
+
end
|
|
676
|
+
def to_json(options = {})
|
|
677
|
+
{
|
|
678
|
+
"type": @type,
|
|
679
|
+
"title": @title,
|
|
680
|
+
"url": @url,
|
|
681
|
+
"phone": @phone,
|
|
682
|
+
"code": @code,
|
|
683
|
+
"id": @id,
|
|
684
|
+
}.to_json(options)
|
|
685
|
+
end
|
|
686
|
+
end
|
|
687
|
+
|
|
688
|
+
class CardAction
|
|
689
|
+
# @param [type]: [CardActionType]
|
|
690
|
+
# @param [title]: [String]
|
|
691
|
+
# @param [url]: [String]
|
|
692
|
+
# @param [phone]: [String]
|
|
693
|
+
# @param [id]: [String]
|
|
694
|
+
# @param [code]: [String]
|
|
695
|
+
# @param [webview_size]: [WebviewSizeType]
|
|
696
|
+
attr_accessor :type, :title, :url, :phone, :id, :code, :webview_size
|
|
697
|
+
def initialize(payload)
|
|
698
|
+
@type = payload["type"]
|
|
699
|
+
@title = payload["title"]
|
|
700
|
+
@url = payload["url"]
|
|
701
|
+
@phone = payload["phone"]
|
|
702
|
+
@id = payload["id"]
|
|
703
|
+
@code = payload["code"]
|
|
704
|
+
@webview_size = payload["webview_size"]
|
|
705
|
+
end
|
|
706
|
+
def to_json(options = {})
|
|
707
|
+
{
|
|
708
|
+
"type": @type,
|
|
709
|
+
"title": @title,
|
|
710
|
+
"url": @url,
|
|
711
|
+
"phone": @phone,
|
|
712
|
+
"id": @id,
|
|
713
|
+
"code": @code,
|
|
714
|
+
"webview_size": @webview_size,
|
|
715
|
+
}.to_json(options)
|
|
716
|
+
end
|
|
717
|
+
end
|
|
718
|
+
|
|
719
|
+
class CarouselAction
|
|
720
|
+
# @param [type]: [CarouselActionType]
|
|
721
|
+
# @param [title]: [String]
|
|
722
|
+
# @param [url]: [String]
|
|
723
|
+
# @param [phone]: [String]
|
|
724
|
+
# @param [id]: [String]
|
|
725
|
+
attr_accessor :type, :title, :url, :phone, :id
|
|
726
|
+
def initialize(payload)
|
|
727
|
+
@type = payload["type"]
|
|
728
|
+
@title = payload["title"]
|
|
729
|
+
@url = payload["url"]
|
|
730
|
+
@phone = payload["phone"]
|
|
731
|
+
@id = payload["id"]
|
|
732
|
+
end
|
|
733
|
+
def to_json(options = {})
|
|
734
|
+
{
|
|
735
|
+
"type": @type,
|
|
736
|
+
"title": @title,
|
|
737
|
+
"url": @url,
|
|
738
|
+
"phone": @phone,
|
|
739
|
+
"id": @id,
|
|
740
|
+
}.to_json(options)
|
|
741
|
+
end
|
|
742
|
+
end
|
|
743
|
+
|
|
744
|
+
class CarouselCard
|
|
745
|
+
# @param [title]: [String]
|
|
746
|
+
# @param [body]: [String]
|
|
747
|
+
# @param [media]: [String]
|
|
748
|
+
# @param [actions]: [Array<ContentList.CarouselAction>]
|
|
749
|
+
attr_accessor :title, :body, :media, :actions
|
|
750
|
+
def initialize(payload)
|
|
751
|
+
@title = payload["title"]
|
|
752
|
+
@body = payload["body"]
|
|
753
|
+
@media = payload["media"]
|
|
754
|
+
@actions = payload["actions"]
|
|
755
|
+
end
|
|
756
|
+
def to_json(options = {})
|
|
757
|
+
{
|
|
758
|
+
"title": @title,
|
|
759
|
+
"body": @body,
|
|
760
|
+
"media": @media,
|
|
761
|
+
"actions": @actions,
|
|
762
|
+
}.to_json(options)
|
|
763
|
+
end
|
|
764
|
+
end
|
|
765
|
+
|
|
766
|
+
class CatalogItem
|
|
767
|
+
# @param [id]: [String]
|
|
768
|
+
# @param [section_title]: [String]
|
|
769
|
+
# @param [name]: [String]
|
|
770
|
+
# @param [media_url]: [String]
|
|
771
|
+
# @param [price]: [Float]
|
|
772
|
+
# @param [description]: [String]
|
|
773
|
+
attr_accessor :id, :section_title, :name, :media_url, :price, :description
|
|
774
|
+
def initialize(payload)
|
|
775
|
+
@id = payload["id"]
|
|
776
|
+
@section_title = payload["section_title"]
|
|
777
|
+
@name = payload["name"]
|
|
778
|
+
@media_url = payload["media_url"]
|
|
779
|
+
@price = payload["price"]
|
|
780
|
+
@description = payload["description"]
|
|
781
|
+
end
|
|
782
|
+
def to_json(options = {})
|
|
783
|
+
{
|
|
784
|
+
"id": @id,
|
|
785
|
+
"section_title": @section_title,
|
|
786
|
+
"name": @name,
|
|
787
|
+
"media_url": @media_url,
|
|
788
|
+
"price": @price,
|
|
789
|
+
"description": @description,
|
|
790
|
+
}.to_json(options)
|
|
791
|
+
end
|
|
792
|
+
end
|
|
793
|
+
|
|
794
|
+
class ContentCreateRequest
|
|
795
|
+
# @param [friendly_name]: [String] User defined name of the content
|
|
796
|
+
# @param [variables]: [Hash<String, String>] Key value pairs of variable name to value
|
|
797
|
+
# @param [language]: [String] Language code for the content
|
|
798
|
+
# @param [types]: [ContentList.Types]
|
|
799
|
+
attr_accessor :friendly_name, :variables, :language, :types
|
|
800
|
+
def initialize(payload)
|
|
801
|
+
@friendly_name = payload["friendly_name"]
|
|
802
|
+
@variables = payload["variables"]
|
|
803
|
+
@language = payload["language"]
|
|
804
|
+
@types = payload["types"]
|
|
805
|
+
end
|
|
806
|
+
def to_json(options = {})
|
|
807
|
+
{
|
|
808
|
+
"friendly_name": @friendly_name,
|
|
809
|
+
"variables": @variables,
|
|
810
|
+
"language": @language,
|
|
811
|
+
"types": @types,
|
|
812
|
+
}.to_json(options)
|
|
813
|
+
end
|
|
814
|
+
end
|
|
815
|
+
|
|
816
|
+
class ContentUpdateRequest
|
|
817
|
+
# @param [friendly_name]: [String] User defined name of the content
|
|
818
|
+
# @param [variables]: [Hash<String, String>] Key value pairs of variable name to value
|
|
819
|
+
# @param [language]: [String] Language code for the content
|
|
820
|
+
# @param [types]: [ContentList.Types]
|
|
821
|
+
attr_accessor :friendly_name, :variables, :language, :types
|
|
822
|
+
def initialize(payload)
|
|
823
|
+
@friendly_name = payload["friendly_name"]
|
|
824
|
+
@variables = payload["variables"]
|
|
825
|
+
@language = payload["language"]
|
|
826
|
+
@types = payload["types"]
|
|
827
|
+
end
|
|
828
|
+
def to_json(options = {})
|
|
829
|
+
{
|
|
830
|
+
"friendly_name": @friendly_name,
|
|
831
|
+
"variables": @variables,
|
|
832
|
+
"language": @language,
|
|
833
|
+
"types": @types,
|
|
834
|
+
}.to_json(options)
|
|
835
|
+
end
|
|
836
|
+
end
|
|
837
|
+
|
|
194
838
|
class FlowsPage
|
|
195
839
|
# @param [id]: [String]
|
|
196
840
|
# @param [next_page_id]: [String]
|
|
@@ -751,7 +1395,7 @@ module Twilio
|
|
|
751
1395
|
##
|
|
752
1396
|
# Initialize the ContentContext
|
|
753
1397
|
# @param [Version] version Version that contains the resource
|
|
754
|
-
# @param [String] sid The Twilio-provided string that uniquely identifies the Content resource to
|
|
1398
|
+
# @param [String] sid The Twilio-provided string that uniquely identifies the Content resource to update.
|
|
755
1399
|
# @return [ContentContext] ContentContext
|
|
756
1400
|
def initialize(version, sid)
|
|
757
1401
|
super(version)
|
|
@@ -795,6 +1439,27 @@ module Twilio
|
|
|
795
1439
|
)
|
|
796
1440
|
end
|
|
797
1441
|
|
|
1442
|
+
##
|
|
1443
|
+
# Update the ContentInstance
|
|
1444
|
+
# @param [ContentUpdateRequest] content_update_request
|
|
1445
|
+
# @return [ContentInstance] Updated ContentInstance
|
|
1446
|
+
def update(content_update_request: nil
|
|
1447
|
+
)
|
|
1448
|
+
|
|
1449
|
+
headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
|
|
1450
|
+
headers['Content-Type'] = 'application/json'
|
|
1451
|
+
|
|
1452
|
+
|
|
1453
|
+
|
|
1454
|
+
|
|
1455
|
+
payload = @version.update('PUT', @uri, headers: headers, data: content_update_request.to_json)
|
|
1456
|
+
ContentInstance.new(
|
|
1457
|
+
@version,
|
|
1458
|
+
payload,
|
|
1459
|
+
sid: @solution[:sid],
|
|
1460
|
+
)
|
|
1461
|
+
end
|
|
1462
|
+
|
|
798
1463
|
##
|
|
799
1464
|
# Access the approval_create
|
|
800
1465
|
# @return [ApprovalCreateList]
|
|
@@ -979,6 +1644,17 @@ module Twilio
|
|
|
979
1644
|
context.fetch
|
|
980
1645
|
end
|
|
981
1646
|
|
|
1647
|
+
##
|
|
1648
|
+
# Update the ContentInstance
|
|
1649
|
+
# @param [ContentUpdateRequest] content_update_request
|
|
1650
|
+
# @return [ContentInstance] Updated ContentInstance
|
|
1651
|
+
def update(content_update_request: nil
|
|
1652
|
+
)
|
|
1653
|
+
|
|
1654
|
+
context.update(
|
|
1655
|
+
)
|
|
1656
|
+
end
|
|
1657
|
+
|
|
982
1658
|
##
|
|
983
1659
|
# Access the approval_create
|
|
984
1660
|
# @return [approval_create] approval_create
|