twilio-ruby 5.15.1 → 5.58.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (848) hide show
  1. checksums.yaml +5 -5
  2. data/.dockerignore +1 -0
  3. data/.gitignore +5 -0
  4. data/.rubocop.yml +22 -6
  5. data/.rubocop_todo.yml +86 -75
  6. data/.travis.yml +45 -19
  7. data/CHANGES.md +1553 -0
  8. data/CODE_OF_CONDUCT.md +73 -0
  9. data/CONTRIBUTING.md +4 -2
  10. data/Dockerfile +2 -2
  11. data/Gemfile +1 -9
  12. data/ISSUE_TEMPLATE.md +17 -13
  13. data/{LICENSE.md → LICENSE} +2 -2
  14. data/Makefile +6 -15
  15. data/PULL_REQUEST_TEMPLATE.md +30 -3
  16. data/README.md +120 -54
  17. data/Rakefile +0 -54
  18. data/VERSIONS.md +9 -10
  19. data/examples/examples.rb +1 -1
  20. data/githooks/pre-commit +0 -0
  21. data/lib/twilio-ruby/framework/{domain.rb → rest/domain.rb} +1 -1
  22. data/lib/twilio-ruby/framework/{error.rb → rest/error.rb} +3 -3
  23. data/lib/twilio-ruby/framework/{helper.rb → rest/helper.rb} +0 -0
  24. data/lib/twilio-ruby/framework/{obsolete_client.rb → rest/obsolete_client.rb} +0 -0
  25. data/lib/twilio-ruby/framework/{page.rb → rest/page.rb} +0 -0
  26. data/lib/twilio-ruby/framework/{resource.rb → rest/resource.rb} +0 -0
  27. data/lib/twilio-ruby/framework/{version.rb → rest/version.rb} +7 -11
  28. data/lib/twilio-ruby/http/http_client.rb +29 -14
  29. data/lib/twilio-ruby/http.rb +5 -0
  30. data/lib/twilio-ruby/jwt/access_token.rb +7 -2
  31. data/lib/twilio-ruby/jwt/jwt.rb +6 -0
  32. data/lib/twilio-ruby/jwt/task_router.rb +2 -2
  33. data/lib/twilio-ruby/rest/accounts/v1/auth_token_promotion.rb +186 -0
  34. data/lib/twilio-ruby/rest/accounts/v1/credential/aws.rb +45 -46
  35. data/lib/twilio-ruby/rest/accounts/v1/credential/public_key.rb +44 -52
  36. data/lib/twilio-ruby/rest/accounts/v1/credential.rb +5 -4
  37. data/lib/twilio-ruby/rest/accounts/v1/secondary_auth_token.rb +200 -0
  38. data/lib/twilio-ruby/rest/accounts/v1.rb +15 -1
  39. data/lib/twilio-ruby/rest/accounts.rb +13 -1
  40. data/lib/twilio-ruby/rest/api/v2010/account/address/dependent_phone_number.rb +40 -38
  41. data/lib/twilio-ruby/rest/api/v2010/account/address.rb +115 -121
  42. data/lib/twilio-ruby/rest/api/v2010/account/application.rb +162 -181
  43. data/lib/twilio-ruby/rest/api/v2010/account/authorized_connect_app.rb +35 -32
  44. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/local.rb +169 -178
  45. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/machine_to_machine.rb +187 -85
  46. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/mobile.rb +166 -172
  47. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/national.rb +187 -85
  48. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/shared_cost.rb +187 -85
  49. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/toll_free.rb +166 -172
  50. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/voip.rb +187 -85
  51. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number.rb +28 -23
  52. data/lib/twilio-ruby/rest/api/v2010/account/balance.rb +125 -0
  53. data/lib/twilio-ruby/rest/api/v2010/account/call/event.rb +201 -0
  54. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb +75 -70
  55. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb +59 -59
  56. data/lib/twilio-ruby/rest/api/v2010/account/call/notification.rb +72 -67
  57. data/lib/twilio-ruby/rest/api/v2010/account/call/payment.rb +375 -0
  58. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +118 -103
  59. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +433 -313
  60. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +335 -201
  61. data/lib/twilio-ruby/rest/api/v2010/account/conference/recording.rb +80 -79
  62. data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +98 -81
  63. data/lib/twilio-ruby/rest/api/v2010/account/connect_app.rb +80 -71
  64. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension.rb +48 -41
  65. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on.rb +53 -54
  66. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +172 -127
  67. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +171 -127
  68. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +171 -127
  69. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +304 -289
  70. data/lib/twilio-ruby/rest/api/v2010/account/key.rb +35 -36
  71. data/lib/twilio-ruby/rest/api/v2010/account/message/feedback.rb +25 -20
  72. data/lib/twilio-ruby/rest/api/v2010/account/message/media.rb +51 -47
  73. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +203 -203
  74. data/lib/twilio-ruby/rest/api/v2010/account/new_key.rb +11 -15
  75. data/lib/twilio-ruby/rest/api/v2010/account/new_signing_key.rb +11 -15
  76. data/lib/twilio-ruby/rest/api/v2010/account/notification.rb +47 -55
  77. data/lib/twilio-ruby/rest/api/v2010/account/outgoing_caller_id.rb +56 -61
  78. data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +53 -38
  79. data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +79 -78
  80. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload.rb +55 -48
  81. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result.rb +48 -42
  82. data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +54 -41
  83. data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +70 -61
  84. data/lib/twilio-ruby/rest/api/v2010/account/short_code.rb +69 -70
  85. data/lib/twilio-ruby/rest/api/v2010/account/signing_key.rb +20 -25
  86. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list/credential.rb +45 -51
  87. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list.rb +27 -36
  88. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_credential_list_mapping.rb +48 -49
  89. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_ip_access_control_list_mapping.rb +48 -49
  90. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping.rb +15 -13
  91. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping/auth_registrations_credential_list_mapping.rb +48 -49
  92. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping.rb +13 -11
  93. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types.rb +11 -9
  94. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb +47 -47
  95. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/ip_access_control_list_mapping.rb +46 -47
  96. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +179 -95
  97. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +64 -52
  98. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb +31 -39
  99. data/lib/twilio-ruby/rest/api/v2010/account/sip.rb +5 -4
  100. data/lib/twilio-ruby/rest/api/v2010/account/token.rb +16 -19
  101. data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +43 -40
  102. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +70 -50
  103. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +70 -50
  104. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +70 -53
  105. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +70 -50
  106. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +70 -50
  107. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +70 -50
  108. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +70 -50
  109. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +70 -50
  110. data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +67 -53
  111. data/lib/twilio-ruby/rest/api/v2010/account/usage/trigger.rb +107 -114
  112. data/lib/twilio-ruby/rest/api/v2010/account/usage.rb +3 -2
  113. data/lib/twilio-ruby/rest/api/v2010/account/validation_request.rb +40 -45
  114. data/lib/twilio-ruby/rest/api/v2010/account.rb +38 -28
  115. data/lib/twilio-ruby/rest/api/v2010.rb +10 -5
  116. data/lib/twilio-ruby/rest/api.rb +38 -27
  117. data/lib/twilio-ruby/rest/autopilot/v1/assistant/defaults.rb +29 -24
  118. data/lib/twilio-ruby/rest/autopilot/v1/assistant/dialogue.rb +29 -20
  119. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type/field_value.rb +65 -59
  120. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type.rb +60 -59
  121. data/lib/twilio-ruby/rest/autopilot/v1/assistant/model_build.rb +60 -58
  122. data/lib/twilio-ruby/rest/autopilot/v1/assistant/query.rb +113 -87
  123. data/lib/twilio-ruby/rest/autopilot/v1/assistant/style_sheet.rb +27 -24
  124. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/field.rb +60 -51
  125. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/sample.rb +90 -76
  126. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_actions.rb +41 -30
  127. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_statistics.rb +35 -22
  128. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task.rb +76 -66
  129. data/lib/twilio-ruby/rest/autopilot/v1/assistant/webhook.rb +420 -0
  130. data/lib/twilio-ruby/rest/autopilot/v1/assistant.rb +132 -88
  131. data/lib/twilio-ruby/rest/autopilot/v1/restore_assistant.rb +194 -0
  132. data/lib/twilio-ruby/rest/autopilot/v1.rb +15 -6
  133. data/lib/twilio-ruby/rest/autopilot.rb +8 -2
  134. data/lib/twilio-ruby/rest/bulkexports/v1/export/day.rb +286 -0
  135. data/lib/twilio-ruby/rest/bulkexports/v1/export/export_custom_job.rb +286 -0
  136. data/lib/twilio-ruby/rest/bulkexports/v1/export/job.rb +255 -0
  137. data/lib/twilio-ruby/rest/bulkexports/v1/export.rb +243 -0
  138. data/lib/twilio-ruby/rest/bulkexports/v1/export_configuration.rb +226 -0
  139. data/lib/twilio-ruby/rest/bulkexports/v1.rb +62 -0
  140. data/lib/twilio-ruby/rest/bulkexports.rb +56 -0
  141. data/lib/twilio-ruby/rest/chat/v1/credential.rb +91 -80
  142. data/lib/twilio-ruby/rest/chat/v1/service/channel/invite.rb +74 -68
  143. data/lib/twilio-ruby/rest/chat/v1/service/channel/member.rb +94 -97
  144. data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +81 -73
  145. data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +82 -74
  146. data/lib/twilio-ruby/rest/chat/v1/service/role.rb +62 -62
  147. data/lib/twilio-ruby/rest/chat/v1/service/user/user_channel.rb +20 -18
  148. data/lib/twilio-ruby/rest/chat/v1/service/user.rb +74 -81
  149. data/lib/twilio-ruby/rest/chat/v1/service.rb +338 -357
  150. data/lib/twilio-ruby/rest/chat/v1.rb +15 -11
  151. data/lib/twilio-ruby/rest/chat/v2/credential.rb +77 -84
  152. data/lib/twilio-ruby/rest/chat/v2/service/binding.rb +66 -56
  153. data/lib/twilio-ruby/rest/chat/v2/service/channel/invite.rb +72 -74
  154. data/lib/twilio-ruby/rest/chat/v2/service/channel/member.rb +171 -141
  155. data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +143 -135
  156. data/lib/twilio-ruby/rest/chat/v2/service/channel/webhook.rb +115 -69
  157. data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +134 -117
  158. data/lib/twilio-ruby/rest/chat/v2/service/role.rb +64 -59
  159. data/lib/twilio-ruby/rest/chat/v2/service/user/user_binding.rb +72 -67
  160. data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +95 -53
  161. data/lib/twilio-ruby/rest/chat/v2/service/user.rb +93 -88
  162. data/lib/twilio-ruby/rest/chat/v2/service.rb +224 -185
  163. data/lib/twilio-ruby/rest/chat/v2.rb +13 -11
  164. data/lib/twilio-ruby/rest/chat.rb +3 -3
  165. data/lib/twilio-ruby/rest/client.rb +196 -69
  166. data/lib/twilio-ruby/rest/conversations/v1/configuration/webhook.rb +254 -0
  167. data/lib/twilio-ruby/rest/conversations/v1/configuration.rb +260 -0
  168. data/lib/twilio-ruby/rest/conversations/v1/conversation/message/delivery_receipt.rb +355 -0
  169. data/lib/twilio-ruby/rest/conversations/v1/conversation/message.rb +502 -0
  170. data/lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb +502 -0
  171. data/lib/twilio-ruby/rest/conversations/v1/conversation/webhook.rb +410 -0
  172. data/lib/twilio-ruby/rest/conversations/v1/conversation.rb +562 -0
  173. data/lib/twilio-ruby/rest/conversations/v1/credential.rb +419 -0
  174. data/lib/twilio-ruby/rest/conversations/v1/participant_conversation.rb +312 -0
  175. data/lib/twilio-ruby/rest/conversations/v1/role.rb +366 -0
  176. data/lib/twilio-ruby/rest/conversations/v1/service/binding.rb +380 -0
  177. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb +307 -0
  178. data/lib/twilio-ruby/rest/conversations/v1/service/configuration.rb +278 -0
  179. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message/delivery_receipt.rb +386 -0
  180. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message.rb +548 -0
  181. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/participant.rb +541 -0
  182. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/webhook.rb +449 -0
  183. data/lib/twilio-ruby/rest/conversations/v1/service/conversation.rb +595 -0
  184. data/lib/twilio-ruby/rest/conversations/v1/service/participant_conversation.rb +324 -0
  185. data/lib/twilio-ruby/rest/conversations/v1/service/role.rb +387 -0
  186. data/lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb +466 -0
  187. data/lib/twilio-ruby/rest/conversations/v1/service/user.rb +481 -0
  188. data/lib/twilio-ruby/rest/{authy → conversations}/v1/service.rb +171 -92
  189. data/lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb +442 -0
  190. data/lib/twilio-ruby/rest/conversations/v1/user.rb +451 -0
  191. data/lib/twilio-ruby/rest/conversations/v1.rb +126 -0
  192. data/lib/twilio-ruby/rest/conversations.rb +95 -0
  193. data/lib/twilio-ruby/rest/events/v1/event_type.rb +298 -0
  194. data/lib/twilio-ruby/rest/events/v1/schema/version.rb +290 -0
  195. data/lib/twilio-ruby/rest/events/v1/schema.rb +226 -0
  196. data/lib/twilio-ruby/rest/events/v1/sink/sink_test.rb +115 -0
  197. data/lib/twilio-ruby/rest/events/v1/sink/sink_validate.rb +119 -0
  198. data/lib/twilio-ruby/rest/events/v1/sink.rb +418 -0
  199. data/lib/twilio-ruby/rest/events/v1/subscription/subscribed_event.rb +346 -0
  200. data/lib/twilio-ruby/rest/events/v1/subscription.rb +397 -0
  201. data/lib/twilio-ruby/rest/events/v1.rb +94 -0
  202. data/lib/twilio-ruby/rest/events.rb +72 -0
  203. data/lib/twilio-ruby/rest/fax/v1/fax/fax_media.rb +35 -36
  204. data/lib/twilio-ruby/rest/fax/v1/fax.rb +113 -108
  205. data/lib/twilio-ruby/rest/fax/v1.rb +8 -6
  206. data/lib/twilio-ruby/rest/fax.rb +3 -2
  207. data/lib/twilio-ruby/rest/flex_api/v1/channel.rb +340 -0
  208. data/lib/twilio-ruby/rest/flex_api/v1/configuration.rb +462 -0
  209. data/lib/twilio-ruby/rest/flex_api/v1/flex_flow.rb +565 -0
  210. data/lib/twilio-ruby/rest/flex_api/v1/web_channel.rb +341 -0
  211. data/lib/twilio-ruby/rest/flex_api/v1.rb +83 -0
  212. data/lib/twilio-ruby/rest/flex_api.rb +71 -0
  213. data/lib/twilio-ruby/rest/frontline_api/v1/user.rb +233 -0
  214. data/lib/twilio-ruby/rest/frontline_api/v1.rb +45 -0
  215. data/lib/twilio-ruby/rest/frontline_api.rb +47 -0
  216. data/lib/twilio-ruby/rest/insights/v1/call/event.rb +262 -0
  217. data/lib/twilio-ruby/rest/insights/v1/call/metric.rb +252 -0
  218. data/lib/twilio-ruby/rest/insights/v1/call/summary.rb +307 -0
  219. data/lib/twilio-ruby/rest/insights/v1/call.rb +236 -0
  220. data/lib/twilio-ruby/rest/insights/v1/call_summaries.rb +434 -0
  221. data/lib/twilio-ruby/rest/insights/v1/room/participant.rb +378 -0
  222. data/lib/twilio-ruby/rest/insights/v1/room.rb +499 -0
  223. data/lib/twilio-ruby/rest/insights/v1.rb +67 -0
  224. data/lib/twilio-ruby/rest/insights.rb +60 -0
  225. data/lib/twilio-ruby/rest/ip_messaging/v1/credential.rb +47 -75
  226. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/invite.rb +40 -66
  227. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb +47 -93
  228. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +41 -61
  229. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +50 -69
  230. data/lib/twilio-ruby/rest/ip_messaging/v1/service/role.rb +39 -59
  231. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user/user_channel.rb +6 -10
  232. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +47 -76
  233. data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +69 -203
  234. data/lib/twilio-ruby/rest/ip_messaging/v1.rb +15 -13
  235. data/lib/twilio-ruby/rest/ip_messaging/v2/credential.rb +50 -94
  236. data/lib/twilio-ruby/rest/ip_messaging/v2/service/binding.rb +39 -56
  237. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/invite.rb +40 -69
  238. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb +95 -141
  239. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +87 -133
  240. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/webhook.rb +29 -39
  241. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +85 -118
  242. data/lib/twilio-ruby/rest/ip_messaging/v2/service/role.rb +39 -56
  243. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_binding.rb +38 -63
  244. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_channel.rb +67 -54
  245. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +68 -87
  246. data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +76 -126
  247. data/lib/twilio-ruby/rest/ip_messaging/v2.rb +15 -13
  248. data/lib/twilio-ruby/rest/ip_messaging.rb +7 -9
  249. data/lib/twilio-ruby/rest/lookups/v1/phone_number.rb +63 -56
  250. data/lib/twilio-ruby/rest/lookups/v1.rb +9 -6
  251. data/lib/twilio-ruby/rest/lookups.rb +4 -4
  252. data/lib/twilio-ruby/rest/messaging/v1/brand_registration.rb +346 -0
  253. data/lib/twilio-ruby/rest/messaging/v1/deactivation.rb +164 -0
  254. data/lib/twilio-ruby/rest/messaging/v1/external_campaign.rb +150 -0
  255. data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +44 -46
  256. data/lib/twilio-ruby/rest/messaging/v1/service/phone_number.rb +44 -44
  257. data/lib/twilio-ruby/rest/messaging/v1/service/short_code.rb +44 -44
  258. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person.rb +426 -0
  259. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person_usecase.rb +129 -0
  260. data/lib/twilio-ruby/rest/messaging/v1/service.rb +245 -127
  261. data/lib/twilio-ruby/rest/messaging/v1/usecase.rb +111 -0
  262. data/lib/twilio-ruby/rest/messaging/v1.rb +44 -6
  263. data/lib/twilio-ruby/rest/messaging.rb +29 -2
  264. data/lib/twilio-ruby/rest/monitor/v1/alert.rb +75 -88
  265. data/lib/twilio-ruby/rest/monitor/v1/event.rb +61 -65
  266. data/lib/twilio-ruby/rest/monitor/v1.rb +13 -11
  267. data/lib/twilio-ruby/rest/monitor.rb +5 -3
  268. data/lib/twilio-ruby/rest/notify/v1/credential.rb +82 -81
  269. data/lib/twilio-ruby/rest/notify/v1/service/binding.rb +100 -94
  270. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +126 -124
  271. data/lib/twilio-ruby/rest/notify/v1/service.rb +176 -142
  272. data/lib/twilio-ruby/rest/notify/v1.rb +15 -11
  273. data/lib/twilio-ruby/rest/notify.rb +5 -3
  274. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/evaluation.rb +309 -0
  275. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/item_assignment.rb +320 -0
  276. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle.rb +512 -0
  277. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user.rb +358 -0
  278. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user_type.rb +273 -0
  279. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/regulation.rb +314 -0
  280. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document.rb +371 -0
  281. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document_type.rb +273 -0
  282. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance.rb +189 -0
  283. data/lib/twilio-ruby/rest/numbers/v2.rb +35 -0
  284. data/lib/twilio-ruby/rest/numbers.rb +44 -0
  285. data/lib/twilio-ruby/rest/preview/bulk_exports/export/day.rb +97 -14
  286. data/lib/twilio-ruby/rest/preview/bulk_exports/export/export_custom_job.rb +275 -0
  287. data/lib/twilio-ruby/rest/preview/bulk_exports/export/job.rb +249 -0
  288. data/lib/twilio-ruby/rest/preview/bulk_exports/export.rb +65 -17
  289. data/lib/twilio-ruby/rest/preview/bulk_exports/export_configuration.rb +35 -28
  290. data/lib/twilio-ruby/rest/preview/bulk_exports.rb +15 -11
  291. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/certificate.rb +23 -33
  292. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/deployment.rb +23 -33
  293. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/device.rb +23 -33
  294. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/key.rb +23 -33
  295. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet.rb +23 -33
  296. data/lib/twilio-ruby/rest/preview/deployed_devices.rb +6 -5
  297. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document/dependent_hosted_number_order.rb +15 -14
  298. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document.rb +46 -51
  299. data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +32 -42
  300. data/lib/twilio-ruby/rest/preview/hosted_numbers.rb +11 -9
  301. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on/available_add_on_extension.rb +28 -26
  302. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on.rb +23 -26
  303. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on/installed_add_on_extension.rb +32 -34
  304. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on.rb +50 -63
  305. data/lib/twilio-ruby/rest/preview/marketplace.rb +20 -20
  306. data/lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb +20 -25
  307. data/lib/twilio-ruby/rest/preview/sync/service/document.rb +29 -36
  308. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_item.rb +36 -39
  309. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_permission.rb +20 -25
  310. data/lib/twilio-ruby/rest/preview/sync/service/sync_list.rb +22 -28
  311. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_item.rb +36 -39
  312. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_permission.rb +20 -25
  313. data/lib/twilio-ruby/rest/preview/sync/service/sync_map.rb +22 -28
  314. data/lib/twilio-ruby/rest/preview/sync/service.rb +23 -33
  315. data/lib/twilio-ruby/rest/preview/sync.rb +6 -5
  316. data/lib/twilio-ruby/rest/preview/trusted_comms/branded_channel/channel.rb +165 -0
  317. data/lib/twilio-ruby/rest/preview/trusted_comms/branded_channel.rb +225 -0
  318. data/lib/twilio-ruby/rest/preview/trusted_comms/brands_information.rb +195 -0
  319. data/lib/twilio-ruby/rest/preview/trusted_comms/cps.rb +186 -0
  320. data/lib/twilio-ruby/rest/preview/trusted_comms/current_call.rb +277 -0
  321. data/lib/twilio-ruby/rest/preview/trusted_comms.rb +65 -0
  322. data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_fallback_actions.rb +12 -15
  323. data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_initiation_actions.rb +12 -15
  324. data/lib/twilio-ruby/rest/preview/understand/assistant/dialogue.rb +11 -10
  325. data/lib/twilio-ruby/rest/preview/understand/assistant/field_type/field_value.rb +22 -28
  326. data/lib/twilio-ruby/rest/preview/understand/assistant/field_type.rb +23 -33
  327. data/lib/twilio-ruby/rest/preview/understand/assistant/model_build.rb +23 -33
  328. data/lib/twilio-ruby/rest/preview/understand/assistant/query.rb +23 -33
  329. data/lib/twilio-ruby/rest/preview/understand/assistant/style_sheet.rb +12 -15
  330. data/lib/twilio-ruby/rest/preview/understand/assistant/task/field.rb +24 -30
  331. data/lib/twilio-ruby/rest/preview/understand/assistant/task/sample.rb +23 -33
  332. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_actions.rb +12 -15
  333. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_statistics.rb +11 -10
  334. data/lib/twilio-ruby/rest/preview/understand/assistant/task.rb +23 -33
  335. data/lib/twilio-ruby/rest/preview/understand/assistant.rb +23 -33
  336. data/lib/twilio-ruby/rest/preview/understand.rb +6 -5
  337. data/lib/twilio-ruby/rest/preview/wireless/command.rb +17 -23
  338. data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +25 -35
  339. data/lib/twilio-ruby/rest/preview/wireless/sim/usage.rb +11 -8
  340. data/lib/twilio-ruby/rest/preview/wireless/sim.rb +15 -20
  341. data/lib/twilio-ruby/rest/preview/wireless.rb +16 -13
  342. data/lib/twilio-ruby/rest/preview.rb +52 -30
  343. data/lib/twilio-ruby/rest/pricing/v1/messaging/country.rb +26 -23
  344. data/lib/twilio-ruby/rest/pricing/v1/messaging.rb +4 -2
  345. data/lib/twilio-ruby/rest/pricing/v1/phone_number/country.rb +26 -23
  346. data/lib/twilio-ruby/rest/pricing/v1/phone_number.rb +4 -2
  347. data/lib/twilio-ruby/rest/pricing/v1/voice/country.rb +26 -23
  348. data/lib/twilio-ruby/rest/pricing/v1/voice/number.rb +20 -19
  349. data/lib/twilio-ruby/rest/pricing/v1/voice.rb +5 -3
  350. data/lib/twilio-ruby/rest/pricing/v1.rb +1 -1
  351. data/lib/twilio-ruby/rest/pricing/v2/country.rb +280 -0
  352. data/lib/twilio-ruby/rest/pricing/v2/number.rb +225 -0
  353. data/lib/twilio-ruby/rest/pricing/v2/voice/country.rb +26 -25
  354. data/lib/twilio-ruby/rest/pricing/v2/voice/number.rb +35 -22
  355. data/lib/twilio-ruby/rest/pricing/v2/voice.rb +11 -8
  356. data/lib/twilio-ruby/rest/pricing/v2.rb +38 -1
  357. data/lib/twilio-ruby/rest/pricing.rb +20 -1
  358. data/lib/twilio-ruby/rest/proxy/v1/service/phone_number.rb +72 -65
  359. data/lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb +61 -83
  360. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant/message_interaction.rb +62 -61
  361. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb +79 -72
  362. data/lib/twilio-ruby/rest/proxy/v1/service/session.rb +127 -107
  363. data/lib/twilio-ruby/rest/proxy/v1/service/short_code.rb +55 -56
  364. data/lib/twilio-ruby/rest/proxy/v1/service.rb +167 -105
  365. data/lib/twilio-ruby/rest/proxy/v1.rb +8 -6
  366. data/lib/twilio-ruby/rest/proxy.rb +3 -2
  367. data/lib/twilio-ruby/rest/serverless/v1/service/asset/asset_version.rb +334 -0
  368. data/lib/twilio-ruby/rest/serverless/v1/service/asset.rb +387 -0
  369. data/lib/twilio-ruby/rest/serverless/v1/service/build/build_status.rb +219 -0
  370. data/lib/twilio-ruby/rest/serverless/v1/service/build.rb +391 -0
  371. data/lib/twilio-ruby/rest/serverless/v1/service/environment/deployment.rb +349 -0
  372. data/lib/twilio-ruby/rest/serverless/v1/service/environment/log.rb +394 -0
  373. data/lib/twilio-ruby/rest/serverless/v1/service/environment/variable.rb +407 -0
  374. data/lib/twilio-ruby/rest/serverless/v1/service/environment.rb +454 -0
  375. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version/function_version_content.rb +241 -0
  376. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version.rb +364 -0
  377. data/lib/twilio-ruby/rest/serverless/v1/service/function.rb +387 -0
  378. data/lib/twilio-ruby/rest/{verify → serverless}/v1/service.rb +182 -116
  379. data/lib/twilio-ruby/rest/serverless/v1.rb +44 -0
  380. data/lib/twilio-ruby/rest/serverless.rb +47 -0
  381. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/engagement_context.rb +22 -21
  382. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step/step_context.rb +26 -27
  383. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb +34 -35
  384. data/lib/twilio-ruby/rest/studio/v1/flow/engagement.rb +45 -50
  385. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_context.rb +23 -21
  386. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step/execution_step_context.rb +29 -27
  387. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step.rb +35 -35
  388. data/lib/twilio-ruby/rest/studio/v1/flow/execution.rb +104 -58
  389. data/lib/twilio-ruby/rest/studio/v1/flow.rb +30 -31
  390. data/lib/twilio-ruby/rest/studio/v1.rb +7 -6
  391. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_context.rb +211 -0
  392. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step/execution_step_context.rb +228 -0
  393. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step.rb +372 -0
  394. data/lib/twilio-ruby/rest/studio/v2/flow/execution.rb +449 -0
  395. data/lib/twilio-ruby/rest/{preview/authy/service/entity.rb → studio/v2/flow/flow_revision.rb} +118 -117
  396. data/lib/twilio-ruby/rest/studio/v2/flow/test_user.rb +199 -0
  397. data/lib/twilio-ruby/rest/studio/v2/flow.rb +482 -0
  398. data/lib/twilio-ruby/rest/studio/v2/flow_validate.rb +117 -0
  399. data/lib/twilio-ruby/rest/studio/v2.rb +51 -0
  400. data/lib/twilio-ruby/rest/studio.rb +19 -5
  401. data/lib/twilio-ruby/rest/supersim/v1/command.rb +368 -0
  402. data/lib/twilio-ruby/rest/supersim/v1/fleet.rb +494 -0
  403. data/lib/twilio-ruby/rest/supersim/v1/network.rb +307 -0
  404. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile/network_access_profile_network.rb +339 -0
  405. data/lib/twilio-ruby/rest/{preview/acc_security/service.rb → supersim/v1/network_access_profile.rb} +116 -143
  406. data/lib/twilio-ruby/rest/supersim/v1/sim/billing_period.rb +231 -0
  407. data/lib/twilio-ruby/rest/supersim/v1/sim.rb +443 -0
  408. data/lib/twilio-ruby/rest/supersim/v1/sms_command.rb +371 -0
  409. data/lib/twilio-ruby/rest/supersim/v1/usage_record.rb +338 -0
  410. data/lib/twilio-ruby/rest/supersim/v1.rb +131 -0
  411. data/lib/twilio-ruby/rest/supersim.rb +97 -0
  412. data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +60 -69
  413. data/lib/twilio-ruby/rest/sync/v1/service/document.rb +71 -75
  414. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +155 -107
  415. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +59 -69
  416. data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +77 -73
  417. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +161 -109
  418. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +57 -69
  419. data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +76 -73
  420. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream/stream_message.rb +18 -27
  421. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream.rb +57 -67
  422. data/lib/twilio-ruby/rest/sync/v1/service.rb +141 -87
  423. data/lib/twilio-ruby/rest/sync/v1.rb +7 -6
  424. data/lib/twilio-ruby/rest/sync.rb +3 -2
  425. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/activity.rb +83 -77
  426. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +131 -85
  427. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +298 -194
  428. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +217 -176
  429. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_channel.rb +114 -26
  430. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics.rb +79 -69
  431. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics.rb +59 -29
  432. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_statistics.rb +57 -54
  433. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queues_statistics.rb +61 -70
  434. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +119 -122
  435. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +309 -155
  436. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_channel.rb +56 -59
  437. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_statistics.rb +50 -41
  438. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_cumulative_statistics.rb +43 -39
  439. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_real_time_statistics.rb +27 -19
  440. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_statistics.rb +53 -50
  441. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +131 -117
  442. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics.rb +70 -59
  443. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_real_time_statistics.rb +42 -26
  444. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_statistics.rb +65 -54
  445. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +108 -107
  446. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_cumulative_statistics.rb +59 -54
  447. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_real_time_statistics.rb +34 -24
  448. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_statistics.rb +55 -50
  449. data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +124 -128
  450. data/lib/twilio-ruby/rest/taskrouter/v1.rb +7 -6
  451. data/lib/twilio-ruby/rest/taskrouter.rb +3 -2
  452. data/lib/twilio-ruby/rest/trunking/v1/trunk/credential_list.rb +42 -43
  453. data/lib/twilio-ruby/rest/trunking/v1/trunk/ip_access_control_list.rb +40 -45
  454. data/lib/twilio-ruby/rest/trunking/v1/trunk/origination_url.rb +74 -83
  455. data/lib/twilio-ruby/rest/trunking/v1/trunk/phone_number.rb +65 -62
  456. data/lib/twilio-ruby/rest/trunking/v1/trunk/recording.rb +198 -0
  457. data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +149 -134
  458. data/lib/twilio-ruby/rest/trunking/v1.rb +8 -6
  459. data/lib/twilio-ruby/rest/trunking.rb +3 -3
  460. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_channel_endpoint_assignment.rb +359 -0
  461. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_entity_assignments.rb +330 -0
  462. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_evaluations.rb +328 -0
  463. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles.rb +523 -0
  464. data/lib/twilio-ruby/rest/trusthub/v1/end_user.rb +356 -0
  465. data/lib/twilio-ruby/rest/trusthub/v1/end_user_type.rb +271 -0
  466. data/lib/twilio-ruby/rest/trusthub/v1/policies.rb +262 -0
  467. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document.rb +369 -0
  468. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document_type.rb +271 -0
  469. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_channel_endpoint_assignment.rb +359 -0
  470. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_entity_assignments.rb +330 -0
  471. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_evaluations.rb +328 -0
  472. data/lib/twilio-ruby/rest/trusthub/v1/trust_products.rb +523 -0
  473. data/lib/twilio-ruby/rest/trusthub/v1.rb +146 -0
  474. data/lib/twilio-ruby/rest/trusthub.rb +100 -0
  475. data/lib/twilio-ruby/rest/{authy/v1 → verify/v2}/form.rb +30 -29
  476. data/lib/twilio-ruby/rest/verify/v2/service/access_token.rb +124 -0
  477. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge/notification.rb +201 -0
  478. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb +529 -0
  479. data/lib/twilio-ruby/rest/{authy/v1 → verify/v2}/service/entity/factor.rb +108 -129
  480. data/lib/twilio-ruby/rest/verify/v2/service/entity/new_factor.rb +299 -0
  481. data/lib/twilio-ruby/rest/{authy/v1 → verify/v2}/service/entity.rb +96 -43
  482. data/lib/twilio-ruby/rest/verify/v2/service/messaging_configuration.rb +370 -0
  483. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb +399 -0
  484. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit.rb +391 -0
  485. data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +356 -0
  486. data/lib/twilio-ruby/rest/verify/{v1 → v2}/service/verification_check.rb +59 -36
  487. data/lib/twilio-ruby/rest/verify/v2/service/webhook.rb +427 -0
  488. data/lib/twilio-ruby/rest/verify/v2/service.rb +761 -0
  489. data/lib/twilio-ruby/rest/verify/v2/verification_attempt.rb +329 -0
  490. data/lib/twilio-ruby/rest/verify/v2.rb +78 -0
  491. data/lib/twilio-ruby/rest/verify.rb +28 -9
  492. data/lib/twilio-ruby/rest/video/v1/composition.rb +125 -129
  493. data/lib/twilio-ruby/rest/video/v1/composition_hook.rb +260 -229
  494. data/lib/twilio-ruby/rest/video/v1/composition_settings.rb +54 -63
  495. data/lib/twilio-ruby/rest/video/v1/recording.rb +81 -69
  496. data/lib/twilio-ruby/rest/video/v1/recording_settings.rb +54 -63
  497. data/lib/twilio-ruby/rest/video/v1/room/recording.rb +64 -53
  498. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_published_track.rb +39 -37
  499. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribe_rule.rb +175 -0
  500. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribed_track.rb +132 -105
  501. data/lib/twilio-ruby/rest/video/v1/room/room_participant.rb +104 -77
  502. data/lib/twilio-ruby/rest/video/v1/room/room_recording_rule.rb +144 -0
  503. data/lib/twilio-ruby/rest/video/v1/room.rb +118 -85
  504. data/lib/twilio-ruby/rest/video/v1.rb +35 -34
  505. data/lib/twilio-ruby/rest/video.rb +16 -16
  506. data/lib/twilio-ruby/rest/voice/v1/byoc_trunk.rb +496 -0
  507. data/lib/twilio-ruby/rest/voice/v1/connection_policy/connection_policy_target.rb +441 -0
  508. data/lib/twilio-ruby/rest/{preview/authy/service.rb → voice/v1/connection_policy.rb} +115 -117
  509. data/lib/twilio-ruby/rest/voice/v1/{voice_permission → dialing_permissions}/bulk_country_update.rb +8 -13
  510. data/lib/twilio-ruby/rest/voice/v1/{voice_permission → dialing_permissions}/country/highrisk_special_prefix.rb +9 -11
  511. data/lib/twilio-ruby/rest/voice/v1/{voice_permission → dialing_permissions}/country.rb +59 -58
  512. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/settings.rb +197 -0
  513. data/lib/twilio-ruby/rest/voice/v1/{voice_permission.rb → dialing_permissions.rb} +21 -23
  514. data/lib/twilio-ruby/rest/voice/v1/ip_record.rb +349 -0
  515. data/lib/twilio-ruby/rest/voice/v1/source_ip_mapping.rb +329 -0
  516. data/lib/twilio-ruby/rest/voice/v1.rb +73 -5
  517. data/lib/twilio-ruby/rest/voice.rb +40 -4
  518. data/lib/twilio-ruby/rest/wireless/v1/command.rb +86 -67
  519. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +86 -88
  520. data/lib/twilio-ruby/rest/wireless/v1/sim/data_session.rb +37 -40
  521. data/lib/twilio-ruby/rest/wireless/v1/sim/usage_record.rb +42 -38
  522. data/lib/twilio-ruby/rest/wireless/v1/sim.rb +198 -151
  523. data/lib/twilio-ruby/rest/wireless/v1/usage_record.rb +229 -0
  524. data/lib/twilio-ruby/rest/wireless/v1.rb +26 -16
  525. data/lib/twilio-ruby/rest/wireless.rb +10 -4
  526. data/lib/twilio-ruby/rest.rb +13 -0
  527. data/lib/twilio-ruby/security/request_validator.rb +64 -11
  528. data/lib/twilio-ruby/twiml/fax_response.rb +6 -3
  529. data/lib/twilio-ruby/twiml/messaging_response.rb +1 -1
  530. data/lib/twilio-ruby/twiml/twiml.rb +4 -0
  531. data/lib/twilio-ruby/twiml/voice_response.rb +278 -34
  532. data/lib/twilio-ruby/util/configuration.rb +22 -5
  533. data/lib/twilio-ruby/version.rb +1 -1
  534. data/lib/twilio-ruby.rb +8 -24
  535. data/sonar-project.properties +13 -0
  536. data/twilio-ruby.gemspec +13 -8
  537. metadata +296 -647
  538. data/lib/twilio-ruby/rest/authy/v1/service/entity/factor/challenge.rb +0 -405
  539. data/lib/twilio-ruby/rest/authy/v1.rb +0 -59
  540. data/lib/twilio-ruby/rest/authy.rb +0 -55
  541. data/lib/twilio-ruby/rest/preview/acc_security/service/verification.rb +0 -185
  542. data/lib/twilio-ruby/rest/preview/acc_security/service/verification_check.rb +0 -182
  543. data/lib/twilio-ruby/rest/preview/acc_security.rb +0 -43
  544. data/lib/twilio-ruby/rest/preview/authy.rb +0 -43
  545. data/lib/twilio-ruby/rest/verify/v1/service/verification.rb +0 -192
  546. data/lib/twilio-ruby/rest/verify/v1.rb +0 -43
  547. data/spec/framework/request_spec.rb +0 -36
  548. data/spec/framework/serialize_spec.rb +0 -80
  549. data/spec/holodeck/holodeck.rb +0 -61
  550. data/spec/holodeck/hologram.rb +0 -4
  551. data/spec/http/http_client_spec.rb +0 -122
  552. data/spec/integration/accounts/v1/credential/aws_spec.rb +0 -226
  553. data/spec/integration/accounts/v1/credential/public_key_spec.rb +0 -226
  554. data/spec/integration/accounts/v1/credential_spec.rb +0 -12
  555. data/spec/integration/api/v2010/account/address/dependent_phone_number_spec.rb +0 -107
  556. data/spec/integration/api/v2010/account/address_spec.rb +0 -269
  557. data/spec/integration/api/v2010/account/application_spec.rb +0 -280
  558. data/spec/integration/api/v2010/account/authorized_connect_app_spec.rb +0 -139
  559. data/spec/integration/api/v2010/account/available_phone_number/local_spec.rb +0 -103
  560. data/spec/integration/api/v2010/account/available_phone_number/machine_to_machine_spec.rb +0 -103
  561. data/spec/integration/api/v2010/account/available_phone_number/mobile_spec.rb +0 -102
  562. data/spec/integration/api/v2010/account/available_phone_number/national_spec.rb +0 -103
  563. data/spec/integration/api/v2010/account/available_phone_number/shared_cost_spec.rb +0 -103
  564. data/spec/integration/api/v2010/account/available_phone_number/toll_free_spec.rb +0 -102
  565. data/spec/integration/api/v2010/account/available_phone_number/voip_spec.rb +0 -103
  566. data/spec/integration/api/v2010/account/available_phone_number_spec.rb +0 -130
  567. data/spec/integration/api/v2010/account/call/feedback_spec.rb +0 -139
  568. data/spec/integration/api/v2010/account/call/feedback_summary_spec.rb +0 -151
  569. data/spec/integration/api/v2010/account/call/notification_spec.rb +0 -181
  570. data/spec/integration/api/v2010/account/call/recording_spec.rb +0 -287
  571. data/spec/integration/api/v2010/account/call_spec.rb +0 -314
  572. data/spec/integration/api/v2010/account/conference/participant_spec.rb +0 -350
  573. data/spec/integration/api/v2010/account/conference/recording_spec.rb +0 -237
  574. data/spec/integration/api/v2010/account/conference_spec.rb +0 -179
  575. data/spec/integration/api/v2010/account/connect_app_spec.rb +0 -179
  576. data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension_spec.rb +0 -137
  577. data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on_spec.rb +0 -223
  578. data/spec/integration/api/v2010/account/incoming_phone_number/local_spec.rb +0 -185
  579. data/spec/integration/api/v2010/account/incoming_phone_number/mobile_spec.rb +0 -185
  580. data/spec/integration/api/v2010/account/incoming_phone_number/toll_free_spec.rb +0 -185
  581. data/spec/integration/api/v2010/account/incoming_phone_number_spec.rb +0 -341
  582. data/spec/integration/api/v2010/account/key_spec.rb +0 -180
  583. data/spec/integration/api/v2010/account/message/feedback_spec.rb +0 -50
  584. data/spec/integration/api/v2010/account/message/media_spec.rb +0 -164
  585. data/spec/integration/api/v2010/account/message_spec.rb +0 -290
  586. data/spec/integration/api/v2010/account/new_key_spec.rb +0 -47
  587. data/spec/integration/api/v2010/account/new_signing_key_spec.rb +0 -47
  588. data/spec/integration/api/v2010/account/notification_spec.rb +0 -174
  589. data/spec/integration/api/v2010/account/outgoing_caller_id_spec.rb +0 -195
  590. data/spec/integration/api/v2010/account/queue/member_spec.rb +0 -169
  591. data/spec/integration/api/v2010/account/queue_spec.rb +0 -242
  592. data/spec/integration/api/v2010/account/recording/add_on_result/payload_spec.rb +0 -177
  593. data/spec/integration/api/v2010/account/recording/add_on_result_spec.rb +0 -168
  594. data/spec/integration/api/v2010/account/recording/transcription_spec.rb +0 -176
  595. data/spec/integration/api/v2010/account/recording_spec.rb +0 -187
  596. data/spec/integration/api/v2010/account/short_code_spec.rb +0 -182
  597. data/spec/integration/api/v2010/account/signing_key_spec.rb +0 -180
  598. data/spec/integration/api/v2010/account/sip/credential_list/credential_spec.rb +0 -256
  599. data/spec/integration/api/v2010/account/sip/credential_list_spec.rb +0 -244
  600. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_credential_list_mapping_spec.rb +0 -220
  601. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_ip_access_control_list_mapping_spec.rb +0 -220
  602. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_calls_mapping_spec.rb +0 -12
  603. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping/auth_registrations_credential_list_mapping_spec.rb +0 -220
  604. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping_spec.rb +0 -12
  605. data/spec/integration/api/v2010/account/sip/domain/auth_types_spec.rb +0 -12
  606. data/spec/integration/api/v2010/account/sip/domain/credential_list_mapping_spec.rb +0 -210
  607. data/spec/integration/api/v2010/account/sip/domain/ip_access_control_list_mapping_spec.rb +0 -220
  608. data/spec/integration/api/v2010/account/sip/domain_spec.rb +0 -287
  609. data/spec/integration/api/v2010/account/sip/ip_access_control_list/ip_address_spec.rb +0 -258
  610. data/spec/integration/api/v2010/account/sip/ip_access_control_list_spec.rb +0 -254
  611. data/spec/integration/api/v2010/account/sip_spec.rb +0 -12
  612. data/spec/integration/api/v2010/account/token_spec.rb +0 -58
  613. data/spec/integration/api/v2010/account/transcription_spec.rb +0 -169
  614. data/spec/integration/api/v2010/account/usage/record/all_time_spec.rb +0 -113
  615. data/spec/integration/api/v2010/account/usage/record/daily_spec.rb +0 -113
  616. data/spec/integration/api/v2010/account/usage/record/last_month_spec.rb +0 -113
  617. data/spec/integration/api/v2010/account/usage/record/monthly_spec.rb +0 -113
  618. data/spec/integration/api/v2010/account/usage/record/this_month_spec.rb +0 -113
  619. data/spec/integration/api/v2010/account/usage/record/today_spec.rb +0 -113
  620. data/spec/integration/api/v2010/account/usage/record/yearly_spec.rb +0 -113
  621. data/spec/integration/api/v2010/account/usage/record/yesterday_spec.rb +0 -113
  622. data/spec/integration/api/v2010/account/usage/record_spec.rb +0 -110
  623. data/spec/integration/api/v2010/account/usage/trigger_spec.rb +0 -285
  624. data/spec/integration/api/v2010/account/usage_spec.rb +0 -12
  625. data/spec/integration/api/v2010/account/validation_request_spec.rb +0 -48
  626. data/spec/integration/api/v2010/account_spec.rb +0 -272
  627. data/spec/integration/authy/v1/form_spec.rb +0 -48
  628. data/spec/integration/authy/v1/service/entity/factor/challenge_spec.rb +0 -267
  629. data/spec/integration/authy/v1/service/entity/factor_spec.rb +0 -269
  630. data/spec/integration/authy/v1/service/entity_spec.rb +0 -201
  631. data/spec/integration/authy/v1/service_spec.rb +0 -227
  632. data/spec/integration/autopilot/v1/assistant/defaults_spec.rb +0 -81
  633. data/spec/integration/autopilot/v1/assistant/dialogue_spec.rb +0 -47
  634. data/spec/integration/autopilot/v1/assistant/field_type/field_value_spec.rb +0 -210
  635. data/spec/integration/autopilot/v1/assistant/field_type_spec.rb +0 -246
  636. data/spec/integration/autopilot/v1/assistant/model_build_spec.rb +0 -241
  637. data/spec/integration/autopilot/v1/assistant/query_spec.rb +0 -306
  638. data/spec/integration/autopilot/v1/assistant/style_sheet_spec.rb +0 -81
  639. data/spec/integration/autopilot/v1/assistant/task/field_spec.rb +0 -207
  640. data/spec/integration/autopilot/v1/assistant/task/sample_spec.rb +0 -253
  641. data/spec/integration/autopilot/v1/assistant/task/task_actions_spec.rb +0 -87
  642. data/spec/integration/autopilot/v1/assistant/task/task_statistics_spec.rb +0 -50
  643. data/spec/integration/autopilot/v1/assistant/task_spec.rb +0 -262
  644. data/spec/integration/autopilot/v1/assistant_spec.rb +0 -270
  645. data/spec/integration/chat/v1/credential_spec.rb +0 -223
  646. data/spec/integration/chat/v1/service/channel/invite_spec.rb +0 -210
  647. data/spec/integration/chat/v1/service/channel/member_spec.rb +0 -284
  648. data/spec/integration/chat/v1/service/channel/message_spec.rb +0 -294
  649. data/spec/integration/chat/v1/service/channel_spec.rb +0 -277
  650. data/spec/integration/chat/v1/service/role_spec.rb +0 -263
  651. data/spec/integration/chat/v1/service/user/user_channel_spec.rb +0 -94
  652. data/spec/integration/chat/v1/service/user_spec.rb +0 -266
  653. data/spec/integration/chat/v1/service_spec.rb +0 -299
  654. data/spec/integration/chat/v2/credential_spec.rb +0 -223
  655. data/spec/integration/chat/v2/service/binding_spec.rb +0 -177
  656. data/spec/integration/chat/v2/service/channel/invite_spec.rb +0 -210
  657. data/spec/integration/chat/v2/service/channel/member_spec.rb +0 -257
  658. data/spec/integration/chat/v2/service/channel/message_spec.rb +0 -405
  659. data/spec/integration/chat/v2/service/channel/webhook_spec.rb +0 -307
  660. data/spec/integration/chat/v2/service/channel_spec.rb +0 -281
  661. data/spec/integration/chat/v2/service/role_spec.rb +0 -263
  662. data/spec/integration/chat/v2/service/user/user_binding_spec.rb +0 -180
  663. data/spec/integration/chat/v2/service/user/user_channel_spec.rb +0 -192
  664. data/spec/integration/chat/v2/service/user_spec.rb +0 -270
  665. data/spec/integration/chat/v2/service_spec.rb +0 -354
  666. data/spec/integration/fax/v1/fax/fax_media_spec.rb +0 -128
  667. data/spec/integration/fax/v1/fax_spec.rb +0 -271
  668. data/spec/integration/ip_messaging/v1/credential_spec.rb +0 -223
  669. data/spec/integration/ip_messaging/v1/service/channel/invite_spec.rb +0 -210
  670. data/spec/integration/ip_messaging/v1/service/channel/member_spec.rb +0 -284
  671. data/spec/integration/ip_messaging/v1/service/channel/message_spec.rb +0 -294
  672. data/spec/integration/ip_messaging/v1/service/channel_spec.rb +0 -277
  673. data/spec/integration/ip_messaging/v1/service/role_spec.rb +0 -263
  674. data/spec/integration/ip_messaging/v1/service/user/user_channel_spec.rb +0 -94
  675. data/spec/integration/ip_messaging/v1/service/user_spec.rb +0 -266
  676. data/spec/integration/ip_messaging/v1/service_spec.rb +0 -299
  677. data/spec/integration/ip_messaging/v2/credential_spec.rb +0 -223
  678. data/spec/integration/ip_messaging/v2/service/binding_spec.rb +0 -177
  679. data/spec/integration/ip_messaging/v2/service/channel/invite_spec.rb +0 -210
  680. data/spec/integration/ip_messaging/v2/service/channel/member_spec.rb +0 -257
  681. data/spec/integration/ip_messaging/v2/service/channel/message_spec.rb +0 -405
  682. data/spec/integration/ip_messaging/v2/service/channel/webhook_spec.rb +0 -307
  683. data/spec/integration/ip_messaging/v2/service/channel_spec.rb +0 -281
  684. data/spec/integration/ip_messaging/v2/service/role_spec.rb +0 -263
  685. data/spec/integration/ip_messaging/v2/service/user/user_binding_spec.rb +0 -180
  686. data/spec/integration/ip_messaging/v2/service/user/user_channel_spec.rb +0 -192
  687. data/spec/integration/ip_messaging/v2/service/user_spec.rb +0 -270
  688. data/spec/integration/ip_messaging/v2/service_spec.rb +0 -354
  689. data/spec/integration/lookups/v1/phone_number_spec.rb +0 -71
  690. data/spec/integration/messaging/v1/service/alpha_sender_spec.rb +0 -170
  691. data/spec/integration/messaging/v1/service/phone_number_spec.rb +0 -201
  692. data/spec/integration/messaging/v1/service/short_code_spec.rb +0 -173
  693. data/spec/integration/messaging/v1/service_spec.rb +0 -263
  694. data/spec/integration/monitor/v1/alert_spec.rb +0 -163
  695. data/spec/integration/monitor/v1/event_spec.rb +0 -150
  696. data/spec/integration/notify/v1/credential_spec.rb +0 -223
  697. data/spec/integration/notify/v1/service/binding_spec.rb +0 -225
  698. data/spec/integration/notify/v1/service/notification_spec.rb +0 -99
  699. data/spec/integration/notify/v1/service_spec.rb +0 -286
  700. data/spec/integration/preview/acc_security/service/verification_check_spec.rb +0 -52
  701. data/spec/integration/preview/acc_security/service/verification_spec.rb +0 -52
  702. data/spec/integration/preview/acc_security/service_spec.rb +0 -185
  703. data/spec/integration/preview/authy/service/entity_spec.rb +0 -173
  704. data/spec/integration/preview/authy/service_spec.rb +0 -201
  705. data/spec/integration/preview/bulk_exports/export/day_spec.rb +0 -58
  706. data/spec/integration/preview/bulk_exports/export_configuration_spec.rb +0 -79
  707. data/spec/integration/preview/bulk_exports/export_spec.rb +0 -45
  708. data/spec/integration/preview/deployed_devices/fleet/certificate_spec.rb +0 -238
  709. data/spec/integration/preview/deployed_devices/fleet/deployment_spec.rb +0 -233
  710. data/spec/integration/preview/deployed_devices/fleet/device_spec.rb +0 -249
  711. data/spec/integration/preview/deployed_devices/fleet/key_spec.rb +0 -237
  712. data/spec/integration/preview/deployed_devices/fleet_spec.rb +0 -246
  713. data/spec/integration/preview/hosted_numbers/authorization_document/dependent_hosted_number_order_spec.rb +0 -111
  714. data/spec/integration/preview/hosted_numbers/authorization_document_spec.rb +0 -227
  715. data/spec/integration/preview/hosted_numbers/hosted_number_order_spec.rb +0 -393
  716. data/spec/integration/preview/marketplace/available_add_on/available_add_on_extension_spec.rb +0 -123
  717. data/spec/integration/preview/marketplace/available_add_on_spec.rb +0 -144
  718. data/spec/integration/preview/marketplace/installed_add_on/installed_add_on_extension_spec.rb +0 -164
  719. data/spec/integration/preview/marketplace/installed_add_on_spec.rb +0 -254
  720. data/spec/integration/preview/sync/service/document/document_permission_spec.rb +0 -204
  721. data/spec/integration/preview/sync/service/document_spec.rb +0 -254
  722. data/spec/integration/preview/sync/service/sync_list/sync_list_item_spec.rb +0 -254
  723. data/spec/integration/preview/sync/service/sync_list/sync_list_permission_spec.rb +0 -204
  724. data/spec/integration/preview/sync/service/sync_list_spec.rb +0 -209
  725. data/spec/integration/preview/sync/service/sync_map/sync_map_item_spec.rb +0 -254
  726. data/spec/integration/preview/sync/service/sync_map/sync_map_permission_spec.rb +0 -204
  727. data/spec/integration/preview/sync/service/sync_map_spec.rb +0 -209
  728. data/spec/integration/preview/sync/service_spec.rb +0 -246
  729. data/spec/integration/preview/understand/assistant/assistant_fallback_actions_spec.rb +0 -81
  730. data/spec/integration/preview/understand/assistant/assistant_initiation_actions_spec.rb +0 -81
  731. data/spec/integration/preview/understand/assistant/dialogue_spec.rb +0 -47
  732. data/spec/integration/preview/understand/assistant/field_type/field_value_spec.rb +0 -210
  733. data/spec/integration/preview/understand/assistant/field_type_spec.rb +0 -246
  734. data/spec/integration/preview/understand/assistant/model_build_spec.rb +0 -241
  735. data/spec/integration/preview/understand/assistant/query_spec.rb +0 -306
  736. data/spec/integration/preview/understand/assistant/style_sheet_spec.rb +0 -81
  737. data/spec/integration/preview/understand/assistant/task/field_spec.rb +0 -207
  738. data/spec/integration/preview/understand/assistant/task/sample_spec.rb +0 -253
  739. data/spec/integration/preview/understand/assistant/task/task_actions_spec.rb +0 -87
  740. data/spec/integration/preview/understand/assistant/task/task_statistics_spec.rb +0 -50
  741. data/spec/integration/preview/understand/assistant/task_spec.rb +0 -262
  742. data/spec/integration/preview/understand/assistant_spec.rb +0 -274
  743. data/spec/integration/preview/wireless/command_spec.rb +0 -169
  744. data/spec/integration/preview/wireless/rate_plan_spec.rb +0 -262
  745. data/spec/integration/preview/wireless/sim/usage_spec.rb +0 -51
  746. data/spec/integration/preview/wireless/sim_spec.rb +0 -210
  747. data/spec/integration/pricing/v1/messaging/country_spec.rb +0 -139
  748. data/spec/integration/pricing/v1/messaging_spec.rb +0 -12
  749. data/spec/integration/pricing/v1/phone_number/country_spec.rb +0 -130
  750. data/spec/integration/pricing/v1/phone_number_spec.rb +0 -12
  751. data/spec/integration/pricing/v1/voice/country_spec.rb +0 -140
  752. data/spec/integration/pricing/v1/voice/number_spec.rb +0 -56
  753. data/spec/integration/pricing/v1/voice_spec.rb +0 -12
  754. data/spec/integration/pricing/v2/voice/country_spec.rb +0 -181
  755. data/spec/integration/pricing/v2/voice/number_spec.rb +0 -62
  756. data/spec/integration/pricing/v2/voice_spec.rb +0 -12
  757. data/spec/integration/proxy/v1/service/phone_number_spec.rb +0 -232
  758. data/spec/integration/proxy/v1/service/session/interaction_spec.rb +0 -136
  759. data/spec/integration/proxy/v1/service/session/participant/message_interaction_spec.rb +0 -166
  760. data/spec/integration/proxy/v1/service/session/participant_spec.rb +0 -181
  761. data/spec/integration/proxy/v1/service/session_spec.rb +0 -230
  762. data/spec/integration/proxy/v1/service/short_code_spec.rb +0 -229
  763. data/spec/integration/proxy/v1/service_spec.rb +0 -215
  764. data/spec/integration/studio/v1/flow/engagement/engagement_context_spec.rb +0 -51
  765. data/spec/integration/studio/v1/flow/engagement/step/step_context_spec.rb +0 -54
  766. data/spec/integration/studio/v1/flow/engagement/step_spec.rb +0 -101
  767. data/spec/integration/studio/v1/flow/engagement_spec.rb +0 -171
  768. data/spec/integration/studio/v1/flow/execution/execution_context_spec.rb +0 -51
  769. data/spec/integration/studio/v1/flow/execution/execution_step/execution_step_context_spec.rb +0 -54
  770. data/spec/integration/studio/v1/flow/execution/execution_step_spec.rb +0 -101
  771. data/spec/integration/studio/v1/flow/execution_spec.rb +0 -171
  772. data/spec/integration/studio/v1/flow_spec.rb +0 -117
  773. data/spec/integration/sync/v1/service/document/document_permission_spec.rb +0 -204
  774. data/spec/integration/sync/v1/service/document_spec.rb +0 -257
  775. data/spec/integration/sync/v1/service/sync_list/sync_list_item_spec.rb +0 -257
  776. data/spec/integration/sync/v1/service/sync_list/sync_list_permission_spec.rb +0 -204
  777. data/spec/integration/sync/v1/service/sync_list_spec.rb +0 -257
  778. data/spec/integration/sync/v1/service/sync_map/sync_map_item_spec.rb +0 -257
  779. data/spec/integration/sync/v1/service/sync_map/sync_map_permission_spec.rb +0 -204
  780. data/spec/integration/sync/v1/service/sync_map_spec.rb +0 -257
  781. data/spec/integration/sync/v1/service/sync_stream/stream_message_spec.rb +0 -47
  782. data/spec/integration/sync/v1/service/sync_stream_spec.rb +0 -249
  783. data/spec/integration/sync/v1/service_spec.rb +0 -254
  784. data/spec/integration/taskrouter/v1/workspace/activity_spec.rb +0 -236
  785. data/spec/integration/taskrouter/v1/workspace/event_spec.rb +0 -159
  786. data/spec/integration/taskrouter/v1/workspace/task/reservation_spec.rb +0 -225
  787. data/spec/integration/taskrouter/v1/workspace/task_channel_spec.rb +0 -129
  788. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics_spec.rb +0 -96
  789. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics_spec.rb +0 -81
  790. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_statistics_spec.rb +0 -108
  791. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queues_statistics_spec.rb +0 -146
  792. data/spec/integration/taskrouter/v1/workspace/task_queue_spec.rb +0 -294
  793. data/spec/integration/taskrouter/v1/workspace/task_spec.rb +0 -326
  794. data/spec/integration/taskrouter/v1/workspace/worker/reservation_spec.rb +0 -194
  795. data/spec/integration/taskrouter/v1/workspace/worker/worker_channel_spec.rb +0 -188
  796. data/spec/integration/taskrouter/v1/workspace/worker/worker_statistics_spec.rb +0 -92
  797. data/spec/integration/taskrouter/v1/workspace/worker/workers_cumulative_statistics_spec.rb +0 -89
  798. data/spec/integration/taskrouter/v1/workspace/worker/workers_real_time_statistics_spec.rb +0 -70
  799. data/spec/integration/taskrouter/v1/workspace/worker/workers_statistics_spec.rb +0 -116
  800. data/spec/integration/taskrouter/v1/workspace/worker_spec.rb +0 -294
  801. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics_spec.rb +0 -97
  802. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_real_time_statistics_spec.rb +0 -57
  803. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_statistics_spec.rb +0 -71
  804. data/spec/integration/taskrouter/v1/workspace/workflow_spec.rb +0 -272
  805. data/spec/integration/taskrouter/v1/workspace/workspace_cumulative_statistics_spec.rb +0 -94
  806. data/spec/integration/taskrouter/v1/workspace/workspace_real_time_statistics_spec.rb +0 -72
  807. data/spec/integration/taskrouter/v1/workspace/workspace_statistics_spec.rb +0 -105
  808. data/spec/integration/taskrouter/v1/workspace_spec.rb +0 -295
  809. data/spec/integration/trunking/v1/trunk/credential_list_spec.rb +0 -192
  810. data/spec/integration/trunking/v1/trunk/ip_access_control_list_spec.rb +0 -192
  811. data/spec/integration/trunking/v1/trunk/origination_url_spec.rb +0 -252
  812. data/spec/integration/trunking/v1/trunk/phone_number_spec.rb +0 -267
  813. data/spec/integration/trunking/v1/trunk_spec.rb +0 -282
  814. data/spec/integration/verify/v1/service/verification_check_spec.rb +0 -52
  815. data/spec/integration/verify/v1/service/verification_spec.rb +0 -52
  816. data/spec/integration/verify/v1/service_spec.rb +0 -215
  817. data/spec/integration/video/v1/composition_hook_spec.rb +0 -410
  818. data/spec/integration/video/v1/composition_settings_spec.rb +0 -86
  819. data/spec/integration/video/v1/composition_spec.rb +0 -325
  820. data/spec/integration/video/v1/recording_settings_spec.rb +0 -86
  821. data/spec/integration/video/v1/recording_spec.rb +0 -179
  822. data/spec/integration/video/v1/room/recording_spec.rb +0 -188
  823. data/spec/integration/video/v1/room/room_participant/room_participant_published_track_spec.rb +0 -96
  824. data/spec/integration/video/v1/room/room_participant/room_participant_subscribed_track_spec.rb +0 -134
  825. data/spec/integration/video/v1/room/room_participant_spec.rb +0 -187
  826. data/spec/integration/video/v1/room_spec.rb +0 -257
  827. data/spec/integration/voice/v1/voice_permission/bulk_country_update_spec.rb +0 -45
  828. data/spec/integration/voice/v1/voice_permission/country/highrisk_special_prefix_spec.rb +0 -61
  829. data/spec/integration/voice/v1/voice_permission/country_spec.rb +0 -112
  830. data/spec/integration/voice/v1/voice_permission_spec.rb +0 -12
  831. data/spec/integration/wireless/v1/command_spec.rb +0 -263
  832. data/spec/integration/wireless/v1/rate_plan_spec.rb +0 -270
  833. data/spec/integration/wireless/v1/sim/data_session_spec.rb +0 -87
  834. data/spec/integration/wireless/v1/sim/usage_record_spec.rb +0 -67
  835. data/spec/integration/wireless/v1/sim_spec.rb +0 -216
  836. data/spec/jwt/access_token_spec.rb +0 -151
  837. data/spec/jwt/client_capability_spec.rb +0 -104
  838. data/spec/jwt/task_router_spec.rb +0 -172
  839. data/spec/rack/twilio_webhook_authentication_spec.rb +0 -106
  840. data/spec/rest/client_spec.rb +0 -61
  841. data/spec/security/request_validator_spec.rb +0 -86
  842. data/spec/spec_helper.rb +0 -38
  843. data/spec/support/fakeweb.rb +0 -2
  844. data/spec/twilio_spec.rb +0 -15
  845. data/spec/twiml/messaging_response_spec.rb +0 -235
  846. data/spec/twiml/voice_response_spec.rb +0 -847
  847. data/spec/util/configuration_spec.rb +0 -15
  848. data/spec/util/url_encode_spec.rb +0 -12
@@ -3,7 +3,7 @@
3
3
  # \ / _ _ _| _ _
4
4
  # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
5
  # / /
6
- #
6
+ #
7
7
  # frozen_string_literal: true
8
8
 
9
9
  module Twilio
@@ -15,7 +15,7 @@ module Twilio
15
15
  ##
16
16
  # Initialize the TaskList
17
17
  # @param [Version] version Version that contains the resource
18
- # @param [String] workspace_sid The ID of the Workspace that holds this Task
18
+ # @param [String] workspace_sid The SID of the Workspace that contains the Task.
19
19
  # @return [TaskList] TaskList
20
20
  def initialize(version, workspace_sid: nil)
21
21
  super(version)
@@ -29,29 +29,34 @@ module Twilio
29
29
  # Lists TaskInstance records from the API as a list.
30
30
  # Unlike stream(), this operation is eager and will load `limit` records into
31
31
  # memory before returning.
32
- # @param [String] priority Retrieve the list of all Tasks in the workspace with
33
- # the specified priority.
34
- # @param [String] assignment_status Returns the list of all Tasks in the workspace
35
- # with the specified AssignmentStatus. Allowed AssignmentStatus values are
36
- # pending, reserved, assigned, canceled, and completed.
37
- # @param [String] workflow_sid Returns the list of Tasks that are being controlled
38
- # by the Workflow with the specified Sid value.
39
- # @param [String] workflow_name Returns the list of Tasks that are being
40
- # controlled by the Workflow with the specified FriendlyName value.
41
- # @param [String] task_queue_sid Returns the list of Tasks that are currently
42
- # waiting in the TaskQueue identified by the Sid specified.
43
- # @param [String] task_queue_name Returns the list of Tasks that are currently
44
- # waiting in the TaskQueue identified by the FriendlyName specified.
45
- # @param [String] evaluate_task_attributes Provide a task attributes expression,
46
- # and this will return tasks which match the attributes.
47
- # @param [String] ordering Use this parameter to control the order of the Tasks
48
- # returned. The value should be passed in `Attribute:Order` format, where
49
- # Attribute can be either `Priority` or `DateCreated` and Order can be either
50
- # `asc` or `desc`. For example, `Priority:desc` returns Tasks ordered by Priority
51
- # in descending order. To sort the Tasks by Priority and DateCreated pass
52
- # `Priority:desc,DateCreated:asc`. By Default Tasks are returned sorted by
53
- # DateCreated in ascending order.
54
- # @param [Boolean] has_addons The has_addons
32
+ # @param [String] priority The priority value of the Tasks to read. Returns the
33
+ # list of all Tasks in the Workspace with the specified priority.
34
+ # @param [Array[String]] assignment_status The `assignment_status` of the Tasks
35
+ # you want to read. Can be: `pending`, `reserved`, `assigned`, `canceled`,
36
+ # `wrapping`, or `completed`. Returns all Tasks in the Workspace with the
37
+ # specified `assignment_status`.
38
+ # @param [String] workflow_sid The SID of the Workflow with the Tasks to read.
39
+ # Returns the Tasks controlled by the Workflow identified by this SID.
40
+ # @param [String] workflow_name The friendly name of the Workflow with the Tasks
41
+ # to read. Returns the Tasks controlled by the Workflow identified by this
42
+ # friendly name.
43
+ # @param [String] task_queue_sid The SID of the TaskQueue with the Tasks to read.
44
+ # Returns the Tasks waiting in the TaskQueue identified by this SID.
45
+ # @param [String] task_queue_name The `friendly_name` of the TaskQueue with the
46
+ # Tasks to read. Returns the Tasks waiting in the TaskQueue identified by this
47
+ # friendly name.
48
+ # @param [String] evaluate_task_attributes The attributes of the Tasks to read.
49
+ # Returns the Tasks that match the attributes specified in this parameter.
50
+ # @param [String] ordering How to order the returned Task resources. y default,
51
+ # Tasks are sorted by ascending DateCreated. This value is specified as:
52
+ # `Attribute:Order`, where `Attribute` can be either `Priority` or `DateCreated`
53
+ # and `Order` can be either `asc` or `desc`. For example, `Priority:desc` returns
54
+ # Tasks ordered in descending order of their Priority. Multiple sort orders can be
55
+ # specified in a comma-separated list such as `Priority:desc,DateCreated:asc`,
56
+ # which returns the Tasks in descending Priority order and ascending DateCreated
57
+ # Order.
58
+ # @param [Boolean] has_addons Whether to read Tasks with addons. If `true`,
59
+ # returns only Tasks with addons. If `false`, returns only Tasks without addons.
55
60
  # @param [Integer] limit Upper limit for the number of records to return. stream()
56
61
  # guarantees to never return more than limit. Default is no limit
57
62
  # @param [Integer] page_size Number of records to fetch per request, when
@@ -79,29 +84,34 @@ module Twilio
79
84
  # Streams TaskInstance records from the API as an Enumerable.
80
85
  # This operation lazily loads records as efficiently as possible until the limit
81
86
  # is reached.
82
- # @param [String] priority Retrieve the list of all Tasks in the workspace with
83
- # the specified priority.
84
- # @param [String] assignment_status Returns the list of all Tasks in the workspace
85
- # with the specified AssignmentStatus. Allowed AssignmentStatus values are
86
- # pending, reserved, assigned, canceled, and completed.
87
- # @param [String] workflow_sid Returns the list of Tasks that are being controlled
88
- # by the Workflow with the specified Sid value.
89
- # @param [String] workflow_name Returns the list of Tasks that are being
90
- # controlled by the Workflow with the specified FriendlyName value.
91
- # @param [String] task_queue_sid Returns the list of Tasks that are currently
92
- # waiting in the TaskQueue identified by the Sid specified.
93
- # @param [String] task_queue_name Returns the list of Tasks that are currently
94
- # waiting in the TaskQueue identified by the FriendlyName specified.
95
- # @param [String] evaluate_task_attributes Provide a task attributes expression,
96
- # and this will return tasks which match the attributes.
97
- # @param [String] ordering Use this parameter to control the order of the Tasks
98
- # returned. The value should be passed in `Attribute:Order` format, where
99
- # Attribute can be either `Priority` or `DateCreated` and Order can be either
100
- # `asc` or `desc`. For example, `Priority:desc` returns Tasks ordered by Priority
101
- # in descending order. To sort the Tasks by Priority and DateCreated pass
102
- # `Priority:desc,DateCreated:asc`. By Default Tasks are returned sorted by
103
- # DateCreated in ascending order.
104
- # @param [Boolean] has_addons The has_addons
87
+ # @param [String] priority The priority value of the Tasks to read. Returns the
88
+ # list of all Tasks in the Workspace with the specified priority.
89
+ # @param [Array[String]] assignment_status The `assignment_status` of the Tasks
90
+ # you want to read. Can be: `pending`, `reserved`, `assigned`, `canceled`,
91
+ # `wrapping`, or `completed`. Returns all Tasks in the Workspace with the
92
+ # specified `assignment_status`.
93
+ # @param [String] workflow_sid The SID of the Workflow with the Tasks to read.
94
+ # Returns the Tasks controlled by the Workflow identified by this SID.
95
+ # @param [String] workflow_name The friendly name of the Workflow with the Tasks
96
+ # to read. Returns the Tasks controlled by the Workflow identified by this
97
+ # friendly name.
98
+ # @param [String] task_queue_sid The SID of the TaskQueue with the Tasks to read.
99
+ # Returns the Tasks waiting in the TaskQueue identified by this SID.
100
+ # @param [String] task_queue_name The `friendly_name` of the TaskQueue with the
101
+ # Tasks to read. Returns the Tasks waiting in the TaskQueue identified by this
102
+ # friendly name.
103
+ # @param [String] evaluate_task_attributes The attributes of the Tasks to read.
104
+ # Returns the Tasks that match the attributes specified in this parameter.
105
+ # @param [String] ordering How to order the returned Task resources. y default,
106
+ # Tasks are sorted by ascending DateCreated. This value is specified as:
107
+ # `Attribute:Order`, where `Attribute` can be either `Priority` or `DateCreated`
108
+ # and `Order` can be either `asc` or `desc`. For example, `Priority:desc` returns
109
+ # Tasks ordered in descending order of their Priority. Multiple sort orders can be
110
+ # specified in a comma-separated list such as `Priority:desc,DateCreated:asc`,
111
+ # which returns the Tasks in descending Priority order and ascending DateCreated
112
+ # Order.
113
+ # @param [Boolean] has_addons Whether to read Tasks with addons. If `true`,
114
+ # returns only Tasks with addons. If `false`, returns only Tasks without addons.
105
115
  # @param [Integer] limit Upper limit for the number of records to return. stream()
106
116
  # guarantees to never return more than limit. Default is no limit.
107
117
  # @param [Integer] page_size Number of records to fetch per request, when
@@ -145,29 +155,34 @@ module Twilio
145
155
  ##
146
156
  # Retrieve a single page of TaskInstance records from the API.
147
157
  # Request is executed immediately.
148
- # @param [String] priority Retrieve the list of all Tasks in the workspace with
149
- # the specified priority.
150
- # @param [String] assignment_status Returns the list of all Tasks in the workspace
151
- # with the specified AssignmentStatus. Allowed AssignmentStatus values are
152
- # pending, reserved, assigned, canceled, and completed.
153
- # @param [String] workflow_sid Returns the list of Tasks that are being controlled
154
- # by the Workflow with the specified Sid value.
155
- # @param [String] workflow_name Returns the list of Tasks that are being
156
- # controlled by the Workflow with the specified FriendlyName value.
157
- # @param [String] task_queue_sid Returns the list of Tasks that are currently
158
- # waiting in the TaskQueue identified by the Sid specified.
159
- # @param [String] task_queue_name Returns the list of Tasks that are currently
160
- # waiting in the TaskQueue identified by the FriendlyName specified.
161
- # @param [String] evaluate_task_attributes Provide a task attributes expression,
162
- # and this will return tasks which match the attributes.
163
- # @param [String] ordering Use this parameter to control the order of the Tasks
164
- # returned. The value should be passed in `Attribute:Order` format, where
165
- # Attribute can be either `Priority` or `DateCreated` and Order can be either
166
- # `asc` or `desc`. For example, `Priority:desc` returns Tasks ordered by Priority
167
- # in descending order. To sort the Tasks by Priority and DateCreated pass
168
- # `Priority:desc,DateCreated:asc`. By Default Tasks are returned sorted by
169
- # DateCreated in ascending order.
170
- # @param [Boolean] has_addons The has_addons
158
+ # @param [String] priority The priority value of the Tasks to read. Returns the
159
+ # list of all Tasks in the Workspace with the specified priority.
160
+ # @param [Array[String]] assignment_status The `assignment_status` of the Tasks
161
+ # you want to read. Can be: `pending`, `reserved`, `assigned`, `canceled`,
162
+ # `wrapping`, or `completed`. Returns all Tasks in the Workspace with the
163
+ # specified `assignment_status`.
164
+ # @param [String] workflow_sid The SID of the Workflow with the Tasks to read.
165
+ # Returns the Tasks controlled by the Workflow identified by this SID.
166
+ # @param [String] workflow_name The friendly name of the Workflow with the Tasks
167
+ # to read. Returns the Tasks controlled by the Workflow identified by this
168
+ # friendly name.
169
+ # @param [String] task_queue_sid The SID of the TaskQueue with the Tasks to read.
170
+ # Returns the Tasks waiting in the TaskQueue identified by this SID.
171
+ # @param [String] task_queue_name The `friendly_name` of the TaskQueue with the
172
+ # Tasks to read. Returns the Tasks waiting in the TaskQueue identified by this
173
+ # friendly name.
174
+ # @param [String] evaluate_task_attributes The attributes of the Tasks to read.
175
+ # Returns the Tasks that match the attributes specified in this parameter.
176
+ # @param [String] ordering How to order the returned Task resources. y default,
177
+ # Tasks are sorted by ascending DateCreated. This value is specified as:
178
+ # `Attribute:Order`, where `Attribute` can be either `Priority` or `DateCreated`
179
+ # and `Order` can be either `asc` or `desc`. For example, `Priority:desc` returns
180
+ # Tasks ordered in descending order of their Priority. Multiple sort orders can be
181
+ # specified in a comma-separated list such as `Priority:desc,DateCreated:asc`,
182
+ # which returns the Tasks in descending Priority order and ascending DateCreated
183
+ # Order.
184
+ # @param [Boolean] has_addons Whether to read Tasks with addons. If `true`,
185
+ # returns only Tasks with addons. If `false`, returns only Tasks without addons.
171
186
  # @param [String] page_token PageToken provided by the API
172
187
  # @param [Integer] page_number Page Number, this value is simply for client state
173
188
  # @param [Integer] page_size Number of records to return, defaults to 50
@@ -187,11 +202,9 @@ module Twilio
187
202
  'Page' => page_number,
188
203
  'PageSize' => page_size,
189
204
  })
190
- response = @version.page(
191
- 'GET',
192
- @uri,
193
- params
194
- )
205
+
206
+ response = @version.page('GET', @uri, params: params)
207
+
195
208
  TaskPage.new(@version, response, @solution)
196
209
  end
197
210
 
@@ -209,27 +222,27 @@ module Twilio
209
222
  end
210
223
 
211
224
  ##
212
- # Retrieve a single page of TaskInstance records from the API.
213
- # Request is executed immediately.
214
- # @param [String] timeout The amount of time in seconds the task is allowed to
215
- # live up to a maximum of 2 weeks. Defaults to 24 hours. On timeout,
216
- # `task.canceled` event will fire with description "Task TTL Exceeded".
217
- # @param [String] priority Override priority for the Task. When supplied, the Task
218
- # will take on the given priority unless it matches a Workflow Target with a
219
- # Priority set. When not supplied, the Task will take on the priority of the
220
- # matching Workflow Target.
221
- # @param [String] task_channel When MultiTasking is enabled specify the type of
222
- # the task by passing either TaskChannel Unique Name or Task Channel Sid. Default
223
- # value is "default"
224
- # @param [String] workflow_sid The WorkflowSid for the Workflow that you would
225
- # like to handle routing for this Task. If there is only one Workflow defined for
226
- # the Workspace that you are posting a task to, then this is an optional
227
- # parameter, and that single workflow will be used.
228
- # @param [String] attributes Url-encoded JSON string describing the attributes of
229
- # this task. This data will be passed back to the Workflow's AssignmentCallbackURL
230
- # when the Task is assigned to a Worker. An example task: `{ "task_type": "call",
231
- # "twilio_call_sid": "CAxxx", "customer_ticket_number": "12345" }`
232
- # @return [TaskInstance] Newly created TaskInstance
225
+ # Create the TaskInstance
226
+ # @param [String] timeout The amount of time in seconds the new task can live
227
+ # before being assigned. Can be up to a maximum of 2 weeks (1,209,600 seconds).
228
+ # The default value is 24 hours (86,400 seconds). On timeout, the `task.canceled`
229
+ # event will fire with description `Task TTL Exceeded`.
230
+ # @param [String] priority The priority to assign the new task and override the
231
+ # default. When supplied, the new Task will have this priority unless it matches a
232
+ # Workflow Target with a Priority set. When not supplied, the new Task will have
233
+ # the priority of the matching Workflow Target. Value can be 0 to 2^31^
234
+ # (2,147,483,647).
235
+ # @param [String] task_channel When MultiTasking is enabled, specify the
236
+ # TaskChannel by passing either its `unique_name` or `sid`. Default value is
237
+ # `default`.
238
+ # @param [String] workflow_sid The SID of the Workflow that you would like to
239
+ # handle routing for the new Task. If there is only one Workflow defined for the
240
+ # Workspace that you are posting the new task to, this parameter is optional.
241
+ # @param [String] attributes A URL-encoded JSON string with the attributes of the
242
+ # new task. This value is passed to the Workflow's `assignment_callback_url` when
243
+ # the Task is assigned to a Worker. For example: `{ "task_type": "call",
244
+ # "twilio_call_sid": "CAxxx", "customer_ticket_number": "12345" }`.
245
+ # @return [TaskInstance] Created TaskInstance
233
246
  def create(timeout: :unset, priority: :unset, task_channel: :unset, workflow_sid: :unset, attributes: :unset)
234
247
  data = Twilio::Values.of({
235
248
  'Timeout' => timeout,
@@ -239,11 +252,7 @@ module Twilio
239
252
  'Attributes' => attributes,
240
253
  })
241
254
 
242
- payload = @version.create(
243
- 'POST',
244
- @uri,
245
- data: data
246
- )
255
+ payload = @version.create('POST', @uri, data: data)
247
256
 
248
257
  TaskInstance.new(@version, payload, workspace_sid: @solution[:workspace_sid], )
249
258
  end
@@ -288,8 +297,8 @@ module Twilio
288
297
  ##
289
298
  # Initialize the TaskContext
290
299
  # @param [Version] version Version that contains the resource
291
- # @param [String] workspace_sid The workspace_sid
292
- # @param [String] sid The sid
300
+ # @param [String] workspace_sid The SID of the Workspace with the Task to fetch.
301
+ # @param [String] sid The SID of the Task resource to fetch.
293
302
  # @return [TaskContext] TaskContext
294
303
  def initialize(version, workspace_sid, sid)
295
304
  super(version)
@@ -303,37 +312,38 @@ module Twilio
303
312
  end
304
313
 
305
314
  ##
306
- # Fetch a TaskInstance
315
+ # Fetch the TaskInstance
307
316
  # @return [TaskInstance] Fetched TaskInstance
308
317
  def fetch
309
- params = Twilio::Values.of({})
310
-
311
- payload = @version.fetch(
312
- 'GET',
313
- @uri,
314
- params,
315
- )
318
+ payload = @version.fetch('GET', @uri)
316
319
 
317
320
  TaskInstance.new(@version, payload, workspace_sid: @solution[:workspace_sid], sid: @solution[:sid], )
318
321
  end
319
322
 
320
323
  ##
321
324
  # Update the TaskInstance
322
- # @param [String] attributes The user-defined JSON data describing the custom
323
- # attributes of this task.
324
- # @param [task.Status] assignment_status A 'pending' or 'reserved' Task may be
325
- # canceled by posting AssignmentStatus='canceled'. Post
326
- # AssignmentStatus='wrapping' to move Task to 'wrapup' state and
327
- # AssignmentStatus='completed' to move a Task to 'completed' state.
328
- # @param [String] reason This is only required if the Task is canceled or
329
- # completed. This logs the reason the task was either canceled or completed and
330
- # queues the task for deletion after 5 minutes.
331
- # @param [String] priority Override priority for the Task. When supplied, the Task
332
- # will take on the given priority unless it matches a Workflow Target with a
333
- # Priority set.
334
- # @param [String] task_channel The task_channel
325
+ # @param [String] attributes The JSON string that describes the custom attributes
326
+ # of the task.
327
+ # @param [task.Status] assignment_status The new status of the task. Can be:
328
+ # `canceled`, to cancel a Task that is currently `pending` or `reserved`;
329
+ # `wrapping`, to move the Task to wrapup state; or `completed`, to move a Task to
330
+ # the completed state.
331
+ # @param [String] reason The reason that the Task was canceled or completed. This
332
+ # parameter is required only if the Task is canceled or completed. Setting this
333
+ # value queues the task for deletion and logs the reason.
334
+ # @param [String] priority The Task's new priority value. When supplied, the Task
335
+ # takes on the specified priority unless it matches a Workflow Target with a
336
+ # Priority set. Value can be 0 to 2^31^ (2,147,483,647).
337
+ # @param [String] task_channel When MultiTasking is enabled, specify the
338
+ # TaskChannel with the task to update. Can be the TaskChannel's SID or its
339
+ # `unique_name`, such as `voice`, `sms`, or `default`.
340
+ # @param [String] if_match If provided, applies this mutation if (and only if) the
341
+ # {ETag}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/ETag] header of
342
+ # the Task matches the provided value. This matches the semantics of (and is
343
+ # implemented with) the HTTP {If-Match
344
+ # header}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/If-Match].
335
345
  # @return [TaskInstance] Updated TaskInstance
336
- def update(attributes: :unset, assignment_status: :unset, reason: :unset, priority: :unset, task_channel: :unset)
346
+ def update(attributes: :unset, assignment_status: :unset, reason: :unset, priority: :unset, task_channel: :unset, if_match: :unset)
337
347
  data = Twilio::Values.of({
338
348
  'Attributes' => attributes,
339
349
  'AssignmentStatus' => assignment_status,
@@ -341,21 +351,25 @@ module Twilio
341
351
  'Priority' => priority,
342
352
  'TaskChannel' => task_channel,
343
353
  })
354
+ headers = Twilio::Values.of({'If-Match' => if_match, })
344
355
 
345
- payload = @version.update(
346
- 'POST',
347
- @uri,
348
- data: data,
349
- )
356
+ payload = @version.update('POST', @uri, data: data, headers: headers)
350
357
 
351
358
  TaskInstance.new(@version, payload, workspace_sid: @solution[:workspace_sid], sid: @solution[:sid], )
352
359
  end
353
360
 
354
361
  ##
355
- # Deletes the TaskInstance
356
- # @return [Boolean] true if delete succeeds, true otherwise
357
- def delete
358
- @version.delete('delete', @uri)
362
+ # Delete the TaskInstance
363
+ # @param [String] if_match If provided, deletes this Task if (and only if) the
364
+ # {ETag}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/ETag] header of
365
+ # the Task matches the provided value. This matches the semantics of (and is
366
+ # implemented with) the HTTP {If-Match
367
+ # header}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/If-Match].
368
+ # @return [Boolean] true if delete succeeds, false otherwise
369
+ def delete(if_match: :unset)
370
+ headers = Twilio::Values.of({'If-Match' => if_match, })
371
+
372
+ @version.delete('DELETE', @uri, headers: headers)
359
373
  end
360
374
 
361
375
  ##
@@ -386,6 +400,13 @@ module Twilio
386
400
  context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
387
401
  "#<Twilio.Taskrouter.V1.TaskContext #{context}>"
388
402
  end
403
+
404
+ ##
405
+ # Provide a detailed, user friendly representation
406
+ def inspect
407
+ context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
408
+ "#<Twilio.Taskrouter.V1.TaskContext #{context}>"
409
+ end
389
410
  end
390
411
 
391
412
  class TaskInstance < InstanceResource
@@ -393,8 +414,8 @@ module Twilio
393
414
  # Initialize the TaskInstance
394
415
  # @param [Version] version Version that contains the resource
395
416
  # @param [Hash] payload payload that contains response from Twilio
396
- # @param [String] workspace_sid The ID of the Workspace that holds this Task
397
- # @param [String] sid The sid
417
+ # @param [String] workspace_sid The SID of the Workspace that contains the Task.
418
+ # @param [String] sid The SID of the Task resource to fetch.
398
419
  # @return [TaskInstance] TaskInstance
399
420
  def initialize(version, payload, workspace_sid: nil, sid: nil)
400
421
  super(version)
@@ -408,6 +429,7 @@ module Twilio
408
429
  'addons' => payload['addons'],
409
430
  'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
410
431
  'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
432
+ 'task_queue_entered_date' => Twilio.deserialize_iso8601_datetime(payload['task_queue_entered_date']),
411
433
  'priority' => payload['priority'].to_i,
412
434
  'reason' => payload['reason'],
413
435
  'sid' => payload['sid'],
@@ -440,127 +462,133 @@ module Twilio
440
462
  end
441
463
 
442
464
  ##
443
- # @return [String] The ID of the account that owns this Task
465
+ # @return [String] The SID of the Account that created the resource
444
466
  def account_sid
445
467
  @properties['account_sid']
446
468
  end
447
469
 
448
470
  ##
449
- # @return [String] The number of seconds since this task was created.
471
+ # @return [String] The number of seconds since the Task was created
450
472
  def age
451
473
  @properties['age']
452
474
  end
453
475
 
454
476
  ##
455
- # @return [task.Status] Returns the list of all Tasks in the workspace with the specified AssignmentStatus.
477
+ # @return [task.Status] The current status of the Task's assignment
456
478
  def assignment_status
457
479
  @properties['assignment_status']
458
480
  end
459
481
 
460
482
  ##
461
- # @return [String] The user-defined JSON string describing the custom attributes of this work.
483
+ # @return [String] The JSON string with custom attributes of the work
462
484
  def attributes
463
485
  @properties['attributes']
464
486
  end
465
487
 
466
488
  ##
467
- # @return [String] The addon data for all installed addons is returned with this attribute
489
+ # @return [String] An object that contains the addon data for all installed addons
468
490
  def addons
469
491
  @properties['addons']
470
492
  end
471
493
 
472
494
  ##
473
- # @return [Time] Date this task was created, given as ISO 8601 format.
495
+ # @return [Time] The ISO 8601 date and time in GMT when the resource was created
474
496
  def date_created
475
497
  @properties['date_created']
476
498
  end
477
499
 
478
500
  ##
479
- # @return [Time] Date this task was updated, given as ISO 8601 format.
501
+ # @return [Time] The ISO 8601 date and time in GMT when the resource was last updated
480
502
  def date_updated
481
503
  @properties['date_updated']
482
504
  end
483
505
 
484
506
  ##
485
- # @return [String] Retrieve the list of all Tasks in the workspace with the specified priority.
507
+ # @return [Time] The ISO 8601 date and time in GMT when the Task entered the TaskQueue.
508
+ def task_queue_entered_date
509
+ @properties['task_queue_entered_date']
510
+ end
511
+
512
+ ##
513
+ # @return [String] Retrieve the list of all Tasks in the Workspace with the specified priority
486
514
  def priority
487
515
  @properties['priority']
488
516
  end
489
517
 
490
518
  ##
491
- # @return [String] The reason the task was canceled or completed
519
+ # @return [String] The reason the Task was canceled or completed
492
520
  def reason
493
521
  @properties['reason']
494
522
  end
495
523
 
496
524
  ##
497
- # @return [String] The unique ID of the Task
525
+ # @return [String] The unique string that identifies the resource
498
526
  def sid
499
527
  @properties['sid']
500
528
  end
501
529
 
502
530
  ##
503
- # @return [String] Returns the list of Tasks that are currently waiting in the TaskQueue identified by the Sid specified.
531
+ # @return [String] The SID of the TaskQueue
504
532
  def task_queue_sid
505
533
  @properties['task_queue_sid']
506
534
  end
507
535
 
508
536
  ##
509
- # @return [String] The task_queue_friendly_name
537
+ # @return [String] The friendly name of the TaskQueue
510
538
  def task_queue_friendly_name
511
539
  @properties['task_queue_friendly_name']
512
540
  end
513
541
 
514
542
  ##
515
- # @return [String] The ID of the Task Channel
543
+ # @return [String] The SID of the TaskChannel
516
544
  def task_channel_sid
517
545
  @properties['task_channel_sid']
518
546
  end
519
547
 
520
548
  ##
521
- # @return [String] The unique name of the Task Channel
549
+ # @return [String] The unique name of the TaskChannel
522
550
  def task_channel_unique_name
523
551
  @properties['task_channel_unique_name']
524
552
  end
525
553
 
526
554
  ##
527
- # @return [String] The amount of time in seconds the task is allowed to live
555
+ # @return [String] The amount of time in seconds that the Task can live before being assigned
528
556
  def timeout
529
557
  @properties['timeout']
530
558
  end
531
559
 
532
560
  ##
533
- # @return [String] Returns the list of Tasks that are being controlled by the Workflow with the specified Sid value.
561
+ # @return [String] The SID of the Workflow that is controlling the Task
534
562
  def workflow_sid
535
563
  @properties['workflow_sid']
536
564
  end
537
565
 
538
566
  ##
539
- # @return [String] The workflow_friendly_name
567
+ # @return [String] The friendly name of the Workflow that is controlling the Task
540
568
  def workflow_friendly_name
541
569
  @properties['workflow_friendly_name']
542
570
  end
543
571
 
544
572
  ##
545
- # @return [String] The ID of the Workspace that holds this Task
573
+ # @return [String] The SID of the Workspace that contains the Task
546
574
  def workspace_sid
547
575
  @properties['workspace_sid']
548
576
  end
549
577
 
550
578
  ##
551
- # @return [String] The url
579
+ # @return [String] The absolute URL of the Task resource
552
580
  def url
553
581
  @properties['url']
554
582
  end
555
583
 
556
584
  ##
557
- # @return [String] The links
585
+ # @return [String] The URLs of related resources
558
586
  def links
559
587
  @properties['links']
560
588
  end
561
589
 
562
590
  ##
563
- # Fetch a TaskInstance
591
+ # Fetch the TaskInstance
564
592
  # @return [TaskInstance] Fetched TaskInstance
565
593
  def fetch
566
594
  context.fetch
@@ -568,35 +596,48 @@ module Twilio
568
596
 
569
597
  ##
570
598
  # Update the TaskInstance
571
- # @param [String] attributes The user-defined JSON data describing the custom
572
- # attributes of this task.
573
- # @param [task.Status] assignment_status A 'pending' or 'reserved' Task may be
574
- # canceled by posting AssignmentStatus='canceled'. Post
575
- # AssignmentStatus='wrapping' to move Task to 'wrapup' state and
576
- # AssignmentStatus='completed' to move a Task to 'completed' state.
577
- # @param [String] reason This is only required if the Task is canceled or
578
- # completed. This logs the reason the task was either canceled or completed and
579
- # queues the task for deletion after 5 minutes.
580
- # @param [String] priority Override priority for the Task. When supplied, the Task
581
- # will take on the given priority unless it matches a Workflow Target with a
582
- # Priority set.
583
- # @param [String] task_channel The task_channel
599
+ # @param [String] attributes The JSON string that describes the custom attributes
600
+ # of the task.
601
+ # @param [task.Status] assignment_status The new status of the task. Can be:
602
+ # `canceled`, to cancel a Task that is currently `pending` or `reserved`;
603
+ # `wrapping`, to move the Task to wrapup state; or `completed`, to move a Task to
604
+ # the completed state.
605
+ # @param [String] reason The reason that the Task was canceled or completed. This
606
+ # parameter is required only if the Task is canceled or completed. Setting this
607
+ # value queues the task for deletion and logs the reason.
608
+ # @param [String] priority The Task's new priority value. When supplied, the Task
609
+ # takes on the specified priority unless it matches a Workflow Target with a
610
+ # Priority set. Value can be 0 to 2^31^ (2,147,483,647).
611
+ # @param [String] task_channel When MultiTasking is enabled, specify the
612
+ # TaskChannel with the task to update. Can be the TaskChannel's SID or its
613
+ # `unique_name`, such as `voice`, `sms`, or `default`.
614
+ # @param [String] if_match If provided, applies this mutation if (and only if) the
615
+ # {ETag}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/ETag] header of
616
+ # the Task matches the provided value. This matches the semantics of (and is
617
+ # implemented with) the HTTP {If-Match
618
+ # header}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/If-Match].
584
619
  # @return [TaskInstance] Updated TaskInstance
585
- def update(attributes: :unset, assignment_status: :unset, reason: :unset, priority: :unset, task_channel: :unset)
620
+ def update(attributes: :unset, assignment_status: :unset, reason: :unset, priority: :unset, task_channel: :unset, if_match: :unset)
586
621
  context.update(
587
622
  attributes: attributes,
588
623
  assignment_status: assignment_status,
589
624
  reason: reason,
590
625
  priority: priority,
591
626
  task_channel: task_channel,
627
+ if_match: if_match,
592
628
  )
593
629
  end
594
630
 
595
631
  ##
596
- # Deletes the TaskInstance
597
- # @return [Boolean] true if delete succeeds, true otherwise
598
- def delete
599
- context.delete
632
+ # Delete the TaskInstance
633
+ # @param [String] if_match If provided, deletes this Task if (and only if) the
634
+ # {ETag}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/ETag] header of
635
+ # the Task matches the provided value. This matches the semantics of (and is
636
+ # implemented with) the HTTP {If-Match
637
+ # header}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/If-Match].
638
+ # @return [Boolean] true if delete succeeds, false otherwise
639
+ def delete(if_match: :unset)
640
+ context.delete(if_match: if_match, )
600
641
  end
601
642
 
602
643
  ##