twilio-ruby 5.74.5 → 6.0.0.pre.rc.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (628) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/test-and-deploy.yml +10 -0
  3. data/.gitignore +3 -0
  4. data/CHANGES.md +34 -51
  5. data/Makefile +3 -0
  6. data/README.md +8 -2
  7. data/UPGRADE.md +7 -0
  8. data/cluster_spec.rb +77 -0
  9. data/lib/twilio-ruby/base/client_base.rb +124 -0
  10. data/lib/twilio-ruby/rest/accounts/v1/auth_token_promotion.rb +198 -178
  11. data/lib/twilio-ruby/rest/accounts/v1/credential/aws.rb +372 -332
  12. data/lib/twilio-ruby/rest/accounts/v1/credential/public_key.rb +372 -332
  13. data/lib/twilio-ruby/rest/accounts/v1/credential.rb +121 -114
  14. data/lib/twilio-ruby/rest/accounts/v1/secondary_auth_token.rb +214 -192
  15. data/lib/twilio-ruby/rest/accounts/v1.rb +45 -42
  16. data/lib/twilio-ruby/rest/accounts.rb +4 -34
  17. data/lib/twilio-ruby/rest/accounts_base.rb +38 -0
  18. data/lib/twilio-ruby/rest/api/v2010/account/address/dependent_phone_number.rb +371 -365
  19. data/lib/twilio-ruby/rest/api/v2010/account/address.rb +560 -530
  20. data/lib/twilio-ruby/rest/api/v2010/account/application.rb +617 -605
  21. data/lib/twilio-ruby/rest/api/v2010/account/authorized_connect_app.rb +328 -320
  22. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/local.rb +413 -0
  23. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/machine_to_machine.rb +413 -0
  24. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/mobile.rb +413 -0
  25. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/national.rb +413 -0
  26. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/shared_cost.rb +413 -0
  27. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/toll_free.rb +413 -0
  28. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/voip.rb +413 -0
  29. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country.rb +468 -0
  30. data/lib/twilio-ruby/rest/api/v2010/account/balance.rb +136 -118
  31. data/lib/twilio-ruby/rest/api/v2010/account/call/event.rb +203 -194
  32. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb +252 -289
  33. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb +317 -303
  34. data/lib/twilio-ruby/rest/api/v2010/account/call/notification.rb +405 -417
  35. data/lib/twilio-ruby/rest/api/v2010/account/call/payment.rb +291 -342
  36. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +498 -511
  37. data/lib/twilio-ruby/rest/api/v2010/account/call/siprec.rb +839 -641
  38. data/lib/twilio-ruby/rest/api/v2010/account/call/stream.rb +839 -641
  39. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message.rb +156 -153
  40. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message_subscription.rb +228 -240
  41. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +997 -1050
  42. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +650 -756
  43. data/lib/twilio-ruby/rest/api/v2010/account/conference/recording.rb +455 -458
  44. data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +506 -493
  45. data/lib/twilio-ruby/rest/api/v2010/account/connect_app.rb +427 -407
  46. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension.rb +322 -351
  47. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on.rb +404 -418
  48. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +541 -554
  49. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +541 -553
  50. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +541 -553
  51. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +850 -903
  52. data/lib/twilio-ruby/rest/api/v2010/account/key.rb +336 -302
  53. data/lib/twilio-ruby/rest/api/v2010/account/message/feedback.rb +167 -166
  54. data/lib/twilio-ruby/rest/api/v2010/account/message/media.rb +344 -350
  55. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +627 -641
  56. data/lib/twilio-ruby/rest/api/v2010/account/new_key.rb +157 -138
  57. data/lib/twilio-ruby/rest/api/v2010/account/new_signing_key.rb +157 -138
  58. data/lib/twilio-ruby/rest/api/v2010/account/notification.rb +405 -399
  59. data/lib/twilio-ruby/rest/api/v2010/account/outgoing_caller_id.rb +371 -358
  60. data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +341 -338
  61. data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +431 -390
  62. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload.rb +359 -380
  63. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result.rb +374 -385
  64. data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +365 -372
  65. data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +522 -513
  66. data/lib/twilio-ruby/rest/api/v2010/account/short_code.rb +420 -408
  67. data/lib/twilio-ruby/rest/api/v2010/account/signing_key.rb +336 -306
  68. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list/credential.rb +376 -368
  69. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list.rb +404 -373
  70. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls/auth_calls_credential_list_mapping.rb +347 -0
  71. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/{auth_calls_mapping → auth_type_calls}/auth_calls_ip_access_control_list_mapping.rb +194 -195
  72. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls.rb +140 -0
  73. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/{auth_registrations_mapping → auth_type_registrations}/auth_registrations_credential_list_mapping.rb +194 -195
  74. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_registrations.rb +126 -0
  75. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types.rb +94 -103
  76. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb +340 -339
  77. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/ip_access_control_list_mapping.rb +340 -338
  78. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +663 -645
  79. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +413 -421
  80. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb +404 -374
  81. data/lib/twilio-ruby/rest/api/v2010/account/sip.rb +141 -150
  82. data/lib/twilio-ruby/rest/api/v2010/account/token.rb +171 -154
  83. data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +365 -350
  84. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +319 -339
  85. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +319 -339
  86. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +319 -339
  87. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +319 -339
  88. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +319 -339
  89. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +319 -339
  90. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +319 -339
  91. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +319 -339
  92. data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +386 -416
  93. data/lib/twilio-ruby/rest/api/v2010/account/usage/trigger.rb +489 -484
  94. data/lib/twilio-ruby/rest/api/v2010/account/usage.rb +112 -104
  95. data/lib/twilio-ruby/rest/api/v2010/account/validation_request.rb +172 -161
  96. data/lib/twilio-ruby/rest/api/v2010/account.rb +1061 -943
  97. data/lib/twilio-ruby/rest/api/v2010.rb +126 -148
  98. data/lib/twilio-ruby/rest/api.rb +25 -34
  99. data/lib/twilio-ruby/rest/api_base.rb +38 -0
  100. data/lib/twilio-ruby/rest/autopilot/v1/assistant/defaults.rb +234 -213
  101. data/lib/twilio-ruby/rest/autopilot/v1/assistant/dialogue.rb +210 -207
  102. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type/field_value.rb +380 -388
  103. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type.rb +433 -411
  104. data/lib/twilio-ruby/rest/autopilot/v1/assistant/model_build.rb +403 -385
  105. data/lib/twilio-ruby/rest/autopilot/v1/assistant/query.rb +471 -462
  106. data/lib/twilio-ruby/rest/autopilot/v1/assistant/style_sheet.rb +234 -211
  107. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/field.rb +363 -375
  108. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/sample.rb +427 -445
  109. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_actions.rb +242 -244
  110. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_statistics.rb +215 -226
  111. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task.rb +527 -500
  112. data/lib/twilio-ruby/rest/autopilot/v1/assistant/webhook.rb +427 -413
  113. data/lib/twilio-ruby/rest/autopilot/v1/assistant.rb +692 -640
  114. data/lib/twilio-ruby/rest/autopilot/v1/restore_assistant.rb +201 -188
  115. data/lib/twilio-ruby/rest/autopilot/v1.rb +48 -45
  116. data/lib/twilio-ruby/rest/autopilot.rb +3 -34
  117. data/lib/twilio-ruby/rest/autopilot_base.rb +38 -0
  118. data/lib/twilio-ruby/rest/bulkexports/v1/export/day.rb +300 -279
  119. data/lib/twilio-ruby/rest/bulkexports/v1/export/export_custom_job.rb +299 -279
  120. data/lib/twilio-ruby/rest/bulkexports/v1/export/job.rb +271 -248
  121. data/lib/twilio-ruby/rest/bulkexports/v1/export.rb +253 -235
  122. data/lib/twilio-ruby/rest/bulkexports/v1/export_configuration.rb +245 -218
  123. data/lib/twilio-ruby/rest/bulkexports/v1.rb +57 -55
  124. data/lib/twilio-ruby/rest/bulkexports.rb +3 -34
  125. data/lib/twilio-ruby/rest/bulkexports_base.rb +38 -0
  126. data/lib/twilio-ruby/rest/chat/v1/credential.rb +420 -403
  127. data/lib/twilio-ruby/rest/chat/v1/service/channel/invite.rb +375 -391
  128. data/lib/twilio-ruby/rest/chat/v1/service/channel/member.rb +423 -440
  129. data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +440 -437
  130. data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +547 -515
  131. data/lib/twilio-ruby/rest/chat/v1/service/role.rb +397 -367
  132. data/lib/twilio-ruby/rest/chat/v1/service/user/user_channel.rb +245 -239
  133. data/lib/twilio-ruby/rest/chat/v1/service/user.rb +471 -440
  134. data/lib/twilio-ruby/rest/chat/v1/service.rb +871 -894
  135. data/lib/twilio-ruby/rest/chat/v1.rb +57 -55
  136. data/lib/twilio-ruby/rest/chat/v2/credential.rb +420 -401
  137. data/lib/twilio-ruby/rest/chat/v2/service/binding.rb +372 -370
  138. data/lib/twilio-ruby/rest/chat/v2/service/channel/invite.rb +375 -386
  139. data/lib/twilio-ruby/rest/chat/v2/service/channel/member.rb +487 -527
  140. data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +515 -533
  141. data/lib/twilio-ruby/rest/chat/v2/service/channel/webhook.rb +441 -467
  142. data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +623 -605
  143. data/lib/twilio-ruby/rest/chat/v2/service/role.rb +397 -369
  144. data/lib/twilio-ruby/rest/chat/v2/service/user/user_binding.rb +365 -381
  145. data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +407 -419
  146. data/lib/twilio-ruby/rest/chat/v2/service/user.rb +518 -491
  147. data/lib/twilio-ruby/rest/chat/v2/service.rb +777 -778
  148. data/lib/twilio-ruby/rest/chat/v2.rb +57 -53
  149. data/lib/twilio-ruby/rest/chat/v3/channel.rb +289 -267
  150. data/lib/twilio-ruby/rest/chat/v3.rb +64 -41
  151. data/lib/twilio-ruby/rest/chat.rb +4 -48
  152. data/lib/twilio-ruby/rest/chat_base.rb +48 -0
  153. data/lib/twilio-ruby/rest/client.rb +314 -574
  154. data/lib/twilio-ruby/rest/content/v1/content/approval_fetch.rb +201 -188
  155. data/lib/twilio-ruby/rest/content/v1/content.rb +354 -336
  156. data/lib/twilio-ruby/rest/content/v1/content_and_approvals.rb +252 -0
  157. data/lib/twilio-ruby/rest/content/v1/legacy_content.rb +258 -246
  158. data/lib/twilio-ruby/rest/content/v1.rb +54 -45
  159. data/lib/twilio-ruby/rest/content.rb +2 -40
  160. data/lib/twilio-ruby/rest/content_base.rb +38 -0
  161. data/lib/twilio-ruby/rest/conversations/v1/address_configuration.rb +464 -444
  162. data/lib/twilio-ruby/rest/conversations/v1/configuration/webhook.rb +254 -227
  163. data/lib/twilio-ruby/rest/conversations/v1/configuration.rb +279 -252
  164. data/lib/twilio-ruby/rest/conversations/v1/conversation/message/delivery_receipt.rb +335 -344
  165. data/lib/twilio-ruby/rest/conversations/v1/conversation/message.rb +534 -510
  166. data/lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb +499 -495
  167. data/lib/twilio-ruby/rest/conversations/v1/conversation/webhook.rb +426 -403
  168. data/lib/twilio-ruby/rest/conversations/v1/conversation.rb +594 -552
  169. data/lib/twilio-ruby/rest/conversations/v1/credential.rb +426 -409
  170. data/lib/twilio-ruby/rest/conversations/v1/participant_conversation.rb +307 -304
  171. data/lib/twilio-ruby/rest/conversations/v1/role.rb +385 -356
  172. data/lib/twilio-ruby/rest/conversations/v1/service/binding.rb +365 -373
  173. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb +300 -289
  174. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb +246 -235
  175. data/lib/twilio-ruby/rest/conversations/v1/service/configuration.rb +307 -279
  176. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message/delivery_receipt.rb +342 -371
  177. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message.rb +542 -550
  178. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/participant.rb +508 -530
  179. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/webhook.rb +435 -438
  180. data/lib/twilio-ruby/rest/conversations/v1/service/conversation.rb +609 -588
  181. data/lib/twilio-ruby/rest/conversations/v1/service/participant_conversation.rb +313 -317
  182. data/lib/twilio-ruby/rest/conversations/v1/service/role.rb +397 -380
  183. data/lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb +447 -455
  184. data/lib/twilio-ruby/rest/conversations/v1/service/user.rb +489 -474
  185. data/lib/twilio-ruby/rest/conversations/v1/service.rb +493 -447
  186. data/lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb +446 -435
  187. data/lib/twilio-ruby/rest/conversations/v1/user.rb +476 -441
  188. data/lib/twilio-ruby/rest/conversations/v1.rb +129 -136
  189. data/lib/twilio-ruby/rest/conversations.rb +9 -34
  190. data/lib/twilio-ruby/rest/conversations_base.rb +38 -0
  191. data/lib/twilio-ruby/rest/events/v1/event_type.rb +306 -288
  192. data/lib/twilio-ruby/rest/events/v1/schema/schema_version.rb +302 -0
  193. data/lib/twilio-ruby/rest/events/v1/schema.rb +232 -218
  194. data/lib/twilio-ruby/rest/events/v1/sink/sink_test.rb +114 -100
  195. data/lib/twilio-ruby/rest/events/v1/sink/sink_validate.rb +120 -103
  196. data/lib/twilio-ruby/rest/events/v1/sink.rb +447 -408
  197. data/lib/twilio-ruby/rest/events/v1/subscription/subscribed_event.rb +368 -339
  198. data/lib/twilio-ruby/rest/events/v1/subscription.rb +423 -387
  199. data/lib/twilio-ruby/rest/events/v1.rb +87 -87
  200. data/lib/twilio-ruby/rest/events.rb +5 -34
  201. data/lib/twilio-ruby/rest/events_base.rb +38 -0
  202. data/lib/twilio-ruby/rest/flex_api/v1/assessments.rb +447 -387
  203. data/lib/twilio-ruby/rest/flex_api/v1/channel.rb +366 -330
  204. data/lib/twilio-ruby/rest/flex_api/v1/configuration.rb +489 -496
  205. data/lib/twilio-ruby/rest/flex_api/v1/flex_flow.rb +565 -570
  206. data/lib/twilio-ruby/rest/flex_api/v1/insights_assessments_comment.rb +329 -306
  207. data/lib/twilio-ruby/rest/flex_api/v1/insights_conversations.rb +231 -0
  208. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires.rb +435 -384
  209. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_category.rb +350 -303
  210. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_question.rb +435 -380
  211. data/lib/twilio-ruby/rest/flex_api/v1/insights_segments.rb +427 -403
  212. data/lib/twilio-ruby/rest/flex_api/v1/insights_session.rb +209 -190
  213. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_answer_sets.rb +155 -0
  214. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_comment.rb +135 -124
  215. data/lib/twilio-ruby/rest/flex_api/v1/insights_user_roles.rb +188 -166
  216. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_invite.rb +245 -229
  217. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_participant.rb +329 -319
  218. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb +409 -398
  219. data/lib/twilio-ruby/rest/flex_api/v1/interaction.rb +252 -225
  220. data/lib/twilio-ruby/rest/flex_api/v1/web_channel.rb +379 -331
  221. data/lib/twilio-ruby/rest/flex_api/v1.rb +205 -208
  222. data/lib/twilio-ruby/rest/flex_api/v2/web_channels.rb +140 -127
  223. data/lib/twilio-ruby/rest/flex_api/v2.rb +33 -28
  224. data/lib/twilio-ruby/rest/flex_api.rb +21 -111
  225. data/lib/twilio-ruby/rest/flex_api_base.rb +43 -0
  226. data/lib/twilio-ruby/rest/frontline_api/v1/user.rb +244 -227
  227. data/lib/twilio-ruby/rest/frontline_api/v1.rb +42 -38
  228. data/lib/twilio-ruby/rest/frontline_api.rb +2 -34
  229. data/lib/twilio-ruby/rest/frontline_api_base.rb +38 -0
  230. data/lib/twilio-ruby/rest/insights/v1/call/annotation.rb +312 -315
  231. data/lib/twilio-ruby/rest/insights/v1/call/call_summary.rb +350 -0
  232. data/lib/twilio-ruby/rest/insights/v1/call/event.rb +271 -255
  233. data/lib/twilio-ruby/rest/insights/v1/call/metric.rb +244 -225
  234. data/lib/twilio-ruby/rest/insights/v1/call.rb +268 -236
  235. data/lib/twilio-ruby/rest/insights/v1/call_summaries.rb +461 -433
  236. data/lib/twilio-ruby/rest/insights/v1/conference/conference_participant.rb +485 -467
  237. data/lib/twilio-ruby/rest/insights/v1/conference.rb +509 -502
  238. data/lib/twilio-ruby/rest/insights/v1/room/participant.rb +379 -371
  239. data/lib/twilio-ruby/rest/insights/v1/room.rb +497 -489
  240. data/lib/twilio-ruby/rest/insights/v1/setting.rb +246 -207
  241. data/lib/twilio-ruby/rest/insights/v1.rb +84 -83
  242. data/lib/twilio-ruby/rest/insights.rb +6 -34
  243. data/lib/twilio-ruby/rest/insights_base.rb +38 -0
  244. data/lib/twilio-ruby/rest/ip_messaging/v1/credential.rb +420 -364
  245. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/invite.rb +375 -359
  246. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb +423 -397
  247. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +440 -409
  248. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +547 -488
  249. data/lib/twilio-ruby/rest/ip_messaging/v1/service/role.rb +397 -347
  250. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user/user_channel.rb +245 -233
  251. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +471 -418
  252. data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +871 -779
  253. data/lib/twilio-ruby/rest/ip_messaging/v1.rb +57 -53
  254. data/lib/twilio-ruby/rest/ip_messaging/v2/credential.rb +420 -364
  255. data/lib/twilio-ruby/rest/ip_messaging/v2/service/binding.rb +372 -343
  256. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/invite.rb +375 -359
  257. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb +487 -451
  258. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +515 -479
  259. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/webhook.rb +441 -411
  260. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +623 -555
  261. data/lib/twilio-ruby/rest/ip_messaging/v2/service/role.rb +397 -347
  262. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_binding.rb +365 -351
  263. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_channel.rb +398 -384
  264. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +518 -467
  265. data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +777 -689
  266. data/lib/twilio-ruby/rest/ip_messaging/v2.rb +57 -53
  267. data/lib/twilio-ruby/rest/ip_messaging.rb +3 -41
  268. data/lib/twilio-ruby/rest/ip_messaging_base.rb +43 -0
  269. data/lib/twilio-ruby/rest/lookups/v1/phone_number.rb +243 -239
  270. data/lib/twilio-ruby/rest/lookups/v1.rb +42 -39
  271. data/lib/twilio-ruby/rest/lookups/v2/phone_number.rb +349 -342
  272. data/lib/twilio-ruby/rest/lookups/v2.rb +42 -38
  273. data/lib/twilio-ruby/rest/lookups.rb +2 -41
  274. data/lib/twilio-ruby/rest/lookups_base.rb +43 -0
  275. data/lib/twilio-ruby/rest/media/v1/media_processor.rb +413 -387
  276. data/lib/twilio-ruby/rest/media/v1/media_recording.rb +399 -389
  277. data/lib/twilio-ruby/rest/media/v1/player_streamer/playback_grant.rb +245 -214
  278. data/lib/twilio-ruby/rest/media/v1/player_streamer.rb +425 -393
  279. data/lib/twilio-ruby/rest/media/v1.rb +72 -69
  280. data/lib/twilio-ruby/rest/media.rb +4 -34
  281. data/lib/twilio-ruby/rest/media_base.rb +38 -0
  282. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_vetting.rb +360 -346
  283. data/lib/twilio-ruby/rest/messaging/v1/brand_registration.rb +472 -443
  284. data/lib/twilio-ruby/rest/messaging/v1/deactivations.rb +189 -0
  285. data/lib/twilio-ruby/rest/messaging/v1/domain_certs.rb +280 -0
  286. data/lib/twilio-ruby/rest/messaging/v1/domain_config.rb +274 -259
  287. data/lib/twilio-ruby/rest/messaging/v1/domain_config_messaging_service.rb +231 -0
  288. data/lib/twilio-ruby/rest/messaging/v1/external_campaign.rb +155 -144
  289. data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service.rb +214 -0
  290. data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +352 -335
  291. data/lib/twilio-ruby/rest/messaging/v1/service/phone_number.rb +359 -341
  292. data/lib/twilio-ruby/rest/messaging/v1/service/short_code.rb +359 -336
  293. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person.rb +500 -521
  294. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person_usecase.rb +121 -115
  295. data/lib/twilio-ruby/rest/messaging/v1/service.rb +757 -763
  296. data/lib/twilio-ruby/rest/messaging/v1/tollfree_verification.rb +720 -699
  297. data/lib/twilio-ruby/rest/messaging/v1/usecase.rb +106 -94
  298. data/lib/twilio-ruby/rest/messaging/v1.rb +172 -124
  299. data/lib/twilio-ruby/rest/messaging.rb +9 -34
  300. data/lib/twilio-ruby/rest/messaging_base.rb +38 -0
  301. data/lib/twilio-ruby/rest/microvisor/v1/account_config.rb +349 -307
  302. data/lib/twilio-ruby/rest/microvisor/v1/account_secret.rb +342 -300
  303. data/lib/twilio-ruby/rest/microvisor/v1/app/app_manifest.rb +201 -185
  304. data/lib/twilio-ruby/rest/microvisor/v1/app.rb +340 -320
  305. data/lib/twilio-ruby/rest/microvisor/v1/device/device_config.rb +368 -335
  306. data/lib/twilio-ruby/rest/microvisor/v1/device/device_secret.rb +361 -328
  307. data/lib/twilio-ruby/rest/microvisor/v1/device.rb +418 -383
  308. data/lib/twilio-ruby/rest/microvisor/v1.rb +87 -85
  309. data/lib/twilio-ruby/rest/microvisor.rb +3 -50
  310. data/lib/twilio-ruby/rest/microvisor_base.rb +38 -0
  311. data/lib/twilio-ruby/rest/monitor/v1/alert.rb +402 -395
  312. data/lib/twilio-ruby/rest/monitor/v1/event.rb +388 -390
  313. data/lib/twilio-ruby/rest/monitor/v1.rb +57 -53
  314. data/lib/twilio-ruby/rest/monitor.rb +3 -34
  315. data/lib/twilio-ruby/rest/monitor_base.rb +38 -0
  316. data/lib/twilio-ruby/rest/notify/v1/credential.rb +422 -408
  317. data/lib/twilio-ruby/rest/notify/v1/service/binding.rb +440 -452
  318. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +313 -362
  319. data/lib/twilio-ruby/rest/notify/v1/service.rb +635 -622
  320. data/lib/twilio-ruby/rest/notify/v1.rb +57 -55
  321. data/lib/twilio-ruby/rest/notify.rb +3 -34
  322. data/lib/twilio-ruby/rest/notify_base.rb +38 -0
  323. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/bundle_copy.rb +279 -261
  324. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/evaluation.rb +325 -298
  325. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/item_assignment.rb +334 -309
  326. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/replace_items.rb +194 -181
  327. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle.rb +627 -607
  328. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user.rb +392 -351
  329. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user_type.rb +291 -266
  330. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/regulation.rb +326 -307
  331. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document.rb +413 -371
  332. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document_type.rb +291 -266
  333. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance.rb +177 -181
  334. data/lib/twilio-ruby/rest/numbers/v2.rb +33 -28
  335. data/lib/twilio-ruby/rest/numbers.rb +2 -34
  336. data/lib/twilio-ruby/rest/numbers_base.rb +38 -0
  337. data/lib/twilio-ruby/rest/oauth/v1/device_code.rb +165 -147
  338. data/lib/twilio-ruby/rest/oauth/v1/oauth.rb +177 -154
  339. data/lib/twilio-ruby/rest/oauth/v1/openid_discovery.rb +254 -234
  340. data/lib/twilio-ruby/rest/oauth/v1/token.rb +173 -151
  341. data/lib/twilio-ruby/rest/oauth/v1/user_info.rb +205 -185
  342. data/lib/twilio-ruby/rest/oauth/v1.rb +57 -56
  343. data/lib/twilio-ruby/rest/oauth.rb +5 -40
  344. data/lib/twilio-ruby/rest/oauth_base.rb +38 -0
  345. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/certificate.rb +412 -375
  346. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/deployment.rb +395 -358
  347. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/device.rb +451 -418
  348. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/key.rb +409 -369
  349. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet.rb +507 -459
  350. data/lib/twilio-ruby/rest/preview/deployed_devices.rb +42 -38
  351. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document/dependent_hosted_number_order.rb +376 -396
  352. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document.rb +453 -446
  353. data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +616 -625
  354. data/lib/twilio-ruby/rest/preview/hosted_numbers.rb +57 -55
  355. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on/available_add_on_extension.rb +302 -298
  356. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on.rb +329 -309
  357. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on/installed_add_on_extension.rb +343 -330
  358. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on.rb +433 -398
  359. data/lib/twilio-ruby/rest/preview/marketplace.rb +57 -53
  360. data/lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb +379 -374
  361. data/lib/twilio-ruby/rest/preview/sync/service/document.rb +447 -399
  362. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_item.rb +438 -407
  363. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_permission.rb +379 -374
  364. data/lib/twilio-ruby/rest/preview/sync/service/sync_list.rb +428 -398
  365. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_item.rb +441 -404
  366. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_permission.rb +379 -374
  367. data/lib/twilio-ruby/rest/preview/sync/service/sync_map.rb +428 -398
  368. data/lib/twilio-ruby/rest/preview/sync/service.rb +505 -452
  369. data/lib/twilio-ruby/rest/preview/sync.rb +42 -37
  370. data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_fallback_actions.rb +234 -205
  371. data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_initiation_actions.rb +234 -205
  372. data/lib/twilio-ruby/rest/preview/understand/assistant/dialogue.rb +210 -199
  373. data/lib/twilio-ruby/rest/preview/understand/assistant/field_type/field_value.rb +380 -375
  374. data/lib/twilio-ruby/rest/preview/understand/assistant/field_type.rb +433 -400
  375. data/lib/twilio-ruby/rest/preview/understand/assistant/model_build.rb +403 -373
  376. data/lib/twilio-ruby/rest/preview/understand/assistant/query.rb +460 -430
  377. data/lib/twilio-ruby/rest/preview/understand/assistant/style_sheet.rb +234 -205
  378. data/lib/twilio-ruby/rest/preview/understand/assistant/task/field.rb +363 -362
  379. data/lib/twilio-ruby/rest/preview/understand/assistant/task/sample.rb +427 -417
  380. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_actions.rb +242 -230
  381. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_statistics.rb +215 -214
  382. data/lib/twilio-ruby/rest/preview/understand/assistant/task.rb +527 -488
  383. data/lib/twilio-ruby/rest/preview/understand/assistant.rb +669 -619
  384. data/lib/twilio-ruby/rest/preview/understand.rb +42 -38
  385. data/lib/twilio-ruby/rest/preview/wireless/command.rb +392 -364
  386. data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +449 -398
  387. data/lib/twilio-ruby/rest/preview/wireless/sim/usage.rb +232 -205
  388. data/lib/twilio-ruby/rest/preview/wireless/sim.rb +580 -523
  389. data/lib/twilio-ruby/rest/preview/wireless.rb +72 -69
  390. data/lib/twilio-ruby/rest/preview.rb +11 -69
  391. data/lib/twilio-ruby/rest/preview_base.rb +63 -0
  392. data/lib/twilio-ruby/rest/pricing/v1/messaging/country.rb +298 -275
  393. data/lib/twilio-ruby/rest/pricing/v1/messaging.rb +107 -119
  394. data/lib/twilio-ruby/rest/pricing/v1/phone_number/country.rb +291 -268
  395. data/lib/twilio-ruby/rest/pricing/v1/phone_number.rb +107 -119
  396. data/lib/twilio-ruby/rest/pricing/v1/voice/country.rb +298 -275
  397. data/lib/twilio-ruby/rest/pricing/v1/voice/number.rb +220 -197
  398. data/lib/twilio-ruby/rest/pricing/v1/voice.rb +121 -135
  399. data/lib/twilio-ruby/rest/pricing/v1.rb +45 -42
  400. data/lib/twilio-ruby/rest/pricing/v2/country.rb +290 -270
  401. data/lib/twilio-ruby/rest/pricing/v2/number.rb +232 -217
  402. data/lib/twilio-ruby/rest/pricing/v2/voice/country.rb +298 -275
  403. data/lib/twilio-ruby/rest/pricing/v2/voice/number.rb +238 -220
  404. data/lib/twilio-ruby/rest/pricing/v2/voice.rb +121 -138
  405. data/lib/twilio-ruby/rest/pricing/v2.rb +63 -65
  406. data/lib/twilio-ruby/rest/pricing.rb +6 -41
  407. data/lib/twilio-ruby/rest/pricing_base.rb +43 -0
  408. data/lib/twilio-ruby/rest/proxy/v1/service/phone_number.rb +420 -403
  409. data/lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb +409 -418
  410. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant/message_interaction.rb +431 -449
  411. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb +427 -442
  412. data/lib/twilio-ruby/rest/proxy/v1/service/session.rb +531 -506
  413. data/lib/twilio-ruby/rest/proxy/v1/service/short_code.rb +400 -370
  414. data/lib/twilio-ruby/rest/proxy/v1/service.rb +569 -596
  415. data/lib/twilio-ruby/rest/proxy/v1.rb +42 -38
  416. data/lib/twilio-ruby/rest/proxy.rb +2 -34
  417. data/lib/twilio-ruby/rest/proxy_base.rb +38 -0
  418. data/lib/twilio-ruby/rest/routes/v2/phone_number.rb +260 -227
  419. data/lib/twilio-ruby/rest/routes/v2/sip_domain.rb +260 -223
  420. data/lib/twilio-ruby/rest/routes/v2/trunk.rb +260 -227
  421. data/lib/twilio-ruby/rest/routes/v2.rb +72 -69
  422. data/lib/twilio-ruby/rest/routes.rb +4 -34
  423. data/lib/twilio-ruby/rest/routes_base.rb +38 -0
  424. data/lib/twilio-ruby/rest/serverless/v1/service/asset/asset_version.rb +316 -323
  425. data/lib/twilio-ruby/rest/serverless/v1/service/asset.rb +417 -380
  426. data/lib/twilio-ruby/rest/serverless/v1/service/build/build_status.rb +208 -208
  427. data/lib/twilio-ruby/rest/serverless/v1/service/build.rb +408 -384
  428. data/lib/twilio-ruby/rest/serverless/v1/service/environment/deployment.rb +337 -338
  429. data/lib/twilio-ruby/rest/serverless/v1/service/environment/log.rb +365 -383
  430. data/lib/twilio-ruby/rest/serverless/v1/service/environment/variable.rb +404 -396
  431. data/lib/twilio-ruby/rest/serverless/v1/service/environment.rb +469 -447
  432. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version/function_version_content.rb +223 -234
  433. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version.rb +343 -353
  434. data/lib/twilio-ruby/rest/serverless/v1/service/function.rb +417 -380
  435. data/lib/twilio-ruby/rest/serverless/v1/service.rb +536 -493
  436. data/lib/twilio-ruby/rest/serverless/v1.rb +42 -37
  437. data/lib/twilio-ruby/rest/serverless.rb +2 -34
  438. data/lib/twilio-ruby/rest/serverless_base.rb +38 -0
  439. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/engagement_context.rb +206 -199
  440. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step/step_context.rb +221 -218
  441. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb +362 -355
  442. data/lib/twilio-ruby/rest/studio/v1/flow/engagement.rb +427 -394
  443. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_context.rb +206 -200
  444. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step/execution_step_context.rb +221 -221
  445. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step.rb +362 -361
  446. data/lib/twilio-ruby/rest/studio/v1/flow/execution.rb +475 -449
  447. data/lib/twilio-ruby/rest/studio/v1/flow.rb +387 -355
  448. data/lib/twilio-ruby/rest/studio/v1.rb +42 -37
  449. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_context.rb +206 -200
  450. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step/execution_step_context.rb +221 -221
  451. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step.rb +362 -361
  452. data/lib/twilio-ruby/rest/studio/v2/flow/execution.rb +468 -442
  453. data/lib/twilio-ruby/rest/studio/v2/flow/flow_revision.rb +342 -320
  454. data/lib/twilio-ruby/rest/studio/v2/flow/flow_test_user.rb +232 -0
  455. data/lib/twilio-ruby/rest/studio/v2/flow.rb +526 -472
  456. data/lib/twilio-ruby/rest/studio/v2/flow_validate.rb +121 -99
  457. data/lib/twilio-ruby/rest/studio/v2.rb +48 -44
  458. data/lib/twilio-ruby/rest/studio.rb +3 -41
  459. data/lib/twilio-ruby/rest/studio_base.rb +43 -0
  460. data/lib/twilio-ruby/rest/supersim/v1/esim_profile.rb +397 -382
  461. data/lib/twilio-ruby/rest/supersim/v1/fleet.rb +474 -483
  462. data/lib/twilio-ruby/rest/supersim/v1/ip_command.rb +403 -409
  463. data/lib/twilio-ruby/rest/supersim/v1/network.rb +306 -297
  464. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile/network_access_profile_network.rb +338 -332
  465. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile.rb +384 -351
  466. data/lib/twilio-ruby/rest/supersim/v1/settings_update.rb +249 -237
  467. data/lib/twilio-ruby/rest/supersim/v1/sim/billing_period.rb +243 -224
  468. data/lib/twilio-ruby/rest/supersim/v1/sim/sim_ip_address.rb +201 -188
  469. data/lib/twilio-ruby/rest/supersim/v1/sim.rb +472 -453
  470. data/lib/twilio-ruby/rest/supersim/v1/sms_command.rb +362 -361
  471. data/lib/twilio-ruby/rest/supersim/v1/usage_record.rb +314 -344
  472. data/lib/twilio-ruby/rest/supersim/v1.rb +144 -147
  473. data/lib/twilio-ruby/rest/supersim.rb +10 -34
  474. data/lib/twilio-ruby/rest/supersim_base.rb +38 -0
  475. data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +377 -371
  476. data/lib/twilio-ruby/rest/sync/v1/service/document.rb +461 -423
  477. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +470 -490
  478. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +377 -370
  479. data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +479 -445
  480. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +473 -495
  481. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +377 -368
  482. data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +479 -444
  483. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream/stream_message.rb +139 -132
  484. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream.rb +425 -400
  485. data/lib/twilio-ruby/rest/sync/v1/service.rb +588 -567
  486. data/lib/twilio-ruby/rest/sync/v1.rb +42 -37
  487. data/lib/twilio-ruby/rest/sync.rb +2 -34
  488. data/lib/twilio-ruby/rest/sync_base.rb +38 -0
  489. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/activity.rb +408 -395
  490. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +454 -464
  491. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +702 -749
  492. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +620 -661
  493. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_channel.rb +410 -382
  494. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics.rb +359 -369
  495. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics.rb +279 -275
  496. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_statistics.rb +230 -236
  497. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queues_statistics.rb +246 -258
  498. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +571 -572
  499. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +683 -732
  500. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_channel.rb +390 -388
  501. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_statistics.rb +235 -239
  502. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_cumulative_statistics.rb +281 -265
  503. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_real_time_statistics.rb +215 -193
  504. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_statistics.rb +251 -234
  505. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +640 -637
  506. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics.rb +359 -375
  507. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_real_time_statistics.rb +245 -241
  508. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_statistics.rb +230 -244
  509. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +525 -510
  510. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_cumulative_statistics.rb +353 -356
  511. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_real_time_statistics.rb +231 -206
  512. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_statistics.rb +241 -234
  513. data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +743 -730
  514. data/lib/twilio-ruby/rest/taskrouter/v1.rb +42 -37
  515. data/lib/twilio-ruby/rest/taskrouter.rb +2 -34
  516. data/lib/twilio-ruby/rest/taskrouter_base.rb +38 -0
  517. data/lib/twilio-ruby/rest/trunking/v1/trunk/credential_list.rb +343 -320
  518. data/lib/twilio-ruby/rest/trunking/v1/trunk/ip_access_control_list.rb +343 -317
  519. data/lib/twilio-ruby/rest/trunking/v1/trunk/origination_url.rb +441 -419
  520. data/lib/twilio-ruby/rest/trunking/v1/trunk/phone_number.rb +476 -451
  521. data/lib/twilio-ruby/rest/trunking/v1/trunk/recording.rb +224 -191
  522. data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +636 -630
  523. data/lib/twilio-ruby/rest/trunking/v1.rb +42 -38
  524. data/lib/twilio-ruby/rest/trunking.rb +2 -34
  525. data/lib/twilio-ruby/rest/trunking_base.rb +38 -0
  526. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_channel_endpoint_assignment.rb +360 -352
  527. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_entity_assignments.rb +336 -323
  528. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_evaluations.rb +334 -321
  529. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles.rb +538 -513
  530. data/lib/twilio-ruby/rest/trusthub/v1/end_user.rb +384 -346
  531. data/lib/twilio-ruby/rest/trusthub/v1/end_user_type.rb +283 -261
  532. data/lib/twilio-ruby/rest/trusthub/v1/policies.rb +276 -252
  533. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document.rb +398 -359
  534. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document_type.rb +283 -261
  535. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_channel_endpoint_assignment.rb +360 -352
  536. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_entity_assignments.rb +336 -323
  537. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_evaluations.rb +334 -321
  538. data/lib/twilio-ruby/rest/trusthub/v1/trust_products.rb +538 -513
  539. data/lib/twilio-ruby/rest/trusthub/v1.rb +132 -139
  540. data/lib/twilio-ruby/rest/trusthub.rb +8 -34
  541. data/lib/twilio-ruby/rest/trusthub_base.rb +38 -0
  542. data/lib/twilio-ruby/rest/verify/v2/form.rb +195 -183
  543. data/lib/twilio-ruby/rest/verify/v2/safelist.rb +223 -207
  544. data/lib/twilio-ruby/rest/verify/v2/service/access_token.rb +272 -254
  545. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge/notification.rb +191 -192
  546. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb +506 -531
  547. data/lib/twilio-ruby/rest/verify/v2/service/entity/factor.rb +448 -453
  548. data/lib/twilio-ruby/rest/verify/v2/service/entity/new_factor.rb +249 -283
  549. data/lib/twilio-ruby/rest/verify/v2/service/entity.rb +436 -414
  550. data/lib/twilio-ruby/rest/verify/v2/service/messaging_configuration.rb +380 -363
  551. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb +402 -388
  552. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit.rb +425 -384
  553. data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +374 -371
  554. data/lib/twilio-ruby/rest/verify/v2/service/verification_check.rb +218 -205
  555. data/lib/twilio-ruby/rest/verify/v2/service/webhook.rb +448 -412
  556. data/lib/twilio-ruby/rest/verify/v2/service.rb +789 -780
  557. data/lib/twilio-ruby/rest/verify/v2/template.rb +223 -205
  558. data/lib/twilio-ruby/rest/verify/v2/verification_attempt.rb +381 -387
  559. data/lib/twilio-ruby/rest/verify/v2/verification_attempts_summary.rb +239 -226
  560. data/lib/twilio-ruby/rest/verify/v2.rb +99 -103
  561. data/lib/twilio-ruby/rest/verify.rb +7 -34
  562. data/lib/twilio-ruby/rest/verify_base.rb +38 -0
  563. data/lib/twilio-ruby/rest/video/v1/composition.rb +482 -507
  564. data/lib/twilio-ruby/rest/video/v1/composition_hook.rb +530 -647
  565. data/lib/twilio-ruby/rest/video/v1/composition_settings.rb +281 -261
  566. data/lib/twilio-ruby/rest/video/v1/recording.rb +432 -426
  567. data/lib/twilio-ruby/rest/video/v1/recording_settings.rb +281 -261
  568. data/lib/twilio-ruby/rest/video/v1/room/participant/anonymize.rb +259 -0
  569. data/lib/twilio-ruby/rest/video/v1/room/participant/published_track.rb +332 -0
  570. data/lib/twilio-ruby/rest/video/v1/room/participant/subscribe_rules.rb +181 -0
  571. data/lib/twilio-ruby/rest/video/v1/room/participant/subscribed_track.rb +339 -0
  572. data/lib/twilio-ruby/rest/video/v1/room/participant.rb +516 -0
  573. data/lib/twilio-ruby/rest/video/v1/room/recording_rules.rb +170 -0
  574. data/lib/twilio-ruby/rest/video/v1/room/room_recording.rb +428 -0
  575. data/lib/twilio-ruby/rest/video/v1/room.rb +621 -602
  576. data/lib/twilio-ruby/rest/video/v1.rb +99 -99
  577. data/lib/twilio-ruby/rest/video.rb +7 -34
  578. data/lib/twilio-ruby/rest/video_base.rb +38 -0
  579. data/lib/twilio-ruby/rest/voice/v1/archived_call.rb +160 -176
  580. data/lib/twilio-ruby/rest/voice/v1/byoc_trunk.rb +502 -486
  581. data/lib/twilio-ruby/rest/voice/v1/connection_policy/connection_policy_target.rb +441 -434
  582. data/lib/twilio-ruby/rest/voice/v1/connection_policy.rb +395 -352
  583. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/bulk_country_update.rb +135 -121
  584. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country/highrisk_special_prefix.rb +196 -183
  585. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country.rb +386 -397
  586. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/settings.rb +217 -190
  587. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions.rb +122 -121
  588. data/lib/twilio-ruby/rest/voice/v1/ip_record.rb +378 -339
  589. data/lib/twilio-ruby/rest/voice/v1/source_ip_mapping.rb +361 -319
  590. data/lib/twilio-ruby/rest/voice/v1.rb +130 -117
  591. data/lib/twilio-ruby/rest/voice.rb +7 -34
  592. data/lib/twilio-ruby/rest/voice_base.rb +38 -0
  593. data/lib/twilio-ruby/rest/wireless/v1/command.rb +413 -406
  594. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +464 -436
  595. data/lib/twilio-ruby/rest/wireless/v1/sim/data_session.rb +299 -284
  596. data/lib/twilio-ruby/rest/wireless/v1/sim/usage_record.rb +243 -243
  597. data/lib/twilio-ruby/rest/wireless/v1/sim.rb +648 -647
  598. data/lib/twilio-ruby/rest/wireless/v1/usage_record.rb +230 -221
  599. data/lib/twilio-ruby/rest/wireless/v1.rb +78 -76
  600. data/lib/twilio-ruby/rest/wireless.rb +5 -34
  601. data/lib/twilio-ruby/rest/wireless_base.rb +38 -0
  602. data/lib/twilio-ruby/rest.rb +1 -0
  603. data/lib/twilio-ruby/version.rb +1 -1
  604. metadata +71 -30
  605. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/local.rb +0 -500
  606. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/machine_to_machine.rb +0 -500
  607. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/mobile.rb +0 -500
  608. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/national.rb +0 -500
  609. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/shared_cost.rb +0 -500
  610. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/toll_free.rb +0 -500
  611. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/voip.rb +0 -500
  612. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number.rb +0 -464
  613. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_credential_list_mapping.rb +0 -348
  614. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping.rb +0 -163
  615. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping.rb +0 -137
  616. data/lib/twilio-ruby/rest/events/v1/schema/version.rb +0 -290
  617. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_answersets.rb +0 -144
  618. data/lib/twilio-ruby/rest/insights/v1/call/summary.rb +0 -321
  619. data/lib/twilio-ruby/rest/messaging/v1/deactivation.rb +0 -164
  620. data/lib/twilio-ruby/rest/messaging/v1/domain_cert.rb +0 -257
  621. data/lib/twilio-ruby/rest/studio/v2/flow/test_user.rb +0 -199
  622. data/lib/twilio-ruby/rest/video/v1/room/recording.rb +0 -413
  623. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_anonymize.rb +0 -240
  624. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_published_track.rb +0 -335
  625. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribe_rule.rb +0 -175
  626. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribed_track.rb +0 -340
  627. data/lib/twilio-ruby/rest/video/v1/room/room_participant.rb +0 -499
  628. data/lib/twilio-ruby/rest/video/v1/room/room_recording_rule.rb +0 -144
@@ -1,528 +1,507 @@
1
1
  ##
2
- # This code was generated by
3
- # \ / _ _ _| _ _
4
- # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
- # / /
2
+ # This code was generated by
3
+ # ___ _ _ _ _ _ _ ____ ____ ____ _ ____ ____ _ _ ____ ____ ____ ___ __ __
4
+ # | | | | | | | | | __ | | |__| | __ | __ |___ |\ | |___ |__/ |__| | | | |__/
5
+ # | |_|_| | |___ | |__| |__| | | | |__] |___ | \| |___ | \ | | | |__| | \
6
+ #
7
+ # Twilio - Messaging
8
+ # This is the public Twilio REST API.
9
+ #
10
+ # NOTE: This class is auto generated by OpenAPI Generator.
11
+ # https://openapi-generator.tech
12
+ # Do not edit the class manually.
6
13
  #
7
- # frozen_string_literal: true
8
-
9
- module Twilio
10
- module REST
11
- class Messaging < Domain
12
- class V1 < Version
13
- class ServiceContext < InstanceContext
14
- ##
15
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
16
- class UsAppToPersonList < ListResource
17
- ##
18
- # Initialize the UsAppToPersonList
19
- # @param [Version] version Version that contains the resource
20
- # @param [String] messaging_service_sid The SID of the {Messaging
21
- # Service}[https://www.twilio.com/docs/messaging/services/api] that the resource
22
- # is associated with.
23
- # @return [UsAppToPersonList] UsAppToPersonList
24
- def initialize(version, messaging_service_sid: nil)
25
- super(version)
26
-
27
- # Path Solution
28
- @solution = {messaging_service_sid: messaging_service_sid}
29
- @uri = "/Services/#{@solution[:messaging_service_sid]}/Compliance/Usa2p"
30
- end
31
-
32
- ##
33
- # Create the UsAppToPersonInstance
34
- # @param [String] brand_registration_sid A2P Brand Registration SID
35
- # @param [String] description A short description of what this SMS campaign does.
36
- # Min length: 40 characters. Max length: 4096 characters.
37
- # @param [String] message_flow Required for all Campaigns. Details around how a
38
- # consumer opts-in to their campaign, therefore giving consent to receive their
39
- # messages. If multiple opt-in methods can be used for the same campaign, they
40
- # must all be listed. 40 character minimum. 2048 character maximum.
41
- # @param [Array[String]] message_samples Message samples, at least 1 and up to 5
42
- # sample messages (at least 2 for sole proprietor), >=20 chars, <=1024 chars each.
43
- # @param [String] us_app_to_person_usecase A2P Campaign Use Case. Examples: [ 2FA,
44
- # EMERGENCY, MARKETING..]
45
- # @param [Boolean] has_embedded_links Indicates that this SMS campaign will send
46
- # messages that contain links.
47
- # @param [Boolean] has_embedded_phone Indicates that this SMS campaign will send
48
- # messages that contain phone numbers.
49
- # @param [String] opt_in_message If end users can text in a keyword to start
50
- # receiving messages from this campaign, the auto-reply messages sent to the end
51
- # users must be provided. The opt-in response should include the Brand name,
52
- # confirmation of opt-in enrollment to a recurring message campaign, how to get
53
- # help, and clear description of how to opt-out. This field is required if end
54
- # users can text in a keyword to start receiving messages from this campaign. 20
55
- # character minimum. 320 character maximum.
56
- # @param [String] opt_out_message Upon receiving the opt-out keywords from the end
57
- # users, Twilio customers are expected to send back an auto-generated response,
58
- # which must provide acknowledgment of the opt-out request and confirmation that
59
- # no further messages will be sent. It is also recommended that these opt-out
60
- # messages include the brand name. This field is required if managing opt out
61
- # keywords yourself (i.e. not using Twilio's Default or Advanced Opt Out
62
- # features). 20 character minimum. 320 character maximum.
63
- # @param [String] help_message When customers receive the help keywords from their
64
- # end users, Twilio customers are expected to send back an auto-generated
65
- # response; this may include the brand name and additional support contact
66
- # information. This field is required if managing help keywords yourself (i.e. not
67
- # using Twilio's Default or Advanced Opt Out features). 20 character minimum. 320
68
- # character maximum.
69
- # @param [Array[String]] opt_in_keywords If end users can text in a keyword to
70
- # start receiving messages from this campaign, those keywords must be provided.
71
- # This field is required if end users can text in a keyword to start receiving
72
- # messages from this campaign. Values must be alphanumeric. 255 character maximum.
73
- # @param [Array[String]] opt_out_keywords End users should be able to text in a
74
- # keyword to stop receiving messages from this campaign. Those keywords must be
75
- # provided. This field is required if managing opt out keywords yourself (i.e. not
76
- # using Twilio's Default or Advanced Opt Out features). Values must be
77
- # alphanumeric. 255 character maximum.
78
- # @param [Array[String]] help_keywords End users should be able to text in a
79
- # keyword to receive help. Those keywords must be provided as part of the campaign
80
- # registration request. This field is required if managing help keywords yourself
81
- # (i.e. not using Twilio's Default or Advanced Opt Out features). Values must be
82
- # alphanumeric. 255 character maximum.
83
- # @return [UsAppToPersonInstance] Created UsAppToPersonInstance
84
- def create(brand_registration_sid: nil, description: nil, message_flow: nil, message_samples: nil, us_app_to_person_usecase: nil, has_embedded_links: nil, has_embedded_phone: nil, opt_in_message: :unset, opt_out_message: :unset, help_message: :unset, opt_in_keywords: :unset, opt_out_keywords: :unset, help_keywords: :unset)
85
- data = Twilio::Values.of({
86
- 'BrandRegistrationSid' => brand_registration_sid,
87
- 'Description' => description,
88
- 'MessageFlow' => message_flow,
89
- 'MessageSamples' => Twilio.serialize_list(message_samples) { |e| e },
90
- 'UsAppToPersonUsecase' => us_app_to_person_usecase,
91
- 'HasEmbeddedLinks' => has_embedded_links,
92
- 'HasEmbeddedPhone' => has_embedded_phone,
93
- 'OptInMessage' => opt_in_message,
94
- 'OptOutMessage' => opt_out_message,
95
- 'HelpMessage' => help_message,
96
- 'OptInKeywords' => Twilio.serialize_list(opt_in_keywords) { |e| e },
97
- 'OptOutKeywords' => Twilio.serialize_list(opt_out_keywords) { |e| e },
98
- 'HelpKeywords' => Twilio.serialize_list(help_keywords) { |e| e },
99
- })
100
-
101
- payload = @version.create('POST', @uri, data: data)
102
-
103
- UsAppToPersonInstance.new(
104
- @version,
105
- payload,
106
- messaging_service_sid: @solution[:messaging_service_sid],
107
- )
108
- end
109
-
110
- ##
111
- # Lists UsAppToPersonInstance records from the API as a list.
112
- # Unlike stream(), this operation is eager and will load `limit` records into
113
- # memory before returning.
114
- # @param [Integer] limit Upper limit for the number of records to return. stream()
115
- # guarantees to never return more than limit. Default is no limit
116
- # @param [Integer] page_size Number of records to fetch per request, when
117
- # not set will use the default value of 50 records. If no page_size is defined
118
- # but a limit is defined, stream() will attempt to read the limit with the most
119
- # efficient page size, i.e. min(limit, 1000)
120
- # @return [Array] Array of up to limit results
121
- def list(limit: nil, page_size: nil)
122
- self.stream(limit: limit, page_size: page_size).entries
123
- end
124
-
125
- ##
126
- # Streams UsAppToPersonInstance records from the API as an Enumerable.
127
- # This operation lazily loads records as efficiently as possible until the limit
128
- # is reached.
129
- # @param [Integer] limit Upper limit for the number of records to return. stream()
130
- # guarantees to never return more than limit. Default is no limit.
131
- # @param [Integer] page_size Number of records to fetch per request, when
132
- # not set will use the default value of 50 records. If no page_size is defined
133
- # but a limit is defined, stream() will attempt to read the limit with the most
134
- # efficient page size, i.e. min(limit, 1000)
135
- # @return [Enumerable] Enumerable that will yield up to limit results
136
- def stream(limit: nil, page_size: nil)
137
- limits = @version.read_limits(limit, page_size)
138
-
139
- page = self.page(page_size: limits[:page_size], )
140
-
141
- @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
142
- end
143
-
144
- ##
145
- # When passed a block, yields UsAppToPersonInstance records from the API.
146
- # This operation lazily loads records as efficiently as possible until the limit
147
- # is reached.
148
- def each
149
- limits = @version.read_limits
150
-
151
- page = self.page(page_size: limits[:page_size], )
152
-
153
- @version.stream(page,
154
- limit: limits[:limit],
155
- page_limit: limits[:page_limit]).each {|x| yield x}
156
- end
157
-
158
- ##
159
- # Retrieve a single page of UsAppToPersonInstance records from the API.
160
- # Request is executed immediately.
161
- # @param [String] page_token PageToken provided by the API
162
- # @param [Integer] page_number Page Number, this value is simply for client state
163
- # @param [Integer] page_size Number of records to return, defaults to 50
164
- # @return [Page] Page of UsAppToPersonInstance
165
- def page(page_token: :unset, page_number: :unset, page_size: :unset)
166
- params = Twilio::Values.of({
167
- 'PageToken' => page_token,
168
- 'Page' => page_number,
169
- 'PageSize' => page_size,
170
- })
171
-
172
- response = @version.page('GET', @uri, params: params)
173
-
174
- UsAppToPersonPage.new(@version, response, @solution)
175
- end
176
-
177
- ##
178
- # Retrieve a single page of UsAppToPersonInstance records from the API.
179
- # Request is executed immediately.
180
- # @param [String] target_url API-generated URL for the requested results page
181
- # @return [Page] Page of UsAppToPersonInstance
182
- def get_page(target_url)
183
- response = @version.domain.request(
184
- 'GET',
185
- target_url
186
- )
187
- UsAppToPersonPage.new(@version, response, @solution)
188
- end
189
-
190
- ##
191
- # Provide a user friendly representation
192
- def to_s
193
- '#<Twilio.Messaging.V1.UsAppToPersonList>'
194
- end
195
- end
196
-
197
- ##
198
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
199
- class UsAppToPersonPage < Page
200
- ##
201
- # Initialize the UsAppToPersonPage
202
- # @param [Version] version Version that contains the resource
203
- # @param [Response] response Response from the API
204
- # @param [Hash] solution Path solution for the resource
205
- # @return [UsAppToPersonPage] UsAppToPersonPage
206
- def initialize(version, response, solution)
207
- super(version, response)
208
-
209
- # Path Solution
210
- @solution = solution
211
- end
212
-
213
- ##
214
- # Build an instance of UsAppToPersonInstance
215
- # @param [Hash] payload Payload response from the API
216
- # @return [UsAppToPersonInstance] UsAppToPersonInstance
217
- def get_instance(payload)
218
- UsAppToPersonInstance.new(
219
- @version,
220
- payload,
221
- messaging_service_sid: @solution[:messaging_service_sid],
222
- )
223
- end
224
-
225
- ##
226
- # Provide a user friendly representation
227
- def to_s
228
- '<Twilio.Messaging.V1.UsAppToPersonPage>'
229
- end
230
- end
231
-
232
- ##
233
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
234
- class UsAppToPersonContext < InstanceContext
235
- ##
236
- # Initialize the UsAppToPersonContext
237
- # @param [Version] version Version that contains the resource
238
- # @param [String] messaging_service_sid The SID of the {Messaging
239
- # Service}[https://www.twilio.com/docs/messaging/services/api] to fetch the
240
- # resource from.
241
- # @param [String] sid The SID of the US A2P Compliance resource to fetch
242
- # `QE2c6890da8086d771620e9b13fadeba0b`.
243
- # @return [UsAppToPersonContext] UsAppToPersonContext
244
- def initialize(version, messaging_service_sid, sid)
245
- super(version)
246
-
247
- # Path Solution
248
- @solution = {messaging_service_sid: messaging_service_sid, sid: sid, }
249
- @uri = "/Services/#{@solution[:messaging_service_sid]}/Compliance/Usa2p/#{@solution[:sid]}"
250
- end
251
-
252
- ##
253
- # Delete the UsAppToPersonInstance
254
- # @return [Boolean] true if delete succeeds, false otherwise
255
- def delete
256
- @version.delete('DELETE', @uri)
257
- end
258
-
259
- ##
260
- # Fetch the UsAppToPersonInstance
261
- # @return [UsAppToPersonInstance] Fetched UsAppToPersonInstance
262
- def fetch
263
- payload = @version.fetch('GET', @uri)
264
-
265
- UsAppToPersonInstance.new(
266
- @version,
267
- payload,
268
- messaging_service_sid: @solution[:messaging_service_sid],
269
- sid: @solution[:sid],
270
- )
271
- end
272
-
273
- ##
274
- # Provide a user friendly representation
275
- def to_s
276
- context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
277
- "#<Twilio.Messaging.V1.UsAppToPersonContext #{context}>"
278
- end
279
-
280
- ##
281
- # Provide a detailed, user friendly representation
282
- def inspect
283
- context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
284
- "#<Twilio.Messaging.V1.UsAppToPersonContext #{context}>"
285
- end
286
- end
287
-
288
- ##
289
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
290
- class UsAppToPersonInstance < InstanceResource
291
- ##
292
- # Initialize the UsAppToPersonInstance
293
- # @param [Version] version Version that contains the resource
294
- # @param [Hash] payload payload that contains response from Twilio
295
- # @param [String] messaging_service_sid The SID of the {Messaging
296
- # Service}[https://www.twilio.com/docs/messaging/services/api] that the resource
297
- # is associated with.
298
- # @param [String] sid The SID of the US A2P Compliance resource to fetch
299
- # `QE2c6890da8086d771620e9b13fadeba0b`.
300
- # @return [UsAppToPersonInstance] UsAppToPersonInstance
301
- def initialize(version, payload, messaging_service_sid: nil, sid: nil)
302
- super(version)
303
-
304
- # Marshaled Properties
305
- @properties = {
306
- 'sid' => payload['sid'],
307
- 'account_sid' => payload['account_sid'],
308
- 'brand_registration_sid' => payload['brand_registration_sid'],
309
- 'messaging_service_sid' => payload['messaging_service_sid'],
310
- 'description' => payload['description'],
311
- 'message_samples' => payload['message_samples'],
312
- 'us_app_to_person_usecase' => payload['us_app_to_person_usecase'],
313
- 'has_embedded_links' => payload['has_embedded_links'],
314
- 'has_embedded_phone' => payload['has_embedded_phone'],
315
- 'campaign_status' => payload['campaign_status'],
316
- 'campaign_id' => payload['campaign_id'],
317
- 'is_externally_registered' => payload['is_externally_registered'],
318
- 'rate_limits' => payload['rate_limits'],
319
- 'message_flow' => payload['message_flow'],
320
- 'opt_in_message' => payload['opt_in_message'],
321
- 'opt_out_message' => payload['opt_out_message'],
322
- 'help_message' => payload['help_message'],
323
- 'opt_in_keywords' => payload['opt_in_keywords'],
324
- 'opt_out_keywords' => payload['opt_out_keywords'],
325
- 'help_keywords' => payload['help_keywords'],
326
- 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
327
- 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
328
- 'url' => payload['url'],
329
- 'mock' => payload['mock'],
330
- }
331
-
332
- # Context
333
- @instance_context = nil
334
- @params = {'messaging_service_sid' => messaging_service_sid, 'sid' => sid || @properties['sid'], }
335
- end
336
-
337
- ##
338
- # Generate an instance context for the instance, the context is capable of
339
- # performing various actions. All instance actions are proxied to the context
340
- # @return [UsAppToPersonContext] UsAppToPersonContext for this UsAppToPersonInstance
341
- def context
342
- unless @instance_context
343
- @instance_context = UsAppToPersonContext.new(
344
- @version,
345
- @params['messaging_service_sid'],
346
- @params['sid'],
347
- )
348
- end
349
- @instance_context
350
- end
351
-
352
- ##
353
- # @return [String] The unique string that identifies a US A2P Compliance resource
354
- def sid
355
- @properties['sid']
356
- end
357
-
358
- ##
359
- # @return [String] The SID of the Account that created the resource
360
- def account_sid
361
- @properties['account_sid']
362
- end
363
-
364
- ##
365
- # @return [String] A2P Brand Registration SID
366
- def brand_registration_sid
367
- @properties['brand_registration_sid']
368
- end
369
-
370
- ##
371
- # @return [String] The SID of the Messaging Service the resource is associated with
372
- def messaging_service_sid
373
- @properties['messaging_service_sid']
374
- end
375
-
376
- ##
377
- # @return [String] A short description of what this SMS campaign does
378
- def description
379
- @properties['description']
380
- end
381
-
382
- ##
383
- # @return [Array[String]] Message samples
384
- def message_samples
385
- @properties['message_samples']
386
- end
387
-
388
- ##
389
- # @return [String] A2P Campaign Use Case.
390
- def us_app_to_person_usecase
391
- @properties['us_app_to_person_usecase']
392
- end
393
-
394
- ##
395
- # @return [Boolean] Indicate that this SMS campaign will send messages that contain links
396
- def has_embedded_links
397
- @properties['has_embedded_links']
398
- end
399
-
400
- ##
401
- # @return [Boolean] Indicates that this SMS campaign will send messages that contain phone numbers
402
- def has_embedded_phone
403
- @properties['has_embedded_phone']
404
- end
405
-
406
- ##
407
- # @return [String] Campaign status
408
- def campaign_status
409
- @properties['campaign_status']
410
- end
411
-
412
- ##
413
- # @return [String] The Campaign Registry (TCR) Campaign ID.
414
- def campaign_id
415
- @properties['campaign_id']
416
- end
417
-
418
- ##
419
- # @return [Boolean] Indicates whether the campaign was registered externally or not
420
- def is_externally_registered
421
- @properties['is_externally_registered']
422
- end
423
-
424
- ##
425
- # @return [Hash] Rate limit and/or classification set by each carrier
426
- def rate_limits
427
- @properties['rate_limits']
428
- end
429
-
430
- ##
431
- # @return [String] Consumer opt-in flow
432
- def message_flow
433
- @properties['message_flow']
434
- end
435
-
436
- ##
437
- # @return [String] Opt In Message
438
- def opt_in_message
439
- @properties['opt_in_message']
440
- end
441
-
442
- ##
443
- # @return [String] Opt Out Message
444
- def opt_out_message
445
- @properties['opt_out_message']
446
- end
447
-
448
- ##
449
- # @return [String] Help Message
450
- def help_message
451
- @properties['help_message']
452
- end
453
-
454
- ##
455
- # @return [Array[String]] Opt In Keywords
456
- def opt_in_keywords
457
- @properties['opt_in_keywords']
458
- end
459
-
460
- ##
461
- # @return [Array[String]] Opt Out Keywords
462
- def opt_out_keywords
463
- @properties['opt_out_keywords']
464
- end
465
-
466
- ##
467
- # @return [Array[String]] Help Keywords
468
- def help_keywords
469
- @properties['help_keywords']
470
- end
471
-
472
- ##
473
- # @return [Time] The ISO 8601 date and time in GMT when the resource was created
474
- def date_created
475
- @properties['date_created']
476
- end
477
-
478
- ##
479
- # @return [Time] The ISO 8601 date and time in GMT when the resource was last updated
480
- def date_updated
481
- @properties['date_updated']
482
- end
483
-
484
- ##
485
- # @return [String] The absolute URL of the US App to Person resource
486
- def url
487
- @properties['url']
488
- end
489
-
490
- ##
491
- # @return [Boolean] A boolean that specifies whether campaign is a mock or not.
492
- def mock
493
- @properties['mock']
494
- end
495
-
496
- ##
497
- # Delete the UsAppToPersonInstance
498
- # @return [Boolean] true if delete succeeds, false otherwise
499
- def delete
500
- context.delete
501
- end
502
-
503
- ##
504
- # Fetch the UsAppToPersonInstance
505
- # @return [UsAppToPersonInstance] Fetched UsAppToPersonInstance
506
- def fetch
507
- context.fetch
508
- end
509
14
 
510
- ##
511
- # Provide a user friendly representation
512
- def to_s
513
- values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
514
- "<Twilio.Messaging.V1.UsAppToPersonInstance #{values}>"
515
- end
516
15
 
517
- ##
518
- # Provide a detailed, user friendly representation
519
- def inspect
520
- values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
521
- "<Twilio.Messaging.V1.UsAppToPersonInstance #{values}>"
16
+ module Twilio
17
+ module REST
18
+ class Messaging < MessagingBase
19
+ class V1 < Version
20
+ class ServiceContext < InstanceContext
21
+
22
+ class UsAppToPersonList < ListResource
23
+ ##
24
+ # Initialize the UsAppToPersonList
25
+ # @param [Version] version Version that contains the resource
26
+ # @return [UsAppToPersonList] UsAppToPersonList
27
+ def initialize(version, messaging_service_sid: nil)
28
+ super(version)
29
+ # Path Solution
30
+ @solution = { messaging_service_sid: messaging_service_sid }
31
+ @uri = "/Services/#{@solution[:messaging_service_sid]}/Compliance/Usa2p"
32
+
33
+ end
34
+ ##
35
+ # Create the UsAppToPersonInstance
36
+ # @param [String] brand_registration_sid A2P Brand Registration SID
37
+ # @param [String] description A short description of what this SMS campaign does. Min length: 40 characters. Max length: 4096 characters.
38
+ # @param [String] message_flow Required for all Campaigns. Details around how a consumer opts-in to their campaign, therefore giving consent to receive their messages. If multiple opt-in methods can be used for the same campaign, they must all be listed. 40 character minimum. 2048 character maximum.
39
+ # @param [Array[String]] message_samples Message samples, at least 1 and up to 5 sample messages (at least 2 for sole proprietor), >=20 chars, <=1024 chars each.
40
+ # @param [String] us_app_to_person_usecase A2P Campaign Use Case. Examples: [ 2FA, EMERGENCY, MARKETING..]
41
+ # @param [Boolean] has_embedded_links Indicates that this SMS campaign will send messages that contain links.
42
+ # @param [Boolean] has_embedded_phone Indicates that this SMS campaign will send messages that contain phone numbers.
43
+ # @param [String] opt_in_message If end users can text in a keyword to start receiving messages from this campaign, the auto-reply messages sent to the end users must be provided. The opt-in response should include the Brand name, confirmation of opt-in enrollment to a recurring message campaign, how to get help, and clear description of how to opt-out. This field is required if end users can text in a keyword to start receiving messages from this campaign. 20 character minimum. 320 character maximum.
44
+ # @param [String] opt_out_message Upon receiving the opt-out keywords from the end users, Twilio customers are expected to send back an auto-generated response, which must provide acknowledgment of the opt-out request and confirmation that no further messages will be sent. It is also recommended that these opt-out messages include the brand name. This field is required if managing opt out keywords yourself (i.e. not using Twilio's Default or Advanced Opt Out features). 20 character minimum. 320 character maximum.
45
+ # @param [String] help_message When customers receive the help keywords from their end users, Twilio customers are expected to send back an auto-generated response; this may include the brand name and additional support contact information. This field is required if managing help keywords yourself (i.e. not using Twilio's Default or Advanced Opt Out features). 20 character minimum. 320 character maximum.
46
+ # @param [Array[String]] opt_in_keywords If end users can text in a keyword to start receiving messages from this campaign, those keywords must be provided. This field is required if end users can text in a keyword to start receiving messages from this campaign. Values must be alphanumeric. 255 character maximum.
47
+ # @param [Array[String]] opt_out_keywords End users should be able to text in a keyword to stop receiving messages from this campaign. Those keywords must be provided. This field is required if managing opt out keywords yourself (i.e. not using Twilio's Default or Advanced Opt Out features). Values must be alphanumeric. 255 character maximum.
48
+ # @param [Array[String]] help_keywords End users should be able to text in a keyword to receive help. Those keywords must be provided as part of the campaign registration request. This field is required if managing help keywords yourself (i.e. not using Twilio's Default or Advanced Opt Out features). Values must be alphanumeric. 255 character maximum.
49
+ # @return [UsAppToPersonInstance] Created UsAppToPersonInstance
50
+ def create(
51
+ brand_registration_sid: nil,
52
+ description: nil,
53
+ message_flow: nil,
54
+ message_samples: nil,
55
+ us_app_to_person_usecase: nil,
56
+ has_embedded_links: nil,
57
+ has_embedded_phone: nil,
58
+ opt_in_message: :unset,
59
+ opt_out_message: :unset,
60
+ help_message: :unset,
61
+ opt_in_keywords: :unset,
62
+ opt_out_keywords: :unset,
63
+ help_keywords: :unset
64
+ )
65
+
66
+ data = Twilio::Values.of({
67
+ 'BrandRegistrationSid' => brand_registration_sid,
68
+ 'Description' => description,
69
+ 'MessageFlow' => message_flow,
70
+ 'MessageSamples' => Twilio.serialize_list(message_samples) { |e| e },
71
+ 'UsAppToPersonUsecase' => us_app_to_person_usecase,
72
+ 'HasEmbeddedLinks' => has_embedded_links,
73
+ 'HasEmbeddedPhone' => has_embedded_phone,
74
+ 'OptInMessage' => opt_in_message,
75
+ 'OptOutMessage' => opt_out_message,
76
+ 'HelpMessage' => help_message,
77
+ 'OptInKeywords' => Twilio.serialize_list(opt_in_keywords) { |e| e },
78
+ 'OptOutKeywords' => Twilio.serialize_list(opt_out_keywords) { |e| e },
79
+ 'HelpKeywords' => Twilio.serialize_list(help_keywords) { |e| e },
80
+ })
81
+
82
+ payload = @version.create('POST', @uri, data: data)
83
+ UsAppToPersonInstance.new(
84
+ @version,
85
+ payload,
86
+ messaging_service_sid: @solution[:messaging_service_sid],
87
+ )
88
+ end
89
+
90
+
91
+ ##
92
+ # Lists UsAppToPersonInstance records from the API as a list.
93
+ # Unlike stream(), this operation is eager and will load `limit` records into
94
+ # memory before returning.
95
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
96
+ # guarantees to never return more than limit. Default is no limit
97
+ # @param [Integer] page_size Number of records to fetch per request, when
98
+ # not set will use the default value of 50 records. If no page_size is defined
99
+ # but a limit is defined, stream() will attempt to read the limit with the most
100
+ # efficient page size, i.e. min(limit, 1000)
101
+ # @return [Array] Array of up to limit results
102
+ def list(limit: nil, page_size: nil)
103
+ self.stream(
104
+ limit: limit,
105
+ page_size: page_size
106
+ ).entries
107
+ end
108
+
109
+ ##
110
+ # Streams Instance records from the API as an Enumerable.
111
+ # This operation lazily loads records as efficiently as possible until the limit
112
+ # is reached.
113
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
114
+ # guarantees to never return more than limit. Default is no limit
115
+ # @param [Integer] page_size Number of records to fetch per request, when
116
+ # not set will use the default value of 50 records. If no page_size is defined
117
+ # but a limit is defined, stream() will attempt to read the limit with the most
118
+ # efficient page size, i.e. min(limit, 1000)
119
+ # @return [Enumerable] Enumerable that will yield up to limit results
120
+ def stream(limit: nil, page_size: nil)
121
+ limits = @version.read_limits(limit, page_size)
122
+
123
+ page = self.page(
124
+ page_size: limits[:page_size], )
125
+
126
+ @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
127
+ end
128
+
129
+ ##
130
+ # When passed a block, yields UsAppToPersonInstance records from the API.
131
+ # This operation lazily loads records as efficiently as possible until the limit
132
+ # is reached.
133
+ def each
134
+ limits = @version.read_limits
135
+
136
+ page = self.page(page_size: limits[:page_size], )
137
+
138
+ @version.stream(page,
139
+ limit: limits[:limit],
140
+ page_limit: limits[:page_limit]).each {|x| yield x}
141
+ end
142
+
143
+ ##
144
+ # Retrieve a single page of UsAppToPersonInstance records from the API.
145
+ # Request is executed immediately.
146
+ # @param [String] page_token PageToken provided by the API
147
+ # @param [Integer] page_number Page Number, this value is simply for client state
148
+ # @param [Integer] page_size Number of records to return, defaults to 50
149
+ # @return [Page] Page of UsAppToPersonInstance
150
+ def page(page_token: :unset, page_number: :unset, page_size: :unset)
151
+ params = Twilio::Values.of({
152
+
153
+ 'PageToken' => page_token,
154
+ 'Page' => page_number,
155
+ 'PageSize' => page_size,
156
+ })
157
+
158
+ response = @version.page('GET', @uri, params: params)
159
+
160
+ UsAppToPersonPage.new(@version, response, @solution)
161
+ end
162
+
163
+ ##
164
+ # Retrieve a single page of UsAppToPersonInstance records from the API.
165
+ # Request is executed immediately.
166
+ # @param [String] target_url API-generated URL for the requested results page
167
+ # @return [Page] Page of UsAppToPersonInstance
168
+ def get_page(target_url)
169
+ response = @version.domain.request(
170
+ 'GET',
171
+ target_url
172
+ )
173
+ UsAppToPersonPage.new(@version, response, @solution)
174
+ end
175
+
176
+
177
+
178
+ # Provide a user friendly representation
179
+ def to_s
180
+ '#<Twilio.Messaging.V1.UsAppToPersonList>'
181
+ end
182
+ end
183
+
184
+
185
+ ##
186
+ #PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
187
+ class UsAppToPersonContext < InstanceContext
188
+ ##
189
+ # Initialize the UsAppToPersonContext
190
+ # @param [Version] version Version that contains the resource
191
+ # @param [String] messaging_service_sid The SID of the [Messaging Service](https://www.twilio.com/docs/messaging/services/api) to fetch the resource from.
192
+ # @param [String] sid The SID of the US A2P Compliance resource to fetch `QE2c6890da8086d771620e9b13fadeba0b`.
193
+ # @return [UsAppToPersonContext] UsAppToPersonContext
194
+ def initialize(version, messaging_service_sid, sid)
195
+ super(version)
196
+
197
+ # Path Solution
198
+ @solution = { messaging_service_sid: messaging_service_sid, sid: sid, }
199
+ @uri = "/Services/#{@solution[:messaging_service_sid]}/Compliance/Usa2p/#{@solution[:sid]}"
200
+
201
+
202
+ end
203
+ ##
204
+ # Delete the UsAppToPersonInstance
205
+ # @return [Boolean] True if delete succeeds, false otherwise
206
+ def delete
207
+
208
+ @version.delete('DELETE', @uri)
209
+ end
210
+
211
+ ##
212
+ # Fetch the UsAppToPersonInstance
213
+ # @return [UsAppToPersonInstance] Fetched UsAppToPersonInstance
214
+ def fetch
215
+
216
+ payload = @version.fetch('GET', @uri)
217
+ UsAppToPersonInstance.new(
218
+ @version,
219
+ payload,
220
+ messaging_service_sid: @solution[:messaging_service_sid],
221
+ sid: @solution[:sid],
222
+ )
223
+ end
224
+
225
+
226
+ ##
227
+ # Provide a user friendly representation
228
+ def to_s
229
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
230
+ "#<Twilio.Messaging.V1.UsAppToPersonContext #{context}>"
231
+ end
232
+
233
+ ##
234
+ # Provide a detailed, user friendly representation
235
+ def inspect
236
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
237
+ "#<Twilio.Messaging.V1.UsAppToPersonContext #{context}>"
238
+ end
239
+ end
240
+
241
+ class UsAppToPersonPage < Page
242
+ ##
243
+ # Initialize the UsAppToPersonPage
244
+ # @param [Version] version Version that contains the resource
245
+ # @param [Response] response Response from the API
246
+ # @param [Hash] solution Path solution for the resource
247
+ # @return [UsAppToPersonPage] UsAppToPersonPage
248
+ def initialize(version, response, solution)
249
+ super(version, response)
250
+
251
+ # Path Solution
252
+ @solution = solution
253
+ end
254
+
255
+ ##
256
+ # Build an instance of UsAppToPersonInstance
257
+ # @param [Hash] payload Payload response from the API
258
+ # @return [UsAppToPersonInstance] UsAppToPersonInstance
259
+ def get_instance(payload)
260
+ UsAppToPersonInstance.new(@version, payload, messaging_service_sid: @solution[:messaging_service_sid])
261
+ end
262
+
263
+ ##
264
+ # Provide a user friendly representation
265
+ def to_s
266
+ '<Twilio.Messaging.V1.UsAppToPersonPage>'
267
+ end
268
+ end
269
+ class UsAppToPersonInstance < InstanceResource
270
+ ##
271
+ # Initialize the UsAppToPersonInstance
272
+ # @param [Version] version Version that contains the resource
273
+ # @param [Hash] payload payload that contains response from Twilio
274
+ # @param [String] account_sid The SID of the
275
+ # {Account}[https://www.twilio.com/docs/iam/api/account] that created this UsAppToPerson
276
+ # resource.
277
+ # @param [String] sid The SID of the Call resource to fetch.
278
+ # @return [UsAppToPersonInstance] UsAppToPersonInstance
279
+ def initialize(version, payload , messaging_service_sid: nil, sid: nil)
280
+ super(version)
281
+
282
+ # Marshaled Properties
283
+ @properties = {
284
+ 'sid' => payload['sid'],
285
+ 'account_sid' => payload['account_sid'],
286
+ 'brand_registration_sid' => payload['brand_registration_sid'],
287
+ 'messaging_service_sid' => payload['messaging_service_sid'],
288
+ 'description' => payload['description'],
289
+ 'message_samples' => payload['message_samples'],
290
+ 'us_app_to_person_usecase' => payload['us_app_to_person_usecase'],
291
+ 'has_embedded_links' => payload['has_embedded_links'],
292
+ 'has_embedded_phone' => payload['has_embedded_phone'],
293
+ 'campaign_status' => payload['campaign_status'],
294
+ 'campaign_id' => payload['campaign_id'],
295
+ 'is_externally_registered' => payload['is_externally_registered'],
296
+ 'rate_limits' => payload['rate_limits'],
297
+ 'message_flow' => payload['message_flow'],
298
+ 'opt_in_message' => payload['opt_in_message'],
299
+ 'opt_out_message' => payload['opt_out_message'],
300
+ 'help_message' => payload['help_message'],
301
+ 'opt_in_keywords' => payload['opt_in_keywords'],
302
+ 'opt_out_keywords' => payload['opt_out_keywords'],
303
+ 'help_keywords' => payload['help_keywords'],
304
+ 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
305
+ 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
306
+ 'url' => payload['url'],
307
+ 'mock' => payload['mock'],
308
+ }
309
+
310
+ # Context
311
+ @instance_context = nil
312
+ @params = { 'messaging_service_sid' => messaging_service_sid || @properties['messaging_service_sid'] ,'sid' => sid || @properties['sid'] , }
313
+ end
314
+
315
+ ##
316
+ # Generate an instance context for the instance, the context is capable of
317
+ # performing various actions. All instance actions are proxied to the context
318
+ # @return [UsAppToPersonContext] CallContext for this CallInstance
319
+ def context
320
+ unless @instance_context
321
+ @instance_context = UsAppToPersonContext.new(@version , @params['messaging_service_sid'], @params['sid'])
322
+ end
323
+ @instance_context
324
+ end
325
+
326
+ ##
327
+ # @return [String] The unique string that identifies a US A2P Compliance resource `QE2c6890da8086d771620e9b13fadeba0b`.
328
+ def sid
329
+ @properties['sid']
330
+ end
331
+
332
+ ##
333
+ # @return [String] The SID of the [Account](https://www.twilio.com/docs/iam/api/account) that the Campaign belongs to.
334
+ def account_sid
335
+ @properties['account_sid']
336
+ end
337
+
338
+ ##
339
+ # @return [String] The unique string to identify the A2P brand.
340
+ def brand_registration_sid
341
+ @properties['brand_registration_sid']
342
+ end
343
+
344
+ ##
345
+ # @return [String] The SID of the [Messaging Service](https://www.twilio.com/docs/messaging/services/api) that the resource is associated with.
346
+ def messaging_service_sid
347
+ @properties['messaging_service_sid']
348
+ end
349
+
350
+ ##
351
+ # @return [String] A short description of what this SMS campaign does. Min length: 40 characters. Max length: 4096 characters.
352
+ def description
353
+ @properties['description']
354
+ end
355
+
356
+ ##
357
+ # @return [Array<String>] Message samples, at least 1 and up to 5 sample messages (at least 2 for starter/sole proprietor), >=20 chars, <=1024 chars each.
358
+ def message_samples
359
+ @properties['message_samples']
360
+ end
361
+
362
+ ##
363
+ # @return [String] A2P Campaign Use Case. Examples: [ 2FA, EMERGENCY, MARKETING, STARTER...]. STARTER campaign use cases can only be created by STARTER Brands, and there can only be one STARTER campaign created per STARTER Brand.
364
+ def us_app_to_person_usecase
365
+ @properties['us_app_to_person_usecase']
366
+ end
367
+
368
+ ##
369
+ # @return [Boolean] Indicate that this SMS campaign will send messages that contain links.
370
+ def has_embedded_links
371
+ @properties['has_embedded_links']
372
+ end
373
+
374
+ ##
375
+ # @return [Boolean] Indicates that this SMS campaign will send messages that contain phone numbers.
376
+ def has_embedded_phone
377
+ @properties['has_embedded_phone']
378
+ end
379
+
380
+ ##
381
+ # @return [String] Campaign status. Examples: IN_PROGRESS, VERIFIED, FAILED.
382
+ def campaign_status
383
+ @properties['campaign_status']
384
+ end
385
+
386
+ ##
387
+ # @return [String] The Campaign Registry (TCR) Campaign ID.
388
+ def campaign_id
389
+ @properties['campaign_id']
390
+ end
391
+
392
+ ##
393
+ # @return [Boolean] Indicates whether the campaign was registered externally or not.
394
+ def is_externally_registered
395
+ @properties['is_externally_registered']
396
+ end
397
+
398
+ ##
399
+ # @return [Hash] Rate limit and/or classification set by each carrier, Ex. AT&T or T-Mobile.
400
+ def rate_limits
401
+ @properties['rate_limits']
402
+ end
403
+
404
+ ##
405
+ # @return [String] Details around how a consumer opts-in to their campaign, therefore giving consent to receive their messages. If multiple opt-in methods can be used for the same campaign, they must all be listed. 40 character minimum. 2048 character maximum.
406
+ def message_flow
407
+ @properties['message_flow']
408
+ end
409
+
410
+ ##
411
+ # @return [String] If end users can text in a keyword to start receiving messages from this campaign, the auto-reply messages sent to the end users must be provided. The opt-in response should include the Brand name, confirmation of opt-in enrollment to a recurring message campaign, how to get help, and clear description of how to opt-out. This field is required if end users can text in a keyword to start receiving messages from this campaign. 20 character minimum. 320 character maximum.
412
+ def opt_in_message
413
+ @properties['opt_in_message']
414
+ end
415
+
416
+ ##
417
+ # @return [String] Upon receiving the opt-out keywords from the end users, Twilio customers are expected to send back an auto-generated response, which must provide acknowledgment of the opt-out request and confirmation that no further messages will be sent. It is also recommended that these opt-out messages include the brand name. This field is required if managing opt out keywords yourself (i.e. not using Twilio's Default or Advanced Opt Out features). 20 character minimum. 320 character maximum.
418
+ def opt_out_message
419
+ @properties['opt_out_message']
420
+ end
421
+
422
+ ##
423
+ # @return [String] When customers receive the help keywords from their end users, Twilio customers are expected to send back an auto-generated response; this may include the brand name and additional support contact information. This field is required if managing help keywords yourself (i.e. not using Twilio's Default or Advanced Opt Out features). 20 character minimum. 320 character maximum.
424
+ def help_message
425
+ @properties['help_message']
426
+ end
427
+
428
+ ##
429
+ # @return [Array<String>] If end users can text in a keyword to start receiving messages from this campaign, those keywords must be provided. This field is required if end users can text in a keyword to start receiving messages from this campaign. Values must be alphanumeric. 255 character maximum.
430
+ def opt_in_keywords
431
+ @properties['opt_in_keywords']
432
+ end
433
+
434
+ ##
435
+ # @return [Array<String>] End users should be able to text in a keyword to stop receiving messages from this campaign. Those keywords must be provided. This field is required if managing opt out keywords yourself (i.e. not using Twilio's Default or Advanced Opt Out features). Values must be alphanumeric. 255 character maximum.
436
+ def opt_out_keywords
437
+ @properties['opt_out_keywords']
438
+ end
439
+
440
+ ##
441
+ # @return [Array<String>] End users should be able to text in a keyword to receive help. Those keywords must be provided as part of the campaign registration request. This field is required if managing help keywords yourself (i.e. not using Twilio's Default or Advanced Opt Out features). Values must be alphanumeric. 255 character maximum.
442
+ def help_keywords
443
+ @properties['help_keywords']
444
+ end
445
+
446
+ ##
447
+ # @return [Time] The date and time in GMT when the resource was created specified in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format.
448
+ def date_created
449
+ @properties['date_created']
450
+ end
451
+
452
+ ##
453
+ # @return [Time] The date and time in GMT when the resource was last updated specified in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format.
454
+ def date_updated
455
+ @properties['date_updated']
456
+ end
457
+
458
+ ##
459
+ # @return [String] The absolute URL of the US App to Person resource.
460
+ def url
461
+ @properties['url']
462
+ end
463
+
464
+ ##
465
+ # @return [Boolean] A boolean that specifies whether campaign is a mock or not. Mock campaigns will be automatically created if using a mock brand. Mock campaigns should only be used for testing purposes.
466
+ def mock
467
+ @properties['mock']
468
+ end
469
+
470
+ ##
471
+ # Delete the UsAppToPersonInstance
472
+ # @return [Boolean] True if delete succeeds, false otherwise
473
+ def delete
474
+
475
+ context.delete
476
+ end
477
+
478
+ ##
479
+ # Fetch the UsAppToPersonInstance
480
+ # @return [UsAppToPersonInstance] Fetched UsAppToPersonInstance
481
+ def fetch
482
+
483
+ context.fetch
484
+ end
485
+
486
+ ##
487
+ # Provide a user friendly representation
488
+ def to_s
489
+ values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
490
+ "<Twilio.Messaging.V1.UsAppToPersonInstance #{values}>"
491
+ end
492
+
493
+ ##
494
+ # Provide a detailed, user friendly representation
495
+ def inspect
496
+ values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
497
+ "<Twilio.Messaging.V1.UsAppToPersonInstance #{values}>"
498
+ end
499
+ end
500
+
501
+ end
522
502
  end
523
- end
524
503
  end
525
- end
526
504
  end
527
- end
528
- end
505
+ end
506
+
507
+