twilio-ruby 5.10.7 → 7.6.2

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 (1049) hide show
  1. checksums.yaml +4 -4
  2. data/.dockerignore +1 -0
  3. data/.github/ISSUE_TEMPLATE/bug_report.yml +69 -0
  4. data/.github/workflows/pr-lint.yml +21 -0
  5. data/.github/workflows/test-and-deploy.yml +147 -0
  6. data/.gitignore +11 -1
  7. data/.rubocop.yml +23 -6
  8. data/.rubocop_todo.yml +147 -73
  9. data/CHANGES.md +3392 -0
  10. data/CODE_OF_CONDUCT.md +73 -0
  11. data/CONTRIBUTING.md +14 -10
  12. data/Dockerfile +4 -3
  13. data/Gemfile +5 -8
  14. data/ISSUE_TEMPLATE.md +17 -13
  15. data/{LICENSE.md → LICENSE} +2 -2
  16. data/Makefile +22 -22
  17. data/PULL_REQUEST_TEMPLATE.md +30 -3
  18. data/README.md +219 -57
  19. data/Rakefile +0 -54
  20. data/UPGRADE.md +21 -0
  21. data/VERSIONS.md +9 -10
  22. data/advanced-examples/custom-http-client.md +170 -0
  23. data/cluster/cluster_oauth_spec.rb +19 -0
  24. data/cluster/cluster_orgs_spec.rb +40 -0
  25. data/cluster/cluster_spec.rb +75 -0
  26. data/examples/examples.rb +1 -1
  27. data/examples/public_oauth.rb +13 -0
  28. data/githooks/pre-commit +0 -0
  29. data/lib/rack/twilio_webhook_authentication.rb +25 -1
  30. data/lib/twilio-ruby/auth_strategy/auth_strategy.rb +19 -0
  31. data/lib/twilio-ruby/auth_strategy/no_auth_strategy.rb +17 -0
  32. data/lib/twilio-ruby/auth_strategy/token_auth_strategy.rb +39 -0
  33. data/lib/twilio-ruby/base/client_base.rb +131 -0
  34. data/lib/twilio-ruby/credential/auth_type.rb +17 -0
  35. data/lib/twilio-ruby/credential/client_credential_provider.rb +28 -0
  36. data/lib/twilio-ruby/credential/credential_provider.rb +11 -0
  37. data/lib/twilio-ruby/credential/orgs_credential_provider.rb +30 -0
  38. data/lib/twilio-ruby/framework/request.rb +8 -1
  39. data/lib/twilio-ruby/framework/{domain.rb → rest/domain.rb} +1 -2
  40. data/lib/twilio-ruby/framework/{error.rb → rest/error.rb} +3 -15
  41. data/lib/twilio-ruby/framework/{page.rb → rest/page.rb} +1 -0
  42. data/lib/twilio-ruby/framework/{version.rb → rest/version.rb} +7 -11
  43. data/lib/twilio-ruby/http/client_token_manager.rb +28 -0
  44. data/lib/twilio-ruby/http/http_client.rb +53 -17
  45. data/lib/twilio-ruby/http/org_token_manager.rb +28 -0
  46. data/lib/twilio-ruby/http.rb +5 -0
  47. data/lib/twilio-ruby/jwt/access_token.rb +20 -61
  48. data/lib/twilio-ruby/jwt/jwt.rb +6 -0
  49. data/lib/twilio-ruby/jwt/task_router.rb +2 -2
  50. data/lib/twilio-ruby/rest/accounts/v1/auth_token_promotion.rb +213 -0
  51. data/lib/twilio-ruby/rest/accounts/v1/bulk_consents.rb +137 -0
  52. data/lib/twilio-ruby/rest/accounts/v1/bulk_contacts.rb +137 -0
  53. data/lib/twilio-ruby/rest/accounts/v1/credential/aws.rb +398 -334
  54. data/lib/twilio-ruby/rest/accounts/v1/credential/public_key.rb +398 -341
  55. data/lib/twilio-ruby/rest/accounts/v1/credential.rb +123 -114
  56. data/lib/twilio-ruby/rest/accounts/v1/safelist.rb +186 -0
  57. data/lib/twilio-ruby/rest/accounts/v1/secondary_auth_token.rb +233 -0
  58. data/lib/twilio-ruby/rest/accounts/v1.rb +64 -29
  59. data/lib/twilio-ruby/rest/accounts.rb +10 -28
  60. data/lib/twilio-ruby/rest/accounts_base.rb +38 -0
  61. data/lib/twilio-ruby/rest/api/v2010/account/address/dependent_phone_number.rb +375 -364
  62. data/lib/twilio-ruby/rest/api/v2010/account/address.rb +584 -521
  63. data/lib/twilio-ruby/rest/api/v2010/account/application.rb +642 -606
  64. data/lib/twilio-ruby/rest/api/v2010/account/authorized_connect_app.rb +324 -318
  65. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/local.rb +398 -0
  66. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/machine_to_machine.rb +398 -0
  67. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/mobile.rb +398 -0
  68. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/national.rb +398 -0
  69. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/shared_cost.rb +398 -0
  70. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/toll_free.rb +398 -0
  71. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/voip.rb +398 -0
  72. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country.rb +442 -0
  73. data/lib/twilio-ruby/rest/api/v2010/account/balance.rb +150 -0
  74. data/lib/twilio-ruby/rest/api/v2010/account/call/event.rb +213 -0
  75. data/lib/twilio-ruby/rest/api/v2010/account/call/notification.rb +411 -413
  76. data/lib/twilio-ruby/rest/api/v2010/account/call/payment.rb +335 -0
  77. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +521 -485
  78. data/lib/twilio-ruby/rest/api/v2010/account/call/siprec.rb +885 -0
  79. data/lib/twilio-ruby/rest/api/v2010/account/call/stream.rb +885 -0
  80. data/lib/twilio-ruby/rest/api/v2010/account/call/transcription.rb +318 -0
  81. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message.rb +170 -0
  82. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message_subscription.rb +250 -0
  83. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +973 -827
  84. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +686 -576
  85. data/lib/twilio-ruby/rest/api/v2010/account/conference/recording.rb +472 -450
  86. data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +506 -477
  87. data/lib/twilio-ruby/rest/api/v2010/account/connect_app.rb +447 -399
  88. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension.rb +331 -346
  89. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on.rb +417 -420
  90. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +547 -503
  91. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +547 -503
  92. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +547 -503
  93. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +868 -865
  94. data/lib/twilio-ruby/rest/api/v2010/account/key.rb +356 -304
  95. data/lib/twilio-ruby/rest/api/v2010/account/message/feedback.rb +175 -162
  96. data/lib/twilio-ruby/rest/api/v2010/account/message/media.rb +355 -347
  97. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +645 -601
  98. data/lib/twilio-ruby/rest/api/v2010/account/new_key.rb +165 -143
  99. data/lib/twilio-ruby/rest/api/v2010/account/new_signing_key.rb +165 -143
  100. data/lib/twilio-ruby/rest/api/v2010/account/notification.rb +411 -408
  101. data/lib/twilio-ruby/rest/api/v2010/account/outgoing_caller_id.rb +389 -364
  102. data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +357 -324
  103. data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +453 -390
  104. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload/data.rb +204 -0
  105. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload.rb +386 -366
  106. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result.rb +383 -380
  107. data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +379 -360
  108. data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +522 -478
  109. data/lib/twilio-ruby/rest/api/v2010/account/short_code.rb +434 -410
  110. data/lib/twilio-ruby/rest/api/v2010/account/signing_key.rb +356 -312
  111. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list/credential.rb +402 -375
  112. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list.rb +426 -383
  113. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls/auth_calls_credential_list_mapping.rb +366 -0
  114. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls/auth_calls_ip_access_control_list_mapping.rb +366 -0
  115. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls.rb +141 -0
  116. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_registrations/auth_registrations_credential_list_mapping.rb +366 -0
  117. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_registrations.rb +127 -0
  118. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types.rb +127 -0
  119. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb +360 -340
  120. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/ip_access_control_list_mapping.rb +360 -340
  121. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +677 -539
  122. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +439 -410
  123. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb +426 -383
  124. data/lib/twilio-ruby/rest/api/v2010/account/sip.rb +143 -150
  125. data/lib/twilio-ruby/rest/api/v2010/account/token.rb +179 -158
  126. data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +379 -348
  127. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +319 -320
  128. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +319 -320
  129. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +319 -323
  130. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +319 -320
  131. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +319 -320
  132. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +319 -320
  133. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +319 -320
  134. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +319 -320
  135. data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +386 -397
  136. data/lib/twilio-ruby/rest/api/v2010/account/usage/trigger.rb +512 -492
  137. data/lib/twilio-ruby/rest/api/v2010/account/usage.rb +114 -104
  138. data/lib/twilio-ruby/rest/api/v2010/account/validation_request.rb +180 -167
  139. data/lib/twilio-ruby/rest/api/v2010/account.rb +1002 -934
  140. data/lib/twilio-ruby/rest/api/v2010.rb +127 -144
  141. data/lib/twilio-ruby/rest/api.rb +62 -60
  142. data/lib/twilio-ruby/rest/api_base.rb +38 -0
  143. data/lib/twilio-ruby/rest/assistants/v1/assistant/assistants_knowledge.rb +371 -0
  144. data/lib/twilio-ruby/rest/assistants/v1/assistant/assistants_tool.rb +371 -0
  145. data/lib/twilio-ruby/rest/assistants/v1/assistant/feedback.rb +311 -0
  146. data/lib/twilio-ruby/rest/assistants/v1/assistant/message.rb +206 -0
  147. data/lib/twilio-ruby/rest/assistants/v1/assistant.rb +687 -0
  148. data/lib/twilio-ruby/rest/assistants/v1/knowledge/chunk.rb +232 -0
  149. data/lib/twilio-ruby/rest/assistants/v1/knowledge/knowledge_status.rb +213 -0
  150. data/lib/twilio-ruby/rest/assistants/v1/knowledge.rb +629 -0
  151. data/lib/twilio-ruby/rest/assistants/v1/policy.rb +267 -0
  152. data/lib/twilio-ruby/rest/assistants/v1/session/message.rb +267 -0
  153. data/lib/twilio-ruby/rest/assistants/v1/session.rb +335 -0
  154. data/lib/twilio-ruby/rest/assistants/v1/tool.rb +605 -0
  155. data/lib/twilio-ruby/rest/assistants/v1.rb +100 -0
  156. data/lib/twilio-ruby/rest/assistants.rb +6 -0
  157. data/lib/twilio-ruby/rest/assistants_base.rb +38 -0
  158. data/lib/twilio-ruby/rest/bulkexports/v1/export/day.rb +316 -0
  159. data/lib/twilio-ruby/rest/bulkexports/v1/export/export_custom_job.rb +315 -0
  160. data/lib/twilio-ruby/rest/bulkexports/v1/export/job.rb +289 -0
  161. data/lib/twilio-ruby/rest/bulkexports/v1/export.rb +261 -0
  162. data/lib/twilio-ruby/rest/bulkexports/v1/export_configuration.rb +266 -0
  163. data/lib/twilio-ruby/rest/bulkexports/v1.rb +64 -0
  164. data/lib/twilio-ruby/rest/bulkexports.rb +25 -0
  165. data/lib/twilio-ruby/rest/bulkexports_base.rb +38 -0
  166. data/lib/twilio-ruby/rest/chat/v1/credential.rb +446 -393
  167. data/lib/twilio-ruby/rest/chat/v1/service/channel/invite.rb +395 -386
  168. data/lib/twilio-ruby/rest/chat/v1/service/channel/member.rb +449 -444
  169. data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +465 -430
  170. data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +561 -508
  171. data/lib/twilio-ruby/rest/chat/v1/service/role.rb +423 -368
  172. data/lib/twilio-ruby/rest/chat/v1/service/user/user_channel.rb +249 -238
  173. data/lib/twilio-ruby/rest/chat/v1/service/user.rb +492 -448
  174. data/lib/twilio-ruby/rest/chat/v1/service.rb +888 -914
  175. data/lib/twilio-ruby/rest/chat/v1.rb +58 -52
  176. data/lib/twilio-ruby/rest/chat/v2/credential.rb +446 -409
  177. data/lib/twilio-ruby/rest/chat/v2/service/binding.rb +386 -361
  178. data/lib/twilio-ruby/rest/chat/v2/service/channel/invite.rb +395 -389
  179. data/lib/twilio-ruby/rest/chat/v2/service/channel/member.rb +510 -492
  180. data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +537 -514
  181. data/lib/twilio-ruby/rest/chat/v2/service/channel/webhook.rb +467 -422
  182. data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +630 -576
  183. data/lib/twilio-ruby/rest/chat/v2/service/role.rb +423 -365
  184. data/lib/twilio-ruby/rest/chat/v2/service/user/user_binding.rb +379 -377
  185. data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +428 -240
  186. data/lib/twilio-ruby/rest/chat/v2/service/user.rb +534 -477
  187. data/lib/twilio-ruby/rest/chat/v2/service.rb +791 -740
  188. data/lib/twilio-ruby/rest/chat/v2.rb +58 -52
  189. data/lib/twilio-ruby/rest/chat/v3/channel.rb +303 -0
  190. data/lib/twilio-ruby/rest/chat/v3.rb +71 -0
  191. data/lib/twilio-ruby/rest/chat.rb +12 -40
  192. data/lib/twilio-ruby/rest/chat_base.rb +48 -0
  193. data/lib/twilio-ruby/rest/client.rb +344 -400
  194. data/lib/twilio-ruby/rest/content/v1/content/approval_create.rb +190 -0
  195. data/lib/twilio-ruby/rest/content/v1/content/approval_fetch.rb +213 -0
  196. data/lib/twilio-ruby/rest/content/v1/content.rb +974 -0
  197. data/lib/twilio-ruby/rest/content/v1/content_and_approvals.rb +255 -0
  198. data/lib/twilio-ruby/rest/content/v1/legacy_content.rb +269 -0
  199. data/lib/twilio-ruby/rest/content/v1.rb +61 -0
  200. data/lib/twilio-ruby/rest/content/v2/content.rb +319 -0
  201. data/lib/twilio-ruby/rest/content/v2/content_and_approvals.rb +312 -0
  202. data/lib/twilio-ruby/rest/content/v2.rb +46 -0
  203. data/lib/twilio-ruby/rest/content.rb +15 -0
  204. data/lib/twilio-ruby/rest/content_base.rb +43 -0
  205. data/lib/twilio-ruby/rest/conversations/v1/address_configuration.rb +508 -0
  206. data/lib/twilio-ruby/rest/conversations/v1/configuration/webhook.rb +294 -0
  207. data/lib/twilio-ruby/rest/conversations/v1/configuration.rb +300 -0
  208. data/lib/twilio-ruby/rest/conversations/v1/conversation/message/delivery_receipt.rb +355 -0
  209. data/lib/twilio-ruby/rest/conversations/v1/conversation/message.rb +567 -0
  210. data/lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb +528 -0
  211. data/lib/twilio-ruby/rest/conversations/v1/conversation/webhook.rb +458 -0
  212. data/lib/twilio-ruby/rest/conversations/v1/conversation.rb +653 -0
  213. data/lib/twilio-ruby/rest/conversations/v1/conversation_with_participants.rb +263 -0
  214. data/lib/twilio-ruby/rest/conversations/v1/credential.rb +461 -0
  215. data/lib/twilio-ruby/rest/conversations/v1/participant_conversation.rb +316 -0
  216. data/lib/twilio-ruby/rest/conversations/v1/role.rb +420 -0
  217. data/lib/twilio-ruby/rest/conversations/v1/service/binding.rb +385 -0
  218. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb +347 -0
  219. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb +293 -0
  220. data/lib/twilio-ruby/rest/conversations/v1/service/configuration.rb +327 -0
  221. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message/delivery_receipt.rb +366 -0
  222. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message.rb +580 -0
  223. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/participant.rb +541 -0
  224. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/webhook.rb +471 -0
  225. data/lib/twilio-ruby/rest/conversations/v1/service/conversation.rb +662 -0
  226. data/lib/twilio-ruby/rest/conversations/v1/service/conversation_with_participants.rb +269 -0
  227. data/lib/twilio-ruby/rest/conversations/v1/service/participant_conversation.rb +321 -0
  228. data/lib/twilio-ruby/rest/conversations/v1/service/role.rb +429 -0
  229. data/lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb +477 -0
  230. data/lib/twilio-ruby/rest/conversations/v1/service/user.rb +514 -0
  231. data/lib/twilio-ruby/rest/conversations/v1/service.rb +525 -0
  232. data/lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb +472 -0
  233. data/lib/twilio-ruby/rest/conversations/v1/user.rb +505 -0
  234. data/lib/twilio-ruby/rest/conversations/v1.rb +142 -0
  235. data/lib/twilio-ruby/rest/conversations.rb +79 -0
  236. data/lib/twilio-ruby/rest/conversations_base.rb +38 -0
  237. data/lib/twilio-ruby/rest/events/v1/event_type.rb +336 -0
  238. data/lib/twilio-ruby/rest/events/v1/schema/schema_version.rb +309 -0
  239. data/lib/twilio-ruby/rest/events/v1/schema.rb +242 -0
  240. data/lib/twilio-ruby/rest/events/v1/sink/sink_test.rb +136 -0
  241. data/lib/twilio-ruby/rest/events/v1/sink/sink_validate.rb +143 -0
  242. data/lib/twilio-ruby/rest/events/v1/sink.rb +470 -0
  243. data/lib/twilio-ruby/rest/events/v1/subscription/subscribed_event.rb +398 -0
  244. data/lib/twilio-ruby/rest/events/v1/subscription.rb +452 -0
  245. data/lib/twilio-ruby/rest/events/v1.rb +94 -0
  246. data/lib/twilio-ruby/rest/events.rb +43 -0
  247. data/lib/twilio-ruby/rest/events_base.rb +38 -0
  248. data/lib/twilio-ruby/rest/flex_api/v1/assessments.rb +460 -0
  249. data/lib/twilio-ruby/rest/flex_api/v1/channel.rb +395 -0
  250. data/lib/twilio-ruby/rest/flex_api/v1/configuration.rb +563 -0
  251. data/lib/twilio-ruby/rest/flex_api/v1/flex_flow.rb +599 -0
  252. data/lib/twilio-ruby/rest/flex_api/v1/insights_assessments_comment.rb +336 -0
  253. data/lib/twilio-ruby/rest/flex_api/v1/insights_conversations.rb +232 -0
  254. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires.rb +462 -0
  255. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_category.rb +373 -0
  256. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_question.rb +458 -0
  257. data/lib/twilio-ruby/rest/flex_api/v1/insights_segments.rb +365 -0
  258. data/lib/twilio-ruby/rest/flex_api/v1/insights_session.rb +221 -0
  259. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_answer_sets.rb +161 -0
  260. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_comment.rb +147 -0
  261. data/lib/twilio-ruby/rest/flex_api/v1/insights_user_roles.rb +200 -0
  262. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_invite.rb +261 -0
  263. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_participant.rb +365 -0
  264. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_transfer.rb +352 -0
  265. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb +449 -0
  266. data/lib/twilio-ruby/rest/flex_api/v1/interaction.rb +329 -0
  267. data/lib/twilio-ruby/rest/flex_api/v1/plugin/plugin_versions.rb +408 -0
  268. data/lib/twilio-ruby/rest/flex_api/v1/plugin.rb +461 -0
  269. data/lib/twilio-ruby/rest/flex_api/v1/plugin_archive.rb +251 -0
  270. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration/configured_plugin.rb +400 -0
  271. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration.rb +397 -0
  272. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration_archive.rb +237 -0
  273. data/lib/twilio-ruby/rest/flex_api/v1/plugin_release.rb +343 -0
  274. data/lib/twilio-ruby/rest/flex_api/v1/plugin_version_archive.rb +260 -0
  275. data/lib/twilio-ruby/rest/flex_api/v1/provisioning_status.rb +192 -0
  276. data/lib/twilio-ruby/rest/flex_api/v1/web_channel.rb +414 -0
  277. data/lib/twilio-ruby/rest/flex_api/v1.rb +320 -0
  278. data/lib/twilio-ruby/rest/flex_api/v2/flex_user.rb +339 -0
  279. data/lib/twilio-ruby/rest/flex_api/v2/web_channels.rb +155 -0
  280. data/lib/twilio-ruby/rest/flex_api/v2.rb +77 -0
  281. data/lib/twilio-ruby/rest/flex_api.rb +73 -0
  282. data/lib/twilio-ruby/rest/flex_api_base.rb +43 -0
  283. data/lib/twilio-ruby/rest/frontline_api/v1/user.rb +286 -0
  284. data/lib/twilio-ruby/rest/frontline_api/v1.rb +49 -0
  285. data/lib/twilio-ruby/rest/frontline_api.rb +15 -0
  286. data/lib/twilio-ruby/rest/frontline_api_base.rb +38 -0
  287. data/lib/twilio-ruby/rest/iam/v1/api_key.rb +280 -0
  288. data/lib/twilio-ruby/rest/iam/v1/get_api_keys.rb +226 -0
  289. data/lib/twilio-ruby/rest/iam/v1/new_api_key.rb +181 -0
  290. data/lib/twilio-ruby/rest/iam/v1/token.rb +186 -0
  291. data/lib/twilio-ruby/rest/iam/v1.rb +67 -0
  292. data/lib/twilio-ruby/rest/iam.rb +6 -0
  293. data/lib/twilio-ruby/rest/iam_base.rb +38 -0
  294. data/lib/twilio-ruby/rest/insights/v1/call/annotation.rb +330 -0
  295. data/lib/twilio-ruby/rest/insights/v1/call/call_summary.rb +357 -0
  296. data/lib/twilio-ruby/rest/insights/v1/call/event.rb +280 -0
  297. data/lib/twilio-ruby/rest/insights/v1/call/metric.rb +272 -0
  298. data/lib/twilio-ruby/rest/insights/v1/call.rb +275 -0
  299. data/lib/twilio-ruby/rest/insights/v1/call_summaries.rb +545 -0
  300. data/lib/twilio-ruby/rest/insights/v1/conference/conference_participant.rb +498 -0
  301. data/lib/twilio-ruby/rest/insights/v1/conference.rb +515 -0
  302. data/lib/twilio-ruby/rest/insights/v1/room/participant.rb +393 -0
  303. data/lib/twilio-ruby/rest/insights/v1/room.rb +508 -0
  304. data/lib/twilio-ruby/rest/insights/v1/setting.rb +267 -0
  305. data/lib/twilio-ruby/rest/insights/v1.rb +91 -0
  306. data/lib/twilio-ruby/rest/insights.rb +46 -0
  307. data/lib/twilio-ruby/rest/insights_base.rb +38 -0
  308. data/lib/twilio-ruby/rest/intelligence/v2/custom_operator.rb +464 -0
  309. data/lib/twilio-ruby/rest/intelligence/v2/operator.rb +363 -0
  310. data/lib/twilio-ruby/rest/intelligence/v2/operator_attachment.rb +223 -0
  311. data/lib/twilio-ruby/rest/intelligence/v2/operator_attachments.rb +201 -0
  312. data/lib/twilio-ruby/rest/intelligence/v2/operator_type.rb +365 -0
  313. data/lib/twilio-ruby/rest/intelligence/v2/prebuilt_operator.rb +363 -0
  314. data/lib/twilio-ruby/rest/intelligence/v2/service.rb +534 -0
  315. data/lib/twilio-ruby/rest/intelligence/v2/transcript/media.rb +231 -0
  316. data/lib/twilio-ruby/rest/intelligence/v2/transcript/operator_result.rb +403 -0
  317. data/lib/twilio-ruby/rest/intelligence/v2/transcript/sentence.rb +265 -0
  318. data/lib/twilio-ruby/rest/intelligence/v2/transcript.rb +538 -0
  319. data/lib/twilio-ruby/rest/intelligence/v2.rb +176 -0
  320. data/lib/twilio-ruby/rest/intelligence.rb +6 -0
  321. data/lib/twilio-ruby/rest/intelligence_base.rb +38 -0
  322. data/lib/twilio-ruby/rest/ip_messaging/v1/credential.rb +446 -393
  323. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/invite.rb +395 -386
  324. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb +449 -444
  325. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +465 -430
  326. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +561 -508
  327. data/lib/twilio-ruby/rest/ip_messaging/v1/service/role.rb +423 -368
  328. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user/user_channel.rb +249 -238
  329. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +492 -448
  330. data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +888 -914
  331. data/lib/twilio-ruby/rest/ip_messaging/v1.rb +58 -52
  332. data/lib/twilio-ruby/rest/ip_messaging/v2/credential.rb +446 -409
  333. data/lib/twilio-ruby/rest/ip_messaging/v2/service/binding.rb +386 -361
  334. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/invite.rb +395 -389
  335. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb +510 -492
  336. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +537 -514
  337. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/webhook.rb +467 -422
  338. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +630 -576
  339. data/lib/twilio-ruby/rest/ip_messaging/v2/service/role.rb +423 -365
  340. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_binding.rb +379 -377
  341. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_channel.rb +420 -240
  342. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +534 -477
  343. data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +791 -740
  344. data/lib/twilio-ruby/rest/ip_messaging/v2.rb +58 -52
  345. data/lib/twilio-ruby/rest/ip_messaging.rb +9 -49
  346. data/lib/twilio-ruby/rest/ip_messaging_base.rb +43 -0
  347. data/lib/twilio-ruby/rest/knowledge/v1/knowledge/chunk.rb +232 -0
  348. data/lib/twilio-ruby/rest/knowledge/v1/knowledge/knowledge_status.rb +213 -0
  349. data/lib/twilio-ruby/rest/knowledge/v1/knowledge.rb +617 -0
  350. data/lib/twilio-ruby/rest/knowledge/v1.rb +49 -0
  351. data/lib/twilio-ruby/rest/knowledge.rb +6 -0
  352. data/lib/twilio-ruby/rest/knowledge_base.rb +38 -0
  353. data/lib/twilio-ruby/rest/lookups/v1/phone_number.rb +249 -231
  354. data/lib/twilio-ruby/rest/lookups/v1.rb +43 -37
  355. data/lib/twilio-ruby/rest/lookups/v2/phone_number.rb +394 -0
  356. data/lib/twilio-ruby/rest/lookups/v2.rb +49 -0
  357. data/lib/twilio-ruby/rest/lookups.rb +5 -37
  358. data/lib/twilio-ruby/rest/lookups_base.rb +43 -0
  359. data/lib/twilio-ruby/rest/marketplace/v1/available_add_on/available_add_on_extension.rb +316 -0
  360. data/lib/twilio-ruby/rest/marketplace/v1/available_add_on.rb +343 -0
  361. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on/installed_add_on_extension.rb +363 -0
  362. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on/installed_add_on_usage.rb +162 -0
  363. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on.rb +482 -0
  364. data/lib/twilio-ruby/rest/marketplace/v1/module_data.rb +221 -0
  365. data/lib/twilio-ruby/rest/marketplace/v1/module_data_management.rb +325 -0
  366. data/lib/twilio-ruby/rest/marketplace/v1/referral_conversion.rb +146 -0
  367. data/lib/twilio-ruby/rest/marketplace/v1.rb +91 -0
  368. data/lib/twilio-ruby/rest/marketplace.rb +6 -0
  369. data/lib/twilio-ruby/rest/marketplace_base.rb +38 -0
  370. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_registration_otp.rb +143 -0
  371. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_vetting.rb +379 -0
  372. data/lib/twilio-ruby/rest/messaging/v1/brand_registration.rb +524 -0
  373. data/lib/twilio-ruby/rest/messaging/v1/deactivations.rb +196 -0
  374. data/lib/twilio-ruby/rest/messaging/v1/domain_certs.rb +295 -0
  375. data/lib/twilio-ruby/rest/messaging/v1/domain_config.rb +300 -0
  376. data/lib/twilio-ruby/rest/messaging/v1/domain_config_messaging_service.rb +243 -0
  377. data/lib/twilio-ruby/rest/messaging/v1/external_campaign.rb +171 -0
  378. data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service.rb +223 -0
  379. data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service_domain_association.rb +201 -0
  380. data/lib/twilio-ruby/rest/messaging/v1/request_managed_cert.rb +243 -0
  381. data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +370 -338
  382. data/lib/twilio-ruby/rest/messaging/v1/service/channel_sender.rb +383 -0
  383. data/lib/twilio-ruby/rest/messaging/v1/service/destination_alpha_sender.rb +386 -0
  384. data/lib/twilio-ruby/rest/messaging/v1/service/phone_number.rb +377 -342
  385. data/lib/twilio-ruby/rest/messaging/v1/service/short_code.rb +377 -337
  386. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person.rb +637 -0
  387. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person_usecase.rb +142 -0
  388. data/lib/twilio-ruby/rest/messaging/v1/service.rb +819 -620
  389. data/lib/twilio-ruby/rest/messaging/v1/tollfree_verification.rb +820 -0
  390. data/lib/twilio-ruby/rest/messaging/v1/usecase.rb +130 -0
  391. data/lib/twilio-ruby/rest/messaging/v1.rb +203 -37
  392. data/lib/twilio-ruby/rest/messaging/v2/channels_sender.rb +492 -0
  393. data/lib/twilio-ruby/rest/messaging/v2.rb +49 -0
  394. data/lib/twilio-ruby/rest/messaging.rb +53 -25
  395. data/lib/twilio-ruby/rest/messaging_base.rb +43 -0
  396. data/lib/twilio-ruby/rest/microvisor/v1/account_config.rb +382 -0
  397. data/lib/twilio-ruby/rest/microvisor/v1/account_secret.rb +375 -0
  398. data/lib/twilio-ruby/rest/microvisor/v1/app/app_manifest.rb +213 -0
  399. data/lib/twilio-ruby/rest/microvisor/v1/app.rb +361 -0
  400. data/lib/twilio-ruby/rest/microvisor/v1/device/device_config.rb +398 -0
  401. data/lib/twilio-ruby/rest/microvisor/v1/device/device_secret.rb +391 -0
  402. data/lib/twilio-ruby/rest/microvisor/v1/device.rb +441 -0
  403. data/lib/twilio-ruby/rest/microvisor/v1.rb +94 -0
  404. data/lib/twilio-ruby/rest/microvisor.rb +24 -0
  405. data/lib/twilio-ruby/rest/microvisor_base.rb +38 -0
  406. data/lib/twilio-ruby/rest/monitor/v1/alert.rb +409 -409
  407. data/lib/twilio-ruby/rest/monitor/v1/event.rb +392 -365
  408. data/lib/twilio-ruby/rest/monitor/v1.rb +58 -52
  409. data/lib/twilio-ruby/rest/monitor.rb +7 -36
  410. data/lib/twilio-ruby/rest/monitor_base.rb +38 -0
  411. data/lib/twilio-ruby/rest/notify/v1/credential.rb +446 -408
  412. data/lib/twilio-ruby/rest/notify/v1/service/binding.rb +456 -447
  413. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +321 -361
  414. data/lib/twilio-ruby/rest/notify/v1/service.rb +651 -635
  415. data/lib/twilio-ruby/rest/notify/v1.rb +58 -52
  416. data/lib/twilio-ruby/rest/notify.rb +7 -36
  417. data/lib/twilio-ruby/rest/notify_base.rb +38 -0
  418. data/lib/twilio-ruby/rest/numbers/v1/bulk_eligibility.rb +249 -0
  419. data/lib/twilio-ruby/rest/numbers/v1/eligibility.rb +132 -0
  420. data/lib/twilio-ruby/rest/numbers/v1/porting_port_in.rb +304 -0
  421. data/lib/twilio-ruby/rest/numbers/v1/porting_port_in_phone_number.rb +328 -0
  422. data/lib/twilio-ruby/rest/numbers/v1/porting_portability.rb +260 -0
  423. data/lib/twilio-ruby/rest/numbers/v1/porting_webhook_configuration.rb +153 -0
  424. data/lib/twilio-ruby/rest/numbers/v1/porting_webhook_configuration_delete.rb +170 -0
  425. data/lib/twilio-ruby/rest/numbers/v1/signing_request_configuration.rb +280 -0
  426. data/lib/twilio-ruby/rest/numbers/v1/webhook.rb +165 -0
  427. data/lib/twilio-ruby/rest/numbers/v1.rb +155 -0
  428. data/lib/twilio-ruby/rest/numbers/v2/authorization_document/dependent_hosted_number_order.rb +347 -0
  429. data/lib/twilio-ruby/rest/numbers/v2/authorization_document.rb +421 -0
  430. data/lib/twilio-ruby/rest/numbers/v2/bulk_hosted_number_order.rb +274 -0
  431. data/lib/twilio-ruby/rest/numbers/v2/bundle_clone.rb +281 -0
  432. data/lib/twilio-ruby/rest/numbers/v2/hosted_number_order.rb +613 -0
  433. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/bundle_copy.rb +295 -0
  434. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/evaluation.rb +351 -0
  435. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/item_assignment.rb +364 -0
  436. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/replace_items.rb +208 -0
  437. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle.rb +637 -0
  438. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user.rb +424 -0
  439. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user_type.rb +307 -0
  440. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/regulation.rb +356 -0
  441. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document.rb +452 -0
  442. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document_type.rb +307 -0
  443. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance.rb +186 -0
  444. data/lib/twilio-ruby/rest/numbers/v2.rb +100 -0
  445. data/lib/twilio-ruby/rest/numbers.rb +12 -0
  446. data/lib/twilio-ruby/rest/numbers_base.rb +43 -0
  447. data/lib/twilio-ruby/rest/oauth/v1/authorize.rb +148 -0
  448. data/lib/twilio-ruby/rest/oauth/v1/token.rb +186 -0
  449. data/lib/twilio-ruby/rest/oauth/v1.rb +46 -0
  450. data/lib/twilio-ruby/rest/oauth.rb +6 -0
  451. data/lib/twilio-ruby/rest/oauth_base.rb +38 -0
  452. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document/dependent_hosted_number_order.rb +375 -396
  453. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document.rb +467 -452
  454. data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +635 -636
  455. data/lib/twilio-ruby/rest/preview/hosted_numbers.rb +58 -54
  456. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on/available_add_on_extension.rb +310 -297
  457. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on.rb +334 -313
  458. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on/installed_add_on_extension.rb +357 -333
  459. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on.rb +454 -412
  460. data/lib/twilio-ruby/rest/preview/marketplace.rb +58 -54
  461. data/lib/twilio-ruby/rest/preview/wireless/command.rb +402 -371
  462. data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +473 -409
  463. data/lib/twilio-ruby/rest/preview/wireless/sim/usage.rb +241 -206
  464. data/lib/twilio-ruby/rest/preview/wireless/sim.rb +589 -529
  465. data/lib/twilio-ruby/rest/preview/wireless.rb +73 -67
  466. data/lib/twilio-ruby/rest/preview.rb +15 -143
  467. data/lib/twilio-ruby/rest/preview_base.rb +48 -0
  468. data/lib/twilio-ruby/rest/preview_iam/v1/authorize.rb +148 -0
  469. data/lib/twilio-ruby/rest/preview_iam/v1/token.rb +186 -0
  470. data/lib/twilio-ruby/rest/preview_iam/v1.rb +46 -0
  471. data/lib/twilio-ruby/rest/preview_iam/versionless/organization/account.rb +309 -0
  472. data/lib/twilio-ruby/rest/preview_iam/versionless/organization/role_assignment.rb +375 -0
  473. data/lib/twilio-ruby/rest/preview_iam/versionless/organization/user.rb +530 -0
  474. data/lib/twilio-ruby/rest/preview_iam/versionless/organization.rb +277 -0
  475. data/lib/twilio-ruby/rest/preview_iam/versionless.rb +49 -0
  476. data/lib/twilio-ruby/rest/preview_iam.rb +9 -0
  477. data/lib/twilio-ruby/rest/preview_iam_base.rb +38 -0
  478. data/lib/twilio-ruby/rest/pricing/v1/messaging/country.rb +308 -273
  479. data/lib/twilio-ruby/rest/pricing/v1/messaging.rb +109 -118
  480. data/lib/twilio-ruby/rest/pricing/v1/phone_number/country.rb +301 -266
  481. data/lib/twilio-ruby/rest/pricing/v1/phone_number.rb +109 -118
  482. data/lib/twilio-ruby/rest/pricing/v1/voice/country.rb +308 -273
  483. data/lib/twilio-ruby/rest/pricing/v1/voice/number.rb +228 -197
  484. data/lib/twilio-ruby/rest/pricing/v1/voice.rb +123 -134
  485. data/lib/twilio-ruby/rest/pricing/v1.rb +46 -43
  486. data/lib/twilio-ruby/rest/pricing/v2/country.rb +309 -0
  487. data/lib/twilio-ruby/rest/pricing/v2/number.rb +247 -0
  488. data/lib/twilio-ruby/rest/pricing/v2/voice/country.rb +314 -0
  489. data/lib/twilio-ruby/rest/pricing/v2/voice/number.rb +252 -0
  490. data/lib/twilio-ruby/rest/pricing/v2/voice.rb +130 -0
  491. data/lib/twilio-ruby/rest/pricing/v2.rb +70 -0
  492. data/lib/twilio-ruby/rest/pricing.rb +24 -33
  493. data/lib/twilio-ruby/rest/pricing_base.rb +43 -0
  494. data/lib/twilio-ruby/rest/proxy/v1/service/phone_number.rb +444 -357
  495. data/lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb +421 -441
  496. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant/message_interaction.rb +445 -449
  497. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb +440 -449
  498. data/lib/twilio-ruby/rest/proxy/v1/service/session.rb +547 -528
  499. data/lib/twilio-ruby/rest/proxy/v1/service/short_code.rb +424 -339
  500. data/lib/twilio-ruby/rest/proxy/v1/service.rb +584 -535
  501. data/lib/twilio-ruby/rest/proxy/v1.rb +43 -37
  502. data/lib/twilio-ruby/rest/proxy.rb +4 -35
  503. data/lib/twilio-ruby/rest/proxy_base.rb +38 -0
  504. data/lib/twilio-ruby/rest/routes/v2/phone_number.rb +281 -0
  505. data/lib/twilio-ruby/rest/routes/v2/sip_domain.rb +281 -0
  506. data/lib/twilio-ruby/rest/routes/v2/trunk.rb +281 -0
  507. data/lib/twilio-ruby/rest/routes/v2.rb +79 -0
  508. data/lib/twilio-ruby/rest/routes.rb +32 -0
  509. data/lib/twilio-ruby/rest/routes_base.rb +38 -0
  510. data/lib/twilio-ruby/rest/serverless/v1/service/asset/asset_version.rb +334 -0
  511. data/lib/twilio-ruby/rest/serverless/v1/service/asset.rb +443 -0
  512. data/lib/twilio-ruby/rest/serverless/v1/service/build/build_status.rb +224 -0
  513. data/lib/twilio-ruby/rest/serverless/v1/service/build.rb +432 -0
  514. data/lib/twilio-ruby/rest/serverless/v1/service/environment/deployment.rb +364 -0
  515. data/lib/twilio-ruby/rest/serverless/v1/service/environment/log.rb +380 -0
  516. data/lib/twilio-ruby/rest/serverless/v1/service/environment/variable.rb +438 -0
  517. data/lib/twilio-ruby/rest/serverless/v1/service/environment.rb +481 -0
  518. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version/function_version_content.rb +235 -0
  519. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version.rb +361 -0
  520. data/lib/twilio-ruby/rest/serverless/v1/service/function.rb +443 -0
  521. data/lib/twilio-ruby/rest/serverless/v1/service.rb +557 -0
  522. data/lib/twilio-ruby/rest/serverless/v1.rb +49 -0
  523. data/lib/twilio-ruby/rest/serverless.rb +15 -0
  524. data/lib/twilio-ruby/rest/serverless_base.rb +38 -0
  525. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/engagement_context.rb +214 -207
  526. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step/step_context.rb +229 -226
  527. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb +379 -365
  528. data/lib/twilio-ruby/rest/studio/v1/flow/engagement.rb +443 -400
  529. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_context.rb +214 -207
  530. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step/execution_step_context.rb +229 -226
  531. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step.rb +379 -370
  532. data/lib/twilio-ruby/rest/studio/v1/flow/execution.rb +495 -404
  533. data/lib/twilio-ruby/rest/studio/v1/flow.rb +395 -365
  534. data/lib/twilio-ruby/rest/studio/v1.rb +43 -37
  535. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_context.rb +224 -0
  536. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step/execution_step_context.rb +235 -0
  537. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step.rb +389 -0
  538. data/lib/twilio-ruby/rest/studio/v2/flow/execution.rb +494 -0
  539. data/lib/twilio-ruby/rest/studio/v2/flow/flow_revision.rb +358 -0
  540. data/lib/twilio-ruby/rest/studio/v2/flow/flow_test_user.rb +245 -0
  541. data/lib/twilio-ruby/rest/studio/v2/flow.rb +555 -0
  542. data/lib/twilio-ruby/rest/studio/v2/flow_validate.rb +146 -0
  543. data/lib/twilio-ruby/rest/studio/v2.rb +55 -0
  544. data/lib/twilio-ruby/rest/studio.rb +11 -35
  545. data/lib/twilio-ruby/rest/studio_base.rb +43 -0
  546. data/lib/twilio-ruby/rest/supersim/v1/esim_profile.rb +417 -0
  547. data/lib/twilio-ruby/rest/supersim/v1/fleet.rb +502 -0
  548. data/lib/twilio-ruby/rest/supersim/v1/ip_command.rb +422 -0
  549. data/lib/twilio-ruby/rest/supersim/v1/network.rb +320 -0
  550. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile/network_access_profile_network.rb +362 -0
  551. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile.rb +410 -0
  552. data/lib/twilio-ruby/rest/supersim/v1/settings_update.rb +260 -0
  553. data/lib/twilio-ruby/rest/supersim/v1/sim/billing_period.rb +253 -0
  554. data/lib/twilio-ruby/rest/supersim/v1/sim/sim_ip_address.rb +211 -0
  555. data/lib/twilio-ruby/rest/supersim/v1/sim.rb +490 -0
  556. data/lib/twilio-ruby/rest/supersim/v1/sms_command.rb +382 -0
  557. data/lib/twilio-ruby/rest/supersim/v1/usage_record.rb +317 -0
  558. data/lib/twilio-ruby/rest/supersim/v1.rb +151 -0
  559. data/lib/twilio-ruby/rest/supersim.rb +88 -0
  560. data/lib/twilio-ruby/rest/supersim_base.rb +38 -0
  561. data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +397 -381
  562. data/lib/twilio-ruby/rest/sync/v1/service/document.rb +482 -428
  563. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +491 -443
  564. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +397 -381
  565. data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +497 -442
  566. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +494 -444
  567. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +397 -381
  568. data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +497 -442
  569. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream/stream_message.rb +147 -142
  570. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream.rb +446 -411
  571. data/lib/twilio-ruby/rest/sync/v1/service.rb +602 -514
  572. data/lib/twilio-ruby/rest/sync/v1.rb +43 -37
  573. data/lib/twilio-ruby/rest/sync.rb +4 -35
  574. data/lib/twilio-ruby/rest/sync_base.rb +38 -0
  575. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/activity.rb +432 -390
  576. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +453 -419
  577. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +721 -577
  578. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +677 -621
  579. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_channel.rb +436 -295
  580. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_bulk_real_time_statistics.rb +168 -0
  581. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics.rb +367 -356
  582. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics.rb +270 -229
  583. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_statistics.rb +238 -234
  584. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queues_statistics.rb +244 -268
  585. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +601 -570
  586. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +703 -575
  587. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_channel.rb +406 -392
  588. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_statistics.rb +243 -231
  589. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_cumulative_statistics.rb +289 -262
  590. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_real_time_statistics.rb +223 -186
  591. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_statistics.rb +259 -232
  592. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +648 -606
  593. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics.rb +367 -363
  594. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_real_time_statistics.rb +253 -226
  595. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_statistics.rb +238 -234
  596. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +550 -510
  597. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_cumulative_statistics.rb +361 -350
  598. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_real_time_statistics.rb +242 -200
  599. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_statistics.rb +249 -230
  600. data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +747 -719
  601. data/lib/twilio-ruby/rest/taskrouter/v1.rb +43 -37
  602. data/lib/twilio-ruby/rest/taskrouter.rb +4 -35
  603. data/lib/twilio-ruby/rest/taskrouter_base.rb +38 -0
  604. data/lib/twilio-ruby/rest/trunking/v1/trunk/credential_list.rb +363 -322
  605. data/lib/twilio-ruby/rest/trunking/v1/trunk/ip_access_control_list.rb +363 -323
  606. data/lib/twilio-ruby/rest/trunking/v1/trunk/origination_url.rb +467 -429
  607. data/lib/twilio-ruby/rest/trunking/v1/trunk/phone_number.rb +496 -449
  608. data/lib/twilio-ruby/rest/trunking/v1/trunk/recording.rb +244 -0
  609. data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +650 -600
  610. data/lib/twilio-ruby/rest/trunking/v1.rb +43 -37
  611. data/lib/twilio-ruby/rest/trunking.rb +4 -36
  612. data/lib/twilio-ruby/rest/trunking_base.rb +38 -0
  613. data/lib/twilio-ruby/rest/trusthub/v1/compliance_inquiries.rb +257 -0
  614. data/lib/twilio-ruby/rest/trusthub/v1/compliance_registration_inquiries.rb +365 -0
  615. data/lib/twilio-ruby/rest/trusthub/v1/compliance_tollfree_inquiries.rb +224 -0
  616. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_channel_endpoint_assignment.rb +384 -0
  617. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_entity_assignments.rb +368 -0
  618. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_evaluations.rb +356 -0
  619. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles.rb +568 -0
  620. data/lib/twilio-ruby/rest/trusthub/v1/end_user.rb +419 -0
  621. data/lib/twilio-ruby/rest/trusthub/v1/end_user_type.rb +302 -0
  622. data/lib/twilio-ruby/rest/trusthub/v1/policies.rb +295 -0
  623. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document.rb +433 -0
  624. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document_type.rb +302 -0
  625. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_channel_endpoint_assignment.rb +384 -0
  626. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_entity_assignments.rb +368 -0
  627. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_evaluations.rb +356 -0
  628. data/lib/twilio-ruby/rest/trusthub/v1/trust_products.rb +568 -0
  629. data/lib/twilio-ruby/rest/trusthub/v1.rb +175 -0
  630. data/lib/twilio-ruby/rest/trusthub.rb +74 -0
  631. data/lib/twilio-ruby/rest/trusthub_base.rb +38 -0
  632. data/lib/twilio-ruby/rest/verify/v2/form.rb +208 -0
  633. data/lib/twilio-ruby/rest/verify/v2/safelist.rb +246 -0
  634. data/lib/twilio-ruby/rest/verify/v2/service/access_token.rb +292 -0
  635. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge/notification.rb +205 -0
  636. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb +530 -0
  637. data/lib/twilio-ruby/rest/verify/v2/service/entity/factor.rb +478 -0
  638. data/lib/twilio-ruby/rest/verify/v2/service/entity/new_factor.rb +276 -0
  639. data/lib/twilio-ruby/rest/verify/v2/service/entity.rb +449 -0
  640. data/lib/twilio-ruby/rest/verify/v2/service/messaging_configuration.rb +412 -0
  641. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb +438 -0
  642. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit.rb +453 -0
  643. data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +409 -0
  644. data/lib/twilio-ruby/rest/verify/v2/service/verification_check.rb +235 -0
  645. data/lib/twilio-ruby/rest/verify/v2/service/webhook.rb +480 -0
  646. data/lib/twilio-ruby/rest/verify/v2/service.rb +843 -0
  647. data/lib/twilio-ruby/rest/verify/v2/template.rb +233 -0
  648. data/lib/twilio-ruby/rest/verify/v2/verification_attempt.rb +392 -0
  649. data/lib/twilio-ruby/rest/verify/v2/verification_attempts_summary.rb +254 -0
  650. data/lib/twilio-ruby/rest/verify/v2.rb +106 -0
  651. data/lib/twilio-ruby/rest/verify.rb +58 -0
  652. data/lib/twilio-ruby/rest/verify_base.rb +38 -0
  653. data/lib/twilio-ruby/rest/video/v1/composition.rb +498 -491
  654. data/lib/twilio-ruby/rest/video/v1/composition_hook.rb +561 -0
  655. data/lib/twilio-ruby/rest/video/v1/composition_settings.rb +295 -271
  656. data/lib/twilio-ruby/rest/video/v1/recording.rb +441 -387
  657. data/lib/twilio-ruby/rest/video/v1/recording_settings.rb +295 -271
  658. data/lib/twilio-ruby/rest/video/v1/room/participant/anonymize.rb +266 -0
  659. data/lib/twilio-ruby/rest/video/v1/room/participant/published_track.rb +341 -0
  660. data/lib/twilio-ruby/rest/video/v1/room/participant/subscribe_rules.rb +194 -0
  661. data/lib/twilio-ruby/rest/video/v1/room/participant/subscribed_track.rb +348 -0
  662. data/lib/twilio-ruby/rest/video/v1/room/participant.rb +514 -0
  663. data/lib/twilio-ruby/rest/video/v1/room/recording_rules.rb +183 -0
  664. data/lib/twilio-ruby/rest/video/v1/room/room_recording.rb +437 -0
  665. data/lib/twilio-ruby/rest/video/v1/room.rb +635 -512
  666. data/lib/twilio-ruby/rest/video/v1.rb +100 -83
  667. data/lib/twilio-ruby/rest/video.rb +22 -40
  668. data/lib/twilio-ruby/rest/video_base.rb +38 -0
  669. data/lib/twilio-ruby/rest/voice/v1/archived_call.rb +171 -0
  670. data/lib/twilio-ruby/rest/voice/v1/byoc_trunk.rb +537 -0
  671. data/lib/twilio-ruby/rest/voice/v1/connection_policy/connection_policy_target.rb +473 -0
  672. data/lib/twilio-ruby/rest/voice/v1/connection_policy.rb +427 -0
  673. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/bulk_country_update.rb +149 -0
  674. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country/highrisk_special_prefix.rb +206 -0
  675. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country.rb +390 -0
  676. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/settings.rb +235 -0
  677. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions.rb +131 -0
  678. data/lib/twilio-ruby/rest/voice/v1/ip_record.rb +413 -0
  679. data/lib/twilio-ruby/rest/voice/v1/source_ip_mapping.rb +396 -0
  680. data/lib/twilio-ruby/rest/voice/v1.rb +137 -0
  681. data/lib/twilio-ruby/rest/voice.rb +61 -0
  682. data/lib/twilio-ruby/rest/voice_base.rb +38 -0
  683. data/lib/twilio-ruby/rest/wireless/v1/command.rb +429 -361
  684. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +493 -439
  685. data/lib/twilio-ruby/rest/wireless/v1/sim/data_session.rb +303 -288
  686. data/lib/twilio-ruby/rest/wireless/v1/sim/usage_record.rb +244 -240
  687. data/lib/twilio-ruby/rest/wireless/v1/sim.rb +655 -611
  688. data/lib/twilio-ruby/rest/wireless/v1/usage_record.rb +238 -0
  689. data/lib/twilio-ruby/rest/wireless/v1.rb +79 -67
  690. data/lib/twilio-ruby/rest/wireless.rb +11 -34
  691. data/lib/twilio-ruby/rest/wireless_base.rb +38 -0
  692. data/lib/twilio-ruby/rest.rb +14 -0
  693. data/lib/twilio-ruby/security/request_validator.rb +102 -8
  694. data/lib/twilio-ruby/twiml/fax_response.rb +6 -3
  695. data/lib/twilio-ruby/twiml/messaging_response.rb +2 -2
  696. data/lib/twilio-ruby/twiml/twiml.rb +12 -1
  697. data/lib/twilio-ruby/twiml/voice_response.rb +1705 -81
  698. data/lib/twilio-ruby/util/configuration.rb +22 -5
  699. data/lib/twilio-ruby/version.rb +1 -1
  700. data/lib/twilio-ruby.rb +9 -25
  701. data/sonar-project.properties +13 -0
  702. data/twilio-ruby.gemspec +15 -10
  703. metadata +542 -646
  704. data/.travis.yml +0 -31
  705. data/conf/cacert.pem +0 -3376
  706. data/lib/twilio-ruby/framework/twilio_response.rb +0 -19
  707. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/local.rb +0 -509
  708. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/machine_to_machine.rb +0 -398
  709. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/mobile.rb +0 -506
  710. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/national.rb +0 -398
  711. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/shared_cost.rb +0 -398
  712. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/toll_free.rb +0 -506
  713. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/voip.rb +0 -398
  714. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number.rb +0 -459
  715. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb +0 -296
  716. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb +0 -314
  717. data/lib/twilio-ruby/rest/fax/v1/fax/fax_media.rb +0 -315
  718. data/lib/twilio-ruby/rest/fax/v1/fax.rb +0 -530
  719. data/lib/twilio-ruby/rest/fax/v1.rb +0 -43
  720. data/lib/twilio-ruby/rest/fax.rb +0 -46
  721. data/lib/twilio-ruby/rest/notify/v1/service/segment.rb +0 -225
  722. data/lib/twilio-ruby/rest/notify/v1/service/user/segment_memberships.rb +0 -262
  723. data/lib/twilio-ruby/rest/notify/v1/service/user/user_binding.rb +0 -438
  724. data/lib/twilio-ruby/rest/notify/v1/service/user.rb +0 -438
  725. data/lib/twilio-ruby/rest/preview/acc_security/service/verification.rb +0 -185
  726. data/lib/twilio-ruby/rest/preview/acc_security/service/verification_check.rb +0 -182
  727. data/lib/twilio-ruby/rest/preview/acc_security/service.rb +0 -388
  728. data/lib/twilio-ruby/rest/preview/acc_security.rb +0 -43
  729. data/lib/twilio-ruby/rest/preview/bulk_exports/export/day.rb +0 -211
  730. data/lib/twilio-ruby/rest/preview/bulk_exports/export.rb +0 -203
  731. data/lib/twilio-ruby/rest/preview/bulk_exports/export_configuration.rb +0 -227
  732. data/lib/twilio-ruby/rest/preview/bulk_exports.rb +0 -58
  733. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/certificate.rb +0 -392
  734. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/deployment.rb +0 -375
  735. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/device.rb +0 -435
  736. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/key.rb +0 -386
  737. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet.rb +0 -479
  738. data/lib/twilio-ruby/rest/preview/deployed_devices.rb +0 -44
  739. data/lib/twilio-ruby/rest/preview/proxy/service/phone_number.rb +0 -347
  740. data/lib/twilio-ruby/rest/preview/proxy/service/session/interaction.rb +0 -437
  741. data/lib/twilio-ruby/rest/preview/proxy/service/session/participant/message_interaction.rb +0 -455
  742. data/lib/twilio-ruby/rest/preview/proxy/service/session/participant.rb +0 -514
  743. data/lib/twilio-ruby/rest/preview/proxy/service/session.rb +0 -497
  744. data/lib/twilio-ruby/rest/preview/proxy/service/short_code.rb +0 -342
  745. data/lib/twilio-ruby/rest/preview/proxy/service.rb +0 -464
  746. data/lib/twilio-ruby/rest/preview/proxy.rb +0 -43
  747. data/lib/twilio-ruby/rest/preview/studio/flow/engagement/step.rb +0 -350
  748. data/lib/twilio-ruby/rest/preview/studio/flow/engagement.rb +0 -372
  749. data/lib/twilio-ruby/rest/preview/studio/flow.rb +0 -355
  750. data/lib/twilio-ruby/rest/preview/studio.rb +0 -43
  751. data/lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb +0 -390
  752. data/lib/twilio-ruby/rest/preview/sync/service/document.rb +0 -413
  753. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_item.rb +0 -421
  754. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_permission.rb +0 -390
  755. data/lib/twilio-ruby/rest/preview/sync/service/sync_list.rb +0 -411
  756. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_item.rb +0 -418
  757. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_permission.rb +0 -390
  758. data/lib/twilio-ruby/rest/preview/sync/service/sync_map.rb +0 -411
  759. data/lib/twilio-ruby/rest/preview/sync/service.rb +0 -472
  760. data/lib/twilio-ruby/rest/preview/sync.rb +0 -43
  761. data/lib/twilio-ruby/rest/preview/understand/assistant/field_type/field_value.rb +0 -392
  762. data/lib/twilio-ruby/rest/preview/understand/assistant/field_type.rb +0 -417
  763. data/lib/twilio-ruby/rest/preview/understand/assistant/intent/field.rb +0 -379
  764. data/lib/twilio-ruby/rest/preview/understand/assistant/intent/sample.rb +0 -438
  765. data/lib/twilio-ruby/rest/preview/understand/assistant/intent.rb +0 -447
  766. data/lib/twilio-ruby/rest/preview/understand/assistant/model_build.rb +0 -390
  767. data/lib/twilio-ruby/rest/preview/understand/assistant/query.rb +0 -443
  768. data/lib/twilio-ruby/rest/preview/understand/assistant.rb +0 -562
  769. data/lib/twilio-ruby/rest/preview/understand.rb +0 -43
  770. data/lib/twilio-ruby/rest/video/v1/room/recording.rb +0 -388
  771. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_published_track.rb +0 -333
  772. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribed_track.rb +0 -313
  773. data/lib/twilio-ruby/rest/video/v1/room/room_participant.rb +0 -456
  774. data/spec/framework/request_spec.rb +0 -36
  775. data/spec/framework/serialize_spec.rb +0 -80
  776. data/spec/holodeck/holodeck.rb +0 -61
  777. data/spec/holodeck/hologram.rb +0 -4
  778. data/spec/http/http_client_spec.rb +0 -122
  779. data/spec/integration/accounts/v1/credential/aws_spec.rb +0 -226
  780. data/spec/integration/accounts/v1/credential/public_key_spec.rb +0 -226
  781. data/spec/integration/accounts/v1/credential_spec.rb +0 -12
  782. data/spec/integration/api/v2010/account/address/dependent_phone_number_spec.rb +0 -107
  783. data/spec/integration/api/v2010/account/address_spec.rb +0 -269
  784. data/spec/integration/api/v2010/account/application_spec.rb +0 -280
  785. data/spec/integration/api/v2010/account/authorized_connect_app_spec.rb +0 -139
  786. data/spec/integration/api/v2010/account/available_phone_number/local_spec.rb +0 -103
  787. data/spec/integration/api/v2010/account/available_phone_number/machine_to_machine_spec.rb +0 -103
  788. data/spec/integration/api/v2010/account/available_phone_number/mobile_spec.rb +0 -102
  789. data/spec/integration/api/v2010/account/available_phone_number/national_spec.rb +0 -103
  790. data/spec/integration/api/v2010/account/available_phone_number/shared_cost_spec.rb +0 -103
  791. data/spec/integration/api/v2010/account/available_phone_number/toll_free_spec.rb +0 -102
  792. data/spec/integration/api/v2010/account/available_phone_number/voip_spec.rb +0 -103
  793. data/spec/integration/api/v2010/account/available_phone_number_spec.rb +0 -130
  794. data/spec/integration/api/v2010/account/call/feedback_spec.rb +0 -139
  795. data/spec/integration/api/v2010/account/call/feedback_summary_spec.rb +0 -151
  796. data/spec/integration/api/v2010/account/call/notification_spec.rb +0 -181
  797. data/spec/integration/api/v2010/account/call/recording_spec.rb +0 -291
  798. data/spec/integration/api/v2010/account/call_spec.rb +0 -314
  799. data/spec/integration/api/v2010/account/conference/participant_spec.rb +0 -282
  800. data/spec/integration/api/v2010/account/conference/recording_spec.rb +0 -240
  801. data/spec/integration/api/v2010/account/conference_spec.rb +0 -179
  802. data/spec/integration/api/v2010/account/connect_app_spec.rb +0 -179
  803. data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension_spec.rb +0 -137
  804. data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on_spec.rb +0 -223
  805. data/spec/integration/api/v2010/account/incoming_phone_number/local_spec.rb +0 -185
  806. data/spec/integration/api/v2010/account/incoming_phone_number/mobile_spec.rb +0 -185
  807. data/spec/integration/api/v2010/account/incoming_phone_number/toll_free_spec.rb +0 -185
  808. data/spec/integration/api/v2010/account/incoming_phone_number_spec.rb +0 -341
  809. data/spec/integration/api/v2010/account/key_spec.rb +0 -180
  810. data/spec/integration/api/v2010/account/message/feedback_spec.rb +0 -50
  811. data/spec/integration/api/v2010/account/message/media_spec.rb +0 -164
  812. data/spec/integration/api/v2010/account/message_spec.rb +0 -290
  813. data/spec/integration/api/v2010/account/new_key_spec.rb +0 -47
  814. data/spec/integration/api/v2010/account/new_signing_key_spec.rb +0 -47
  815. data/spec/integration/api/v2010/account/notification_spec.rb +0 -174
  816. data/spec/integration/api/v2010/account/outgoing_caller_id_spec.rb +0 -195
  817. data/spec/integration/api/v2010/account/queue/member_spec.rb +0 -169
  818. data/spec/integration/api/v2010/account/queue_spec.rb +0 -242
  819. data/spec/integration/api/v2010/account/recording/add_on_result/payload_spec.rb +0 -177
  820. data/spec/integration/api/v2010/account/recording/add_on_result_spec.rb +0 -168
  821. data/spec/integration/api/v2010/account/recording/transcription_spec.rb +0 -176
  822. data/spec/integration/api/v2010/account/recording_spec.rb +0 -189
  823. data/spec/integration/api/v2010/account/short_code_spec.rb +0 -182
  824. data/spec/integration/api/v2010/account/signing_key_spec.rb +0 -180
  825. data/spec/integration/api/v2010/account/sip/credential_list/credential_spec.rb +0 -256
  826. data/spec/integration/api/v2010/account/sip/credential_list_spec.rb +0 -244
  827. data/spec/integration/api/v2010/account/sip/domain/credential_list_mapping_spec.rb +0 -210
  828. data/spec/integration/api/v2010/account/sip/domain/ip_access_control_list_mapping_spec.rb +0 -220
  829. data/spec/integration/api/v2010/account/sip/domain_spec.rb +0 -287
  830. data/spec/integration/api/v2010/account/sip/ip_access_control_list/ip_address_spec.rb +0 -258
  831. data/spec/integration/api/v2010/account/sip/ip_access_control_list_spec.rb +0 -254
  832. data/spec/integration/api/v2010/account/sip_spec.rb +0 -12
  833. data/spec/integration/api/v2010/account/token_spec.rb +0 -58
  834. data/spec/integration/api/v2010/account/transcription_spec.rb +0 -169
  835. data/spec/integration/api/v2010/account/usage/record/all_time_spec.rb +0 -113
  836. data/spec/integration/api/v2010/account/usage/record/daily_spec.rb +0 -113
  837. data/spec/integration/api/v2010/account/usage/record/last_month_spec.rb +0 -113
  838. data/spec/integration/api/v2010/account/usage/record/monthly_spec.rb +0 -113
  839. data/spec/integration/api/v2010/account/usage/record/this_month_spec.rb +0 -113
  840. data/spec/integration/api/v2010/account/usage/record/today_spec.rb +0 -113
  841. data/spec/integration/api/v2010/account/usage/record/yearly_spec.rb +0 -113
  842. data/spec/integration/api/v2010/account/usage/record/yesterday_spec.rb +0 -113
  843. data/spec/integration/api/v2010/account/usage/record_spec.rb +0 -110
  844. data/spec/integration/api/v2010/account/usage/trigger_spec.rb +0 -285
  845. data/spec/integration/api/v2010/account/usage_spec.rb +0 -12
  846. data/spec/integration/api/v2010/account/validation_request_spec.rb +0 -48
  847. data/spec/integration/api/v2010/account_spec.rb +0 -272
  848. data/spec/integration/chat/v1/credential_spec.rb +0 -223
  849. data/spec/integration/chat/v1/service/channel/invite_spec.rb +0 -210
  850. data/spec/integration/chat/v1/service/channel/member_spec.rb +0 -284
  851. data/spec/integration/chat/v1/service/channel/message_spec.rb +0 -294
  852. data/spec/integration/chat/v1/service/channel_spec.rb +0 -277
  853. data/spec/integration/chat/v1/service/role_spec.rb +0 -263
  854. data/spec/integration/chat/v1/service/user/user_channel_spec.rb +0 -94
  855. data/spec/integration/chat/v1/service/user_spec.rb +0 -266
  856. data/spec/integration/chat/v1/service_spec.rb +0 -299
  857. data/spec/integration/chat/v2/credential_spec.rb +0 -223
  858. data/spec/integration/chat/v2/service/binding_spec.rb +0 -177
  859. data/spec/integration/chat/v2/service/channel/invite_spec.rb +0 -210
  860. data/spec/integration/chat/v2/service/channel/member_spec.rb +0 -257
  861. data/spec/integration/chat/v2/service/channel/message_spec.rb +0 -405
  862. data/spec/integration/chat/v2/service/channel/webhook_spec.rb +0 -307
  863. data/spec/integration/chat/v2/service/channel_spec.rb +0 -281
  864. data/spec/integration/chat/v2/service/role_spec.rb +0 -263
  865. data/spec/integration/chat/v2/service/user/user_binding_spec.rb +0 -180
  866. data/spec/integration/chat/v2/service/user/user_channel_spec.rb +0 -94
  867. data/spec/integration/chat/v2/service/user_spec.rb +0 -270
  868. data/spec/integration/chat/v2/service_spec.rb +0 -354
  869. data/spec/integration/fax/v1/fax/fax_media_spec.rb +0 -128
  870. data/spec/integration/fax/v1/fax_spec.rb +0 -271
  871. data/spec/integration/ip_messaging/v1/credential_spec.rb +0 -223
  872. data/spec/integration/ip_messaging/v1/service/channel/invite_spec.rb +0 -210
  873. data/spec/integration/ip_messaging/v1/service/channel/member_spec.rb +0 -284
  874. data/spec/integration/ip_messaging/v1/service/channel/message_spec.rb +0 -294
  875. data/spec/integration/ip_messaging/v1/service/channel_spec.rb +0 -277
  876. data/spec/integration/ip_messaging/v1/service/role_spec.rb +0 -263
  877. data/spec/integration/ip_messaging/v1/service/user/user_channel_spec.rb +0 -94
  878. data/spec/integration/ip_messaging/v1/service/user_spec.rb +0 -266
  879. data/spec/integration/ip_messaging/v1/service_spec.rb +0 -299
  880. data/spec/integration/ip_messaging/v2/credential_spec.rb +0 -223
  881. data/spec/integration/ip_messaging/v2/service/binding_spec.rb +0 -177
  882. data/spec/integration/ip_messaging/v2/service/channel/invite_spec.rb +0 -210
  883. data/spec/integration/ip_messaging/v2/service/channel/member_spec.rb +0 -257
  884. data/spec/integration/ip_messaging/v2/service/channel/message_spec.rb +0 -405
  885. data/spec/integration/ip_messaging/v2/service/channel/webhook_spec.rb +0 -307
  886. data/spec/integration/ip_messaging/v2/service/channel_spec.rb +0 -281
  887. data/spec/integration/ip_messaging/v2/service/role_spec.rb +0 -263
  888. data/spec/integration/ip_messaging/v2/service/user/user_binding_spec.rb +0 -180
  889. data/spec/integration/ip_messaging/v2/service/user/user_channel_spec.rb +0 -94
  890. data/spec/integration/ip_messaging/v2/service/user_spec.rb +0 -270
  891. data/spec/integration/ip_messaging/v2/service_spec.rb +0 -354
  892. data/spec/integration/lookups/v1/phone_number_spec.rb +0 -71
  893. data/spec/integration/messaging/v1/service/alpha_sender_spec.rb +0 -170
  894. data/spec/integration/messaging/v1/service/phone_number_spec.rb +0 -201
  895. data/spec/integration/messaging/v1/service/short_code_spec.rb +0 -173
  896. data/spec/integration/messaging/v1/service_spec.rb +0 -263
  897. data/spec/integration/monitor/v1/alert_spec.rb +0 -163
  898. data/spec/integration/monitor/v1/event_spec.rb +0 -150
  899. data/spec/integration/notify/v1/credential_spec.rb +0 -223
  900. data/spec/integration/notify/v1/service/binding_spec.rb +0 -225
  901. data/spec/integration/notify/v1/service/notification_spec.rb +0 -99
  902. data/spec/integration/notify/v1/service/segment_spec.rb +0 -86
  903. data/spec/integration/notify/v1/service/user/segment_memberships_spec.rb +0 -118
  904. data/spec/integration/notify/v1/service/user/user_binding_spec.rb +0 -268
  905. data/spec/integration/notify/v1/service/user_spec.rb +0 -213
  906. data/spec/integration/notify/v1/service_spec.rb +0 -286
  907. data/spec/integration/preview/acc_security/service/verification_check_spec.rb +0 -52
  908. data/spec/integration/preview/acc_security/service/verification_spec.rb +0 -52
  909. data/spec/integration/preview/acc_security/service_spec.rb +0 -185
  910. data/spec/integration/preview/bulk_exports/export/day_spec.rb +0 -58
  911. data/spec/integration/preview/bulk_exports/export_configuration_spec.rb +0 -79
  912. data/spec/integration/preview/bulk_exports/export_spec.rb +0 -45
  913. data/spec/integration/preview/deployed_devices/fleet/certificate_spec.rb +0 -238
  914. data/spec/integration/preview/deployed_devices/fleet/deployment_spec.rb +0 -233
  915. data/spec/integration/preview/deployed_devices/fleet/device_spec.rb +0 -249
  916. data/spec/integration/preview/deployed_devices/fleet/key_spec.rb +0 -237
  917. data/spec/integration/preview/deployed_devices/fleet_spec.rb +0 -246
  918. data/spec/integration/preview/hosted_numbers/authorization_document/dependent_hosted_number_order_spec.rb +0 -111
  919. data/spec/integration/preview/hosted_numbers/authorization_document_spec.rb +0 -227
  920. data/spec/integration/preview/hosted_numbers/hosted_number_order_spec.rb +0 -393
  921. data/spec/integration/preview/marketplace/available_add_on/available_add_on_extension_spec.rb +0 -123
  922. data/spec/integration/preview/marketplace/available_add_on_spec.rb +0 -144
  923. data/spec/integration/preview/marketplace/installed_add_on/installed_add_on_extension_spec.rb +0 -164
  924. data/spec/integration/preview/marketplace/installed_add_on_spec.rb +0 -254
  925. data/spec/integration/preview/proxy/service/phone_number_spec.rb +0 -173
  926. data/spec/integration/preview/proxy/service/session/interaction_spec.rb +0 -106
  927. data/spec/integration/preview/proxy/service/session/participant/message_interaction_spec.rb +0 -166
  928. data/spec/integration/preview/proxy/service/session/participant_spec.rb +0 -226
  929. data/spec/integration/preview/proxy/service/session_spec.rb +0 -218
  930. data/spec/integration/preview/proxy/service/short_code_spec.rb +0 -173
  931. data/spec/integration/preview/proxy/service_spec.rb +0 -202
  932. data/spec/integration/preview/studio/flow/engagement/step_spec.rb +0 -98
  933. data/spec/integration/preview/studio/flow/engagement_spec.rb +0 -145
  934. data/spec/integration/preview/studio/flow_spec.rb +0 -117
  935. data/spec/integration/preview/sync/service/document/document_permission_spec.rb +0 -204
  936. data/spec/integration/preview/sync/service/document_spec.rb +0 -254
  937. data/spec/integration/preview/sync/service/sync_list/sync_list_item_spec.rb +0 -254
  938. data/spec/integration/preview/sync/service/sync_list/sync_list_permission_spec.rb +0 -204
  939. data/spec/integration/preview/sync/service/sync_list_spec.rb +0 -209
  940. data/spec/integration/preview/sync/service/sync_map/sync_map_item_spec.rb +0 -254
  941. data/spec/integration/preview/sync/service/sync_map/sync_map_permission_spec.rb +0 -204
  942. data/spec/integration/preview/sync/service/sync_map_spec.rb +0 -209
  943. data/spec/integration/preview/sync/service_spec.rb +0 -246
  944. data/spec/integration/preview/understand/assistant/field_type/field_value_spec.rb +0 -210
  945. data/spec/integration/preview/understand/assistant/field_type_spec.rb +0 -246
  946. data/spec/integration/preview/understand/assistant/intent/field_spec.rb +0 -207
  947. data/spec/integration/preview/understand/assistant/intent/sample_spec.rb +0 -253
  948. data/spec/integration/preview/understand/assistant/intent_spec.rb +0 -250
  949. data/spec/integration/preview/understand/assistant/model_build_spec.rb +0 -241
  950. data/spec/integration/preview/understand/assistant/query_spec.rb +0 -306
  951. data/spec/integration/preview/understand/assistant_spec.rb +0 -266
  952. data/spec/integration/preview/wireless/command_spec.rb +0 -169
  953. data/spec/integration/preview/wireless/rate_plan_spec.rb +0 -262
  954. data/spec/integration/preview/wireless/sim/usage_spec.rb +0 -51
  955. data/spec/integration/preview/wireless/sim_spec.rb +0 -210
  956. data/spec/integration/pricing/v1/messaging/country_spec.rb +0 -139
  957. data/spec/integration/pricing/v1/messaging_spec.rb +0 -12
  958. data/spec/integration/pricing/v1/phone_number/country_spec.rb +0 -130
  959. data/spec/integration/pricing/v1/phone_number_spec.rb +0 -12
  960. data/spec/integration/pricing/v1/voice/country_spec.rb +0 -140
  961. data/spec/integration/pricing/v1/voice/number_spec.rb +0 -56
  962. data/spec/integration/pricing/v1/voice_spec.rb +0 -12
  963. data/spec/integration/proxy/v1/service/phone_number_spec.rb +0 -184
  964. data/spec/integration/proxy/v1/service/session/interaction_spec.rb +0 -136
  965. data/spec/integration/proxy/v1/service/session/participant/message_interaction_spec.rb +0 -166
  966. data/spec/integration/proxy/v1/service/session/participant_spec.rb +0 -181
  967. data/spec/integration/proxy/v1/service/session_spec.rb +0 -230
  968. data/spec/integration/proxy/v1/service/short_code_spec.rb +0 -182
  969. data/spec/integration/proxy/v1/service_spec.rb +0 -215
  970. data/spec/integration/studio/v1/flow/engagement/engagement_context_spec.rb +0 -51
  971. data/spec/integration/studio/v1/flow/engagement/step/step_context_spec.rb +0 -54
  972. data/spec/integration/studio/v1/flow/engagement/step_spec.rb +0 -101
  973. data/spec/integration/studio/v1/flow/engagement_spec.rb +0 -171
  974. data/spec/integration/studio/v1/flow/execution/execution_context_spec.rb +0 -51
  975. data/spec/integration/studio/v1/flow/execution/execution_step/execution_step_context_spec.rb +0 -54
  976. data/spec/integration/studio/v1/flow/execution/execution_step_spec.rb +0 -101
  977. data/spec/integration/studio/v1/flow/execution_spec.rb +0 -171
  978. data/spec/integration/studio/v1/flow_spec.rb +0 -117
  979. data/spec/integration/sync/v1/service/document/document_permission_spec.rb +0 -204
  980. data/spec/integration/sync/v1/service/document_spec.rb +0 -257
  981. data/spec/integration/sync/v1/service/sync_list/sync_list_item_spec.rb +0 -257
  982. data/spec/integration/sync/v1/service/sync_list/sync_list_permission_spec.rb +0 -204
  983. data/spec/integration/sync/v1/service/sync_list_spec.rb +0 -257
  984. data/spec/integration/sync/v1/service/sync_map/sync_map_item_spec.rb +0 -257
  985. data/spec/integration/sync/v1/service/sync_map/sync_map_permission_spec.rb +0 -204
  986. data/spec/integration/sync/v1/service/sync_map_spec.rb +0 -257
  987. data/spec/integration/sync/v1/service/sync_stream/stream_message_spec.rb +0 -47
  988. data/spec/integration/sync/v1/service/sync_stream_spec.rb +0 -249
  989. data/spec/integration/sync/v1/service_spec.rb +0 -254
  990. data/spec/integration/taskrouter/v1/workspace/activity_spec.rb +0 -236
  991. data/spec/integration/taskrouter/v1/workspace/event_spec.rb +0 -159
  992. data/spec/integration/taskrouter/v1/workspace/task/reservation_spec.rb +0 -194
  993. data/spec/integration/taskrouter/v1/workspace/task_channel_spec.rb +0 -129
  994. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics_spec.rb +0 -96
  995. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics_spec.rb +0 -81
  996. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_statistics_spec.rb +0 -108
  997. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queues_statistics_spec.rb +0 -146
  998. data/spec/integration/taskrouter/v1/workspace/task_queue_spec.rb +0 -298
  999. data/spec/integration/taskrouter/v1/workspace/task_spec.rb +0 -326
  1000. data/spec/integration/taskrouter/v1/workspace/worker/reservation_spec.rb +0 -194
  1001. data/spec/integration/taskrouter/v1/workspace/worker/worker_channel_spec.rb +0 -188
  1002. data/spec/integration/taskrouter/v1/workspace/worker/worker_statistics_spec.rb +0 -92
  1003. data/spec/integration/taskrouter/v1/workspace/worker/workers_cumulative_statistics_spec.rb +0 -89
  1004. data/spec/integration/taskrouter/v1/workspace/worker/workers_real_time_statistics_spec.rb +0 -70
  1005. data/spec/integration/taskrouter/v1/workspace/worker/workers_statistics_spec.rb +0 -116
  1006. data/spec/integration/taskrouter/v1/workspace/worker_spec.rb +0 -294
  1007. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics_spec.rb +0 -97
  1008. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_real_time_statistics_spec.rb +0 -57
  1009. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_statistics_spec.rb +0 -71
  1010. data/spec/integration/taskrouter/v1/workspace/workflow_spec.rb +0 -272
  1011. data/spec/integration/taskrouter/v1/workspace/workspace_cumulative_statistics_spec.rb +0 -94
  1012. data/spec/integration/taskrouter/v1/workspace/workspace_real_time_statistics_spec.rb +0 -72
  1013. data/spec/integration/taskrouter/v1/workspace/workspace_statistics_spec.rb +0 -105
  1014. data/spec/integration/taskrouter/v1/workspace_spec.rb +0 -295
  1015. data/spec/integration/trunking/v1/trunk/credential_list_spec.rb +0 -192
  1016. data/spec/integration/trunking/v1/trunk/ip_access_control_list_spec.rb +0 -192
  1017. data/spec/integration/trunking/v1/trunk/origination_url_spec.rb +0 -252
  1018. data/spec/integration/trunking/v1/trunk/phone_number_spec.rb +0 -267
  1019. data/spec/integration/trunking/v1/trunk_spec.rb +0 -282
  1020. data/spec/integration/video/v1/composition_settings_spec.rb +0 -86
  1021. data/spec/integration/video/v1/composition_spec.rb +0 -325
  1022. data/spec/integration/video/v1/recording_settings_spec.rb +0 -86
  1023. data/spec/integration/video/v1/recording_spec.rb +0 -177
  1024. data/spec/integration/video/v1/room/recording_spec.rb +0 -186
  1025. data/spec/integration/video/v1/room/room_participant/room_participant_published_track_spec.rb +0 -96
  1026. data/spec/integration/video/v1/room/room_participant/room_participant_subscribed_track_spec.rb +0 -134
  1027. data/spec/integration/video/v1/room/room_participant_spec.rb +0 -187
  1028. data/spec/integration/video/v1/room_spec.rb +0 -257
  1029. data/spec/integration/wireless/v1/command_spec.rb +0 -166
  1030. data/spec/integration/wireless/v1/rate_plan_spec.rb +0 -270
  1031. data/spec/integration/wireless/v1/sim/data_session_spec.rb +0 -87
  1032. data/spec/integration/wireless/v1/sim/usage_record_spec.rb +0 -67
  1033. data/spec/integration/wireless/v1/sim_spec.rb +0 -216
  1034. data/spec/jwt/access_token_spec.rb +0 -151
  1035. data/spec/jwt/client_capability_spec.rb +0 -104
  1036. data/spec/jwt/task_router_spec.rb +0 -172
  1037. data/spec/rack/twilio_webhook_authentication_spec.rb +0 -106
  1038. data/spec/rest/client_spec.rb +0 -61
  1039. data/spec/security/request_validator_spec.rb +0 -113
  1040. data/spec/spec_helper.rb +0 -38
  1041. data/spec/support/fakeweb.rb +0 -2
  1042. data/spec/twilio_spec.rb +0 -15
  1043. data/spec/twiml/messaging_response_spec.rb +0 -235
  1044. data/spec/twiml/voice_response_spec.rb +0 -807
  1045. data/spec/util/configuration_spec.rb +0 -15
  1046. data/spec/util/url_encode_spec.rb +0 -12
  1047. /data/lib/twilio-ruby/framework/{helper.rb → rest/helper.rb} +0 -0
  1048. /data/lib/twilio-ruby/framework/{obsolete_client.rb → rest/obsolete_client.rb} +0 -0
  1049. /data/lib/twilio-ruby/framework/{resource.rb → rest/resource.rb} +0 -0
@@ -1,728 +1,756 @@
1
1
  ##
2
- # This code was generated by
3
- # \ / _ _ _| _ _
4
- # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
- # / /
6
- #
7
- # frozen_string_literal: true
2
+ # This code was generated by
3
+ # ___ _ _ _ _ _ _ ____ ____ ____ _ ____ ____ _ _ ____ ____ ____ ___ __ __
4
+ # | | | | | | | | | __ | | |__| | __ | __ |___ |\ | |___ |__/ |__| | | | |__/
5
+ # | |_|_| | |___ | |__| |__| | | | |__] |___ | \| |___ | \ | | | |__| | \
6
+ #
7
+ # Twilio - Taskrouter
8
+ # This is the public Twilio REST API.
9
+ #
10
+ # NOTE: This class is auto generated by OpenAPI Generator.
11
+ # https://openapi-generator.tech
12
+ # Do not edit the class manually.
13
+ #
14
+
8
15
 
9
16
  module Twilio
10
- module REST
11
- class Taskrouter < Domain
12
- class V1 < Version
13
- class WorkspaceList < ListResource
14
- ##
15
- # Initialize the WorkspaceList
16
- # @param [Version] version Version that contains the resource
17
- # @return [WorkspaceList] WorkspaceList
18
- def initialize(version)
19
- super(version)
20
-
21
- # Path Solution
22
- @solution = {}
23
- @uri = "/Workspaces"
24
- end
25
-
26
- ##
27
- # Lists WorkspaceInstance records from the API as a list.
28
- # Unlike stream(), this operation is eager and will load `limit` records into
29
- # memory before returning.
30
- # @param [String] friendly_name Filter by a workspace's friendly name. This is a
31
- # human readable description of this Workspace (for example "Customer Support" or
32
- # "2014 Election Campaign")
33
- # @param [Integer] limit Upper limit for the number of records to return. stream()
34
- # guarantees to never return more than limit. Default is no limit
35
- # @param [Integer] page_size Number of records to fetch per request, when
36
- # not set will use the default value of 50 records. If no page_size is defined
37
- # but a limit is defined, stream() will attempt to read the limit with the most
38
- # efficient page size, i.e. min(limit, 1000)
39
- # @return [Array] Array of up to limit results
40
- def list(friendly_name: :unset, limit: nil, page_size: nil)
41
- self.stream(friendly_name: friendly_name, limit: limit, page_size: page_size).entries
42
- end
43
-
44
- ##
45
- # Streams WorkspaceInstance records from the API as an Enumerable.
46
- # This operation lazily loads records as efficiently as possible until the limit
47
- # is reached.
48
- # @param [String] friendly_name Filter by a workspace's friendly name. This is a
49
- # human readable description of this Workspace (for example "Customer Support" or
50
- # "2014 Election Campaign")
51
- # @param [Integer] limit Upper limit for the number of records to return. stream()
52
- # guarantees to never return more than limit. Default is no limit.
53
- # @param [Integer] page_size Number of records to fetch per request, when
54
- # not set will use the default value of 50 records. If no page_size is defined
55
- # but a limit is defined, stream() will attempt to read the limit with the most
56
- # efficient page size, i.e. min(limit, 1000)
57
- # @return [Enumerable] Enumerable that will yield up to limit results
58
- def stream(friendly_name: :unset, limit: nil, page_size: nil)
59
- limits = @version.read_limits(limit, page_size)
60
-
61
- page = self.page(friendly_name: friendly_name, page_size: limits[:page_size], )
62
-
63
- @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
64
- end
65
-
66
- ##
67
- # When passed a block, yields WorkspaceInstance records from the API.
68
- # This operation lazily loads records as efficiently as possible until the limit
69
- # is reached.
70
- def each
71
- limits = @version.read_limits
72
-
73
- page = self.page(page_size: limits[:page_size], )
74
-
75
- @version.stream(page,
17
+ module REST
18
+ class Taskrouter < TaskrouterBase
19
+ class V1 < Version
20
+ class WorkspaceList < ListResource
21
+
22
+ ##
23
+ # Initialize the WorkspaceList
24
+ # @param [Version] version Version that contains the resource
25
+ # @return [WorkspaceList] WorkspaceList
26
+ def initialize(version)
27
+ super(version)
28
+ # Path Solution
29
+ @solution = { }
30
+ @uri = "/Workspaces"
31
+
32
+ end
33
+ ##
34
+ # Create the WorkspaceInstance
35
+ # @param [String] friendly_name A descriptive string that you create to describe the Workspace resource. It can be up to 64 characters long. For example: `Customer Support` or `2014 Election Campaign`.
36
+ # @param [String] event_callback_url The URL we should call when an event occurs. If provided, the Workspace will publish events to this URL, for example, to collect data for reporting. See [Workspace Events](https://www.twilio.com/docs/taskrouter/api/event) for more information. This parameter supports Twilio's [Webhooks (HTTP callbacks) Connection Overrides](https://www.twilio.com/docs/usage/webhooks/webhooks-connection-overrides).
37
+ # @param [String] events_filter The list of Workspace events for which to call event_callback_url. For example, if `EventsFilter=task.created, task.canceled, worker.activity.update`, then TaskRouter will call event_callback_url only when a task is created, canceled, or a Worker activity is updated.
38
+ # @param [Boolean] multi_task_enabled Whether to enable multi-tasking. Can be: `true` to enable multi-tasking, or `false` to disable it. However, all workspaces should be created as multi-tasking. The default is `true`. Multi-tasking allows Workers to handle multiple Tasks simultaneously. When enabled (`true`), each Worker can receive parallel reservations up to the per-channel maximums defined in the Workers section. In single-tasking mode (legacy mode), each Worker will only receive a new reservation when the previous task is completed. Learn more at [Multitasking](https://www.twilio.com/docs/taskrouter/multitasking).
39
+ # @param [String] template An available template name. Can be: `NONE` or `FIFO` and the default is `NONE`. Pre-configures the Workspace with the Workflow and Activities specified in the template. `NONE` will create a Workspace with only a set of default activities. `FIFO` will configure TaskRouter with a set of default activities and a single TaskQueue for first-in, first-out distribution, which can be useful when you are getting started with TaskRouter.
40
+ # @param [QueueOrder] prioritize_queue_order
41
+ # @return [WorkspaceInstance] Created WorkspaceInstance
42
+ def create(
43
+ friendly_name: nil,
44
+ event_callback_url: :unset,
45
+ events_filter: :unset,
46
+ multi_task_enabled: :unset,
47
+ template: :unset,
48
+ prioritize_queue_order: :unset
49
+ )
50
+
51
+ data = Twilio::Values.of({
52
+ 'FriendlyName' => friendly_name,
53
+ 'EventCallbackUrl' => event_callback_url,
54
+ 'EventsFilter' => events_filter,
55
+ 'MultiTaskEnabled' => multi_task_enabled,
56
+ 'Template' => template,
57
+ 'PrioritizeQueueOrder' => prioritize_queue_order,
58
+ })
59
+
60
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
61
+
62
+
63
+
64
+
65
+
66
+ payload = @version.create('POST', @uri, data: data, headers: headers)
67
+ WorkspaceInstance.new(
68
+ @version,
69
+ payload,
70
+ )
71
+ end
72
+
73
+
74
+ ##
75
+ # Lists WorkspaceInstance records from the API as a list.
76
+ # Unlike stream(), this operation is eager and will load `limit` records into
77
+ # memory before returning.
78
+ # @param [String] friendly_name The `friendly_name` of the Workspace resources to read. For example `Customer Support` or `2014 Election Campaign`.
79
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
80
+ # guarantees to never return more than limit. Default is no limit
81
+ # @param [Integer] page_size Number of records to fetch per request, when
82
+ # not set will use the default value of 50 records. If no page_size is defined
83
+ # but a limit is defined, stream() will attempt to read the limit with the most
84
+ # efficient page size, i.e. min(limit, 1000)
85
+ # @return [Array] Array of up to limit results
86
+ def list(friendly_name: :unset, limit: nil, page_size: nil)
87
+ self.stream(
88
+ friendly_name: friendly_name,
89
+ limit: limit,
90
+ page_size: page_size
91
+ ).entries
92
+ end
93
+
94
+ ##
95
+ # Streams Instance records from the API as an Enumerable.
96
+ # This operation lazily loads records as efficiently as possible until the limit
97
+ # is reached.
98
+ # @param [String] friendly_name The `friendly_name` of the Workspace resources to read. For example `Customer Support` or `2014 Election Campaign`.
99
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
100
+ # guarantees to never return more than limit. Default is no limit
101
+ # @param [Integer] page_size Number of records to fetch per request, when
102
+ # not set will use the default value of 50 records. If no page_size is defined
103
+ # but a limit is defined, stream() will attempt to read the limit with the most
104
+ # efficient page size, i.e. min(limit, 1000)
105
+ # @return [Enumerable] Enumerable that will yield up to limit results
106
+ def stream(friendly_name: :unset, limit: nil, page_size: nil)
107
+ limits = @version.read_limits(limit, page_size)
108
+
109
+ page = self.page(
110
+ friendly_name: friendly_name,
111
+ page_size: limits[:page_size], )
112
+
113
+ @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
114
+ end
115
+
116
+ ##
117
+ # When passed a block, yields WorkspaceInstance records from the API.
118
+ # This operation lazily loads records as efficiently as possible until the limit
119
+ # is reached.
120
+ def each
121
+ limits = @version.read_limits
122
+
123
+ page = self.page(page_size: limits[:page_size], )
124
+
125
+ @version.stream(page,
76
126
  limit: limits[:limit],
77
127
  page_limit: limits[:page_limit]).each {|x| yield x}
78
- end
79
-
80
- ##
81
- # Retrieve a single page of WorkspaceInstance records from the API.
82
- # Request is executed immediately.
83
- # @param [String] friendly_name Filter by a workspace's friendly name. This is a
84
- # human readable description of this Workspace (for example "Customer Support" or
85
- # "2014 Election Campaign")
86
- # @param [String] page_token PageToken provided by the API
87
- # @param [Integer] page_number Page Number, this value is simply for client state
88
- # @param [Integer] page_size Number of records to return, defaults to 50
89
- # @return [Page] Page of WorkspaceInstance
90
- def page(friendly_name: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
91
- params = Twilio::Values.of({
92
- 'FriendlyName' => friendly_name,
93
- 'PageToken' => page_token,
94
- 'Page' => page_number,
95
- 'PageSize' => page_size,
96
- })
97
- response = @version.page(
98
- 'GET',
99
- @uri,
100
- params
101
- )
102
- WorkspacePage.new(@version, response, @solution)
103
- end
104
-
105
- ##
106
- # Retrieve a single page of WorkspaceInstance records from the API.
107
- # Request is executed immediately.
108
- # @param [String] target_url API-generated URL for the requested results page
109
- # @return [Page] Page of WorkspaceInstance
110
- def get_page(target_url)
111
- response = @version.domain.request(
112
- 'GET',
113
- target_url
114
- )
115
- WorkspacePage.new(@version, response, @solution)
116
- end
117
-
118
- ##
119
- # Retrieve a single page of WorkspaceInstance records from the API.
120
- # Request is executed immediately.
121
- # @param [String] friendly_name Human readable description of this workspace (for
122
- # example "Customer Support" or "2014 Election Campaign")
123
- # @param [String] event_callback_url If provided, the Workspace will publish
124
- # events to this URL. You can use this to gather data for reporting. See Workspace
125
- # Events for more information.
126
- # @param [String] events_filter Use this parameter to receive webhooks on
127
- # EventCallbackUrl for specific events on a workspace. For example if
128
- # 'EventsFilter=task.created,task.canceled,worker.activity.update', then
129
- # TaskRouter will webhook to EventCallbackUrl only when a task is created,
130
- # canceled or a worker activity is updated.
131
- # @param [Boolean] multi_task_enabled Multi tasking allows workers to handle
132
- # multiple tasks simultaneously. When enabled (MultiTaskEnabled=true), each worker
133
- # will be eligible to receive parallel reservations up to the per-channel maximums
134
- # defined in the Workers section. Default is disabled (MultiTaskEnabled=false),
135
- # where each worker will only receive a new reservation when the previous task is
136
- # completed. Learn more by visiting [Multitasking][/docs/taskrouter/multitasking].
137
- # @param [String] template One of the available template names. Will pre-configure
138
- # this Workspace with the Workflow and Activities specified in the template.
139
- # "NONE" will create a Workspace with a set of default activities and nothing
140
- # else. "FIFO" will configure TaskRouter with a set of default activities and a
141
- # single task queue for first-in, first-out distribution, useful if you want to
142
- # see a simple TaskRouter configuration when getting started. Defaults to "NONE".
143
- # @param [workspace.QueueOrder] prioritize_queue_order Use this parameter to
144
- # configure whether to prioritize LIFO or FIFO when workers are receiving Tasks
145
- # from combination of LIFO and FIFO TaskQueues. Default is FIFO. [Click
146
- # here][/docs/taskrouter/queue-ordering-last-first-out-lifo] to learn more about
147
- # LIFO and the use of the parameter.
148
- # @return [WorkspaceInstance] Newly created WorkspaceInstance
149
- def create(friendly_name: nil, event_callback_url: :unset, events_filter: :unset, multi_task_enabled: :unset, template: :unset, prioritize_queue_order: :unset)
150
- data = Twilio::Values.of({
151
- 'FriendlyName' => friendly_name,
152
- 'EventCallbackUrl' => event_callback_url,
153
- 'EventsFilter' => events_filter,
154
- 'MultiTaskEnabled' => multi_task_enabled,
155
- 'Template' => template,
156
- 'PrioritizeQueueOrder' => prioritize_queue_order,
157
- })
158
-
159
- payload = @version.create(
160
- 'POST',
161
- @uri,
162
- data: data
163
- )
164
-
165
- WorkspaceInstance.new(@version, payload, )
166
- end
167
-
168
- ##
169
- # Provide a user friendly representation
170
- def to_s
171
- '#<Twilio.Taskrouter.V1.WorkspaceList>'
172
- end
173
- end
174
-
175
- class WorkspacePage < Page
176
- ##
177
- # Initialize the WorkspacePage
178
- # @param [Version] version Version that contains the resource
179
- # @param [Response] response Response from the API
180
- # @param [Hash] solution Path solution for the resource
181
- # @return [WorkspacePage] WorkspacePage
182
- def initialize(version, response, solution)
183
- super(version, response)
184
-
185
- # Path Solution
186
- @solution = solution
187
- end
188
-
189
- ##
190
- # Build an instance of WorkspaceInstance
191
- # @param [Hash] payload Payload response from the API
192
- # @return [WorkspaceInstance] WorkspaceInstance
193
- def get_instance(payload)
194
- WorkspaceInstance.new(@version, payload, )
195
- end
196
-
197
- ##
198
- # Provide a user friendly representation
199
- def to_s
200
- '<Twilio.Taskrouter.V1.WorkspacePage>'
201
- end
202
- end
203
-
204
- class WorkspaceContext < InstanceContext
205
- ##
206
- # Initialize the WorkspaceContext
207
- # @param [Version] version Version that contains the resource
208
- # @param [String] sid The sid
209
- # @return [WorkspaceContext] WorkspaceContext
210
- def initialize(version, sid)
211
- super(version)
212
-
213
- # Path Solution
214
- @solution = {sid: sid, }
215
- @uri = "/Workspaces/#{@solution[:sid]}"
216
-
217
- # Dependents
218
- @activities = nil
219
- @events = nil
220
- @tasks = nil
221
- @task_queues = nil
222
- @workers = nil
223
- @workflows = nil
224
- @statistics = nil
225
- @real_time_statistics = nil
226
- @cumulative_statistics = nil
227
- @task_channels = nil
228
- end
229
-
230
- ##
231
- # Fetch a WorkspaceInstance
232
- # @return [WorkspaceInstance] Fetched WorkspaceInstance
233
- def fetch
234
- params = Twilio::Values.of({})
235
-
236
- payload = @version.fetch(
237
- 'GET',
238
- @uri,
239
- params,
240
- )
241
-
242
- WorkspaceInstance.new(@version, payload, sid: @solution[:sid], )
243
- end
244
-
245
- ##
246
- # Update the WorkspaceInstance
247
- # @param [String] default_activity_sid The ID of the Activity that will be used
248
- # when new Workers are created in this Workspace.
249
- # @param [String] event_callback_url The Workspace will publish events to this
250
- # URL. You can use this to gather data for reporting. See
251
- # [Events][/docs/taskrouter/api/events] for more information.
252
- # @param [String] events_filter Use this parameter to receive webhooks on
253
- # EventCallbackUrl for specific events on a workspace. For example if
254
- # 'EventsFilter=task.created,task.canceled,worker.activity.update', then
255
- # TaskRouter will webhook to EventCallbackUrl only when a task is created,
256
- # canceled or a worker activity is updated.
257
- # @param [String] friendly_name Human readable description of this workspace (for
258
- # example "Sales Call Center" or "Customer Support Team")
259
- # @param [Boolean] multi_task_enabled Enable or Disable Multitasking by passing
260
- # either *true* or *False* with the POST request. Learn more by visiting
261
- # [Multitasking][/docs/taskrouter/multitasking].
262
- # @param [String] timeout_activity_sid The ID of the Activity that will be
263
- # assigned to a Worker when a Task reservation times out without a response.
264
- # @param [workspace.QueueOrder] prioritize_queue_order Use this parameter to
265
- # configure whether to prioritize LIFO or FIFO when workers are receiving Tasks
266
- # from combination of LIFO and FIFO TaskQueues. Default is FIFO. [Click
267
- # here][/docs/taskrouter/queue-ordering-last-first-out-lifo] to learn more about
268
- # LIFO and the use of the parameter.
269
- # @return [WorkspaceInstance] Updated WorkspaceInstance
270
- def update(default_activity_sid: :unset, event_callback_url: :unset, events_filter: :unset, friendly_name: :unset, multi_task_enabled: :unset, timeout_activity_sid: :unset, prioritize_queue_order: :unset)
271
- data = Twilio::Values.of({
272
- 'DefaultActivitySid' => default_activity_sid,
273
- 'EventCallbackUrl' => event_callback_url,
274
- 'EventsFilter' => events_filter,
275
- 'FriendlyName' => friendly_name,
276
- 'MultiTaskEnabled' => multi_task_enabled,
277
- 'TimeoutActivitySid' => timeout_activity_sid,
278
- 'PrioritizeQueueOrder' => prioritize_queue_order,
279
- })
280
-
281
- payload = @version.update(
282
- 'POST',
283
- @uri,
284
- data: data,
285
- )
286
-
287
- WorkspaceInstance.new(@version, payload, sid: @solution[:sid], )
288
- end
289
-
290
- ##
291
- # Deletes the WorkspaceInstance
292
- # @return [Boolean] true if delete succeeds, true otherwise
293
- def delete
294
- @version.delete('delete', @uri)
295
- end
296
-
297
- ##
298
- # Access the activities
299
- # @return [ActivityList]
300
- # @return [ActivityContext] if sid was passed.
301
- def activities(sid=:unset)
302
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
303
-
304
- if sid != :unset
305
- return ActivityContext.new(@version, @solution[:sid], sid, )
306
- end
307
-
308
- unless @activities
309
- @activities = ActivityList.new(@version, workspace_sid: @solution[:sid], )
310
- end
311
-
312
- @activities
313
- end
314
-
315
- ##
316
- # Access the events
317
- # @return [EventList]
318
- # @return [EventContext] if sid was passed.
319
- def events(sid=:unset)
320
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
321
-
322
- if sid != :unset
323
- return EventContext.new(@version, @solution[:sid], sid, )
324
- end
325
-
326
- unless @events
327
- @events = EventList.new(@version, workspace_sid: @solution[:sid], )
328
- end
329
-
330
- @events
331
- end
332
-
333
- ##
334
- # Access the tasks
335
- # @return [TaskList]
336
- # @return [TaskContext] if sid was passed.
337
- def tasks(sid=:unset)
338
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
339
-
340
- if sid != :unset
341
- return TaskContext.new(@version, @solution[:sid], sid, )
342
- end
343
-
344
- unless @tasks
345
- @tasks = TaskList.new(@version, workspace_sid: @solution[:sid], )
346
- end
347
-
348
- @tasks
349
- end
350
-
351
- ##
352
- # Access the task_queues
353
- # @return [TaskQueueList]
354
- # @return [TaskQueueContext] if sid was passed.
355
- def task_queues(sid=:unset)
356
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
357
-
358
- if sid != :unset
359
- return TaskQueueContext.new(@version, @solution[:sid], sid, )
360
- end
361
-
362
- unless @task_queues
363
- @task_queues = TaskQueueList.new(@version, workspace_sid: @solution[:sid], )
364
- end
365
-
366
- @task_queues
367
- end
368
-
369
- ##
370
- # Access the workers
371
- # @return [WorkerList]
372
- # @return [WorkerContext] if sid was passed.
373
- def workers(sid=:unset)
374
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
375
-
376
- if sid != :unset
377
- return WorkerContext.new(@version, @solution[:sid], sid, )
378
- end
379
-
380
- unless @workers
381
- @workers = WorkerList.new(@version, workspace_sid: @solution[:sid], )
382
- end
383
-
384
- @workers
385
- end
386
-
387
- ##
388
- # Access the workflows
389
- # @return [WorkflowList]
390
- # @return [WorkflowContext] if sid was passed.
391
- def workflows(sid=:unset)
392
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
393
-
394
- if sid != :unset
395
- return WorkflowContext.new(@version, @solution[:sid], sid, )
396
- end
397
-
398
- unless @workflows
399
- @workflows = WorkflowList.new(@version, workspace_sid: @solution[:sid], )
400
- end
401
-
402
- @workflows
403
- end
404
-
405
- ##
406
- # Access the statistics
407
- # @return [WorkspaceStatisticsList]
408
- # @return [WorkspaceStatisticsContext]
409
- def statistics
410
- WorkspaceStatisticsContext.new(@version, @solution[:sid], )
411
- end
412
-
413
- ##
414
- # Access the real_time_statistics
415
- # @return [WorkspaceRealTimeStatisticsList]
416
- # @return [WorkspaceRealTimeStatisticsContext]
417
- def real_time_statistics
418
- WorkspaceRealTimeStatisticsContext.new(@version, @solution[:sid], )
419
- end
420
-
421
- ##
422
- # Access the cumulative_statistics
423
- # @return [WorkspaceCumulativeStatisticsList]
424
- # @return [WorkspaceCumulativeStatisticsContext]
425
- def cumulative_statistics
426
- WorkspaceCumulativeStatisticsContext.new(@version, @solution[:sid], )
427
- end
428
-
429
- ##
430
- # Access the task_channels
431
- # @return [TaskChannelList]
432
- # @return [TaskChannelContext] if sid was passed.
433
- def task_channels(sid=:unset)
434
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
435
-
436
- if sid != :unset
437
- return TaskChannelContext.new(@version, @solution[:sid], sid, )
438
- end
439
-
440
- unless @task_channels
441
- @task_channels = TaskChannelList.new(@version, workspace_sid: @solution[:sid], )
442
- end
443
-
444
- @task_channels
445
- end
446
-
447
- ##
448
- # Provide a user friendly representation
449
- def to_s
450
- context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
451
- "#<Twilio.Taskrouter.V1.WorkspaceContext #{context}>"
452
- end
453
- end
128
+ end
129
+
130
+ ##
131
+ # Retrieve a single page of WorkspaceInstance records from the API.
132
+ # Request is executed immediately.
133
+ # @param [String] friendly_name The `friendly_name` of the Workspace resources to read. For example `Customer Support` or `2014 Election Campaign`.
134
+ # @param [String] page_token PageToken provided by the API
135
+ # @param [Integer] page_number Page Number, this value is simply for client state
136
+ # @param [Integer] page_size Number of records to return, defaults to 50
137
+ # @return [Page] Page of WorkspaceInstance
138
+ def page(friendly_name: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
139
+ params = Twilio::Values.of({
140
+ 'FriendlyName' => friendly_name,
141
+ 'PageToken' => page_token,
142
+ 'Page' => page_number,
143
+ 'PageSize' => page_size,
144
+ })
145
+ headers = Twilio::Values.of({})
146
+
147
+
148
+
149
+ response = @version.page('GET', @uri, params: params, headers: headers)
150
+
151
+ WorkspacePage.new(@version, response, @solution)
152
+ end
153
+
154
+ ##
155
+ # Retrieve a single page of WorkspaceInstance records from the API.
156
+ # Request is executed immediately.
157
+ # @param [String] target_url API-generated URL for the requested results page
158
+ # @return [Page] Page of WorkspaceInstance
159
+ def get_page(target_url)
160
+ response = @version.domain.request(
161
+ 'GET',
162
+ target_url
163
+ )
164
+ WorkspacePage.new(@version, response, @solution)
165
+ end
166
+
167
+
168
+
169
+ # Provide a user friendly representation
170
+ def to_s
171
+ '#<Twilio.Taskrouter.V1.WorkspaceList>'
172
+ end
173
+ end
174
+
175
+
176
+ class WorkspaceContext < InstanceContext
177
+ ##
178
+ # Initialize the WorkspaceContext
179
+ # @param [Version] version Version that contains the resource
180
+ # @param [String] sid The SID of the Workspace resource to update.
181
+ # @return [WorkspaceContext] WorkspaceContext
182
+ def initialize(version, sid)
183
+ super(version)
184
+
185
+ # Path Solution
186
+ @solution = { sid: sid, }
187
+ @uri = "/Workspaces/#{@solution[:sid]}"
188
+
189
+ # Dependents
190
+ @cumulative_statistics = nil
191
+ @task_queues = nil
192
+ @activities = nil
193
+ @real_time_statistics = nil
194
+ @tasks = nil
195
+ @workflows = nil
196
+ @events = nil
197
+ @workers = nil
198
+ @statistics = nil
199
+ @task_channels = nil
200
+ end
201
+ ##
202
+ # Delete the WorkspaceInstance
203
+ # @return [Boolean] True if delete succeeds, false otherwise
204
+ def delete
205
+
206
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
207
+
208
+
209
+
210
+ @version.delete('DELETE', @uri, headers: headers)
211
+ end
212
+
213
+ ##
214
+ # Fetch the WorkspaceInstance
215
+ # @return [WorkspaceInstance] Fetched WorkspaceInstance
216
+ def fetch
217
+
218
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
219
+
220
+
221
+
222
+
223
+
224
+ payload = @version.fetch('GET', @uri, headers: headers)
225
+ WorkspaceInstance.new(
226
+ @version,
227
+ payload,
228
+ sid: @solution[:sid],
229
+ )
230
+ end
231
+
232
+ ##
233
+ # Update the WorkspaceInstance
234
+ # @param [String] default_activity_sid The SID of the Activity that will be used when new Workers are created in the Workspace.
235
+ # @param [String] event_callback_url The URL we should call when an event occurs. See [Workspace Events](https://www.twilio.com/docs/taskrouter/api/event) for more information. This parameter supports Twilio's [Webhooks (HTTP callbacks) Connection Overrides](https://www.twilio.com/docs/usage/webhooks/webhooks-connection-overrides).
236
+ # @param [String] events_filter The list of Workspace events for which to call event_callback_url. For example if `EventsFilter=task.created,task.canceled,worker.activity.update`, then TaskRouter will call event_callback_url only when a task is created, canceled, or a Worker activity is updated.
237
+ # @param [String] friendly_name A descriptive string that you create to describe the Workspace resource. For example: `Sales Call Center` or `Customer Support Team`.
238
+ # @param [Boolean] multi_task_enabled Whether to enable multi-tasking. Can be: `true` to enable multi-tasking, or `false` to disable it. However, all workspaces should be maintained as multi-tasking. There is no default when omitting this parameter. A multi-tasking Workspace can't be updated to single-tasking unless it is not a Flex Project and another (legacy) single-tasking Workspace exists. Multi-tasking allows Workers to handle multiple Tasks simultaneously. In multi-tasking mode, each Worker can receive parallel reservations up to the per-channel maximums defined in the Workers section. In single-tasking mode (legacy mode), each Worker will only receive a new reservation when the previous task is completed. Learn more at [Multitasking](https://www.twilio.com/docs/taskrouter/multitasking).
239
+ # @param [String] timeout_activity_sid The SID of the Activity that will be assigned to a Worker when a Task reservation times out without a response.
240
+ # @param [QueueOrder] prioritize_queue_order
241
+ # @return [WorkspaceInstance] Updated WorkspaceInstance
242
+ def update(
243
+ default_activity_sid: :unset,
244
+ event_callback_url: :unset,
245
+ events_filter: :unset,
246
+ friendly_name: :unset,
247
+ multi_task_enabled: :unset,
248
+ timeout_activity_sid: :unset,
249
+ prioritize_queue_order: :unset
250
+ )
251
+
252
+ data = Twilio::Values.of({
253
+ 'DefaultActivitySid' => default_activity_sid,
254
+ 'EventCallbackUrl' => event_callback_url,
255
+ 'EventsFilter' => events_filter,
256
+ 'FriendlyName' => friendly_name,
257
+ 'MultiTaskEnabled' => multi_task_enabled,
258
+ 'TimeoutActivitySid' => timeout_activity_sid,
259
+ 'PrioritizeQueueOrder' => prioritize_queue_order,
260
+ })
261
+
262
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
263
+
264
+
265
+
266
+
267
+
268
+ payload = @version.update('POST', @uri, data: data, headers: headers)
269
+ WorkspaceInstance.new(
270
+ @version,
271
+ payload,
272
+ sid: @solution[:sid],
273
+ )
274
+ end
275
+
276
+ ##
277
+ # Access the cumulative_statistics
278
+ # @return [WorkspaceCumulativeStatisticsList]
279
+ # @return [WorkspaceCumulativeStatisticsContext]
280
+ def cumulative_statistics
281
+ WorkspaceCumulativeStatisticsContext.new(
282
+ @version,
283
+ @solution[:sid]
284
+ )
285
+ end
286
+ ##
287
+ # Access the task_queues
288
+ # @return [TaskQueueList]
289
+ # @return [TaskQueueContext] if sid was passed.
290
+ def task_queues(sid=:unset)
291
+
292
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
293
+
294
+ if sid != :unset
295
+ return TaskQueueContext.new(@version, @solution[:sid],sid )
296
+ end
297
+
298
+ unless @task_queues
299
+ @task_queues = TaskQueueList.new(
300
+ @version, workspace_sid: @solution[:sid], )
301
+ end
302
+
303
+ @task_queues
304
+ end
305
+ ##
306
+ # Access the activities
307
+ # @return [ActivityList]
308
+ # @return [ActivityContext] if sid was passed.
309
+ def activities(sid=:unset)
310
+
311
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
312
+
313
+ if sid != :unset
314
+ return ActivityContext.new(@version, @solution[:sid],sid )
315
+ end
316
+
317
+ unless @activities
318
+ @activities = ActivityList.new(
319
+ @version, workspace_sid: @solution[:sid], )
320
+ end
321
+
322
+ @activities
323
+ end
324
+ ##
325
+ # Access the real_time_statistics
326
+ # @return [WorkspaceRealTimeStatisticsList]
327
+ # @return [WorkspaceRealTimeStatisticsContext]
328
+ def real_time_statistics
329
+ WorkspaceRealTimeStatisticsContext.new(
330
+ @version,
331
+ @solution[:sid]
332
+ )
333
+ end
334
+ ##
335
+ # Access the tasks
336
+ # @return [TaskList]
337
+ # @return [TaskContext] if sid was passed.
338
+ def tasks(sid=:unset)
339
+
340
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
341
+
342
+ if sid != :unset
343
+ return TaskContext.new(@version, @solution[:sid],sid )
344
+ end
345
+
346
+ unless @tasks
347
+ @tasks = TaskList.new(
348
+ @version, workspace_sid: @solution[:sid], )
349
+ end
350
+
351
+ @tasks
352
+ end
353
+ ##
354
+ # Access the workflows
355
+ # @return [WorkflowList]
356
+ # @return [WorkflowContext] if sid was passed.
357
+ def workflows(sid=:unset)
358
+
359
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
360
+
361
+ if sid != :unset
362
+ return WorkflowContext.new(@version, @solution[:sid],sid )
363
+ end
364
+
365
+ unless @workflows
366
+ @workflows = WorkflowList.new(
367
+ @version, workspace_sid: @solution[:sid], )
368
+ end
369
+
370
+ @workflows
371
+ end
372
+ ##
373
+ # Access the events
374
+ # @return [EventList]
375
+ # @return [EventContext] if sid was passed.
376
+ def events(sid=:unset)
377
+
378
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
379
+
380
+ if sid != :unset
381
+ return EventContext.new(@version, @solution[:sid],sid )
382
+ end
383
+
384
+ unless @events
385
+ @events = EventList.new(
386
+ @version, workspace_sid: @solution[:sid], )
387
+ end
388
+
389
+ @events
390
+ end
391
+ ##
392
+ # Access the workers
393
+ # @return [WorkerList]
394
+ # @return [WorkerContext] if sid was passed.
395
+ def workers(sid=:unset)
396
+
397
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
398
+
399
+ if sid != :unset
400
+ return WorkerContext.new(@version, @solution[:sid],sid )
401
+ end
402
+
403
+ unless @workers
404
+ @workers = WorkerList.new(
405
+ @version, workspace_sid: @solution[:sid], )
406
+ end
407
+
408
+ @workers
409
+ end
410
+ ##
411
+ # Access the statistics
412
+ # @return [WorkspaceStatisticsList]
413
+ # @return [WorkspaceStatisticsContext]
414
+ def statistics
415
+ WorkspaceStatisticsContext.new(
416
+ @version,
417
+ @solution[:sid]
418
+ )
419
+ end
420
+ ##
421
+ # Access the task_channels
422
+ # @return [TaskChannelList]
423
+ # @return [TaskChannelContext] if sid was passed.
424
+ def task_channels(sid=:unset)
425
+
426
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
427
+
428
+ if sid != :unset
429
+ return TaskChannelContext.new(@version, @solution[:sid],sid )
430
+ end
431
+
432
+ unless @task_channels
433
+ @task_channels = TaskChannelList.new(
434
+ @version, workspace_sid: @solution[:sid], )
435
+ end
436
+
437
+ @task_channels
438
+ end
439
+
440
+ ##
441
+ # Provide a user friendly representation
442
+ def to_s
443
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
444
+ "#<Twilio.Taskrouter.V1.WorkspaceContext #{context}>"
445
+ end
446
+
447
+ ##
448
+ # Provide a detailed, user friendly representation
449
+ def inspect
450
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
451
+ "#<Twilio.Taskrouter.V1.WorkspaceContext #{context}>"
452
+ end
453
+ end
454
+
455
+ class WorkspacePage < Page
456
+ ##
457
+ # Initialize the WorkspacePage
458
+ # @param [Version] version Version that contains the resource
459
+ # @param [Response] response Response from the API
460
+ # @param [Hash] solution Path solution for the resource
461
+ # @return [WorkspacePage] WorkspacePage
462
+ def initialize(version, response, solution)
463
+ super(version, response)
464
+
465
+ # Path Solution
466
+ @solution = solution
467
+ end
468
+
469
+ ##
470
+ # Build an instance of WorkspaceInstance
471
+ # @param [Hash] payload Payload response from the API
472
+ # @return [WorkspaceInstance] WorkspaceInstance
473
+ def get_instance(payload)
474
+ WorkspaceInstance.new(@version, payload)
475
+ end
476
+
477
+ ##
478
+ # Provide a user friendly representation
479
+ def to_s
480
+ '<Twilio.Taskrouter.V1.WorkspacePage>'
481
+ end
482
+ end
483
+ class WorkspaceInstance < InstanceResource
484
+ ##
485
+ # Initialize the WorkspaceInstance
486
+ # @param [Version] version Version that contains the resource
487
+ # @param [Hash] payload payload that contains response from Twilio
488
+ # @param [String] account_sid The SID of the
489
+ # {Account}[https://www.twilio.com/docs/iam/api/account] that created this Workspace
490
+ # resource.
491
+ # @param [String] sid The SID of the Call resource to fetch.
492
+ # @return [WorkspaceInstance] WorkspaceInstance
493
+ def initialize(version, payload , sid: nil)
494
+ super(version)
495
+
496
+ # Marshaled Properties
497
+ @properties = {
498
+ 'account_sid' => payload['account_sid'],
499
+ 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
500
+ 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
501
+ 'default_activity_name' => payload['default_activity_name'],
502
+ 'default_activity_sid' => payload['default_activity_sid'],
503
+ 'event_callback_url' => payload['event_callback_url'],
504
+ 'events_filter' => payload['events_filter'],
505
+ 'friendly_name' => payload['friendly_name'],
506
+ 'multi_task_enabled' => payload['multi_task_enabled'],
507
+ 'sid' => payload['sid'],
508
+ 'timeout_activity_name' => payload['timeout_activity_name'],
509
+ 'timeout_activity_sid' => payload['timeout_activity_sid'],
510
+ 'prioritize_queue_order' => payload['prioritize_queue_order'],
511
+ 'url' => payload['url'],
512
+ 'links' => payload['links'],
513
+ }
514
+
515
+ # Context
516
+ @instance_context = nil
517
+ @params = { 'sid' => sid || @properties['sid'] , }
518
+ end
519
+
520
+ ##
521
+ # Generate an instance context for the instance, the context is capable of
522
+ # performing various actions. All instance actions are proxied to the context
523
+ # @return [WorkspaceContext] CallContext for this CallInstance
524
+ def context
525
+ unless @instance_context
526
+ @instance_context = WorkspaceContext.new(@version , @params['sid'])
527
+ end
528
+ @instance_context
529
+ end
530
+
531
+ ##
532
+ # @return [String] The SID of the [Account](https://www.twilio.com/docs/iam/api/account) that created the Workspace resource.
533
+ def account_sid
534
+ @properties['account_sid']
535
+ end
536
+
537
+ ##
538
+ # @return [Time] The date and time in GMT when the resource was created specified in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format.
539
+ def date_created
540
+ @properties['date_created']
541
+ end
542
+
543
+ ##
544
+ # @return [Time] The date and time in GMT when the resource was last updated specified in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format.
545
+ def date_updated
546
+ @properties['date_updated']
547
+ end
548
+
549
+ ##
550
+ # @return [String] The name of the default activity.
551
+ def default_activity_name
552
+ @properties['default_activity_name']
553
+ end
554
+
555
+ ##
556
+ # @return [String] The SID of the Activity that will be used when new Workers are created in the Workspace.
557
+ def default_activity_sid
558
+ @properties['default_activity_sid']
559
+ end
560
+
561
+ ##
562
+ # @return [String] The URL we call when an event occurs. If provided, the Workspace will publish events to this URL, for example, to collect data for reporting. See [Workspace Events](https://www.twilio.com/docs/taskrouter/api/event) for more information. This parameter supports Twilio's [Webhooks (HTTP callbacks) Connection Overrides](https://www.twilio.com/docs/usage/webhooks/webhooks-connection-overrides).
563
+ def event_callback_url
564
+ @properties['event_callback_url']
565
+ end
566
+
567
+ ##
568
+ # @return [String] The list of Workspace events for which to call `event_callback_url`. For example, if `EventsFilter=task.created, task.canceled, worker.activity.update`, then TaskRouter will call event_callback_url only when a task is created, canceled, or a Worker activity is updated.
569
+ def events_filter
570
+ @properties['events_filter']
571
+ end
572
+
573
+ ##
574
+ # @return [String] The string that you assigned to describe the Workspace resource. For example `Customer Support` or `2014 Election Campaign`.
575
+ def friendly_name
576
+ @properties['friendly_name']
577
+ end
578
+
579
+ ##
580
+ # @return [Boolean] Whether multi-tasking is enabled. The default is `true`, which enables multi-tasking. Multi-tasking allows Workers to handle multiple Tasks simultaneously. When enabled (`true`), each Worker can receive parallel reservations up to the per-channel maximums defined in the Workers section. In single-tasking each Worker would only receive a new reservation when the previous task is completed. Learn more at [Multitasking](https://www.twilio.com/docs/taskrouter/multitasking).
581
+ def multi_task_enabled
582
+ @properties['multi_task_enabled']
583
+ end
584
+
585
+ ##
586
+ # @return [String] The unique string that we created to identify the Workspace resource.
587
+ def sid
588
+ @properties['sid']
589
+ end
590
+
591
+ ##
592
+ # @return [String] The name of the timeout activity.
593
+ def timeout_activity_name
594
+ @properties['timeout_activity_name']
595
+ end
596
+
597
+ ##
598
+ # @return [String] The SID of the Activity that will be assigned to a Worker when a Task reservation times out without a response.
599
+ def timeout_activity_sid
600
+ @properties['timeout_activity_sid']
601
+ end
602
+
603
+ ##
604
+ # @return [QueueOrder]
605
+ def prioritize_queue_order
606
+ @properties['prioritize_queue_order']
607
+ end
608
+
609
+ ##
610
+ # @return [String] The absolute URL of the Workspace resource.
611
+ def url
612
+ @properties['url']
613
+ end
614
+
615
+ ##
616
+ # @return [Hash] The URLs of related resources.
617
+ def links
618
+ @properties['links']
619
+ end
620
+
621
+ ##
622
+ # Delete the WorkspaceInstance
623
+ # @return [Boolean] True if delete succeeds, false otherwise
624
+ def delete
625
+
626
+ context.delete
627
+ end
628
+
629
+ ##
630
+ # Fetch the WorkspaceInstance
631
+ # @return [WorkspaceInstance] Fetched WorkspaceInstance
632
+ def fetch
633
+
634
+ context.fetch
635
+ end
636
+
637
+ ##
638
+ # Update the WorkspaceInstance
639
+ # @param [String] default_activity_sid The SID of the Activity that will be used when new Workers are created in the Workspace.
640
+ # @param [String] event_callback_url The URL we should call when an event occurs. See [Workspace Events](https://www.twilio.com/docs/taskrouter/api/event) for more information. This parameter supports Twilio's [Webhooks (HTTP callbacks) Connection Overrides](https://www.twilio.com/docs/usage/webhooks/webhooks-connection-overrides).
641
+ # @param [String] events_filter The list of Workspace events for which to call event_callback_url. For example if `EventsFilter=task.created,task.canceled,worker.activity.update`, then TaskRouter will call event_callback_url only when a task is created, canceled, or a Worker activity is updated.
642
+ # @param [String] friendly_name A descriptive string that you create to describe the Workspace resource. For example: `Sales Call Center` or `Customer Support Team`.
643
+ # @param [Boolean] multi_task_enabled Whether to enable multi-tasking. Can be: `true` to enable multi-tasking, or `false` to disable it. However, all workspaces should be maintained as multi-tasking. There is no default when omitting this parameter. A multi-tasking Workspace can't be updated to single-tasking unless it is not a Flex Project and another (legacy) single-tasking Workspace exists. Multi-tasking allows Workers to handle multiple Tasks simultaneously. In multi-tasking mode, each Worker can receive parallel reservations up to the per-channel maximums defined in the Workers section. In single-tasking mode (legacy mode), each Worker will only receive a new reservation when the previous task is completed. Learn more at [Multitasking](https://www.twilio.com/docs/taskrouter/multitasking).
644
+ # @param [String] timeout_activity_sid The SID of the Activity that will be assigned to a Worker when a Task reservation times out without a response.
645
+ # @param [QueueOrder] prioritize_queue_order
646
+ # @return [WorkspaceInstance] Updated WorkspaceInstance
647
+ def update(
648
+ default_activity_sid: :unset,
649
+ event_callback_url: :unset,
650
+ events_filter: :unset,
651
+ friendly_name: :unset,
652
+ multi_task_enabled: :unset,
653
+ timeout_activity_sid: :unset,
654
+ prioritize_queue_order: :unset
655
+ )
656
+
657
+ context.update(
658
+ default_activity_sid: default_activity_sid,
659
+ event_callback_url: event_callback_url,
660
+ events_filter: events_filter,
661
+ friendly_name: friendly_name,
662
+ multi_task_enabled: multi_task_enabled,
663
+ timeout_activity_sid: timeout_activity_sid,
664
+ prioritize_queue_order: prioritize_queue_order,
665
+ )
666
+ end
667
+
668
+ ##
669
+ # Access the cumulative_statistics
670
+ # @return [cumulative_statistics] cumulative_statistics
671
+ def cumulative_statistics
672
+ context.cumulative_statistics
673
+ end
674
+
675
+ ##
676
+ # Access the task_queues
677
+ # @return [task_queues] task_queues
678
+ def task_queues
679
+ context.task_queues
680
+ end
681
+
682
+ ##
683
+ # Access the activities
684
+ # @return [activities] activities
685
+ def activities
686
+ context.activities
687
+ end
688
+
689
+ ##
690
+ # Access the real_time_statistics
691
+ # @return [real_time_statistics] real_time_statistics
692
+ def real_time_statistics
693
+ context.real_time_statistics
694
+ end
695
+
696
+ ##
697
+ # Access the tasks
698
+ # @return [tasks] tasks
699
+ def tasks
700
+ context.tasks
701
+ end
702
+
703
+ ##
704
+ # Access the workflows
705
+ # @return [workflows] workflows
706
+ def workflows
707
+ context.workflows
708
+ end
709
+
710
+ ##
711
+ # Access the events
712
+ # @return [events] events
713
+ def events
714
+ context.events
715
+ end
716
+
717
+ ##
718
+ # Access the workers
719
+ # @return [workers] workers
720
+ def workers
721
+ context.workers
722
+ end
723
+
724
+ ##
725
+ # Access the statistics
726
+ # @return [statistics] statistics
727
+ def statistics
728
+ context.statistics
729
+ end
730
+
731
+ ##
732
+ # Access the task_channels
733
+ # @return [task_channels] task_channels
734
+ def task_channels
735
+ context.task_channels
736
+ end
737
+
738
+ ##
739
+ # Provide a user friendly representation
740
+ def to_s
741
+ values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
742
+ "<Twilio.Taskrouter.V1.WorkspaceInstance #{values}>"
743
+ end
744
+
745
+ ##
746
+ # Provide a detailed, user friendly representation
747
+ def inspect
748
+ values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
749
+ "<Twilio.Taskrouter.V1.WorkspaceInstance #{values}>"
750
+ end
751
+ end
454
752
 
455
- class WorkspaceInstance < InstanceResource
456
- ##
457
- # Initialize the WorkspaceInstance
458
- # @param [Version] version Version that contains the resource
459
- # @param [Hash] payload payload that contains response from Twilio
460
- # @param [String] sid The sid
461
- # @return [WorkspaceInstance] WorkspaceInstance
462
- def initialize(version, payload, sid: nil)
463
- super(version)
464
-
465
- # Marshaled Properties
466
- @properties = {
467
- 'account_sid' => payload['account_sid'],
468
- 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
469
- 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
470
- 'default_activity_name' => payload['default_activity_name'],
471
- 'default_activity_sid' => payload['default_activity_sid'],
472
- 'event_callback_url' => payload['event_callback_url'],
473
- 'events_filter' => payload['events_filter'],
474
- 'friendly_name' => payload['friendly_name'],
475
- 'multi_task_enabled' => payload['multi_task_enabled'],
476
- 'sid' => payload['sid'],
477
- 'timeout_activity_name' => payload['timeout_activity_name'],
478
- 'timeout_activity_sid' => payload['timeout_activity_sid'],
479
- 'prioritize_queue_order' => payload['prioritize_queue_order'],
480
- 'url' => payload['url'],
481
- 'links' => payload['links'],
482
- }
483
-
484
- # Context
485
- @instance_context = nil
486
- @params = {'sid' => sid || @properties['sid'], }
487
- end
488
-
489
- ##
490
- # Generate an instance context for the instance, the context is capable of
491
- # performing various actions. All instance actions are proxied to the context
492
- # @return [WorkspaceContext] WorkspaceContext for this WorkspaceInstance
493
- def context
494
- unless @instance_context
495
- @instance_context = WorkspaceContext.new(@version, @params['sid'], )
496
753
  end
497
- @instance_context
498
- end
499
-
500
- ##
501
- # @return [String] The ID of the account that owns this Workflow
502
- def account_sid
503
- @properties['account_sid']
504
- end
505
-
506
- ##
507
- # @return [Time] The time the Workspace was created, given as GMT in ISO 8601 format.
508
- def date_created
509
- @properties['date_created']
510
- end
511
-
512
- ##
513
- # @return [Time] The time the Workspace was last updated, given as GMT in ISO 8601 format.
514
- def date_updated
515
- @properties['date_updated']
516
- end
517
-
518
- ##
519
- # @return [String] The human readable name of the default activity.
520
- def default_activity_name
521
- @properties['default_activity_name']
522
- end
523
-
524
- ##
525
- # @return [String] The ID of the Activity that will be used when new Workers are created in this Workspace.
526
- def default_activity_sid
527
- @properties['default_activity_sid']
528
- end
529
-
530
- ##
531
- # @return [String] If provided, the Workspace will publish events to this URL.
532
- def event_callback_url
533
- @properties['event_callback_url']
534
- end
535
-
536
- ##
537
- # @return [String] Use this parameter to receive webhooks on EventCallbackUrl for specific events on a workspace.
538
- def events_filter
539
- @properties['events_filter']
540
- end
541
-
542
- ##
543
- # @return [String] Filter by a workspace's friendly name.
544
- def friendly_name
545
- @properties['friendly_name']
546
- end
547
-
548
- ##
549
- # @return [Boolean] Multi tasking allows workers to handle multiple tasks simultaneously.
550
- def multi_task_enabled
551
- @properties['multi_task_enabled']
552
- end
553
-
554
- ##
555
- # @return [String] The unique ID of the Workspace
556
- def sid
557
- @properties['sid']
558
- end
559
-
560
- ##
561
- # @return [String] The human readable name of the timeout activity.
562
- def timeout_activity_name
563
- @properties['timeout_activity_name']
564
- end
565
-
566
- ##
567
- # @return [String] The ID of the Activity that will be assigned to a Worker when a Task reservation times out without a response.
568
- def timeout_activity_sid
569
- @properties['timeout_activity_sid']
570
- end
571
-
572
- ##
573
- # @return [workspace.QueueOrder] Use this parameter to configure whether to prioritize LIFO or FIFO when workers are receiving Tasks from combination of LIFO and FIFO TaskQueues.
574
- def prioritize_queue_order
575
- @properties['prioritize_queue_order']
576
- end
577
-
578
- ##
579
- # @return [String] The url
580
- def url
581
- @properties['url']
582
- end
583
-
584
- ##
585
- # @return [String] The links
586
- def links
587
- @properties['links']
588
- end
589
-
590
- ##
591
- # Fetch a WorkspaceInstance
592
- # @return [WorkspaceInstance] Fetched WorkspaceInstance
593
- def fetch
594
- context.fetch
595
- end
596
-
597
- ##
598
- # Update the WorkspaceInstance
599
- # @param [String] default_activity_sid The ID of the Activity that will be used
600
- # when new Workers are created in this Workspace.
601
- # @param [String] event_callback_url The Workspace will publish events to this
602
- # URL. You can use this to gather data for reporting. See
603
- # [Events][/docs/taskrouter/api/events] for more information.
604
- # @param [String] events_filter Use this parameter to receive webhooks on
605
- # EventCallbackUrl for specific events on a workspace. For example if
606
- # 'EventsFilter=task.created,task.canceled,worker.activity.update', then
607
- # TaskRouter will webhook to EventCallbackUrl only when a task is created,
608
- # canceled or a worker activity is updated.
609
- # @param [String] friendly_name Human readable description of this workspace (for
610
- # example "Sales Call Center" or "Customer Support Team")
611
- # @param [Boolean] multi_task_enabled Enable or Disable Multitasking by passing
612
- # either *true* or *False* with the POST request. Learn more by visiting
613
- # [Multitasking][/docs/taskrouter/multitasking].
614
- # @param [String] timeout_activity_sid The ID of the Activity that will be
615
- # assigned to a Worker when a Task reservation times out without a response.
616
- # @param [workspace.QueueOrder] prioritize_queue_order Use this parameter to
617
- # configure whether to prioritize LIFO or FIFO when workers are receiving Tasks
618
- # from combination of LIFO and FIFO TaskQueues. Default is FIFO. [Click
619
- # here][/docs/taskrouter/queue-ordering-last-first-out-lifo] to learn more about
620
- # LIFO and the use of the parameter.
621
- # @return [WorkspaceInstance] Updated WorkspaceInstance
622
- def update(default_activity_sid: :unset, event_callback_url: :unset, events_filter: :unset, friendly_name: :unset, multi_task_enabled: :unset, timeout_activity_sid: :unset, prioritize_queue_order: :unset)
623
- context.update(
624
- default_activity_sid: default_activity_sid,
625
- event_callback_url: event_callback_url,
626
- events_filter: events_filter,
627
- friendly_name: friendly_name,
628
- multi_task_enabled: multi_task_enabled,
629
- timeout_activity_sid: timeout_activity_sid,
630
- prioritize_queue_order: prioritize_queue_order,
631
- )
632
- end
633
-
634
- ##
635
- # Deletes the WorkspaceInstance
636
- # @return [Boolean] true if delete succeeds, true otherwise
637
- def delete
638
- context.delete
639
- end
640
-
641
- ##
642
- # Access the activities
643
- # @return [activities] activities
644
- def activities
645
- context.activities
646
- end
647
-
648
- ##
649
- # Access the events
650
- # @return [events] events
651
- def events
652
- context.events
653
- end
654
-
655
- ##
656
- # Access the tasks
657
- # @return [tasks] tasks
658
- def tasks
659
- context.tasks
660
- end
661
-
662
- ##
663
- # Access the task_queues
664
- # @return [task_queues] task_queues
665
- def task_queues
666
- context.task_queues
667
- end
668
-
669
- ##
670
- # Access the workers
671
- # @return [workers] workers
672
- def workers
673
- context.workers
674
- end
675
-
676
- ##
677
- # Access the workflows
678
- # @return [workflows] workflows
679
- def workflows
680
- context.workflows
681
- end
682
-
683
- ##
684
- # Access the statistics
685
- # @return [statistics] statistics
686
- def statistics
687
- context.statistics
688
- end
689
-
690
- ##
691
- # Access the real_time_statistics
692
- # @return [real_time_statistics] real_time_statistics
693
- def real_time_statistics
694
- context.real_time_statistics
695
- end
696
-
697
- ##
698
- # Access the cumulative_statistics
699
- # @return [cumulative_statistics] cumulative_statistics
700
- def cumulative_statistics
701
- context.cumulative_statistics
702
- end
703
-
704
- ##
705
- # Access the task_channels
706
- # @return [task_channels] task_channels
707
- def task_channels
708
- context.task_channels
709
- end
710
-
711
- ##
712
- # Provide a user friendly representation
713
- def to_s
714
- values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
715
- "<Twilio.Taskrouter.V1.WorkspaceInstance #{values}>"
716
- end
717
-
718
- ##
719
- # Provide a detailed, user friendly representation
720
- def inspect
721
- values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
722
- "<Twilio.Taskrouter.V1.WorkspaceInstance #{values}>"
723
- end
724
754
  end
725
- end
726
755
  end
727
- end
728
- end
756
+ end