twilio-ruby 5.46.0 → 7.10.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1217) hide show
  1. checksums.yaml +5 -5
  2. data/.dockerignore +1 -1
  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 +9 -1
  7. data/.rubocop.yml +2 -1
  8. data/.rubocop_todo.yml +91 -28
  9. data/CHANGES.md +2333 -0
  10. data/CONTRIBUTING.md +11 -9
  11. data/Dockerfile +2 -1
  12. data/Gemfile +6 -0
  13. data/LICENSE +1 -1
  14. data/Makefile +18 -11
  15. data/PULL_REQUEST_TEMPLATE.md +1 -1
  16. data/README.md +158 -38
  17. data/UPGRADE.md +21 -0
  18. data/advanced-examples/custom-http-client.md +170 -0
  19. data/cluster/cluster_oauth_spec.rb +19 -0
  20. data/cluster/cluster_orgs_spec.rb +40 -0
  21. data/cluster/cluster_spec.rb +75 -0
  22. data/examples/examples.rb +1 -1
  23. data/examples/public_oauth.rb +13 -0
  24. data/lib/rack/twilio_webhook_authentication.rb +25 -1
  25. data/lib/twilio-ruby/auth_strategy/auth_strategy.rb +19 -0
  26. data/lib/twilio-ruby/auth_strategy/no_auth_strategy.rb +17 -0
  27. data/lib/twilio-ruby/auth_strategy/token_auth_strategy.rb +39 -0
  28. data/lib/twilio-ruby/base/client_base.rb +131 -0
  29. data/lib/twilio-ruby/credential/auth_type.rb +17 -0
  30. data/lib/twilio-ruby/credential/client_credential_provider.rb +28 -0
  31. data/lib/twilio-ruby/credential/credential_provider.rb +11 -0
  32. data/lib/twilio-ruby/credential/orgs_credential_provider.rb +30 -0
  33. data/lib/twilio-ruby/framework/request.rb +8 -1
  34. data/lib/twilio-ruby/framework/rest/api_v1_version.rb +22 -0
  35. data/lib/twilio-ruby/framework/rest/domain.rb +35 -0
  36. data/lib/twilio-ruby/framework/rest/error.rb +66 -0
  37. data/lib/twilio-ruby/framework/rest/page.rb +104 -0
  38. data/lib/twilio-ruby/framework/rest/page_metadata.rb +83 -0
  39. data/lib/twilio-ruby/framework/rest/resource.rb +39 -0
  40. data/lib/twilio-ruby/framework/rest/token_page.rb +73 -0
  41. data/lib/twilio-ruby/framework/rest/version.rb +240 -0
  42. data/lib/twilio-ruby/http/client_token_manager.rb +31 -0
  43. data/lib/twilio-ruby/http/http_client.rb +42 -9
  44. data/lib/twilio-ruby/http/org_token_manager.rb +31 -0
  45. data/lib/twilio-ruby/http.rb +5 -0
  46. data/lib/twilio-ruby/jwt/access_token.rb +13 -59
  47. data/lib/twilio-ruby/rest/accounts/v1/auth_token_promotion.rb +338 -176
  48. data/lib/twilio-ruby/rest/accounts/v1/bulk_consents.rb +231 -0
  49. data/lib/twilio-ruby/rest/accounts/v1/bulk_contacts.rb +231 -0
  50. data/lib/twilio-ruby/rest/accounts/v1/credential/aws.rb +644 -332
  51. data/lib/twilio-ruby/rest/accounts/v1/credential/public_key.rb +644 -332
  52. data/lib/twilio-ruby/rest/accounts/v1/credential.rb +185 -114
  53. data/lib/twilio-ruby/rest/accounts/v1/messaging_geopermissions.rb +285 -0
  54. data/lib/twilio-ruby/rest/accounts/v1/safelist.rb +336 -0
  55. data/lib/twilio-ruby/rest/accounts/v1/secondary_auth_token.rb +378 -190
  56. data/lib/twilio-ruby/rest/accounts/v1.rb +69 -42
  57. data/lib/twilio-ruby/rest/accounts.rb +4 -34
  58. data/lib/twilio-ruby/rest/accounts_base.rb +38 -0
  59. data/lib/twilio-ruby/rest/api/v2010/account/address/dependent_phone_number.rb +459 -365
  60. data/lib/twilio-ruby/rest/api/v2010/account/address.rb +886 -514
  61. data/lib/twilio-ruby/rest/api/v2010/account/application.rb +977 -586
  62. data/lib/twilio-ruby/rest/api/v2010/account/authorized_connect_app.rb +482 -320
  63. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/local.rb +519 -0
  64. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/machine_to_machine.rb +519 -0
  65. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/mobile.rb +519 -0
  66. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/national.rb +519 -0
  67. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/shared_cost.rb +519 -0
  68. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/toll_free.rb +519 -0
  69. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/voip.rb +519 -0
  70. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country.rb +601 -0
  71. data/lib/twilio-ruby/rest/api/v2010/account/balance.rb +231 -118
  72. data/lib/twilio-ruby/rest/api/v2010/account/call/event.rb +289 -192
  73. data/lib/twilio-ruby/rest/api/v2010/account/call/notification.rb +578 -417
  74. data/lib/twilio-ruby/rest/api/v2010/account/call/payment.rb +556 -364
  75. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +791 -511
  76. data/lib/twilio-ruby/rest/api/v2010/account/call/siprec.rb +1669 -0
  77. data/lib/twilio-ruby/rest/api/v2010/account/call/stream.rb +1669 -0
  78. data/lib/twilio-ruby/rest/api/v2010/account/call/transcription.rb +541 -0
  79. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message.rb +269 -0
  80. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message_subscription.rb +420 -0
  81. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +1368 -931
  82. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +1124 -713
  83. data/lib/twilio-ruby/rest/api/v2010/account/conference/recording.rb +694 -458
  84. data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +719 -493
  85. data/lib/twilio-ruby/rest/api/v2010/account/connect_app.rb +679 -407
  86. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension.rb +483 -344
  87. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on.rb +627 -416
  88. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +737 -547
  89. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +737 -546
  90. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +737 -546
  91. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +1261 -896
  92. data/lib/twilio-ruby/rest/api/v2010/account/key.rb +567 -302
  93. data/lib/twilio-ruby/rest/api/v2010/account/message/feedback.rb +268 -164
  94. data/lib/twilio-ruby/rest/api/v2010/account/message/media.rb +540 -350
  95. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +970 -612
  96. data/lib/twilio-ruby/rest/api/v2010/account/new_key.rb +246 -125
  97. data/lib/twilio-ruby/rest/api/v2010/account/new_signing_key.rb +246 -125
  98. data/lib/twilio-ruby/rest/api/v2010/account/notification.rb +577 -399
  99. data/lib/twilio-ruby/rest/api/v2010/account/outgoing_caller_id.rb +604 -358
  100. data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +553 -338
  101. data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +702 -390
  102. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload/data.rb +343 -0
  103. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload.rb +572 -378
  104. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result.rb +560 -383
  105. data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +558 -372
  106. data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +718 -486
  107. data/lib/twilio-ruby/rest/api/v2010/account/short_code.rb +644 -408
  108. data/lib/twilio-ruby/rest/api/v2010/account/signing_key.rb +567 -306
  109. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list/credential.rb +642 -359
  110. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list.rb +667 -371
  111. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls/auth_calls_credential_list_mapping.rb +579 -0
  112. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls/auth_calls_ip_access_control_list_mapping.rb +579 -0
  113. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls.rb +204 -0
  114. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_registrations/auth_registrations_credential_list_mapping.rb +579 -0
  115. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_registrations.rb +190 -0
  116. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types.rb +158 -103
  117. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb +564 -331
  118. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/ip_access_control_list_mapping.rb +564 -330
  119. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +987 -641
  120. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +694 -418
  121. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb +667 -372
  122. data/lib/twilio-ruby/rest/api/v2010/account/sip.rb +205 -150
  123. data/lib/twilio-ruby/rest/api/v2010/account/token.rb +258 -139
  124. data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +557 -350
  125. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +407 -335
  126. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +407 -335
  127. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +407 -335
  128. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +407 -335
  129. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +407 -335
  130. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +407 -335
  131. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +407 -335
  132. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +407 -335
  133. data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +478 -416
  134. data/lib/twilio-ruby/rest/api/v2010/account/usage/trigger.rb +785 -484
  135. data/lib/twilio-ruby/rest/api/v2010/account/usage.rb +176 -104
  136. data/lib/twilio-ruby/rest/api/v2010/account/validation_request.rb +278 -150
  137. data/lib/twilio-ruby/rest/api/v2010/account.rb +1229 -943
  138. data/lib/twilio-ruby/rest/api/v2010.rb +126 -147
  139. data/lib/twilio-ruby/rest/api.rb +26 -35
  140. data/lib/twilio-ruby/rest/api_base.rb +38 -0
  141. data/lib/twilio-ruby/rest/assistants/v1/assistant/assistants_knowledge.rb +550 -0
  142. data/lib/twilio-ruby/rest/assistants/v1/assistant/assistants_tool.rb +550 -0
  143. data/lib/twilio-ruby/rest/assistants/v1/assistant/feedback.rb +423 -0
  144. data/lib/twilio-ruby/rest/assistants/v1/assistant/message.rb +296 -0
  145. data/lib/twilio-ruby/rest/assistants/v1/assistant.rb +918 -0
  146. data/lib/twilio-ruby/rest/assistants/v1/knowledge/chunk.rb +317 -0
  147. data/lib/twilio-ruby/rest/assistants/v1/knowledge/knowledge_status.rb +349 -0
  148. data/lib/twilio-ruby/rest/assistants/v1/knowledge.rb +862 -0
  149. data/lib/twilio-ruby/rest/assistants/v1/policy.rb +356 -0
  150. data/lib/twilio-ruby/rest/assistants/v1/session/message.rb +352 -0
  151. data/lib/twilio-ruby/rest/assistants/v1/session.rb +493 -0
  152. data/lib/twilio-ruby/rest/assistants/v1/tool.rb +838 -0
  153. data/lib/twilio-ruby/rest/assistants/v1.rb +100 -0
  154. data/lib/twilio-ruby/rest/assistants.rb +6 -0
  155. data/lib/twilio-ruby/rest/assistants_base.rb +38 -0
  156. data/lib/twilio-ruby/rest/bulkexports/v1/export/day.rb +468 -287
  157. data/lib/twilio-ruby/rest/bulkexports/v1/export/export_custom_job.rb +440 -271
  158. data/lib/twilio-ruby/rest/bulkexports/v1/export/job.rb +438 -242
  159. data/lib/twilio-ruby/rest/bulkexports/v1/export.rb +389 -243
  160. data/lib/twilio-ruby/rest/bulkexports/v1/export_configuration.rb +430 -224
  161. data/lib/twilio-ruby/rest/bulkexports/v1.rb +57 -53
  162. data/lib/twilio-ruby/rest/bulkexports.rb +3 -34
  163. data/lib/twilio-ruby/rest/bulkexports_base.rb +38 -0
  164. data/lib/twilio-ruby/rest/chat/v1/credential.rb +719 -403
  165. data/lib/twilio-ruby/rest/chat/v1/service/channel/invite.rb +613 -391
  166. data/lib/twilio-ruby/rest/chat/v1/service/channel/member.rb +704 -440
  167. data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +722 -437
  168. data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +822 -515
  169. data/lib/twilio-ruby/rest/chat/v1/service/role.rb +672 -367
  170. data/lib/twilio-ruby/rest/chat/v1/service/user/user_channel.rb +331 -237
  171. data/lib/twilio-ruby/rest/chat/v1/service/user.rb +750 -440
  172. data/lib/twilio-ruby/rest/chat/v1/service.rb +1287 -894
  173. data/lib/twilio-ruby/rest/chat/v1.rb +57 -53
  174. data/lib/twilio-ruby/rest/chat/v2/credential.rb +719 -401
  175. data/lib/twilio-ruby/rest/chat/v2/service/binding.rb +570 -370
  176. data/lib/twilio-ruby/rest/chat/v2/service/channel/invite.rb +613 -386
  177. data/lib/twilio-ruby/rest/chat/v2/service/channel/member.rb +799 -527
  178. data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +825 -533
  179. data/lib/twilio-ruby/rest/chat/v2/service/channel/webhook.rb +746 -467
  180. data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +916 -605
  181. data/lib/twilio-ruby/rest/chat/v2/service/role.rb +672 -369
  182. data/lib/twilio-ruby/rest/chat/v2/service/user/user_binding.rb +561 -381
  183. data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +648 -413
  184. data/lib/twilio-ruby/rest/chat/v2/service/user.rb +796 -491
  185. data/lib/twilio-ruby/rest/chat/v2/service.rb +1121 -778
  186. data/lib/twilio-ruby/rest/chat/v2.rb +57 -51
  187. data/lib/twilio-ruby/rest/chat/v3/channel.rb +452 -0
  188. data/lib/twilio-ruby/rest/chat/v3.rb +71 -0
  189. data/lib/twilio-ruby/rest/chat.rb +10 -38
  190. data/lib/twilio-ruby/rest/chat_base.rb +48 -0
  191. data/lib/twilio-ruby/rest/client.rb +338 -540
  192. data/lib/twilio-ruby/rest/content/v1/content/approval_create.rb +280 -0
  193. data/lib/twilio-ruby/rest/content/v1/content/approval_fetch.rb +349 -0
  194. data/lib/twilio-ruby/rest/content/v1/content.rb +1921 -0
  195. data/lib/twilio-ruby/rest/content/v1/content_and_approvals.rb +340 -0
  196. data/lib/twilio-ruby/rest/content/v1/legacy_content.rb +354 -0
  197. data/lib/twilio-ruby/rest/content/v1.rb +61 -0
  198. data/lib/twilio-ruby/rest/content/v2/content.rb +425 -0
  199. data/lib/twilio-ruby/rest/content/v2/content_and_approvals.rb +418 -0
  200. data/lib/twilio-ruby/rest/content/v2.rb +46 -0
  201. data/lib/twilio-ruby/rest/content.rb +15 -0
  202. data/lib/twilio-ruby/rest/content_base.rb +43 -0
  203. data/lib/twilio-ruby/rest/conversations/v1/address_configuration.rb +808 -0
  204. data/lib/twilio-ruby/rest/conversations/v1/configuration/webhook.rb +445 -227
  205. data/lib/twilio-ruby/rest/conversations/v1/configuration.rb +467 -252
  206. data/lib/twilio-ruby/rest/conversations/v1/conversation/message/delivery_receipt.rb +504 -344
  207. data/lib/twilio-ruby/rest/conversations/v1/conversation/message.rb +852 -488
  208. data/lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb +817 -495
  209. data/lib/twilio-ruby/rest/conversations/v1/conversation/webhook.rb +725 -403
  210. data/lib/twilio-ruby/rest/conversations/v1/conversation.rb +957 -545
  211. data/lib/twilio-ruby/rest/conversations/v1/conversation_with_participants.rb +392 -0
  212. data/lib/twilio-ruby/rest/conversations/v1/credential.rb +728 -409
  213. data/lib/twilio-ruby/rest/conversations/v1/participant_conversation.rb +405 -0
  214. data/lib/twilio-ruby/rest/conversations/v1/role.rb +657 -356
  215. data/lib/twilio-ruby/rest/conversations/v1/service/binding.rb +563 -373
  216. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb +540 -296
  217. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb +470 -0
  218. data/lib/twilio-ruby/rest/conversations/v1/service/configuration.rb +497 -271
  219. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message/delivery_receipt.rb +504 -363
  220. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message.rb +860 -526
  221. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/participant.rb +829 -530
  222. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/webhook.rb +737 -438
  223. data/lib/twilio-ruby/rest/conversations/v1/service/conversation.rb +972 -581
  224. data/lib/twilio-ruby/rest/conversations/v1/service/conversation_with_participants.rb +399 -0
  225. data/lib/twilio-ruby/rest/conversations/v1/service/participant_conversation.rb +410 -0
  226. data/lib/twilio-ruby/rest/conversations/v1/service/role.rb +672 -380
  227. data/lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb +697 -0
  228. data/lib/twilio-ruby/rest/conversations/v1/service/user.rb +773 -430
  229. data/lib/twilio-ruby/rest/conversations/v1/service.rb +724 -424
  230. data/lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb +690 -0
  231. data/lib/twilio-ruby/rest/conversations/v1/user.rb +758 -406
  232. data/lib/twilio-ruby/rest/conversations/v1.rb +135 -107
  233. data/lib/twilio-ruby/rest/conversations.rb +24 -34
  234. data/lib/twilio-ruby/rest/conversations_base.rb +38 -0
  235. data/lib/twilio-ruby/rest/events/v1/event_type.rb +486 -281
  236. data/lib/twilio-ruby/rest/events/v1/schema/schema_version.rb +461 -283
  237. data/lib/twilio-ruby/rest/events/v1/schema.rb +366 -214
  238. data/lib/twilio-ruby/rest/events/v1/sink/sink_test.rb +209 -100
  239. data/lib/twilio-ruby/rest/events/v1/sink/sink_validate.rb +222 -103
  240. data/lib/twilio-ruby/rest/events/v1/sink.rb +711 -371
  241. data/lib/twilio-ruby/rest/events/v1/subscription/subscribed_event.rb +621 -192
  242. data/lib/twilio-ruby/rest/events/v1/subscription.rb +685 -380
  243. data/lib/twilio-ruby/rest/events/v1.rb +87 -83
  244. data/lib/twilio-ruby/rest/events.rb +5 -34
  245. data/lib/twilio-ruby/rest/events_base.rb +38 -0
  246. data/lib/twilio-ruby/rest/flex_api/v1/assessments.rb +697 -0
  247. data/lib/twilio-ruby/rest/flex_api/v1/channel.rb +621 -330
  248. data/lib/twilio-ruby/rest/flex_api/v1/configuration.rb +722 -440
  249. data/lib/twilio-ruby/rest/flex_api/v1/create_flex_instance.rb +382 -0
  250. data/lib/twilio-ruby/rest/flex_api/v1/flex_flow.rb +928 -549
  251. data/lib/twilio-ruby/rest/flex_api/v1/insights_assessments_comment.rb +475 -0
  252. data/lib/twilio-ruby/rest/flex_api/v1/insights_conversations.rb +321 -0
  253. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires.rb +735 -0
  254. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_category.rb +598 -0
  255. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_question.rb +710 -0
  256. data/lib/twilio-ruby/rest/flex_api/v1/insights_segments.rb +457 -0
  257. data/lib/twilio-ruby/rest/flex_api/v1/insights_session.rb +359 -0
  258. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_answer_sets.rb +251 -0
  259. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_comment.rb +237 -0
  260. data/lib/twilio-ruby/rest/flex_api/v1/insights_user_roles.rb +338 -0
  261. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_invite.rb +379 -0
  262. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_participant.rb +571 -0
  263. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_transfer.rb +547 -0
  264. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb +644 -0
  265. data/lib/twilio-ruby/rest/flex_api/v1/interaction.rb +537 -0
  266. data/lib/twilio-ruby/rest/flex_api/v1/plugin/plugin_versions.rb +621 -0
  267. data/lib/twilio-ruby/rest/flex_api/v1/plugin.rb +700 -0
  268. data/lib/twilio-ruby/rest/flex_api/v1/plugin_archive.rb +390 -0
  269. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration/configured_plugin.rb +564 -0
  270. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration.rb +599 -0
  271. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration_archive.rb +376 -0
  272. data/lib/twilio-ruby/rest/flex_api/v1/plugin_release.rb +539 -0
  273. data/lib/twilio-ruby/rest/flex_api/v1/plugin_version_archive.rb +400 -0
  274. data/lib/twilio-ruby/rest/flex_api/v1/provisioning_status.rb +327 -0
  275. data/lib/twilio-ruby/rest/flex_api/v1/web_channel.rb +663 -331
  276. data/lib/twilio-ruby/rest/flex_api/v1.rb +319 -73
  277. data/lib/twilio-ruby/rest/flex_api/v2/flex_user.rb +515 -0
  278. data/lib/twilio-ruby/rest/flex_api/v2/web_channels.rb +266 -0
  279. data/lib/twilio-ruby/rest/flex_api/v2.rb +77 -0
  280. data/lib/twilio-ruby/rest/flex_api.rb +33 -31
  281. data/lib/twilio-ruby/rest/flex_api_base.rb +43 -0
  282. data/lib/twilio-ruby/rest/frontline_api/v1/user.rb +463 -0
  283. data/lib/twilio-ruby/rest/frontline_api/v1.rb +49 -0
  284. data/lib/twilio-ruby/rest/frontline_api.rb +15 -0
  285. data/lib/twilio-ruby/rest/frontline_api_base.rb +38 -0
  286. data/lib/twilio-ruby/rest/iam/v1/api_key.rb +471 -0
  287. data/lib/twilio-ruby/rest/iam/v1/get_api_keys.rb +320 -0
  288. data/lib/twilio-ruby/rest/iam/v1/new_api_key.rb +284 -0
  289. data/lib/twilio-ruby/rest/iam/v1/o_auth_app.rb +646 -0
  290. data/lib/twilio-ruby/rest/iam/v1/token.rb +301 -0
  291. data/lib/twilio-ruby/rest/iam/v1.rb +82 -0
  292. data/lib/twilio-ruby/rest/iam.rb +6 -0
  293. data/lib/twilio-ruby/rest/iam_base.rb +33 -0
  294. data/lib/twilio-ruby/rest/insights/v1/call/annotation.rb +516 -0
  295. data/lib/twilio-ruby/rest/insights/v1/call/call_summary.rb +499 -0
  296. data/lib/twilio-ruby/rest/insights/v1/call/event.rb +360 -255
  297. data/lib/twilio-ruby/rest/insights/v1/call/metric.rb +333 -224
  298. data/lib/twilio-ruby/rest/insights/v1/call.rb +403 -228
  299. data/lib/twilio-ruby/rest/insights/v1/call_summaries.rb +726 -0
  300. data/lib/twilio-ruby/rest/insights/v1/conference/conference_participant.rb +672 -0
  301. data/lib/twilio-ruby/rest/insights/v1/conference.rb +693 -0
  302. data/lib/twilio-ruby/rest/insights/v1/room/participant.rb +545 -371
  303. data/lib/twilio-ruby/rest/insights/v1/room.rb +668 -477
  304. data/lib/twilio-ruby/rest/insights/v1/setting.rb +445 -0
  305. data/lib/twilio-ruby/rest/insights/v1.rb +84 -51
  306. data/lib/twilio-ruby/rest/insights.rb +24 -32
  307. data/lib/twilio-ruby/rest/insights_base.rb +38 -0
  308. data/lib/twilio-ruby/rest/intelligence/v2/custom_operator.rb +720 -0
  309. data/lib/twilio-ruby/rest/intelligence/v2/operator.rb +525 -0
  310. data/lib/twilio-ruby/rest/intelligence/v2/operator_attachment.rb +380 -0
  311. data/lib/twilio-ruby/rest/intelligence/v2/operator_attachments.rb +337 -0
  312. data/lib/twilio-ruby/rest/intelligence/v2/operator_type.rb +523 -0
  313. data/lib/twilio-ruby/rest/intelligence/v2/prebuilt_operator.rb +525 -0
  314. data/lib/twilio-ruby/rest/intelligence/v2/service.rb +844 -0
  315. data/lib/twilio-ruby/rest/intelligence/v2/transcript/encrypted_operator_results.rb +359 -0
  316. data/lib/twilio-ruby/rest/intelligence/v2/transcript/encrypted_sentences.rb +359 -0
  317. data/lib/twilio-ruby/rest/intelligence/v2/transcript/media.rb +373 -0
  318. data/lib/twilio-ruby/rest/intelligence/v2/transcript/operator_result.rb +570 -0
  319. data/lib/twilio-ruby/rest/intelligence/v2/transcript/sentence.rb +354 -0
  320. data/lib/twilio-ruby/rest/intelligence/v2/transcript.rb +815 -0
  321. data/lib/twilio-ruby/rest/intelligence/v2.rb +176 -0
  322. data/lib/twilio-ruby/rest/intelligence.rb +6 -0
  323. data/lib/twilio-ruby/rest/intelligence_base.rb +38 -0
  324. data/lib/twilio-ruby/rest/ip_messaging/v1/credential.rb +719 -364
  325. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/invite.rb +613 -359
  326. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb +704 -397
  327. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +722 -409
  328. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +822 -488
  329. data/lib/twilio-ruby/rest/ip_messaging/v1/service/role.rb +672 -347
  330. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user/user_channel.rb +331 -231
  331. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +750 -418
  332. data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +1287 -779
  333. data/lib/twilio-ruby/rest/ip_messaging/v1.rb +57 -51
  334. data/lib/twilio-ruby/rest/ip_messaging/v2/credential.rb +719 -364
  335. data/lib/twilio-ruby/rest/ip_messaging/v2/service/binding.rb +570 -343
  336. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/invite.rb +613 -359
  337. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb +799 -451
  338. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +825 -479
  339. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/webhook.rb +746 -411
  340. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +916 -555
  341. data/lib/twilio-ruby/rest/ip_messaging/v2/service/role.rb +672 -347
  342. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_binding.rb +561 -351
  343. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_channel.rb +637 -384
  344. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +796 -467
  345. data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +1121 -689
  346. data/lib/twilio-ruby/rest/ip_messaging/v2.rb +57 -51
  347. data/lib/twilio-ruby/rest/ip_messaging.rb +3 -41
  348. data/lib/twilio-ruby/rest/ip_messaging_base.rb +43 -0
  349. data/lib/twilio-ruby/rest/knowledge/v1/knowledge/chunk.rb +317 -0
  350. data/lib/twilio-ruby/rest/knowledge/v1/knowledge/knowledge_status.rb +349 -0
  351. data/lib/twilio-ruby/rest/knowledge/v1/knowledge.rb +856 -0
  352. data/lib/twilio-ruby/rest/knowledge/v1.rb +49 -0
  353. data/lib/twilio-ruby/rest/knowledge.rb +6 -0
  354. data/lib/twilio-ruby/rest/knowledge_base.rb +38 -0
  355. data/lib/twilio-ruby/rest/lookups/v1/phone_number.rb +399 -237
  356. data/lib/twilio-ruby/rest/lookups/v1.rb +42 -38
  357. data/lib/twilio-ruby/rest/lookups/v2/bucket.rb +500 -0
  358. data/lib/twilio-ruby/rest/lookups/v2/lookup_override.rb +603 -0
  359. data/lib/twilio-ruby/rest/lookups/v2/phone_number.rb +578 -0
  360. data/lib/twilio-ruby/rest/lookups/v2/query.rb +351 -0
  361. data/lib/twilio-ruby/rest/lookups/v2/rate_limit.rb +229 -0
  362. data/lib/twilio-ruby/rest/lookups/v2.rb +135 -0
  363. data/lib/twilio-ruby/rest/lookups.rb +2 -34
  364. data/lib/twilio-ruby/rest/lookups_base.rb +43 -0
  365. data/lib/twilio-ruby/rest/marketplace/v1/available_add_on/available_add_on_extension.rb +475 -0
  366. data/lib/twilio-ruby/rest/marketplace/v1/available_add_on.rb +501 -0
  367. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on/installed_add_on_extension.rb +555 -0
  368. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on/installed_add_on_usage.rb +252 -0
  369. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on.rb +735 -0
  370. data/lib/twilio-ruby/rest/marketplace/v1/module_data.rb +342 -0
  371. data/lib/twilio-ruby/rest/marketplace/v1/module_data_management.rb +511 -0
  372. data/lib/twilio-ruby/rest/marketplace/v1/referral_conversion.rb +235 -0
  373. data/lib/twilio-ruby/rest/marketplace/v1.rb +91 -0
  374. data/lib/twilio-ruby/rest/marketplace.rb +6 -0
  375. data/lib/twilio-ruby/rest/marketplace_base.rb +38 -0
  376. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_registration_otp.rb +231 -0
  377. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_vetting.rb +575 -0
  378. data/lib/twilio-ruby/rest/messaging/v1/brand_registration.rb +768 -0
  379. data/lib/twilio-ruby/rest/messaging/v1/deactivations.rb +337 -0
  380. data/lib/twilio-ruby/rest/messaging/v1/domain_certs.rb +483 -0
  381. data/lib/twilio-ruby/rest/messaging/v1/domain_config.rb +477 -0
  382. data/lib/twilio-ruby/rest/messaging/v1/domain_config_messaging_service.rb +379 -0
  383. data/lib/twilio-ruby/rest/messaging/v1/domain_validate_dn.rb +344 -0
  384. data/lib/twilio-ruby/rest/messaging/v1/external_campaign.rb +271 -0
  385. data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service.rb +380 -0
  386. data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service_domain_association.rb +337 -0
  387. data/lib/twilio-ruby/rest/messaging/v1/request_managed_cert.rb +379 -0
  388. data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +580 -335
  389. data/lib/twilio-ruby/rest/messaging/v1/service/channel_sender.rb +594 -0
  390. data/lib/twilio-ruby/rest/messaging/v1/service/destination_alpha_sender.rb +608 -0
  391. data/lib/twilio-ruby/rest/messaging/v1/service/phone_number.rb +587 -341
  392. data/lib/twilio-ruby/rest/messaging/v1/service/short_code.rb +587 -336
  393. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person.rb +944 -0
  394. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person_usecase.rb +236 -0
  395. data/lib/twilio-ruby/rest/messaging/v1/service.rb +1149 -645
  396. data/lib/twilio-ruby/rest/messaging/v1/tollfree_verification.rb +1527 -0
  397. data/lib/twilio-ruby/rest/messaging/v1/usecase.rb +217 -0
  398. data/lib/twilio-ruby/rest/messaging/v1.rb +217 -43
  399. data/lib/twilio-ruby/rest/messaging/v2/channels_sender.rb +1002 -0
  400. data/lib/twilio-ruby/rest/messaging/v2/domain_certs.rb +386 -0
  401. data/lib/twilio-ruby/rest/messaging/v2/typing_indicator.rb +237 -0
  402. data/lib/twilio-ruby/rest/messaging/v2.rb +70 -0
  403. data/lib/twilio-ruby/rest/messaging.rb +48 -27
  404. data/lib/twilio-ruby/rest/messaging_base.rb +43 -0
  405. data/lib/twilio-ruby/rest/monitor/v1/alert.rb +572 -395
  406. data/lib/twilio-ruby/rest/monitor/v1/event.rb +561 -390
  407. data/lib/twilio-ruby/rest/monitor/v1.rb +57 -51
  408. data/lib/twilio-ruby/rest/monitor.rb +3 -34
  409. data/lib/twilio-ruby/rest/monitor_base.rb +38 -0
  410. data/lib/twilio-ruby/rest/notify/v1/credential.rb +719 -408
  411. data/lib/twilio-ruby/rest/notify/v1/service/binding.rb +694 -452
  412. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +466 -362
  413. data/lib/twilio-ruby/rest/notify/v1/service.rb +971 -622
  414. data/lib/twilio-ruby/rest/notify/v1.rb +57 -53
  415. data/lib/twilio-ruby/rest/notify.rb +3 -34
  416. data/lib/twilio-ruby/rest/notify_base.rb +38 -0
  417. data/lib/twilio-ruby/rest/numbers/v1/bulk_eligibility.rb +411 -0
  418. data/lib/twilio-ruby/rest/numbers/v1/eligibility.rb +221 -0
  419. data/lib/twilio-ruby/rest/numbers/v1/porting_all_port_in.rb +367 -0
  420. data/lib/twilio-ruby/rest/numbers/v1/porting_port_in.rb +616 -0
  421. data/lib/twilio-ruby/rest/numbers/v1/porting_port_in_phone_number.rb +485 -0
  422. data/lib/twilio-ruby/rest/numbers/v1/porting_portability.rb +405 -0
  423. data/lib/twilio-ruby/rest/numbers/v1/porting_webhook_configuration.rb +242 -0
  424. data/lib/twilio-ruby/rest/numbers/v1/porting_webhook_configuration_delete.rb +301 -0
  425. data/lib/twilio-ruby/rest/numbers/v1/signing_request_configuration.rb +395 -0
  426. data/lib/twilio-ruby/rest/numbers/v1/webhook.rb +252 -0
  427. data/lib/twilio-ruby/rest/numbers/v1.rb +161 -0
  428. data/lib/twilio-ruby/rest/numbers/v2/application.rb +562 -0
  429. data/lib/twilio-ruby/rest/numbers/v2/authorization_document/dependent_hosted_number_order.rb +440 -0
  430. data/lib/twilio-ruby/rest/numbers/v2/authorization_document.rb +649 -0
  431. data/lib/twilio-ruby/rest/numbers/v2/bulk_hosted_number_order.rb +442 -0
  432. data/lib/twilio-ruby/rest/numbers/v2/bundle_clone.rb +430 -0
  433. data/lib/twilio-ruby/rest/numbers/v2/hosted_number_order.rb +915 -0
  434. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/bundle_copy.rb +412 -0
  435. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/evaluation.rb +524 -298
  436. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/item_assignment.rb +564 -309
  437. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/replace_items.rb +303 -0
  438. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle.rb +923 -505
  439. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user.rb +667 -351
  440. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user_type.rb +458 -266
  441. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/regulation.rb +521 -307
  442. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document.rb +695 -364
  443. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document_type.rb +458 -266
  444. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance.rb +241 -181
  445. data/lib/twilio-ruby/rest/numbers/v2.rb +108 -28
  446. data/lib/twilio-ruby/rest/numbers/v3/hosted_number_order.rb +484 -0
  447. data/lib/twilio-ruby/rest/numbers/v3.rb +40 -0
  448. data/lib/twilio-ruby/rest/numbers.rb +2 -34
  449. data/lib/twilio-ruby/rest/numbers_base.rb +48 -0
  450. data/lib/twilio-ruby/rest/oauth/v1/authorize.rb +253 -0
  451. data/lib/twilio-ruby/rest/oauth/v1/token.rb +301 -0
  452. data/lib/twilio-ruby/rest/oauth/v1.rb +46 -0
  453. data/lib/twilio-ruby/rest/oauth/v2/authorize.rb +253 -0
  454. data/lib/twilio-ruby/rest/oauth/v2/token.rb +311 -0
  455. data/lib/twilio-ruby/rest/oauth/v2.rb +46 -0
  456. data/lib/twilio-ruby/rest/oauth.rb +6 -0
  457. data/lib/twilio-ruby/rest/oauth_base.rb +43 -0
  458. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document/dependent_hosted_number_order.rb +469 -396
  459. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document.rb +724 -446
  460. data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +960 -625
  461. data/lib/twilio-ruby/rest/preview/hosted_numbers.rb +57 -53
  462. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on/available_add_on_extension.rb +468 -298
  463. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on.rb +491 -309
  464. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on/installed_add_on_extension.rb +548 -330
  465. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on.rb +706 -398
  466. data/lib/twilio-ruby/rest/preview/marketplace.rb +57 -51
  467. data/lib/twilio-ruby/rest/preview/wireless/command.rb +616 -364
  468. data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +743 -398
  469. data/lib/twilio-ruby/rest/preview/wireless/sim/usage.rb +382 -205
  470. data/lib/twilio-ruby/rest/preview/wireless/sim.rb +833 -523
  471. data/lib/twilio-ruby/rest/preview/wireless.rb +72 -66
  472. data/lib/twilio-ruby/rest/preview.rb +10 -145
  473. data/lib/twilio-ruby/rest/preview_base.rb +48 -0
  474. data/lib/twilio-ruby/rest/preview_iam/v1/authorize.rb +253 -0
  475. data/lib/twilio-ruby/rest/preview_iam/v1/token.rb +301 -0
  476. data/lib/twilio-ruby/rest/preview_iam/v1.rb +46 -0
  477. data/lib/twilio-ruby/rest/preview_iam/versionless/organization/account.rb +468 -0
  478. data/lib/twilio-ruby/rest/preview_iam/versionless/organization/role_assignment.rb +559 -0
  479. data/lib/twilio-ruby/rest/preview_iam/versionless/organization/user.rb +768 -0
  480. data/lib/twilio-ruby/rest/preview_iam/versionless/organization.rb +413 -0
  481. data/lib/twilio-ruby/rest/preview_iam/versionless.rb +49 -0
  482. data/lib/twilio-ruby/rest/preview_iam.rb +9 -0
  483. data/lib/twilio-ruby/rest/preview_iam_base.rb +38 -0
  484. data/lib/twilio-ruby/rest/pricing/v1/messaging/country.rb +465 -275
  485. data/lib/twilio-ruby/rest/pricing/v1/messaging.rb +172 -120
  486. data/lib/twilio-ruby/rest/pricing/v1/phone_number/country.rb +458 -268
  487. data/lib/twilio-ruby/rest/pricing/v1/phone_number.rb +172 -120
  488. data/lib/twilio-ruby/rest/pricing/v1/voice/country.rb +465 -275
  489. data/lib/twilio-ruby/rest/pricing/v1/voice/number.rb +345 -179
  490. data/lib/twilio-ruby/rest/pricing/v1/voice.rb +185 -135
  491. data/lib/twilio-ruby/rest/pricing/v1.rb +45 -42
  492. data/lib/twilio-ruby/rest/pricing/v2/country.rb +467 -0
  493. data/lib/twilio-ruby/rest/pricing/v2/number.rb +389 -0
  494. data/lib/twilio-ruby/rest/pricing/v2/voice/country.rb +465 -275
  495. data/lib/twilio-ruby/rest/pricing/v2/voice/number.rb +367 -200
  496. data/lib/twilio-ruby/rest/pricing/v2/voice.rb +185 -138
  497. data/lib/twilio-ruby/rest/pricing/v2.rb +63 -28
  498. data/lib/twilio-ruby/rest/pricing.rb +22 -38
  499. data/lib/twilio-ruby/rest/pricing_base.rb +43 -0
  500. data/lib/twilio-ruby/rest/proxy/v1/service/phone_number.rb +693 -403
  501. data/lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb +600 -418
  502. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant/message_interaction.rb +640 -447
  503. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb +659 -453
  504. data/lib/twilio-ruby/rest/proxy/v1/service/session.rb +811 -547
  505. data/lib/twilio-ruby/rest/proxy/v1/service.rb +839 -596
  506. data/lib/twilio-ruby/rest/proxy/v1.rb +42 -37
  507. data/lib/twilio-ruby/rest/proxy.rb +2 -34
  508. data/lib/twilio-ruby/rest/proxy_base.rb +38 -0
  509. data/lib/twilio-ruby/rest/routes/v2/phone_number.rb +452 -0
  510. data/lib/twilio-ruby/rest/routes/v2/sip_domain.rb +452 -0
  511. data/lib/twilio-ruby/rest/routes/v2/trunk.rb +452 -0
  512. data/lib/twilio-ruby/rest/routes/v2.rb +79 -0
  513. data/lib/twilio-ruby/rest/routes.rb +32 -0
  514. data/lib/twilio-ruby/rest/routes_base.rb +38 -0
  515. data/lib/twilio-ruby/rest/serverless/v1/service/asset/asset_version.rb +483 -323
  516. data/lib/twilio-ruby/rest/serverless/v1/service/asset.rb +680 -380
  517. data/lib/twilio-ruby/rest/serverless/v1/service/build/build_status.rb +350 -208
  518. data/lib/twilio-ruby/rest/serverless/v1/service/build.rb +645 -374
  519. data/lib/twilio-ruby/rest/serverless/v1/service/environment/deployment.rb +549 -338
  520. data/lib/twilio-ruby/rest/serverless/v1/service/environment/log.rb +535 -383
  521. data/lib/twilio-ruby/rest/serverless/v1/service/environment/variable.rb +680 -396
  522. data/lib/twilio-ruby/rest/serverless/v1/service/environment.rb +688 -447
  523. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version/function_version_content.rb +342 -210
  524. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version.rb +510 -353
  525. data/lib/twilio-ruby/rest/serverless/v1/service/function.rb +680 -380
  526. data/lib/twilio-ruby/rest/serverless/v1/service.rb +803 -486
  527. data/lib/twilio-ruby/rest/serverless/v1.rb +42 -36
  528. data/lib/twilio-ruby/rest/serverless.rb +2 -34
  529. data/lib/twilio-ruby/rest/serverless_base.rb +38 -0
  530. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/engagement_context.rb +350 -199
  531. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step/step_context.rb +342 -194
  532. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb +545 -355
  533. data/lib/twilio-ruby/rest/studio/v1/flow/engagement.rb +659 -394
  534. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_context.rb +350 -200
  535. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step/execution_step_context.rb +342 -197
  536. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step.rb +545 -361
  537. data/lib/twilio-ruby/rest/studio/v1/flow/execution.rb +748 -449
  538. data/lib/twilio-ruby/rest/studio/v1/flow.rb +572 -355
  539. data/lib/twilio-ruby/rest/studio/v1.rb +42 -36
  540. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_context.rb +350 -208
  541. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step/execution_step_context.rb +342 -205
  542. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step.rb +545 -369
  543. data/lib/twilio-ruby/rest/studio/v2/flow/execution.rb +741 -450
  544. data/lib/twilio-ruby/rest/studio/v2/flow/flow_revision.rb +510 -328
  545. data/lib/twilio-ruby/rest/studio/v2/flow/flow_test_user.rb +413 -0
  546. data/lib/twilio-ruby/rest/studio/v2/flow.rb +804 -480
  547. data/lib/twilio-ruby/rest/studio/v2/flow_validate.rb +241 -114
  548. data/lib/twilio-ruby/rest/studio/v2.rb +48 -43
  549. data/lib/twilio-ruby/rest/studio.rb +3 -41
  550. data/lib/twilio-ruby/rest/studio_base.rb +43 -0
  551. data/lib/twilio-ruby/rest/supersim/v1/esim_profile.rb +621 -0
  552. data/lib/twilio-ruby/rest/supersim/v1/fleet.rb +757 -411
  553. data/lib/twilio-ruby/rest/supersim/v1/ip_command.rb +634 -0
  554. data/lib/twilio-ruby/rest/supersim/v1/network.rb +474 -297
  555. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile/network_access_profile_network.rb +566 -332
  556. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile.rb +624 -351
  557. data/lib/twilio-ruby/rest/supersim/v1/settings_update.rb +349 -0
  558. data/lib/twilio-ruby/rest/supersim/v1/sim/billing_period.rb +338 -0
  559. data/lib/twilio-ruby/rest/supersim/v1/sim/sim_ip_address.rb +296 -0
  560. data/lib/twilio-ruby/rest/supersim/v1/sim.rb +725 -388
  561. data/lib/twilio-ruby/rest/supersim/v1/sms_command.rb +586 -0
  562. data/lib/twilio-ruby/rest/supersim/v1/usage_record.rb +408 -328
  563. data/lib/twilio-ruby/rest/supersim/v1.rb +144 -103
  564. data/lib/twilio-ruby/rest/supersim.rb +40 -40
  565. data/lib/twilio-ruby/rest/supersim_base.rb +38 -0
  566. data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +616 -379
  567. data/lib/twilio-ruby/rest/sync/v1/service/document.rb +736 -442
  568. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +766 -497
  569. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +616 -378
  570. data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +749 -459
  571. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +772 -504
  572. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +616 -376
  573. data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +749 -458
  574. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream/stream_message.rb +242 -138
  575. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream.rb +692 -414
  576. data/lib/twilio-ruby/rest/sync/v1/service.rb +878 -575
  577. data/lib/twilio-ruby/rest/sync/v1.rb +42 -36
  578. data/lib/twilio-ruby/rest/sync.rb +2 -34
  579. data/lib/twilio-ruby/rest/sync_base.rb +38 -0
  580. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/activity.rb +682 -388
  581. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +633 -464
  582. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +1079 -732
  583. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +985 -637
  584. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_channel.rb +688 -382
  585. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_bulk_real_time_statistics.rb +258 -0
  586. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics.rb +522 -366
  587. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics.rb +430 -276
  588. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_statistics.rb +410 -254
  589. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queues_statistics.rb +358 -276
  590. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +882 -566
  591. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +1053 -728
  592. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_channel.rb +602 -388
  593. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_statistics.rb +394 -239
  594. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_cumulative_statistics.rb +440 -266
  595. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_real_time_statistics.rb +364 -193
  596. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_statistics.rb +418 -234
  597. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +927 -619
  598. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics.rb +522 -374
  599. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_real_time_statistics.rb +395 -241
  600. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_statistics.rb +410 -262
  601. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +822 -510
  602. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_cumulative_statistics.rb +514 -354
  603. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_real_time_statistics.rb +379 -205
  604. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_statistics.rb +387 -219
  605. data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +1022 -715
  606. data/lib/twilio-ruby/rest/taskrouter/v1.rb +42 -36
  607. data/lib/twilio-ruby/rest/taskrouter.rb +2 -34
  608. data/lib/twilio-ruby/rest/taskrouter_base.rb +38 -0
  609. data/lib/twilio-ruby/rest/trunking/v1/trunk/credential_list.rb +573 -320
  610. data/lib/twilio-ruby/rest/trunking/v1/trunk/ip_access_control_list.rb +573 -317
  611. data/lib/twilio-ruby/rest/trunking/v1/trunk/origination_url.rb +734 -419
  612. data/lib/twilio-ruby/rest/trunking/v1/trunk/phone_number.rb +706 -451
  613. data/lib/twilio-ruby/rest/trunking/v1/trunk/recording.rb +391 -174
  614. data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +939 -614
  615. data/lib/twilio-ruby/rest/trunking/v1.rb +42 -37
  616. data/lib/twilio-ruby/rest/trunking.rb +2 -34
  617. data/lib/twilio-ruby/rest/trunking_base.rb +38 -0
  618. data/lib/twilio-ruby/rest/trusthub/v1/compliance_inquiries.rb +440 -0
  619. data/lib/twilio-ruby/rest/trusthub/v1/compliance_registration_inquiries.rb +656 -0
  620. data/lib/twilio-ruby/rest/trusthub/v1/compliance_tollfree_inquiries.rb +474 -0
  621. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_channel_endpoint_assignment.rb +602 -0
  622. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_entity_assignments.rb +581 -0
  623. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_evaluations.rb +547 -0
  624. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles.rb +833 -0
  625. data/lib/twilio-ruby/rest/trusthub/v1/end_user.rb +669 -0
  626. data/lib/twilio-ruby/rest/trusthub/v1/end_user_type.rb +460 -0
  627. data/lib/twilio-ruby/rest/trusthub/v1/policies.rb +453 -0
  628. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document.rb +683 -0
  629. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document_type.rb +460 -0
  630. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_channel_endpoint_assignment.rb +602 -0
  631. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_entity_assignments.rb +581 -0
  632. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_evaluations.rb +547 -0
  633. data/lib/twilio-ruby/rest/trusthub/v1/trust_products.rb +833 -0
  634. data/lib/twilio-ruby/rest/trusthub/v1.rb +175 -0
  635. data/lib/twilio-ruby/rest/trusthub.rb +74 -0
  636. data/lib/twilio-ruby/rest/trusthub_base.rb +38 -0
  637. data/lib/twilio-ruby/rest/verify/v2/form.rb +334 -181
  638. data/lib/twilio-ruby/rest/verify/v2/safelist.rb +433 -0
  639. data/lib/twilio-ruby/rest/verify/v2/service/access_token.rb +454 -108
  640. data/lib/twilio-ruby/rest/verify/v2/service/approve_challenge.rb +402 -0
  641. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge/notification.rb +302 -0
  642. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb +770 -449
  643. data/lib/twilio-ruby/rest/verify/v2/service/entity/factor.rb +705 -453
  644. data/lib/twilio-ruby/rest/verify/v2/service/entity/new_factor.rb +418 -0
  645. data/lib/twilio-ruby/rest/verify/v2/service/entity.rb +653 -394
  646. data/lib/twilio-ruby/rest/verify/v2/service/messaging_configuration.rb +652 -363
  647. data/lib/twilio-ruby/rest/verify/v2/service/new_challenge.rb +478 -0
  648. data/lib/twilio-ruby/rest/verify/v2/service/new_factor.rb +387 -0
  649. data/lib/twilio-ruby/rest/verify/v2/service/new_verify_factor.rb +357 -0
  650. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb +680 -388
  651. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit.rb +693 -384
  652. data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +655 -349
  653. data/lib/twilio-ruby/rest/verify/v2/service/verification_check.rb +321 -181
  654. data/lib/twilio-ruby/rest/verify/v2/service/webhook.rb +741 -401
  655. data/lib/twilio-ruby/rest/verify/v2/service.rb +1360 -693
  656. data/lib/twilio-ruby/rest/verify/v2/template.rb +320 -0
  657. data/lib/twilio-ruby/rest/verify/v2/verification_attempt.rb +566 -0
  658. data/lib/twilio-ruby/rest/verify/v2/verification_attempts_summary.rb +410 -0
  659. data/lib/twilio-ruby/rest/verify/v2.rb +99 -53
  660. data/lib/twilio-ruby/rest/verify.rb +33 -31
  661. data/lib/twilio-ruby/rest/verify_base.rb +38 -0
  662. data/lib/twilio-ruby/rest/video/v1/composition.rb +738 -494
  663. data/lib/twilio-ruby/rest/video/v1/composition_hook.rb +854 -655
  664. data/lib/twilio-ruby/rest/video/v1/composition_settings.rb +475 -261
  665. data/lib/twilio-ruby/rest/video/v1/recording.rb +631 -405
  666. data/lib/twilio-ruby/rest/video/v1/recording_settings.rb +475 -261
  667. data/lib/twilio-ruby/rest/video/v1/room/participant/anonymize.rb +403 -0
  668. data/lib/twilio-ruby/rest/video/v1/room/participant/published_track.rb +501 -0
  669. data/lib/twilio-ruby/rest/video/v1/room/participant/subscribe_rules.rb +316 -0
  670. data/lib/twilio-ruby/rest/video/v1/room/participant/subscribed_track.rb +508 -0
  671. data/lib/twilio-ruby/rest/video/v1/room/participant.rb +714 -0
  672. data/lib/twilio-ruby/rest/video/v1/room/recording_rules.rb +303 -0
  673. data/lib/twilio-ruby/rest/video/v1/room/room_recording.rb +624 -0
  674. data/lib/twilio-ruby/rest/video/v1/room/transcriptions.rb +648 -0
  675. data/lib/twilio-ruby/rest/video/v1/room.rb +938 -542
  676. data/lib/twilio-ruby/rest/video/v1.rb +99 -95
  677. data/lib/twilio-ruby/rest/video.rb +7 -34
  678. data/lib/twilio-ruby/rest/video_base.rb +38 -0
  679. data/lib/twilio-ruby/rest/voice/v1/archived_call.rb +302 -0
  680. data/lib/twilio-ruby/rest/voice/v1/byoc_trunk.rb +822 -486
  681. data/lib/twilio-ruby/rest/voice/v1/connection_policy/connection_policy_target.rb +734 -434
  682. data/lib/twilio-ruby/rest/voice/v1/connection_policy.rb +658 -352
  683. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/bulk_country_update.rb +236 -121
  684. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country/highrisk_special_prefix.rb +282 -181
  685. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country.rb +553 -397
  686. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/settings.rb +377 -173
  687. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions.rb +187 -122
  688. data/lib/twilio-ruby/rest/voice/v1/ip_record.rb +650 -339
  689. data/lib/twilio-ruby/rest/voice/v1/source_ip_mapping.rb +630 -319
  690. data/lib/twilio-ruby/rest/voice/v1.rb +130 -92
  691. data/lib/twilio-ruby/rest/voice.rb +12 -31
  692. data/lib/twilio-ruby/rest/voice_base.rb +38 -0
  693. data/lib/twilio-ruby/rest/wireless/v1/command.rb +663 -406
  694. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +769 -436
  695. data/lib/twilio-ruby/rest/wireless/v1/sim/data_session.rb +387 -284
  696. data/lib/twilio-ruby/rest/wireless/v1/sim/usage_record.rb +317 -226
  697. data/lib/twilio-ruby/rest/wireless/v1/sim.rb +925 -657
  698. data/lib/twilio-ruby/rest/wireless/v1/usage_record.rb +319 -219
  699. data/lib/twilio-ruby/rest/wireless/v1.rb +78 -73
  700. data/lib/twilio-ruby/rest/wireless.rb +5 -34
  701. data/lib/twilio-ruby/rest/wireless_base.rb +38 -0
  702. data/lib/twilio-ruby/rest.rb +14 -0
  703. data/lib/twilio-ruby/security/request_validator.rb +1 -1
  704. data/lib/twilio-ruby/twiml/messaging_response.rb +1 -1
  705. data/lib/twilio-ruby/twiml/voice_response.rb +1287 -143
  706. data/lib/twilio-ruby/version.rb +1 -1
  707. data/lib/twilio-ruby.rb +6 -16
  708. data/sonar-project.properties +13 -0
  709. data/twilio-ruby.gemspec +5 -5
  710. metadata +334 -942
  711. data/.travis.yml +0 -45
  712. data/conf/cacert.pem +0 -3376
  713. data/lib/twilio-ruby/framework/domain.rb +0 -36
  714. data/lib/twilio-ruby/framework/error.rb +0 -51
  715. data/lib/twilio-ruby/framework/page.rb +0 -103
  716. data/lib/twilio-ruby/framework/resource.rb +0 -23
  717. data/lib/twilio-ruby/framework/twilio_response.rb +0 -19
  718. data/lib/twilio-ruby/framework/version.rb +0 -153
  719. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/local.rb +0 -500
  720. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/machine_to_machine.rb +0 -500
  721. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/mobile.rb +0 -500
  722. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/national.rb +0 -500
  723. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/shared_cost.rb +0 -500
  724. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/toll_free.rb +0 -500
  725. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/voip.rb +0 -500
  726. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number.rb +0 -464
  727. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb +0 -301
  728. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb +0 -314
  729. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_credential_list_mapping.rb +0 -348
  730. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_ip_access_control_list_mapping.rb +0 -348
  731. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping.rb +0 -163
  732. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping/auth_registrations_credential_list_mapping.rb +0 -348
  733. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping.rb +0 -137
  734. data/lib/twilio-ruby/rest/autopilot/v1/assistant/defaults.rb +0 -220
  735. data/lib/twilio-ruby/rest/autopilot/v1/assistant/dialogue.rb +0 -214
  736. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type/field_value.rb +0 -399
  737. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type.rb +0 -418
  738. data/lib/twilio-ruby/rest/autopilot/v1/assistant/model_build.rb +0 -392
  739. data/lib/twilio-ruby/rest/autopilot/v1/assistant/query.rb +0 -469
  740. data/lib/twilio-ruby/rest/autopilot/v1/assistant/style_sheet.rb +0 -218
  741. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/field.rb +0 -386
  742. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/sample.rb +0 -456
  743. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_actions.rb +0 -255
  744. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_statistics.rb +0 -237
  745. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task.rb +0 -507
  746. data/lib/twilio-ruby/rest/autopilot/v1/assistant/webhook.rb +0 -420
  747. data/lib/twilio-ruby/rest/autopilot/v1/assistant.rb +0 -650
  748. data/lib/twilio-ruby/rest/autopilot/v1/restore_assistant.rb +0 -194
  749. data/lib/twilio-ruby/rest/autopilot/v1.rb +0 -51
  750. data/lib/twilio-ruby/rest/autopilot.rb +0 -53
  751. data/lib/twilio-ruby/rest/fax/v1/fax/fax_media.rb +0 -314
  752. data/lib/twilio-ruby/rest/fax/v1/fax.rb +0 -536
  753. data/lib/twilio-ruby/rest/fax/v1.rb +0 -44
  754. data/lib/twilio-ruby/rest/fax.rb +0 -47
  755. data/lib/twilio-ruby/rest/insights/v1/call/summary.rb +0 -307
  756. data/lib/twilio-ruby/rest/messaging/v1/deactivation.rb +0 -164
  757. data/lib/twilio-ruby/rest/preview/bulk_exports/export/day.rb +0 -294
  758. data/lib/twilio-ruby/rest/preview/bulk_exports/export/export_custom_job.rb +0 -275
  759. data/lib/twilio-ruby/rest/preview/bulk_exports/export/job.rb +0 -249
  760. data/lib/twilio-ruby/rest/preview/bulk_exports/export.rb +0 -251
  761. data/lib/twilio-ruby/rest/preview/bulk_exports/export_configuration.rb +0 -234
  762. data/lib/twilio-ruby/rest/preview/bulk_exports.rb +0 -60
  763. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/certificate.rb +0 -382
  764. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/deployment.rb +0 -365
  765. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/device.rb +0 -425
  766. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/key.rb +0 -376
  767. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet.rb +0 -469
  768. data/lib/twilio-ruby/rest/preview/deployed_devices.rb +0 -44
  769. data/lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb +0 -385
  770. data/lib/twilio-ruby/rest/preview/sync/service/document.rb +0 -410
  771. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_item.rb +0 -418
  772. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_permission.rb +0 -385
  773. data/lib/twilio-ruby/rest/preview/sync/service/sync_list.rb +0 -405
  774. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_item.rb +0 -415
  775. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_permission.rb +0 -385
  776. data/lib/twilio-ruby/rest/preview/sync/service/sync_map.rb +0 -405
  777. data/lib/twilio-ruby/rest/preview/sync/service.rb +0 -462
  778. data/lib/twilio-ruby/rest/preview/sync.rb +0 -43
  779. data/lib/twilio-ruby/rest/preview/trusted_comms/branded_channel/channel.rb +0 -165
  780. data/lib/twilio-ruby/rest/preview/trusted_comms/branded_channel.rb +0 -225
  781. data/lib/twilio-ruby/rest/preview/trusted_comms/brands_information.rb +0 -195
  782. data/lib/twilio-ruby/rest/preview/trusted_comms/cps.rb +0 -186
  783. data/lib/twilio-ruby/rest/preview/trusted_comms/current_call.rb +0 -277
  784. data/lib/twilio-ruby/rest/preview/trusted_comms.rb +0 -64
  785. data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_fallback_actions.rb +0 -212
  786. data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_initiation_actions.rb +0 -212
  787. data/lib/twilio-ruby/rest/preview/understand/assistant/dialogue.rb +0 -206
  788. data/lib/twilio-ruby/rest/preview/understand/assistant/field_type/field_value.rb +0 -386
  789. data/lib/twilio-ruby/rest/preview/understand/assistant/field_type.rb +0 -407
  790. data/lib/twilio-ruby/rest/preview/understand/assistant/model_build.rb +0 -380
  791. data/lib/twilio-ruby/rest/preview/understand/assistant/query.rb +0 -437
  792. data/lib/twilio-ruby/rest/preview/understand/assistant/style_sheet.rb +0 -212
  793. data/lib/twilio-ruby/rest/preview/understand/assistant/task/field.rb +0 -373
  794. data/lib/twilio-ruby/rest/preview/understand/assistant/task/sample.rb +0 -428
  795. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_actions.rb +0 -241
  796. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_statistics.rb +0 -225
  797. data/lib/twilio-ruby/rest/preview/understand/assistant/task.rb +0 -495
  798. data/lib/twilio-ruby/rest/preview/understand/assistant.rb +0 -629
  799. data/lib/twilio-ruby/rest/preview/understand.rb +0 -44
  800. data/lib/twilio-ruby/rest/proxy/v1/service/short_code.rb +0 -377
  801. data/lib/twilio-ruby/rest/studio/v2/flow/test_user.rb +0 -205
  802. data/lib/twilio-ruby/rest/supersim/v1/command.rb +0 -368
  803. data/lib/twilio-ruby/rest/video/v1/room/recording.rb +0 -406
  804. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_published_track.rb +0 -335
  805. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribe_rule.rb +0 -175
  806. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribed_track.rb +0 -340
  807. data/lib/twilio-ruby/rest/video/v1/room/room_participant.rb +0 -483
  808. data/lib/twilio-ruby/rest/video/v1/room/room_recording_rule.rb +0 -150
  809. data/spec/framework/request_spec.rb +0 -36
  810. data/spec/framework/serialize_spec.rb +0 -80
  811. data/spec/framework/version_spec.rb +0 -219
  812. data/spec/holodeck/holodeck.rb +0 -66
  813. data/spec/holodeck/hologram.rb +0 -4
  814. data/spec/http/http_client_spec.rb +0 -122
  815. data/spec/integration/accounts/v1/auth_token_promotion_spec.rb +0 -44
  816. data/spec/integration/accounts/v1/credential/aws_spec.rb +0 -222
  817. data/spec/integration/accounts/v1/credential/public_key_spec.rb +0 -222
  818. data/spec/integration/accounts/v1/credential_spec.rb +0 -12
  819. data/spec/integration/accounts/v1/secondary_auth_token_spec.rb +0 -69
  820. data/spec/integration/api/v2010/account/address/dependent_phone_number_spec.rb +0 -106
  821. data/spec/integration/api/v2010/account/address_spec.rb +0 -269
  822. data/spec/integration/api/v2010/account/application_spec.rb +0 -274
  823. data/spec/integration/api/v2010/account/authorized_connect_app_spec.rb +0 -137
  824. data/spec/integration/api/v2010/account/available_phone_number/local_spec.rb +0 -102
  825. data/spec/integration/api/v2010/account/available_phone_number/machine_to_machine_spec.rb +0 -102
  826. data/spec/integration/api/v2010/account/available_phone_number/mobile_spec.rb +0 -101
  827. data/spec/integration/api/v2010/account/available_phone_number/national_spec.rb +0 -102
  828. data/spec/integration/api/v2010/account/available_phone_number/shared_cost_spec.rb +0 -102
  829. data/spec/integration/api/v2010/account/available_phone_number/toll_free_spec.rb +0 -101
  830. data/spec/integration/api/v2010/account/available_phone_number/voip_spec.rb +0 -102
  831. data/spec/integration/api/v2010/account/available_phone_number_spec.rb +0 -128
  832. data/spec/integration/api/v2010/account/balance_spec.rb +0 -44
  833. data/spec/integration/api/v2010/account/call/event_spec.rb +0 -102
  834. data/spec/integration/api/v2010/account/call/feedback_spec.rb +0 -138
  835. data/spec/integration/api/v2010/account/call/feedback_summary_spec.rb +0 -149
  836. data/spec/integration/api/v2010/account/call/notification_spec.rb +0 -143
  837. data/spec/integration/api/v2010/account/call/payment_spec.rb +0 -135
  838. data/spec/integration/api/v2010/account/call/recording_spec.rb +0 -287
  839. data/spec/integration/api/v2010/account/call_spec.rb +0 -660
  840. data/spec/integration/api/v2010/account/conference/participant_spec.rb +0 -768
  841. data/spec/integration/api/v2010/account/conference/recording_spec.rb +0 -234
  842. data/spec/integration/api/v2010/account/conference_spec.rb +0 -458
  843. data/spec/integration/api/v2010/account/connect_app_spec.rb +0 -197
  844. data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension_spec.rb +0 -135
  845. data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on_spec.rb +0 -220
  846. data/spec/integration/api/v2010/account/incoming_phone_number/local_spec.rb +0 -189
  847. data/spec/integration/api/v2010/account/incoming_phone_number/mobile_spec.rb +0 -189
  848. data/spec/integration/api/v2010/account/incoming_phone_number/toll_free_spec.rb +0 -189
  849. data/spec/integration/api/v2010/account/incoming_phone_number_spec.rb +0 -370
  850. data/spec/integration/api/v2010/account/key_spec.rb +0 -176
  851. data/spec/integration/api/v2010/account/message/feedback_spec.rb +0 -49
  852. data/spec/integration/api/v2010/account/message/media_spec.rb +0 -161
  853. data/spec/integration/api/v2010/account/message_spec.rb +0 -507
  854. data/spec/integration/api/v2010/account/new_key_spec.rb +0 -46
  855. data/spec/integration/api/v2010/account/new_signing_key_spec.rb +0 -46
  856. data/spec/integration/api/v2010/account/notification_spec.rb +0 -138
  857. data/spec/integration/api/v2010/account/outgoing_caller_id_spec.rb +0 -185
  858. data/spec/integration/api/v2010/account/queue/member_spec.rb +0 -208
  859. data/spec/integration/api/v2010/account/queue_spec.rb +0 -244
  860. data/spec/integration/api/v2010/account/recording/add_on_result/payload_spec.rb +0 -174
  861. data/spec/integration/api/v2010/account/recording/add_on_result_spec.rb +0 -165
  862. data/spec/integration/api/v2010/account/recording/transcription_spec.rb +0 -173
  863. data/spec/integration/api/v2010/account/recording_spec.rb +0 -184
  864. data/spec/integration/api/v2010/account/short_code_spec.rb +0 -179
  865. data/spec/integration/api/v2010/account/signing_key_spec.rb +0 -176
  866. data/spec/integration/api/v2010/account/sip/credential_list/credential_spec.rb +0 -252
  867. data/spec/integration/api/v2010/account/sip/credential_list_spec.rb +0 -241
  868. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_credential_list_mapping_spec.rb +0 -217
  869. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_ip_access_control_list_mapping_spec.rb +0 -217
  870. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_calls_mapping_spec.rb +0 -12
  871. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping/auth_registrations_credential_list_mapping_spec.rb +0 -217
  872. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping_spec.rb +0 -12
  873. data/spec/integration/api/v2010/account/sip/domain/auth_types_spec.rb +0 -12
  874. data/spec/integration/api/v2010/account/sip/domain/credential_list_mapping_spec.rb +0 -207
  875. data/spec/integration/api/v2010/account/sip/domain/ip_access_control_list_mapping_spec.rb +0 -217
  876. data/spec/integration/api/v2010/account/sip/domain_spec.rb +0 -303
  877. data/spec/integration/api/v2010/account/sip/ip_access_control_list/ip_address_spec.rb +0 -254
  878. data/spec/integration/api/v2010/account/sip/ip_access_control_list_spec.rb +0 -251
  879. data/spec/integration/api/v2010/account/sip_spec.rb +0 -12
  880. data/spec/integration/api/v2010/account/token_spec.rb +0 -71
  881. data/spec/integration/api/v2010/account/transcription_spec.rb +0 -166
  882. data/spec/integration/api/v2010/account/usage/record/all_time_spec.rb +0 -113
  883. data/spec/integration/api/v2010/account/usage/record/daily_spec.rb +0 -113
  884. data/spec/integration/api/v2010/account/usage/record/last_month_spec.rb +0 -113
  885. data/spec/integration/api/v2010/account/usage/record/monthly_spec.rb +0 -113
  886. data/spec/integration/api/v2010/account/usage/record/this_month_spec.rb +0 -113
  887. data/spec/integration/api/v2010/account/usage/record/today_spec.rb +0 -113
  888. data/spec/integration/api/v2010/account/usage/record/yearly_spec.rb +0 -113
  889. data/spec/integration/api/v2010/account/usage/record/yesterday_spec.rb +0 -113
  890. data/spec/integration/api/v2010/account/usage/record_spec.rb +0 -110
  891. data/spec/integration/api/v2010/account/usage/trigger_spec.rb +0 -281
  892. data/spec/integration/api/v2010/account/usage_spec.rb +0 -12
  893. data/spec/integration/api/v2010/account/validation_request_spec.rb +0 -48
  894. data/spec/integration/api/v2010/account_spec.rb +0 -327
  895. data/spec/integration/autopilot/v1/assistant/defaults_spec.rb +0 -79
  896. data/spec/integration/autopilot/v1/assistant/dialogue_spec.rb +0 -46
  897. data/spec/integration/autopilot/v1/assistant/field_type/field_value_spec.rb +0 -207
  898. data/spec/integration/autopilot/v1/assistant/field_type_spec.rb +0 -242
  899. data/spec/integration/autopilot/v1/assistant/model_build_spec.rb +0 -236
  900. data/spec/integration/autopilot/v1/assistant/query_spec.rb +0 -290
  901. data/spec/integration/autopilot/v1/assistant/style_sheet_spec.rb +0 -79
  902. data/spec/integration/autopilot/v1/assistant/task/field_spec.rb +0 -204
  903. data/spec/integration/autopilot/v1/assistant/task/sample_spec.rb +0 -249
  904. data/spec/integration/autopilot/v1/assistant/task/task_actions_spec.rb +0 -85
  905. data/spec/integration/autopilot/v1/assistant/task/task_statistics_spec.rb +0 -49
  906. data/spec/integration/autopilot/v1/assistant/task_spec.rb +0 -258
  907. data/spec/integration/autopilot/v1/assistant/webhook_spec.rb +0 -242
  908. data/spec/integration/autopilot/v1/assistant_spec.rb +0 -277
  909. data/spec/integration/autopilot/v1/restore_assistant_spec.rb +0 -53
  910. data/spec/integration/bulkexports/v1/export/day_spec.rb +0 -115
  911. data/spec/integration/bulkexports/v1/export/export_custom_job_spec.rb +0 -129
  912. data/spec/integration/bulkexports/v1/export/job_spec.rb +0 -78
  913. data/spec/integration/bulkexports/v1/export_configuration_spec.rb +0 -77
  914. data/spec/integration/bulkexports/v1/export_spec.rb +0 -44
  915. data/spec/integration/chat/v1/credential_spec.rb +0 -219
  916. data/spec/integration/chat/v1/service/channel/invite_spec.rb +0 -207
  917. data/spec/integration/chat/v1/service/channel/member_spec.rb +0 -280
  918. data/spec/integration/chat/v1/service/channel/message_spec.rb +0 -290
  919. data/spec/integration/chat/v1/service/channel_spec.rb +0 -272
  920. data/spec/integration/chat/v1/service/role_spec.rb +0 -260
  921. data/spec/integration/chat/v1/service/user/user_channel_spec.rb +0 -93
  922. data/spec/integration/chat/v1/service/user_spec.rb +0 -262
  923. data/spec/integration/chat/v1/service_spec.rb +0 -295
  924. data/spec/integration/chat/v2/credential_spec.rb +0 -219
  925. data/spec/integration/chat/v2/service/binding_spec.rb +0 -174
  926. data/spec/integration/chat/v2/service/channel/invite_spec.rb +0 -207
  927. data/spec/integration/chat/v2/service/channel/member_spec.rb +0 -263
  928. data/spec/integration/chat/v2/service/channel/message_spec.rb +0 -406
  929. data/spec/integration/chat/v2/service/channel/webhook_spec.rb +0 -303
  930. data/spec/integration/chat/v2/service/channel_spec.rb +0 -282
  931. data/spec/integration/chat/v2/service/role_spec.rb +0 -260
  932. data/spec/integration/chat/v2/service/user/user_binding_spec.rb +0 -177
  933. data/spec/integration/chat/v2/service/user/user_channel_spec.rb +0 -247
  934. data/spec/integration/chat/v2/service/user_spec.rb +0 -270
  935. data/spec/integration/chat/v2/service_spec.rb +0 -350
  936. data/spec/integration/conversations/v1/configuration/webhook_spec.rb +0 -90
  937. data/spec/integration/conversations/v1/configuration_spec.rb +0 -87
  938. data/spec/integration/conversations/v1/conversation/message/delivery_receipt_spec.rb +0 -136
  939. data/spec/integration/conversations/v1/conversation/message_spec.rb +0 -409
  940. data/spec/integration/conversations/v1/conversation/participant_spec.rb +0 -402
  941. data/spec/integration/conversations/v1/conversation/webhook_spec.rb +0 -282
  942. data/spec/integration/conversations/v1/conversation_spec.rb +0 -278
  943. data/spec/integration/conversations/v1/credential_spec.rb +0 -219
  944. data/spec/integration/conversations/v1/role_spec.rb +0 -249
  945. data/spec/integration/conversations/v1/service/binding_spec.rb +0 -166
  946. data/spec/integration/conversations/v1/service/configuration/notification_spec.rb +0 -115
  947. data/spec/integration/conversations/v1/service/configuration_spec.rb +0 -89
  948. data/spec/integration/conversations/v1/service/conversation/message/delivery_receipt_spec.rb +0 -144
  949. data/spec/integration/conversations/v1/service/conversation/message_spec.rb +0 -429
  950. data/spec/integration/conversations/v1/service/conversation/participant_spec.rb +0 -427
  951. data/spec/integration/conversations/v1/service/conversation/webhook_spec.rb +0 -299
  952. data/spec/integration/conversations/v1/service/conversation_spec.rb +0 -289
  953. data/spec/integration/conversations/v1/service/role_spec.rb +0 -260
  954. data/spec/integration/conversations/v1/service/user_spec.rb +0 -241
  955. data/spec/integration/conversations/v1/service_spec.rb +0 -174
  956. data/spec/integration/conversations/v1/user_spec.rb +0 -231
  957. data/spec/integration/events/v1/event_type_spec.rb +0 -133
  958. data/spec/integration/events/v1/schema/schema_version_spec.rb +0 -126
  959. data/spec/integration/events/v1/schema_spec.rb +0 -46
  960. data/spec/integration/events/v1/sink/sink_test_spec.rb +0 -42
  961. data/spec/integration/events/v1/sink/sink_validate_spec.rb +0 -44
  962. data/spec/integration/events/v1/sink_spec.rb +0 -231
  963. data/spec/integration/events/v1/subscription/subscribed_event_spec.rb +0 -91
  964. data/spec/integration/events/v1/subscription_spec.rb +0 -292
  965. data/spec/integration/fax/v1/fax/fax_media_spec.rb +0 -125
  966. data/spec/integration/fax/v1/fax_spec.rb +0 -267
  967. data/spec/integration/flex_api/v1/channel_spec.rb +0 -188
  968. data/spec/integration/flex_api/v1/configuration_spec.rb +0 -554
  969. data/spec/integration/flex_api/v1/flex_flow_spec.rb +0 -259
  970. data/spec/integration/flex_api/v1/web_channel_spec.rb +0 -216
  971. data/spec/integration/insights/v1/call/event_spec.rb +0 -166
  972. data/spec/integration/insights/v1/call/metric_spec.rb +0 -154
  973. data/spec/integration/insights/v1/call/summary_spec.rb +0 -64
  974. data/spec/integration/insights/v1/call_spec.rb +0 -46
  975. data/spec/integration/insights/v1/room/participant_spec.rb +0 -147
  976. data/spec/integration/insights/v1/room_spec.rb +0 -164
  977. data/spec/integration/ip_messaging/v1/credential_spec.rb +0 -219
  978. data/spec/integration/ip_messaging/v1/service/channel/invite_spec.rb +0 -207
  979. data/spec/integration/ip_messaging/v1/service/channel/member_spec.rb +0 -280
  980. data/spec/integration/ip_messaging/v1/service/channel/message_spec.rb +0 -290
  981. data/spec/integration/ip_messaging/v1/service/channel_spec.rb +0 -272
  982. data/spec/integration/ip_messaging/v1/service/role_spec.rb +0 -260
  983. data/spec/integration/ip_messaging/v1/service/user/user_channel_spec.rb +0 -93
  984. data/spec/integration/ip_messaging/v1/service/user_spec.rb +0 -262
  985. data/spec/integration/ip_messaging/v1/service_spec.rb +0 -295
  986. data/spec/integration/ip_messaging/v2/credential_spec.rb +0 -219
  987. data/spec/integration/ip_messaging/v2/service/binding_spec.rb +0 -174
  988. data/spec/integration/ip_messaging/v2/service/channel/invite_spec.rb +0 -207
  989. data/spec/integration/ip_messaging/v2/service/channel/member_spec.rb +0 -263
  990. data/spec/integration/ip_messaging/v2/service/channel/message_spec.rb +0 -406
  991. data/spec/integration/ip_messaging/v2/service/channel/webhook_spec.rb +0 -303
  992. data/spec/integration/ip_messaging/v2/service/channel_spec.rb +0 -282
  993. data/spec/integration/ip_messaging/v2/service/role_spec.rb +0 -260
  994. data/spec/integration/ip_messaging/v2/service/user/user_binding_spec.rb +0 -177
  995. data/spec/integration/ip_messaging/v2/service/user/user_channel_spec.rb +0 -247
  996. data/spec/integration/ip_messaging/v2/service/user_spec.rb +0 -270
  997. data/spec/integration/ip_messaging/v2/service_spec.rb +0 -350
  998. data/spec/integration/lookups/v1/phone_number_spec.rb +0 -336
  999. data/spec/integration/messaging/v1/deactivation_spec.rb +0 -40
  1000. data/spec/integration/messaging/v1/service/alpha_sender_spec.rb +0 -173
  1001. data/spec/integration/messaging/v1/service/phone_number_spec.rb +0 -198
  1002. data/spec/integration/messaging/v1/service/short_code_spec.rb +0 -176
  1003. data/spec/integration/messaging/v1/service_spec.rb +0 -267
  1004. data/spec/integration/monitor/v1/alert_spec.rb +0 -138
  1005. data/spec/integration/monitor/v1/event_spec.rb +0 -148
  1006. data/spec/integration/notify/v1/credential_spec.rb +0 -219
  1007. data/spec/integration/notify/v1/service/binding_spec.rb +0 -222
  1008. data/spec/integration/notify/v1/service/notification_spec.rb +0 -98
  1009. data/spec/integration/notify/v1/service_spec.rb +0 -289
  1010. data/spec/integration/numbers/v2/regulatory_compliance/bundle/evaluation_spec.rb +0 -620
  1011. data/spec/integration/numbers/v2/regulatory_compliance/bundle/item_assignment_spec.rb +0 -195
  1012. data/spec/integration/numbers/v2/regulatory_compliance/bundle_spec.rb +0 -258
  1013. data/spec/integration/numbers/v2/regulatory_compliance/end_user_spec.rb +0 -238
  1014. data/spec/integration/numbers/v2/regulatory_compliance/end_user_type_spec.rb +0 -141
  1015. data/spec/integration/numbers/v2/regulatory_compliance/regulation_spec.rb +0 -181
  1016. data/spec/integration/numbers/v2/regulatory_compliance/supporting_document_spec.rb +0 -250
  1017. data/spec/integration/numbers/v2/regulatory_compliance/supporting_document_type_spec.rb +0 -131
  1018. data/spec/integration/numbers/v2/regulatory_compliance_spec.rb +0 -12
  1019. data/spec/integration/preview/bulk_exports/export/day_spec.rb +0 -115
  1020. data/spec/integration/preview/bulk_exports/export/export_custom_job_spec.rb +0 -129
  1021. data/spec/integration/preview/bulk_exports/export/job_spec.rb +0 -78
  1022. data/spec/integration/preview/bulk_exports/export_configuration_spec.rb +0 -77
  1023. data/spec/integration/preview/bulk_exports/export_spec.rb +0 -44
  1024. data/spec/integration/preview/deployed_devices/fleet/certificate_spec.rb +0 -234
  1025. data/spec/integration/preview/deployed_devices/fleet/deployment_spec.rb +0 -228
  1026. data/spec/integration/preview/deployed_devices/fleet/device_spec.rb +0 -244
  1027. data/spec/integration/preview/deployed_devices/fleet/key_spec.rb +0 -232
  1028. data/spec/integration/preview/deployed_devices/fleet_spec.rb +0 -241
  1029. data/spec/integration/preview/hosted_numbers/authorization_document/dependent_hosted_number_order_spec.rb +0 -110
  1030. data/spec/integration/preview/hosted_numbers/authorization_document_spec.rb +0 -224
  1031. data/spec/integration/preview/hosted_numbers/hosted_number_order_spec.rb +0 -389
  1032. data/spec/integration/preview/marketplace/available_add_on/available_add_on_extension_spec.rb +0 -121
  1033. data/spec/integration/preview/marketplace/available_add_on_spec.rb +0 -142
  1034. data/spec/integration/preview/marketplace/installed_add_on/installed_add_on_extension_spec.rb +0 -162
  1035. data/spec/integration/preview/marketplace/installed_add_on_spec.rb +0 -250
  1036. data/spec/integration/preview/sync/service/document/document_permission_spec.rb +0 -201
  1037. data/spec/integration/preview/sync/service/document_spec.rb +0 -254
  1038. data/spec/integration/preview/sync/service/sync_list/sync_list_item_spec.rb +0 -255
  1039. data/spec/integration/preview/sync/service/sync_list/sync_list_permission_spec.rb +0 -201
  1040. data/spec/integration/preview/sync/service/sync_list_spec.rb +0 -205
  1041. data/spec/integration/preview/sync/service/sync_map/sync_map_item_spec.rb +0 -255
  1042. data/spec/integration/preview/sync/service/sync_map/sync_map_permission_spec.rb +0 -201
  1043. data/spec/integration/preview/sync/service/sync_map_spec.rb +0 -205
  1044. data/spec/integration/preview/sync/service_spec.rb +0 -241
  1045. data/spec/integration/preview/trusted_comms/branded_channel/channel_spec.rb +0 -50
  1046. data/spec/integration/preview/trusted_comms/branded_channel_spec.rb +0 -47
  1047. data/spec/integration/preview/trusted_comms/brands_information_spec.rb +0 -45
  1048. data/spec/integration/preview/trusted_comms/cps_spec.rb +0 -44
  1049. data/spec/integration/preview/trusted_comms/current_call_spec.rb +0 -58
  1050. data/spec/integration/preview/understand/assistant/assistant_fallback_actions_spec.rb +0 -79
  1051. data/spec/integration/preview/understand/assistant/assistant_initiation_actions_spec.rb +0 -79
  1052. data/spec/integration/preview/understand/assistant/dialogue_spec.rb +0 -46
  1053. data/spec/integration/preview/understand/assistant/field_type/field_value_spec.rb +0 -207
  1054. data/spec/integration/preview/understand/assistant/field_type_spec.rb +0 -242
  1055. data/spec/integration/preview/understand/assistant/model_build_spec.rb +0 -236
  1056. data/spec/integration/preview/understand/assistant/query_spec.rb +0 -302
  1057. data/spec/integration/preview/understand/assistant/style_sheet_spec.rb +0 -79
  1058. data/spec/integration/preview/understand/assistant/task/field_spec.rb +0 -204
  1059. data/spec/integration/preview/understand/assistant/task/sample_spec.rb +0 -249
  1060. data/spec/integration/preview/understand/assistant/task/task_actions_spec.rb +0 -85
  1061. data/spec/integration/preview/understand/assistant/task/task_statistics_spec.rb +0 -49
  1062. data/spec/integration/preview/understand/assistant/task_spec.rb +0 -258
  1063. data/spec/integration/preview/understand/assistant_spec.rb +0 -269
  1064. data/spec/integration/preview/wireless/command_spec.rb +0 -167
  1065. data/spec/integration/preview/wireless/rate_plan_spec.rb +0 -257
  1066. data/spec/integration/preview/wireless/sim/usage_spec.rb +0 -50
  1067. data/spec/integration/preview/wireless/sim_spec.rb +0 -207
  1068. data/spec/integration/pricing/v1/messaging/country_spec.rb +0 -137
  1069. data/spec/integration/pricing/v1/messaging_spec.rb +0 -12
  1070. data/spec/integration/pricing/v1/phone_number/country_spec.rb +0 -128
  1071. data/spec/integration/pricing/v1/phone_number_spec.rb +0 -12
  1072. data/spec/integration/pricing/v1/voice/country_spec.rb +0 -138
  1073. data/spec/integration/pricing/v1/voice/number_spec.rb +0 -55
  1074. data/spec/integration/pricing/v1/voice_spec.rb +0 -12
  1075. data/spec/integration/pricing/v2/voice/country_spec.rb +0 -179
  1076. data/spec/integration/pricing/v2/voice/number_spec.rb +0 -61
  1077. data/spec/integration/pricing/v2/voice_spec.rb +0 -12
  1078. data/spec/integration/proxy/v1/service/phone_number_spec.rb +0 -231
  1079. data/spec/integration/proxy/v1/service/session/interaction_spec.rb +0 -133
  1080. data/spec/integration/proxy/v1/service/session/participant/message_interaction_spec.rb +0 -163
  1081. data/spec/integration/proxy/v1/service/session/participant_spec.rb +0 -240
  1082. data/spec/integration/proxy/v1/service/session_spec.rb +0 -225
  1083. data/spec/integration/proxy/v1/service/short_code_spec.rb +0 -225
  1084. data/spec/integration/proxy/v1/service_spec.rb +0 -214
  1085. data/spec/integration/serverless/v1/service/asset/asset_version_spec.rb +0 -93
  1086. data/spec/integration/serverless/v1/service/asset_spec.rb +0 -202
  1087. data/spec/integration/serverless/v1/service/build/build_status_spec.rb +0 -48
  1088. data/spec/integration/serverless/v1/service/build_spec.rb +0 -214
  1089. data/spec/integration/serverless/v1/service/environment/deployment_spec.rb +0 -133
  1090. data/spec/integration/serverless/v1/service/environment/log_spec.rb +0 -97
  1091. data/spec/integration/serverless/v1/service/environment/variable_spec.rb +0 -207
  1092. data/spec/integration/serverless/v1/service/environment_spec.rb +0 -170
  1093. data/spec/integration/serverless/v1/service/function/function_version/function_version_content_spec.rb +0 -51
  1094. data/spec/integration/serverless/v1/service/function/function_version_spec.rb +0 -96
  1095. data/spec/integration/serverless/v1/service/function_spec.rb +0 -202
  1096. data/spec/integration/serverless/v1/service_spec.rb +0 -205
  1097. data/spec/integration/studio/v1/flow/engagement/engagement_context_spec.rb +0 -50
  1098. data/spec/integration/studio/v1/flow/engagement/step/step_context_spec.rb +0 -53
  1099. data/spec/integration/studio/v1/flow/engagement/step_spec.rb +0 -99
  1100. data/spec/integration/studio/v1/flow/engagement_spec.rb +0 -168
  1101. data/spec/integration/studio/v1/flow/execution/execution_context_spec.rb +0 -50
  1102. data/spec/integration/studio/v1/flow/execution/execution_step/execution_step_context_spec.rb +0 -53
  1103. data/spec/integration/studio/v1/flow/execution/execution_step_spec.rb +0 -100
  1104. data/spec/integration/studio/v1/flow/execution_spec.rb +0 -214
  1105. data/spec/integration/studio/v1/flow_spec.rb +0 -114
  1106. data/spec/integration/studio/v2/flow/execution/execution_context_spec.rb +0 -50
  1107. data/spec/integration/studio/v2/flow/execution/execution_step/execution_step_context_spec.rb +0 -53
  1108. data/spec/integration/studio/v2/flow/execution/execution_step_spec.rb +0 -100
  1109. data/spec/integration/studio/v2/flow/execution_spec.rb +0 -211
  1110. data/spec/integration/studio/v2/flow/flow_revision_spec.rb +0 -110
  1111. data/spec/integration/studio/v2/flow/test_user_spec.rb +0 -85
  1112. data/spec/integration/studio/v2/flow_spec.rb +0 -251
  1113. data/spec/integration/studio/v2/flow_validate_spec.rb +0 -46
  1114. data/spec/integration/supersim/v1/command_spec.rb +0 -184
  1115. data/spec/integration/supersim/v1/fleet_spec.rb +0 -214
  1116. data/spec/integration/supersim/v1/network_access_profile/network_access_profile_network_spec.rb +0 -176
  1117. data/spec/integration/supersim/v1/network_access_profile_spec.rb +0 -219
  1118. data/spec/integration/supersim/v1/network_spec.rb +0 -137
  1119. data/spec/integration/supersim/v1/sim_spec.rb +0 -323
  1120. data/spec/integration/supersim/v1/usage_record_spec.rb +0 -647
  1121. data/spec/integration/sync/v1/service/document/document_permission_spec.rb +0 -201
  1122. data/spec/integration/sync/v1/service/document_spec.rb +0 -256
  1123. data/spec/integration/sync/v1/service/sync_list/sync_list_item_spec.rb +0 -257
  1124. data/spec/integration/sync/v1/service/sync_list/sync_list_permission_spec.rb +0 -201
  1125. data/spec/integration/sync/v1/service/sync_list_spec.rb +0 -252
  1126. data/spec/integration/sync/v1/service/sync_map/sync_map_item_spec.rb +0 -257
  1127. data/spec/integration/sync/v1/service/sync_map/sync_map_permission_spec.rb +0 -201
  1128. data/spec/integration/sync/v1/service/sync_map_spec.rb +0 -252
  1129. data/spec/integration/sync/v1/service/sync_stream/stream_message_spec.rb +0 -47
  1130. data/spec/integration/sync/v1/service/sync_stream_spec.rb +0 -244
  1131. data/spec/integration/sync/v1/service_spec.rb +0 -261
  1132. data/spec/integration/taskrouter/v1/workspace/activity_spec.rb +0 -232
  1133. data/spec/integration/taskrouter/v1/workspace/event_spec.rb +0 -163
  1134. data/spec/integration/taskrouter/v1/workspace/task/reservation_spec.rb +0 -222
  1135. data/spec/integration/taskrouter/v1/workspace/task_channel_spec.rb +0 -312
  1136. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics_spec.rb +0 -101
  1137. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics_spec.rb +0 -83
  1138. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_statistics_spec.rb +0 -107
  1139. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queues_statistics_spec.rb +0 -145
  1140. data/spec/integration/taskrouter/v1/workspace/task_queue_spec.rb +0 -290
  1141. data/spec/integration/taskrouter/v1/workspace/task_spec.rb +0 -325
  1142. data/spec/integration/taskrouter/v1/workspace/worker/reservation_spec.rb +0 -191
  1143. data/spec/integration/taskrouter/v1/workspace/worker/worker_channel_spec.rb +0 -185
  1144. data/spec/integration/taskrouter/v1/workspace/worker/worker_statistics_spec.rb +0 -91
  1145. data/spec/integration/taskrouter/v1/workspace/worker/workers_cumulative_statistics_spec.rb +0 -88
  1146. data/spec/integration/taskrouter/v1/workspace/worker/workers_real_time_statistics_spec.rb +0 -69
  1147. data/spec/integration/taskrouter/v1/workspace/worker/workers_statistics_spec.rb +0 -115
  1148. data/spec/integration/taskrouter/v1/workspace/worker_spec.rb +0 -290
  1149. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics_spec.rb +0 -96
  1150. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_real_time_statistics_spec.rb +0 -57
  1151. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_statistics_spec.rb +0 -70
  1152. data/spec/integration/taskrouter/v1/workspace/workflow_spec.rb +0 -266
  1153. data/spec/integration/taskrouter/v1/workspace/workspace_cumulative_statistics_spec.rb +0 -93
  1154. data/spec/integration/taskrouter/v1/workspace/workspace_real_time_statistics_spec.rb +0 -72
  1155. data/spec/integration/taskrouter/v1/workspace/workspace_statistics_spec.rb +0 -104
  1156. data/spec/integration/taskrouter/v1/workspace_spec.rb +0 -291
  1157. data/spec/integration/trunking/v1/trunk/credential_list_spec.rb +0 -189
  1158. data/spec/integration/trunking/v1/trunk/ip_access_control_list_spec.rb +0 -189
  1159. data/spec/integration/trunking/v1/trunk/origination_url_spec.rb +0 -248
  1160. data/spec/integration/trunking/v1/trunk/phone_number_spec.rb +0 -264
  1161. data/spec/integration/trunking/v1/trunk/recording_spec.rb +0 -75
  1162. data/spec/integration/trunking/v1/trunk_spec.rb +0 -281
  1163. data/spec/integration/verify/v2/form_spec.rb +0 -47
  1164. data/spec/integration/verify/v2/service/access_token_spec.rb +0 -44
  1165. data/spec/integration/verify/v2/service/entity/challenge_spec.rb +0 -288
  1166. data/spec/integration/verify/v2/service/entity/factor_spec.rb +0 -277
  1167. data/spec/integration/verify/v2/service/entity_spec.rb +0 -201
  1168. data/spec/integration/verify/v2/service/messaging_configuration_spec.rb +0 -228
  1169. data/spec/integration/verify/v2/service/rate_limit/bucket_spec.rb +0 -245
  1170. data/spec/integration/verify/v2/service/rate_limit_spec.rb +0 -217
  1171. data/spec/integration/verify/v2/service/verification_check_spec.rb +0 -80
  1172. data/spec/integration/verify/v2/service/verification_spec.rb +0 -318
  1173. data/spec/integration/verify/v2/service/webhook_spec.rb +0 -258
  1174. data/spec/integration/verify/v2/service_spec.rb +0 -279
  1175. data/spec/integration/video/v1/composition_hook_spec.rb +0 -407
  1176. data/spec/integration/video/v1/composition_settings_spec.rb +0 -85
  1177. data/spec/integration/video/v1/composition_spec.rb +0 -347
  1178. data/spec/integration/video/v1/recording_settings_spec.rb +0 -85
  1179. data/spec/integration/video/v1/recording_spec.rb +0 -176
  1180. data/spec/integration/video/v1/room/recording_spec.rb +0 -185
  1181. data/spec/integration/video/v1/room/room_participant/room_participant_published_track_spec.rb +0 -94
  1182. data/spec/integration/video/v1/room/room_participant/room_participant_subscribe_rule_spec.rb +0 -103
  1183. data/spec/integration/video/v1/room/room_participant/room_participant_subscribed_track_spec.rb +0 -95
  1184. data/spec/integration/video/v1/room/room_participant_spec.rb +0 -187
  1185. data/spec/integration/video/v1/room/room_recording_rule_spec.rb +0 -89
  1186. data/spec/integration/video/v1/room_spec.rb +0 -301
  1187. data/spec/integration/voice/v1/byoc_trunk_spec.rb +0 -245
  1188. data/spec/integration/voice/v1/connection_policy/connection_policy_target_spec.rb +0 -242
  1189. data/spec/integration/voice/v1/connection_policy_spec.rb +0 -221
  1190. data/spec/integration/voice/v1/dialing_permissions/bulk_country_update_spec.rb +0 -45
  1191. data/spec/integration/voice/v1/dialing_permissions/country/highrisk_special_prefix_spec.rb +0 -60
  1192. data/spec/integration/voice/v1/dialing_permissions/country_spec.rb +0 -110
  1193. data/spec/integration/voice/v1/dialing_permissions/settings_spec.rb +0 -75
  1194. data/spec/integration/voice/v1/dialing_permissions_spec.rb +0 -12
  1195. data/spec/integration/voice/v1/ip_record_spec.rb +0 -219
  1196. data/spec/integration/voice/v1/source_ip_mapping_spec.rb +0 -216
  1197. data/spec/integration/wireless/v1/command_spec.rb +0 -286
  1198. data/spec/integration/wireless/v1/rate_plan_spec.rb +0 -277
  1199. data/spec/integration/wireless/v1/sim/data_session_spec.rb +0 -88
  1200. data/spec/integration/wireless/v1/sim/usage_record_spec.rb +0 -114
  1201. data/spec/integration/wireless/v1/sim_spec.rb +0 -325
  1202. data/spec/integration/wireless/v1/usage_record_spec.rb +0 -110
  1203. data/spec/jwt/access_token_spec.rb +0 -159
  1204. data/spec/jwt/client_capability_spec.rb +0 -104
  1205. data/spec/jwt/task_router_spec.rb +0 -172
  1206. data/spec/rack/twilio_webhook_authentication_spec.rb +0 -106
  1207. data/spec/rest/client_spec.rb +0 -255
  1208. data/spec/security/request_validator_spec.rb +0 -125
  1209. data/spec/spec_helper.rb +0 -38
  1210. data/spec/support/fakeweb.rb +0 -2
  1211. data/spec/twilio_spec.rb +0 -17
  1212. data/spec/twiml/messaging_response_spec.rb +0 -235
  1213. data/spec/twiml/voice_response_spec.rb +0 -847
  1214. data/spec/util/configuration_spec.rb +0 -33
  1215. data/spec/util/url_encode_spec.rb +0 -12
  1216. /data/lib/twilio-ruby/framework/{helper.rb → rest/helper.rb} +0 -0
  1217. /data/lib/twilio-ruby/framework/{obsolete_client.rb → rest/obsolete_client.rb} +0 -0
@@ -1,559 +1,938 @@
1
1
  ##
2
- # This code was generated by
3
- # \ / _ _ _| _ _
4
- # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
- # / /
2
+ # This code was generated by
3
+ # ___ _ _ _ _ _ _ ____ ____ ____ _ ____ ____ _ _ ____ ____ ____ ___ __ __
4
+ # | | | | | | | | | __ | | |__| | __ | __ |___ |\ | |___ |__/ |__| | | | |__/
5
+ # | |_|_| | |___ | |__| |__| | | | |__] |___ | \| |___ | \ | | | |__| | \
6
+ #
7
+ # Twilio - Flex
8
+ # This is the public Twilio REST API.
9
+ #
10
+ # NOTE: This class is auto generated by OpenAPI Generator.
11
+ # https://openapi-generator.tech
12
+ # Do not edit the class manually.
6
13
  #
7
- # frozen_string_literal: true
14
+
8
15
 
9
16
  module Twilio
10
- module REST
11
- class FlexApi < Domain
12
- class V1 < Version
13
- class FlexFlowList < ListResource
14
- ##
15
- # Initialize the FlexFlowList
16
- # @param [Version] version Version that contains the resource
17
- # @return [FlexFlowList] FlexFlowList
18
- def initialize(version)
19
- super(version)
20
-
21
- # Path Solution
22
- @solution = {}
23
- @uri = "/FlexFlows"
24
- end
25
-
26
- ##
27
- # Lists FlexFlowInstance 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 The `friendly_name` of the Flex Flow resources to
31
- # read.
32
- # @param [Integer] limit Upper limit for the number of records to return. stream()
33
- # guarantees to never return more than limit. Default is no limit
34
- # @param [Integer] page_size Number of records to fetch per request, when
35
- # not set will use the default value of 50 records. If no page_size is defined
36
- # but a limit is defined, stream() will attempt to read the limit with the most
37
- # efficient page size, i.e. min(limit, 1000)
38
- # @return [Array] Array of up to limit results
39
- def list(friendly_name: :unset, limit: nil, page_size: nil)
40
- self.stream(friendly_name: friendly_name, limit: limit, page_size: page_size).entries
41
- end
42
-
43
- ##
44
- # Streams FlexFlowInstance records from the API as an Enumerable.
45
- # This operation lazily loads records as efficiently as possible until the limit
46
- # is reached.
47
- # @param [String] friendly_name The `friendly_name` of the Flex Flow resources to
48
- # read.
49
- # @param [Integer] limit Upper limit for the number of records to return. stream()
50
- # guarantees to never return more than limit. Default is no limit.
51
- # @param [Integer] page_size Number of records to fetch per request, when
52
- # not set will use the default value of 50 records. If no page_size is defined
53
- # but a limit is defined, stream() will attempt to read the limit with the most
54
- # efficient page size, i.e. min(limit, 1000)
55
- # @return [Enumerable] Enumerable that will yield up to limit results
56
- def stream(friendly_name: :unset, limit: nil, page_size: nil)
57
- limits = @version.read_limits(limit, page_size)
58
-
59
- page = self.page(friendly_name: friendly_name, page_size: limits[:page_size], )
60
-
61
- @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
62
- end
63
-
64
- ##
65
- # When passed a block, yields FlexFlowInstance records from the API.
66
- # This operation lazily loads records as efficiently as possible until the limit
67
- # is reached.
68
- def each
69
- limits = @version.read_limits
70
-
71
- page = self.page(page_size: limits[:page_size], )
72
-
73
- @version.stream(page,
17
+ module REST
18
+ class FlexApi < FlexApiBase
19
+ class V1 < Version
20
+ class FlexFlowList < ListResource
21
+
22
+ ##
23
+ # Initialize the FlexFlowList
24
+ # @param [Version] version Version that contains the resource
25
+ # @return [FlexFlowList] FlexFlowList
26
+ def initialize(version)
27
+ super(version)
28
+
29
+ # Path Solution
30
+ @solution = { }
31
+ @uri = "/FlexFlows"
32
+
33
+ end
34
+ ##
35
+ # Create the FlexFlowInstance
36
+ # @param [String] friendly_name A descriptive string that you create to describe the Flex Flow resource.
37
+ # @param [String] chat_service_sid The SID of the chat service.
38
+ # @param [ChannelType] channel_type
39
+ # @param [String] contact_identity The channel contact's Identity.
40
+ # @param [Boolean] enabled Whether the new Flex Flow is enabled.
41
+ # @param [IntegrationType] integration_type
42
+ # @param [String] integration_flow_sid The SID of the Studio Flow. Required when `integrationType` is `studio`.
43
+ # @param [String] integration_url The URL of the external webhook. Required when `integrationType` is `external`.
44
+ # @param [String] integration_workspace_sid The Workspace SID for a new Task. Required when `integrationType` is `task`.
45
+ # @param [String] integration_workflow_sid The Workflow SID for a new Task. Required when `integrationType` is `task`.
46
+ # @param [String] integration_channel The Task Channel SID (TCXXXX) or unique name (e.g., `sms`) to use for the Task that will be created. Applicable and required when `integrationType` is `task`. The default value is `default`.
47
+ # @param [String] integration_timeout The Task timeout in seconds for a new Task. Default is 86,400 seconds (24 hours). Optional when `integrationType` is `task`, not applicable otherwise.
48
+ # @param [String] integration_priority The Task priority of a new Task. The default priority is 0. Optional when `integrationType` is `task`, not applicable otherwise.
49
+ # @param [Boolean] integration_creation_on_message In the context of outbound messaging, defines whether to create a Task immediately (and therefore reserve the conversation to current agent), or delay Task creation until the customer sends the first response. Set to false to create immediately, true to delay Task creation. This setting is only applicable for outbound messaging.
50
+ # @param [Boolean] long_lived When enabled, Flex will keep the chat channel active so that it may be used for subsequent interactions with a contact identity. Defaults to `false`.
51
+ # @param [Boolean] janitor_enabled When enabled, the Messaging Channel Janitor will remove active Proxy sessions if the associated Task is deleted outside of the Flex UI. Defaults to `false`.
52
+ # @param [String] integration_retry_count The number of times to retry the Studio Flow or webhook in case of failure. Takes integer values from 0 to 3 with the default being 3. Optional when `integrationType` is `studio` or `external`, not applicable otherwise.
53
+ # @return [FlexFlowInstance] Created FlexFlowInstance
54
+ def create(
55
+ friendly_name: nil,
56
+ chat_service_sid: nil,
57
+ channel_type: nil,
58
+ contact_identity: :unset,
59
+ enabled: :unset,
60
+ integration_type: :unset,
61
+ integration_flow_sid: :unset,
62
+ integration_url: :unset,
63
+ integration_workspace_sid: :unset,
64
+ integration_workflow_sid: :unset,
65
+ integration_channel: :unset,
66
+ integration_timeout: :unset,
67
+ integration_priority: :unset,
68
+ integration_creation_on_message: :unset,
69
+ long_lived: :unset,
70
+ janitor_enabled: :unset,
71
+ integration_retry_count: :unset
72
+ )
73
+
74
+ data = Twilio::Values.of({
75
+ 'FriendlyName' => friendly_name,
76
+ 'ChatServiceSid' => chat_service_sid,
77
+ 'ChannelType' => channel_type,
78
+ 'ContactIdentity' => contact_identity,
79
+ 'Enabled' => enabled,
80
+ 'IntegrationType' => integration_type,
81
+ 'Integration.FlowSid' => integration_flow_sid,
82
+ 'Integration.Url' => integration_url,
83
+ 'Integration.WorkspaceSid' => integration_workspace_sid,
84
+ 'Integration.WorkflowSid' => integration_workflow_sid,
85
+ 'Integration.Channel' => integration_channel,
86
+ 'Integration.Timeout' => integration_timeout,
87
+ 'Integration.Priority' => integration_priority,
88
+ 'Integration.CreationOnMessage' => integration_creation_on_message,
89
+ 'LongLived' => long_lived,
90
+ 'JanitorEnabled' => janitor_enabled,
91
+ 'Integration.RetryCount' => integration_retry_count,
92
+ })
93
+
94
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
95
+
96
+
97
+
98
+
99
+
100
+ payload = @version.create('POST', @uri, data: data, headers: headers)
101
+ FlexFlowInstance.new(
102
+ @version,
103
+ payload,
104
+ )
105
+ end
106
+
107
+ ##
108
+ # Create the FlexFlowInstanceMetadata
109
+ # @param [String] friendly_name A descriptive string that you create to describe the Flex Flow resource.
110
+ # @param [String] chat_service_sid The SID of the chat service.
111
+ # @param [ChannelType] channel_type
112
+ # @param [String] contact_identity The channel contact's Identity.
113
+ # @param [Boolean] enabled Whether the new Flex Flow is enabled.
114
+ # @param [IntegrationType] integration_type
115
+ # @param [String] integration_flow_sid The SID of the Studio Flow. Required when `integrationType` is `studio`.
116
+ # @param [String] integration_url The URL of the external webhook. Required when `integrationType` is `external`.
117
+ # @param [String] integration_workspace_sid The Workspace SID for a new Task. Required when `integrationType` is `task`.
118
+ # @param [String] integration_workflow_sid The Workflow SID for a new Task. Required when `integrationType` is `task`.
119
+ # @param [String] integration_channel The Task Channel SID (TCXXXX) or unique name (e.g., `sms`) to use for the Task that will be created. Applicable and required when `integrationType` is `task`. The default value is `default`.
120
+ # @param [String] integration_timeout The Task timeout in seconds for a new Task. Default is 86,400 seconds (24 hours). Optional when `integrationType` is `task`, not applicable otherwise.
121
+ # @param [String] integration_priority The Task priority of a new Task. The default priority is 0. Optional when `integrationType` is `task`, not applicable otherwise.
122
+ # @param [Boolean] integration_creation_on_message In the context of outbound messaging, defines whether to create a Task immediately (and therefore reserve the conversation to current agent), or delay Task creation until the customer sends the first response. Set to false to create immediately, true to delay Task creation. This setting is only applicable for outbound messaging.
123
+ # @param [Boolean] long_lived When enabled, Flex will keep the chat channel active so that it may be used for subsequent interactions with a contact identity. Defaults to `false`.
124
+ # @param [Boolean] janitor_enabled When enabled, the Messaging Channel Janitor will remove active Proxy sessions if the associated Task is deleted outside of the Flex UI. Defaults to `false`.
125
+ # @param [String] integration_retry_count The number of times to retry the Studio Flow or webhook in case of failure. Takes integer values from 0 to 3 with the default being 3. Optional when `integrationType` is `studio` or `external`, not applicable otherwise.
126
+ # @return [FlexFlowInstance] Created FlexFlowInstance
127
+ def create_with_metadata(
128
+ friendly_name: nil,
129
+ chat_service_sid: nil,
130
+ channel_type: nil,
131
+ contact_identity: :unset,
132
+ enabled: :unset,
133
+ integration_type: :unset,
134
+ integration_flow_sid: :unset,
135
+ integration_url: :unset,
136
+ integration_workspace_sid: :unset,
137
+ integration_workflow_sid: :unset,
138
+ integration_channel: :unset,
139
+ integration_timeout: :unset,
140
+ integration_priority: :unset,
141
+ integration_creation_on_message: :unset,
142
+ long_lived: :unset,
143
+ janitor_enabled: :unset,
144
+ integration_retry_count: :unset
145
+ )
146
+
147
+ data = Twilio::Values.of({
148
+ 'FriendlyName' => friendly_name,
149
+ 'ChatServiceSid' => chat_service_sid,
150
+ 'ChannelType' => channel_type,
151
+ 'ContactIdentity' => contact_identity,
152
+ 'Enabled' => enabled,
153
+ 'IntegrationType' => integration_type,
154
+ 'Integration.FlowSid' => integration_flow_sid,
155
+ 'Integration.Url' => integration_url,
156
+ 'Integration.WorkspaceSid' => integration_workspace_sid,
157
+ 'Integration.WorkflowSid' => integration_workflow_sid,
158
+ 'Integration.Channel' => integration_channel,
159
+ 'Integration.Timeout' => integration_timeout,
160
+ 'Integration.Priority' => integration_priority,
161
+ 'Integration.CreationOnMessage' => integration_creation_on_message,
162
+ 'LongLived' => long_lived,
163
+ 'JanitorEnabled' => janitor_enabled,
164
+ 'Integration.RetryCount' => integration_retry_count,
165
+ })
166
+
167
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
168
+
169
+
170
+
171
+
172
+
173
+ response = @version.create_with_metadata('POST', @uri, data: data, headers: headers)
174
+ flex_flow_instance = FlexFlowInstance.new(
175
+ @version,
176
+ response.body,
177
+ )
178
+ FlexFlowInstanceMetadata.new(
179
+ @version,
180
+ flex_flow_instance,
181
+ response.headers,
182
+ response.status_code
183
+ )
184
+ end
185
+
186
+
187
+ ##
188
+ # Lists FlexFlowInstance records from the API as a list.
189
+ # Unlike stream(), this operation is eager and will load `limit` records into
190
+ # memory before returning.
191
+ # @param [String] friendly_name The `friendly_name` of the Flex Flow resources to read.
192
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
193
+ # guarantees to never return more than limit. Default is no limit
194
+ # @param [Integer] page_size Number of records to fetch per request, when
195
+ # not set will use the default value of 50 records. If no page_size is defined
196
+ # but a limit is defined, stream() will attempt to read the limit with the most
197
+ # efficient page size, i.e. min(limit, 1000)
198
+ # @return [Array] Array of up to limit results
199
+ def list(friendly_name: :unset, limit: nil, page_size: nil)
200
+ self.stream(
201
+ friendly_name: friendly_name,
202
+ limit: limit,
203
+ page_size: page_size
204
+ ).entries
205
+ end
206
+
207
+ ##
208
+ # Streams Instance records from the API as an Enumerable.
209
+ # This operation lazily loads records as efficiently as possible until the limit
210
+ # is reached.
211
+ # @param [String] friendly_name The `friendly_name` of the Flex Flow resources to read.
212
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
213
+ # guarantees to never return more than limit. Default is no limit
214
+ # @param [Integer] page_size Number of records to fetch per request, when
215
+ # not set will use the default value of 50 records. If no page_size is defined
216
+ # but a limit is defined, stream() will attempt to read the limit with the most
217
+ # efficient page size, i.e. min(limit, 1000)
218
+ # @return [Enumerable] Enumerable that will yield up to limit results
219
+ def stream(friendly_name: :unset, limit: nil, page_size: nil)
220
+ limits = @version.read_limits(limit, page_size)
221
+
222
+ page = self.page(
223
+ friendly_name: friendly_name,
224
+ page_size: limits[:page_size], )
225
+
226
+ @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
227
+ end
228
+
229
+ ##
230
+ # Lists FlexFlowPageMetadata records from the API as a list.
231
+ # @param [String] friendly_name The `friendly_name` of the Flex Flow resources to read.
232
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
233
+ # guarantees to never return more than limit. Default is no limit
234
+ # @param [Integer] page_size Number of records to fetch per request, when
235
+ # not set will use the default value of 50 records. If no page_size is defined
236
+ # but a limit is defined, stream() will attempt to read the limit with the most
237
+ # efficient page size, i.e. min(limit, 1000)
238
+ # @return [Array] Array of up to limit results
239
+ def list_with_metadata(friendly_name: :unset, limit: nil, page_size: nil)
240
+ limits = @version.read_limits(limit, page_size)
241
+ params = Twilio::Values.of({
242
+ 'FriendlyName' => friendly_name,
243
+
244
+ 'PageSize' => limits[:page_size],
245
+ });
246
+ headers = Twilio::Values.of({})
247
+
248
+ response = @version.page('GET', @uri, params: params, headers: headers)
249
+
250
+ FlexFlowPageMetadata.new(@version, response, @solution, limits[:limit])
251
+ end
252
+
253
+ ##
254
+ # When passed a block, yields FlexFlowInstance records from the API.
255
+ # This operation lazily loads records as efficiently as possible until the limit
256
+ # is reached.
257
+ def each
258
+ limits = @version.read_limits
259
+
260
+ page = self.page(page_size: limits[:page_size], )
261
+
262
+ @version.stream(page,
74
263
  limit: limits[:limit],
75
264
  page_limit: limits[:page_limit]).each {|x| yield x}
76
- end
77
-
78
- ##
79
- # Retrieve a single page of FlexFlowInstance records from the API.
80
- # Request is executed immediately.
81
- # @param [String] friendly_name The `friendly_name` of the Flex Flow resources to
82
- # read.
83
- # @param [String] page_token PageToken provided by the API
84
- # @param [Integer] page_number Page Number, this value is simply for client state
85
- # @param [Integer] page_size Number of records to return, defaults to 50
86
- # @return [Page] Page of FlexFlowInstance
87
- def page(friendly_name: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
88
- params = Twilio::Values.of({
89
- 'FriendlyName' => friendly_name,
90
- 'PageToken' => page_token,
91
- 'Page' => page_number,
92
- 'PageSize' => page_size,
93
- })
94
-
95
- response = @version.page('GET', @uri, params: params)
96
-
97
- FlexFlowPage.new(@version, response, @solution)
98
- end
99
-
100
- ##
101
- # Retrieve a single page of FlexFlowInstance records from the API.
102
- # Request is executed immediately.
103
- # @param [String] target_url API-generated URL for the requested results page
104
- # @return [Page] Page of FlexFlowInstance
105
- def get_page(target_url)
106
- response = @version.domain.request(
107
- 'GET',
108
- target_url
109
- )
110
- FlexFlowPage.new(@version, response, @solution)
111
- end
112
-
113
- ##
114
- # Create the FlexFlowInstance
115
- # @param [String] friendly_name A descriptive string that you create to describe
116
- # the Flex Flow resource.
117
- # @param [String] chat_service_sid The SID of the chat service.
118
- # @param [flex_flow.ChannelType] channel_type The channel type. Can be: `web`,
119
- # `facebook`, `sms`, `whatsapp`, `line` or `custom`.
120
- # @param [String] contact_identity The channel contact's Identity.
121
- # @param [Boolean] enabled Whether the new Flex Flow is enabled.
122
- # @param [flex_flow.IntegrationType] integration_type The integration type. Can
123
- # be: `studio`, `external`, or `task`.
124
- # @param [String] integration_flow_sid The SID of the Studio Flow. Required when
125
- # `integrationType` is `studio`.
126
- # @param [String] integration_url The URL of the external webhook. Required when
127
- # `integrationType` is `external`.
128
- # @param [String] integration_workspace_sid The Workspace SID for a new Task.
129
- # Required when `integrationType` is `task`.
130
- # @param [String] integration_workflow_sid The Workflow SID for a new Task.
131
- # Required when `integrationType` is `task`.
132
- # @param [String] integration_channel The Task Channel for the TaskRouter Task
133
- # that will be created. Applicable and required when integrationType is `task`.
134
- # Set to `sms` for SMS, and to `chat` otherwise. The default value is `default`
135
- # @param [String] integration_timeout The Task timeout in seconds for a new Task.
136
- # Default is 86,400 seconds (24 hours). Optional when `integrationType` is `task`,
137
- # not applicable otherwise.
138
- # @param [String] integration_priority The Task priority of a new Task. The
139
- # default priority is 0. Optional when `integrationType` is `task`, not applicable
140
- # otherwise.
141
- # @param [Boolean] integration_creation_on_message In the context of outbound
142
- # messaging, defines whether to create a Task immediately (and therefore reserve
143
- # the conversation to current agent), or delay Task creation until the customer
144
- # sends the first response. Set to false to create immediately, true to delay Task
145
- # creation. This setting is only applicable for outbound messaging.
146
- # @param [Boolean] long_lived When enabled, Flex will keep the chat channel active
147
- # so that it may be used for subsequent interactions with a contact identity.
148
- # Defaults to `false`.
149
- # @param [Boolean] janitor_enabled When enabled, the Messaging Channel Janitor
150
- # will remove active Proxy sessions if the associated Task is deleted outside of
151
- # the Flex UI. Defaults to `false`.
152
- # @param [String] integration_retry_count The number of times to retry the webhook
153
- # if the first attempt fails. Can be an integer between 0 and 3 (included),
154
- # default is 0. Optional when integrationType is `external`, not applicable
155
- # otherwise.
156
- # @return [FlexFlowInstance] Created FlexFlowInstance
157
- def create(friendly_name: nil, chat_service_sid: nil, channel_type: nil, contact_identity: :unset, enabled: :unset, integration_type: :unset, integration_flow_sid: :unset, integration_url: :unset, integration_workspace_sid: :unset, integration_workflow_sid: :unset, integration_channel: :unset, integration_timeout: :unset, integration_priority: :unset, integration_creation_on_message: :unset, long_lived: :unset, janitor_enabled: :unset, integration_retry_count: :unset)
158
- data = Twilio::Values.of({
159
- 'FriendlyName' => friendly_name,
160
- 'ChatServiceSid' => chat_service_sid,
161
- 'ChannelType' => channel_type,
162
- 'ContactIdentity' => contact_identity,
163
- 'Enabled' => enabled,
164
- 'IntegrationType' => integration_type,
165
- 'Integration.FlowSid' => integration_flow_sid,
166
- 'Integration.Url' => integration_url,
167
- 'Integration.WorkspaceSid' => integration_workspace_sid,
168
- 'Integration.WorkflowSid' => integration_workflow_sid,
169
- 'Integration.Channel' => integration_channel,
170
- 'Integration.Timeout' => integration_timeout,
171
- 'Integration.Priority' => integration_priority,
172
- 'Integration.CreationOnMessage' => integration_creation_on_message,
173
- 'LongLived' => long_lived,
174
- 'JanitorEnabled' => janitor_enabled,
175
- 'Integration.RetryCount' => integration_retry_count,
176
- })
177
-
178
- payload = @version.create('POST', @uri, data: data)
179
-
180
- FlexFlowInstance.new(@version, payload, )
181
- end
182
-
183
- ##
184
- # Provide a user friendly representation
185
- def to_s
186
- '#<Twilio.FlexApi.V1.FlexFlowList>'
187
- end
188
- end
189
-
190
- class FlexFlowPage < Page
191
- ##
192
- # Initialize the FlexFlowPage
193
- # @param [Version] version Version that contains the resource
194
- # @param [Response] response Response from the API
195
- # @param [Hash] solution Path solution for the resource
196
- # @return [FlexFlowPage] FlexFlowPage
197
- def initialize(version, response, solution)
198
- super(version, response)
199
-
200
- # Path Solution
201
- @solution = solution
202
- end
203
-
204
- ##
205
- # Build an instance of FlexFlowInstance
206
- # @param [Hash] payload Payload response from the API
207
- # @return [FlexFlowInstance] FlexFlowInstance
208
- def get_instance(payload)
209
- FlexFlowInstance.new(@version, payload, )
210
- end
211
-
212
- ##
213
- # Provide a user friendly representation
214
- def to_s
215
- '<Twilio.FlexApi.V1.FlexFlowPage>'
216
- end
217
- end
218
-
219
- class FlexFlowContext < InstanceContext
220
- ##
221
- # Initialize the FlexFlowContext
222
- # @param [Version] version Version that contains the resource
223
- # @param [String] sid The SID of the Flex Flow resource to fetch.
224
- # @return [FlexFlowContext] FlexFlowContext
225
- def initialize(version, sid)
226
- super(version)
227
-
228
- # Path Solution
229
- @solution = {sid: sid, }
230
- @uri = "/FlexFlows/#{@solution[:sid]}"
231
- end
232
-
233
- ##
234
- # Fetch the FlexFlowInstance
235
- # @return [FlexFlowInstance] Fetched FlexFlowInstance
236
- def fetch
237
- payload = @version.fetch('GET', @uri)
238
-
239
- FlexFlowInstance.new(@version, payload, sid: @solution[:sid], )
240
- end
241
-
242
- ##
243
- # Update the FlexFlowInstance
244
- # @param [String] friendly_name A descriptive string that you create to describe
245
- # the Flex Flow resource.
246
- # @param [String] chat_service_sid The SID of the chat service.
247
- # @param [flex_flow.ChannelType] channel_type The channel type. Can be: `web`,
248
- # `facebook`, `sms`, `whatsapp`, `line` or `custom`.
249
- # @param [String] contact_identity The channel contact's Identity.
250
- # @param [Boolean] enabled Whether the new Flex Flow is enabled.
251
- # @param [flex_flow.IntegrationType] integration_type The integration type. Can
252
- # be: `studio`, `external`, or `task`.
253
- # @param [String] integration_flow_sid The SID of the Studio Flow. Required when
254
- # `integrationType` is `studio`.
255
- # @param [String] integration_url The URL of the external webhook. Required when
256
- # `integrationType` is `external`.
257
- # @param [String] integration_workspace_sid The Workspace SID for a new Task.
258
- # Required when `integrationType` is `task`.
259
- # @param [String] integration_workflow_sid The Workflow SID for a new Task.
260
- # Required when `integrationType` is `task`.
261
- # @param [String] integration_channel The Task Channel for the TaskRouter Task
262
- # that will be created. Applicable and required when integrationType is `task`.
263
- # Set to `sms` for SMS, and to `chat` otherwise. The default value is `default`
264
- # @param [String] integration_timeout The Task timeout in seconds for a new Task.
265
- # Default is 86,400 seconds (24 hours). Optional when `integrationType` is `task`,
266
- # not applicable otherwise.
267
- # @param [String] integration_priority The Task priority of a new Task. The
268
- # default priority is 0. Optional when `integrationType` is `task`, not applicable
269
- # otherwise.
270
- # @param [Boolean] integration_creation_on_message In the context of outbound
271
- # messaging, defines whether to create a Task immediately (and therefore reserve
272
- # the conversation to current agent), or delay Task creation until the customer
273
- # sends the first response. Set to false to create immediately, true to delay Task
274
- # creation. This setting is only applicable for outbound messaging.
275
- # @param [Boolean] long_lived When enabled, Flex will keep the chat channel active
276
- # so that it may be used for subsequent interactions with a contact identity.
277
- # Defaults to `false`.
278
- # @param [Boolean] janitor_enabled When enabled, the Messaging Channel Janitor
279
- # will remove active Proxy sessions if the associated Task is deleted outside of
280
- # the Flex UI. Defaults to `false`.
281
- # @param [String] integration_retry_count The number of times to retry the webhook
282
- # if the first attempt fails. Can be an integer between 0 and 3 (included),
283
- # default is 0. Optional when integrationType is `external`, not applicable
284
- # otherwise.
285
- # @return [FlexFlowInstance] Updated FlexFlowInstance
286
- def update(friendly_name: :unset, chat_service_sid: :unset, channel_type: :unset, contact_identity: :unset, enabled: :unset, integration_type: :unset, integration_flow_sid: :unset, integration_url: :unset, integration_workspace_sid: :unset, integration_workflow_sid: :unset, integration_channel: :unset, integration_timeout: :unset, integration_priority: :unset, integration_creation_on_message: :unset, long_lived: :unset, janitor_enabled: :unset, integration_retry_count: :unset)
287
- data = Twilio::Values.of({
288
- 'FriendlyName' => friendly_name,
289
- 'ChatServiceSid' => chat_service_sid,
290
- 'ChannelType' => channel_type,
291
- 'ContactIdentity' => contact_identity,
292
- 'Enabled' => enabled,
293
- 'IntegrationType' => integration_type,
294
- 'Integration.FlowSid' => integration_flow_sid,
295
- 'Integration.Url' => integration_url,
296
- 'Integration.WorkspaceSid' => integration_workspace_sid,
297
- 'Integration.WorkflowSid' => integration_workflow_sid,
298
- 'Integration.Channel' => integration_channel,
299
- 'Integration.Timeout' => integration_timeout,
300
- 'Integration.Priority' => integration_priority,
301
- 'Integration.CreationOnMessage' => integration_creation_on_message,
302
- 'LongLived' => long_lived,
303
- 'JanitorEnabled' => janitor_enabled,
304
- 'Integration.RetryCount' => integration_retry_count,
305
- })
306
-
307
- payload = @version.update('POST', @uri, data: data)
308
-
309
- FlexFlowInstance.new(@version, payload, sid: @solution[:sid], )
310
- end
311
-
312
- ##
313
- # Delete the FlexFlowInstance
314
- # @return [Boolean] true if delete succeeds, false otherwise
315
- def delete
316
- @version.delete('DELETE', @uri)
317
- end
318
-
319
- ##
320
- # Provide a user friendly representation
321
- def to_s
322
- context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
323
- "#<Twilio.FlexApi.V1.FlexFlowContext #{context}>"
324
- end
325
-
326
- ##
327
- # Provide a detailed, user friendly representation
328
- def inspect
329
- context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
330
- "#<Twilio.FlexApi.V1.FlexFlowContext #{context}>"
331
- end
332
- end
265
+ end
266
+
267
+ ##
268
+ # Retrieve a single page of FlexFlowInstance records from the API.
269
+ # Request is executed immediately.
270
+ # @param [String] friendly_name The `friendly_name` of the Flex Flow resources to read.
271
+ # @param [String] page_token PageToken provided by the API
272
+ # @param [Integer] page_number Page Number, this value is simply for client state
273
+ # @param [Integer] page_size Number of records to return, defaults to 50
274
+ # @return [Page] Page of FlexFlowInstance
275
+ def page(friendly_name: :unset, page_token: :unset, page_number: :unset,page_size: :unset)
276
+ params = Twilio::Values.of({
277
+ 'FriendlyName' => friendly_name,
278
+ 'PageToken' => page_token,
279
+ 'Page' => page_number,
280
+ 'PageSize' => page_size,
281
+ })
282
+ headers = Twilio::Values.of({})
283
+
284
+
285
+
286
+ response = @version.page('GET', @uri, params: params, headers: headers)
287
+
288
+ FlexFlowPage.new(@version, response, @solution)
289
+ end
290
+
291
+ ##
292
+ # Retrieve a single page of FlexFlowInstance records from the API.
293
+ # Request is executed immediately.
294
+ # @param [String] target_url API-generated URL for the requested results page
295
+ # @return [Page] Page of FlexFlowInstance
296
+ def get_page(target_url)
297
+ response = @version.domain.request(
298
+ 'GET',
299
+ target_url
300
+ )
301
+ FlexFlowPage.new(@version, response, @solution)
302
+ end
303
+
304
+
305
+
306
+ # Provide a user friendly representation
307
+ def to_s
308
+ '#<Twilio.FlexApi.V1.FlexFlowList>'
309
+ end
310
+ end
311
+
312
+
313
+ class FlexFlowContext < InstanceContext
314
+ ##
315
+ # Initialize the FlexFlowContext
316
+ # @param [Version] version Version that contains the resource
317
+ # @param [String] sid The SID of the Flex Flow resource to update.
318
+ # @return [FlexFlowContext] FlexFlowContext
319
+ def initialize(version, sid)
320
+ super(version)
321
+
322
+
323
+ # Path Solution
324
+ @solution = { sid: sid, }
325
+ @uri = "/FlexFlows/#{@solution[:sid]}"
326
+
327
+
328
+ end
329
+ ##
330
+ # Delete the FlexFlowInstance
331
+ # @return [Boolean] True if delete succeeds, false otherwise
332
+ def delete
333
+
334
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
335
+
336
+
337
+
338
+
339
+ @version.delete('DELETE', @uri, headers: headers)
340
+ end
341
+
342
+ ##
343
+ # Delete the FlexFlowInstanceMetadata
344
+ # @return [Boolean] True if delete succeeds, false otherwise
345
+ def delete_with_metadata
346
+
347
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
348
+
349
+
350
+
351
+ response = @version.delete_with_metadata('DELETE', @uri, headers: headers)
352
+ flexFlow_instance = FlexFlowInstance.new(
353
+ @version,
354
+ response.body,
355
+ account_sid: @solution[:account_sid],
356
+ sid: @solution[:sid],
357
+ )
358
+ FlexFlowInstanceMetadata.new(@version, flexFlow_instance, response.headers, response.status_code)
359
+ end
360
+
361
+ ##
362
+ # Fetch the FlexFlowInstance
363
+ # @return [FlexFlowInstance] Fetched FlexFlowInstance
364
+ def fetch
365
+
366
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
367
+
368
+
369
+
370
+
371
+
372
+ payload = @version.fetch('GET', @uri, headers: headers)
373
+ FlexFlowInstance.new(
374
+ @version,
375
+ payload,
376
+ sid: @solution[:sid],
377
+ )
378
+ end
379
+
380
+ ##
381
+ # Fetch the FlexFlowInstanceMetadata
382
+ # @return [FlexFlowInstance] Fetched FlexFlowInstance
383
+ def fetch_with_metadata
384
+
385
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
386
+
387
+
388
+
389
+
390
+
391
+ response = @version.fetch_with_metadata('GET', @uri, headers: headers)
392
+ flex_flow_instance = FlexFlowInstance.new(
393
+ @version,
394
+ response.body,
395
+ sid: @solution[:sid],
396
+ )
397
+ FlexFlowInstanceMetadata.new(
398
+ @version,
399
+ flex_flow_instance,
400
+ response.headers,
401
+ response.status_code
402
+ )
403
+ end
404
+
405
+ ##
406
+ # Update the FlexFlowInstance
407
+ # @param [String] friendly_name A descriptive string that you create to describe the Flex Flow resource.
408
+ # @param [String] chat_service_sid The SID of the chat service.
409
+ # @param [ChannelType] channel_type
410
+ # @param [String] contact_identity The channel contact's Identity.
411
+ # @param [Boolean] enabled Whether the new Flex Flow is enabled.
412
+ # @param [IntegrationType] integration_type
413
+ # @param [String] integration_flow_sid The SID of the Studio Flow. Required when `integrationType` is `studio`.
414
+ # @param [String] integration_url The URL of the external webhook. Required when `integrationType` is `external`.
415
+ # @param [String] integration_workspace_sid The Workspace SID for a new Task. Required when `integrationType` is `task`.
416
+ # @param [String] integration_workflow_sid The Workflow SID for a new Task. Required when `integrationType` is `task`.
417
+ # @param [String] integration_channel The Task Channel SID (TCXXXX) or unique name (e.g., `sms`) to use for the Task that will be created. Applicable and required when `integrationType` is `task`. The default value is `default`.
418
+ # @param [String] integration_timeout The Task timeout in seconds for a new Task. Default is 86,400 seconds (24 hours). Optional when `integrationType` is `task`, not applicable otherwise.
419
+ # @param [String] integration_priority The Task priority of a new Task. The default priority is 0. Optional when `integrationType` is `task`, not applicable otherwise.
420
+ # @param [Boolean] integration_creation_on_message In the context of outbound messaging, defines whether to create a Task immediately (and therefore reserve the conversation to current agent), or delay Task creation until the customer sends the first response. Set to false to create immediately, true to delay Task creation. This setting is only applicable for outbound messaging.
421
+ # @param [Boolean] long_lived When enabled, Flex will keep the chat channel active so that it may be used for subsequent interactions with a contact identity. Defaults to `false`.
422
+ # @param [Boolean] janitor_enabled When enabled, the Messaging Channel Janitor will remove active Proxy sessions if the associated Task is deleted outside of the Flex UI. Defaults to `false`.
423
+ # @param [String] integration_retry_count The number of times to retry the Studio Flow or webhook in case of failure. Takes integer values from 0 to 3 with the default being 3. Optional when `integrationType` is `studio` or `external`, not applicable otherwise.
424
+ # @return [FlexFlowInstance] Updated FlexFlowInstance
425
+ def update(
426
+ friendly_name: :unset,
427
+ chat_service_sid: :unset,
428
+ channel_type: :unset,
429
+ contact_identity: :unset,
430
+ enabled: :unset,
431
+ integration_type: :unset,
432
+ integration_flow_sid: :unset,
433
+ integration_url: :unset,
434
+ integration_workspace_sid: :unset,
435
+ integration_workflow_sid: :unset,
436
+ integration_channel: :unset,
437
+ integration_timeout: :unset,
438
+ integration_priority: :unset,
439
+ integration_creation_on_message: :unset,
440
+ long_lived: :unset,
441
+ janitor_enabled: :unset,
442
+ integration_retry_count: :unset
443
+ )
444
+
445
+ data = Twilio::Values.of({
446
+ 'FriendlyName' => friendly_name,
447
+ 'ChatServiceSid' => chat_service_sid,
448
+ 'ChannelType' => channel_type,
449
+ 'ContactIdentity' => contact_identity,
450
+ 'Enabled' => enabled,
451
+ 'IntegrationType' => integration_type,
452
+ 'Integration.FlowSid' => integration_flow_sid,
453
+ 'Integration.Url' => integration_url,
454
+ 'Integration.WorkspaceSid' => integration_workspace_sid,
455
+ 'Integration.WorkflowSid' => integration_workflow_sid,
456
+ 'Integration.Channel' => integration_channel,
457
+ 'Integration.Timeout' => integration_timeout,
458
+ 'Integration.Priority' => integration_priority,
459
+ 'Integration.CreationOnMessage' => integration_creation_on_message,
460
+ 'LongLived' => long_lived,
461
+ 'JanitorEnabled' => janitor_enabled,
462
+ 'Integration.RetryCount' => integration_retry_count,
463
+ })
464
+
465
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
466
+
467
+
468
+
469
+
470
+
471
+ payload = @version.update('POST', @uri, data: data, headers: headers)
472
+ FlexFlowInstance.new(
473
+ @version,
474
+ payload,
475
+ sid: @solution[:sid],
476
+ )
477
+ end
478
+
479
+ ##
480
+ # Update the FlexFlowInstanceMetadata
481
+ # @param [String] friendly_name A descriptive string that you create to describe the Flex Flow resource.
482
+ # @param [String] chat_service_sid The SID of the chat service.
483
+ # @param [ChannelType] channel_type
484
+ # @param [String] contact_identity The channel contact's Identity.
485
+ # @param [Boolean] enabled Whether the new Flex Flow is enabled.
486
+ # @param [IntegrationType] integration_type
487
+ # @param [String] integration_flow_sid The SID of the Studio Flow. Required when `integrationType` is `studio`.
488
+ # @param [String] integration_url The URL of the external webhook. Required when `integrationType` is `external`.
489
+ # @param [String] integration_workspace_sid The Workspace SID for a new Task. Required when `integrationType` is `task`.
490
+ # @param [String] integration_workflow_sid The Workflow SID for a new Task. Required when `integrationType` is `task`.
491
+ # @param [String] integration_channel The Task Channel SID (TCXXXX) or unique name (e.g., `sms`) to use for the Task that will be created. Applicable and required when `integrationType` is `task`. The default value is `default`.
492
+ # @param [String] integration_timeout The Task timeout in seconds for a new Task. Default is 86,400 seconds (24 hours). Optional when `integrationType` is `task`, not applicable otherwise.
493
+ # @param [String] integration_priority The Task priority of a new Task. The default priority is 0. Optional when `integrationType` is `task`, not applicable otherwise.
494
+ # @param [Boolean] integration_creation_on_message In the context of outbound messaging, defines whether to create a Task immediately (and therefore reserve the conversation to current agent), or delay Task creation until the customer sends the first response. Set to false to create immediately, true to delay Task creation. This setting is only applicable for outbound messaging.
495
+ # @param [Boolean] long_lived When enabled, Flex will keep the chat channel active so that it may be used for subsequent interactions with a contact identity. Defaults to `false`.
496
+ # @param [Boolean] janitor_enabled When enabled, the Messaging Channel Janitor will remove active Proxy sessions if the associated Task is deleted outside of the Flex UI. Defaults to `false`.
497
+ # @param [String] integration_retry_count The number of times to retry the Studio Flow or webhook in case of failure. Takes integer values from 0 to 3 with the default being 3. Optional when `integrationType` is `studio` or `external`, not applicable otherwise.
498
+ # @return [FlexFlowInstance] Updated FlexFlowInstance
499
+ def update_with_metadata(
500
+ friendly_name: :unset,
501
+ chat_service_sid: :unset,
502
+ channel_type: :unset,
503
+ contact_identity: :unset,
504
+ enabled: :unset,
505
+ integration_type: :unset,
506
+ integration_flow_sid: :unset,
507
+ integration_url: :unset,
508
+ integration_workspace_sid: :unset,
509
+ integration_workflow_sid: :unset,
510
+ integration_channel: :unset,
511
+ integration_timeout: :unset,
512
+ integration_priority: :unset,
513
+ integration_creation_on_message: :unset,
514
+ long_lived: :unset,
515
+ janitor_enabled: :unset,
516
+ integration_retry_count: :unset
517
+ )
518
+
519
+ data = Twilio::Values.of({
520
+ 'FriendlyName' => friendly_name,
521
+ 'ChatServiceSid' => chat_service_sid,
522
+ 'ChannelType' => channel_type,
523
+ 'ContactIdentity' => contact_identity,
524
+ 'Enabled' => enabled,
525
+ 'IntegrationType' => integration_type,
526
+ 'Integration.FlowSid' => integration_flow_sid,
527
+ 'Integration.Url' => integration_url,
528
+ 'Integration.WorkspaceSid' => integration_workspace_sid,
529
+ 'Integration.WorkflowSid' => integration_workflow_sid,
530
+ 'Integration.Channel' => integration_channel,
531
+ 'Integration.Timeout' => integration_timeout,
532
+ 'Integration.Priority' => integration_priority,
533
+ 'Integration.CreationOnMessage' => integration_creation_on_message,
534
+ 'LongLived' => long_lived,
535
+ 'JanitorEnabled' => janitor_enabled,
536
+ 'Integration.RetryCount' => integration_retry_count,
537
+ })
538
+
539
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
540
+
541
+
542
+
543
+
544
+
545
+ response = @version.update_with_metadata('POST', @uri, data: data, headers: headers)
546
+ flex_flow_instance = FlexFlowInstance.new(
547
+ @version,
548
+ response.body,
549
+ sid: @solution[:sid],
550
+ )
551
+ FlexFlowInstanceMetadata.new(
552
+ @version,
553
+ flex_flow_instance,
554
+ response.headers,
555
+ response.status_code
556
+ )
557
+ end
558
+
559
+
560
+ ##
561
+ # Provide a user friendly representation
562
+ def to_s
563
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
564
+ "#<Twilio.FlexApi.V1.FlexFlowContext #{context}>"
565
+ end
566
+
567
+ ##
568
+ # Provide a detailed, user friendly representation
569
+ def inspect
570
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
571
+ "#<Twilio.FlexApi.V1.FlexFlowContext #{context}>"
572
+ end
573
+ end
574
+
575
+ class FlexFlowInstanceMetadata < InstanceResourceMetadata
576
+ ##
577
+ # Initializes a new FlexFlowInstanceMetadata.
578
+ # @param [Version] version Version that contains the resource
579
+ # @param [}FlexFlowInstance] flex_flow_instance The instance associated with the metadata.
580
+ # @param [Hash] headers Header object with response headers.
581
+ # @param [Integer] status_code The HTTP status code of the response.
582
+ # @return [FlexFlowInstanceMetadata] The initialized instance with metadata.
583
+ def initialize(version, flex_flow_instance, headers, status_code)
584
+ super(version, headers, status_code)
585
+ @flex_flow_instance = flex_flow_instance
586
+ end
587
+
588
+ def flex_flow
589
+ @flex_flow_instance
590
+ end
591
+
592
+ def headers
593
+ @headers
594
+ end
595
+
596
+ def status_code
597
+ @status_code
598
+ end
599
+
600
+ def to_s
601
+ "<Twilio.Api.V2010.FlexFlowInstanceMetadata status=#{@status_code}>"
602
+ end
603
+ end
604
+
605
+ class FlexFlowListResponse < InstanceListResource
606
+ # @param [Array<FlexFlowInstance>] instance
607
+ # @param [Hash{String => Object}] headers
608
+ # @param [Integer] status_code
609
+ def initialize(version, payload, key)
610
+ @flex_flow_instance = payload.body[key].map do |data|
611
+ FlexFlowInstance.new(version, data)
612
+ end
613
+ @headers = payload.headers
614
+ @status_code = payload.status_code
615
+ end
616
+
617
+ def flex_flow_instance
618
+ @instance
619
+ end
620
+ end
621
+
622
+ class FlexFlowPage < Page
623
+ ##
624
+ # Initialize the FlexFlowPage
625
+ # @param [Version] version Version that contains the resource
626
+ # @param [Response] response Response from the API
627
+ # @param [Hash] solution Path solution for the resource
628
+ # @return [FlexFlowPage] FlexFlowPage
629
+ def initialize(version, response, solution)
630
+ super(version, response)
631
+
632
+
633
+ # Path Solution
634
+ @solution = solution
635
+ end
636
+
637
+ ##
638
+ # Build an instance of FlexFlowInstance
639
+ # @param [Hash] payload Payload response from the API
640
+ # @return [FlexFlowInstance] FlexFlowInstance
641
+ def get_instance(payload)
642
+ FlexFlowInstance.new(@version, payload)
643
+ end
644
+
645
+ ##
646
+ # Provide a user friendly representation
647
+ def to_s
648
+ '<Twilio.FlexApi.V1.FlexFlowPage>'
649
+ end
650
+ end
651
+
652
+ class FlexFlowPageMetadata < PageMetadata
653
+ attr_reader :flex_flow_page
654
+
655
+ def initialize(version, response, solution, limit)
656
+ super(version, response)
657
+ @flex_flow_page = []
658
+ @limit = limit
659
+ key = get_key(response.body)
660
+ records = 0
661
+ while( limit != :unset && records < limit )
662
+ @flex_flow_page << FlexFlowListResponse.new(version, @payload, key, limit - records)
663
+ @payload = self.next_page
664
+ break unless @payload
665
+ records += @payload.body[key].size
666
+ end
667
+ # Path Solution
668
+ @solution = solution
669
+ end
670
+
671
+ def each
672
+ @flex_flow_page.each do |record|
673
+ yield record
674
+ end
675
+ end
676
+
677
+ def to_s
678
+ '<Twilio::REST::FlexApi::V1PageMetadata>';
679
+ end
680
+ end
681
+ class FlexFlowListResponse < InstanceListResource
682
+
683
+ # @param [Array<FlexFlowInstance>] instance
684
+ # @param [Hash{String => Object}] headers
685
+ # @param [Integer] status_code
686
+ def initialize(version, payload, key, limit = :unset)
687
+ data_list = payload.body[key]
688
+ if limit != :unset
689
+ data_list = data_list[0, limit]
690
+ end
691
+ @flex_flow = data_list.map do |data|
692
+ FlexFlowInstance.new(version, data)
693
+ end
694
+ @headers = payload.headers
695
+ @status_code = payload.status_code
696
+ end
697
+
698
+ def flex_flow
699
+ @flex_flow
700
+ end
701
+
702
+ def headers
703
+ @headers
704
+ end
705
+
706
+ def status_code
707
+ @status_code
708
+ end
709
+ end
710
+
711
+ class FlexFlowInstance < InstanceResource
712
+ ##
713
+ # Initialize the FlexFlowInstance
714
+ # @param [Version] version Version that contains the resource
715
+ # @param [Hash] payload payload that contains response from Twilio
716
+ # @param [String] account_sid The SID of the
717
+ # {Account}[https://www.twilio.com/docs/iam/api/account] that created this FlexFlow
718
+ # resource.
719
+ # @param [String] sid The SID of the Call resource to fetch.
720
+ # @return [FlexFlowInstance] FlexFlowInstance
721
+ def initialize(version, payload , sid: nil)
722
+ super(version)
723
+
724
+
725
+ # Marshaled Properties
726
+ @properties = {
727
+ 'account_sid' => payload['account_sid'],
728
+ 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
729
+ 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
730
+ 'sid' => payload['sid'],
731
+ 'friendly_name' => payload['friendly_name'],
732
+ 'chat_service_sid' => payload['chat_service_sid'],
733
+ 'channel_type' => payload['channel_type'],
734
+ 'contact_identity' => payload['contact_identity'],
735
+ 'enabled' => payload['enabled'],
736
+ 'integration_type' => payload['integration_type'],
737
+ 'integration' => payload['integration'],
738
+ 'long_lived' => payload['long_lived'],
739
+ 'janitor_enabled' => payload['janitor_enabled'],
740
+ 'url' => payload['url'],
741
+ }
742
+
743
+ # Context
744
+ @instance_context = nil
745
+ @params = { 'sid' => sid || @properties['sid'] , }
746
+ end
747
+
748
+ ##
749
+ # Generate an instance context for the instance, the context is capable of
750
+ # performing various actions. All instance actions are proxied to the context
751
+ # @return [FlexFlowContext] CallContext for this CallInstance
752
+ def context
753
+ unless @instance_context
754
+ @instance_context = FlexFlowContext.new(@version , @params['sid'])
755
+ end
756
+ @instance_context
757
+ end
758
+
759
+ ##
760
+ # @return [String] The SID of the [Account](https://www.twilio.com/docs/iam/api/account) that created the Flex Flow resource and owns this Workflow.
761
+ def account_sid
762
+ @properties['account_sid']
763
+ end
764
+
765
+ ##
766
+ # @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.
767
+ def date_created
768
+ @properties['date_created']
769
+ end
770
+
771
+ ##
772
+ # @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.
773
+ def date_updated
774
+ @properties['date_updated']
775
+ end
776
+
777
+ ##
778
+ # @return [String] The unique string that we created to identify the Flex Flow resource.
779
+ def sid
780
+ @properties['sid']
781
+ end
782
+
783
+ ##
784
+ # @return [String] The string that you assigned to describe the resource.
785
+ def friendly_name
786
+ @properties['friendly_name']
787
+ end
788
+
789
+ ##
790
+ # @return [String] The SID of the chat service.
791
+ def chat_service_sid
792
+ @properties['chat_service_sid']
793
+ end
794
+
795
+ ##
796
+ # @return [ChannelType]
797
+ def channel_type
798
+ @properties['channel_type']
799
+ end
800
+
801
+ ##
802
+ # @return [String] The channel contact's Identity.
803
+ def contact_identity
804
+ @properties['contact_identity']
805
+ end
806
+
807
+ ##
808
+ # @return [Boolean] Whether the Flex Flow is enabled.
809
+ def enabled
810
+ @properties['enabled']
811
+ end
812
+
813
+ ##
814
+ # @return [IntegrationType]
815
+ def integration_type
816
+ @properties['integration_type']
817
+ end
818
+
819
+ ##
820
+ # @return [Hash] An object that contains specific parameters for the integration.
821
+ def integration
822
+ @properties['integration']
823
+ end
824
+
825
+ ##
826
+ # @return [Boolean] When enabled, Flex will keep the chat channel active so that it may be used for subsequent interactions with a contact identity. Defaults to `false`.
827
+ def long_lived
828
+ @properties['long_lived']
829
+ end
830
+
831
+ ##
832
+ # @return [Boolean] When enabled, the Messaging Channel Janitor will remove active Proxy sessions if the associated Task is deleted outside of the Flex UI. Defaults to `false`.
833
+ def janitor_enabled
834
+ @properties['janitor_enabled']
835
+ end
836
+
837
+ ##
838
+ # @return [String] The absolute URL of the Flex Flow resource.
839
+ def url
840
+ @properties['url']
841
+ end
842
+
843
+ ##
844
+ # Delete the FlexFlowInstance
845
+ # @return [Boolean] True if delete succeeds, false otherwise
846
+ def delete
847
+
848
+ context.delete
849
+ end
850
+
851
+ ##
852
+ # Fetch the FlexFlowInstance
853
+ # @return [FlexFlowInstance] Fetched FlexFlowInstance
854
+ def fetch
855
+
856
+ context.fetch
857
+ end
858
+
859
+ ##
860
+ # Update the FlexFlowInstance
861
+ # @param [String] friendly_name A descriptive string that you create to describe the Flex Flow resource.
862
+ # @param [String] chat_service_sid The SID of the chat service.
863
+ # @param [ChannelType] channel_type
864
+ # @param [String] contact_identity The channel contact's Identity.
865
+ # @param [Boolean] enabled Whether the new Flex Flow is enabled.
866
+ # @param [IntegrationType] integration_type
867
+ # @param [String] integration_flow_sid The SID of the Studio Flow. Required when `integrationType` is `studio`.
868
+ # @param [String] integration_url The URL of the external webhook. Required when `integrationType` is `external`.
869
+ # @param [String] integration_workspace_sid The Workspace SID for a new Task. Required when `integrationType` is `task`.
870
+ # @param [String] integration_workflow_sid The Workflow SID for a new Task. Required when `integrationType` is `task`.
871
+ # @param [String] integration_channel The Task Channel SID (TCXXXX) or unique name (e.g., `sms`) to use for the Task that will be created. Applicable and required when `integrationType` is `task`. The default value is `default`.
872
+ # @param [String] integration_timeout The Task timeout in seconds for a new Task. Default is 86,400 seconds (24 hours). Optional when `integrationType` is `task`, not applicable otherwise.
873
+ # @param [String] integration_priority The Task priority of a new Task. The default priority is 0. Optional when `integrationType` is `task`, not applicable otherwise.
874
+ # @param [Boolean] integration_creation_on_message In the context of outbound messaging, defines whether to create a Task immediately (and therefore reserve the conversation to current agent), or delay Task creation until the customer sends the first response. Set to false to create immediately, true to delay Task creation. This setting is only applicable for outbound messaging.
875
+ # @param [Boolean] long_lived When enabled, Flex will keep the chat channel active so that it may be used for subsequent interactions with a contact identity. Defaults to `false`.
876
+ # @param [Boolean] janitor_enabled When enabled, the Messaging Channel Janitor will remove active Proxy sessions if the associated Task is deleted outside of the Flex UI. Defaults to `false`.
877
+ # @param [String] integration_retry_count The number of times to retry the Studio Flow or webhook in case of failure. Takes integer values from 0 to 3 with the default being 3. Optional when `integrationType` is `studio` or `external`, not applicable otherwise.
878
+ # @return [FlexFlowInstance] Updated FlexFlowInstance
879
+ def update(
880
+ friendly_name: :unset,
881
+ chat_service_sid: :unset,
882
+ channel_type: :unset,
883
+ contact_identity: :unset,
884
+ enabled: :unset,
885
+ integration_type: :unset,
886
+ integration_flow_sid: :unset,
887
+ integration_url: :unset,
888
+ integration_workspace_sid: :unset,
889
+ integration_workflow_sid: :unset,
890
+ integration_channel: :unset,
891
+ integration_timeout: :unset,
892
+ integration_priority: :unset,
893
+ integration_creation_on_message: :unset,
894
+ long_lived: :unset,
895
+ janitor_enabled: :unset,
896
+ integration_retry_count: :unset
897
+ )
898
+
899
+ context.update(
900
+ friendly_name: friendly_name,
901
+ chat_service_sid: chat_service_sid,
902
+ channel_type: channel_type,
903
+ contact_identity: contact_identity,
904
+ enabled: enabled,
905
+ integration_type: integration_type,
906
+ integration_flow_sid: integration_flow_sid,
907
+ integration_url: integration_url,
908
+ integration_workspace_sid: integration_workspace_sid,
909
+ integration_workflow_sid: integration_workflow_sid,
910
+ integration_channel: integration_channel,
911
+ integration_timeout: integration_timeout,
912
+ integration_priority: integration_priority,
913
+ integration_creation_on_message: integration_creation_on_message,
914
+ long_lived: long_lived,
915
+ janitor_enabled: janitor_enabled,
916
+ integration_retry_count: integration_retry_count,
917
+ )
918
+ end
919
+
920
+ ##
921
+ # Provide a user friendly representation
922
+ def to_s
923
+ values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
924
+ "<Twilio.FlexApi.V1.FlexFlowInstance #{values}>"
925
+ end
926
+
927
+ ##
928
+ # Provide a detailed, user friendly representation
929
+ def inspect
930
+ values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
931
+ "<Twilio.FlexApi.V1.FlexFlowInstance #{values}>"
932
+ end
933
+ end
333
934
 
334
- class FlexFlowInstance < InstanceResource
335
- ##
336
- # Initialize the FlexFlowInstance
337
- # @param [Version] version Version that contains the resource
338
- # @param [Hash] payload payload that contains response from Twilio
339
- # @param [String] sid The SID of the Flex Flow resource to fetch.
340
- # @return [FlexFlowInstance] FlexFlowInstance
341
- def initialize(version, payload, sid: nil)
342
- super(version)
343
-
344
- # Marshaled Properties
345
- @properties = {
346
- 'account_sid' => payload['account_sid'],
347
- 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
348
- 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
349
- 'sid' => payload['sid'],
350
- 'friendly_name' => payload['friendly_name'],
351
- 'chat_service_sid' => payload['chat_service_sid'],
352
- 'channel_type' => payload['channel_type'],
353
- 'contact_identity' => payload['contact_identity'],
354
- 'enabled' => payload['enabled'],
355
- 'integration_type' => payload['integration_type'],
356
- 'integration' => payload['integration'],
357
- 'long_lived' => payload['long_lived'],
358
- 'janitor_enabled' => payload['janitor_enabled'],
359
- 'url' => payload['url'],
360
- }
361
-
362
- # Context
363
- @instance_context = nil
364
- @params = {'sid' => sid || @properties['sid'], }
365
- end
366
-
367
- ##
368
- # Generate an instance context for the instance, the context is capable of
369
- # performing various actions. All instance actions are proxied to the context
370
- # @return [FlexFlowContext] FlexFlowContext for this FlexFlowInstance
371
- def context
372
- unless @instance_context
373
- @instance_context = FlexFlowContext.new(@version, @params['sid'], )
374
935
  end
375
- @instance_context
376
- end
377
-
378
- ##
379
- # @return [String] The SID of the Account that created the resource
380
- def account_sid
381
- @properties['account_sid']
382
- end
383
-
384
- ##
385
- # @return [Time] The ISO 8601 date and time in GMT when the resource was created
386
- def date_created
387
- @properties['date_created']
388
- end
389
-
390
- ##
391
- # @return [Time] The ISO 8601 date and time in GMT when the resource was last updated
392
- def date_updated
393
- @properties['date_updated']
394
- end
395
-
396
- ##
397
- # @return [String] The unique string that identifies the resource
398
- def sid
399
- @properties['sid']
400
- end
401
-
402
- ##
403
- # @return [String] The string that you assigned to describe the resource
404
- def friendly_name
405
- @properties['friendly_name']
406
- end
407
-
408
- ##
409
- # @return [String] The SID of the chat service
410
- def chat_service_sid
411
- @properties['chat_service_sid']
412
- end
413
-
414
- ##
415
- # @return [flex_flow.ChannelType] The channel type
416
- def channel_type
417
- @properties['channel_type']
418
- end
419
-
420
- ##
421
- # @return [String] The channel contact's Identity
422
- def contact_identity
423
- @properties['contact_identity']
424
- end
425
-
426
- ##
427
- # @return [Boolean] Whether the Flex Flow is enabled
428
- def enabled
429
- @properties['enabled']
430
- end
431
-
432
- ##
433
- # @return [flex_flow.IntegrationType] The integration type
434
- def integration_type
435
- @properties['integration_type']
436
- end
437
-
438
- ##
439
- # @return [Hash] An object that contains specific parameters for the integration
440
- def integration
441
- @properties['integration']
442
- end
443
-
444
- ##
445
- # @return [Boolean] Re-use this chat channel for future interactions with a contact
446
- def long_lived
447
- @properties['long_lived']
448
- end
449
-
450
- ##
451
- # @return [Boolean] Remove active Proxy sessions if the corresponding Task is deleted.
452
- def janitor_enabled
453
- @properties['janitor_enabled']
454
- end
455
-
456
- ##
457
- # @return [String] The absolute URL of the Flex Flow resource
458
- def url
459
- @properties['url']
460
- end
461
-
462
- ##
463
- # Fetch the FlexFlowInstance
464
- # @return [FlexFlowInstance] Fetched FlexFlowInstance
465
- def fetch
466
- context.fetch
467
- end
468
-
469
- ##
470
- # Update the FlexFlowInstance
471
- # @param [String] friendly_name A descriptive string that you create to describe
472
- # the Flex Flow resource.
473
- # @param [String] chat_service_sid The SID of the chat service.
474
- # @param [flex_flow.ChannelType] channel_type The channel type. Can be: `web`,
475
- # `facebook`, `sms`, `whatsapp`, `line` or `custom`.
476
- # @param [String] contact_identity The channel contact's Identity.
477
- # @param [Boolean] enabled Whether the new Flex Flow is enabled.
478
- # @param [flex_flow.IntegrationType] integration_type The integration type. Can
479
- # be: `studio`, `external`, or `task`.
480
- # @param [String] integration_flow_sid The SID of the Studio Flow. Required when
481
- # `integrationType` is `studio`.
482
- # @param [String] integration_url The URL of the external webhook. Required when
483
- # `integrationType` is `external`.
484
- # @param [String] integration_workspace_sid The Workspace SID for a new Task.
485
- # Required when `integrationType` is `task`.
486
- # @param [String] integration_workflow_sid The Workflow SID for a new Task.
487
- # Required when `integrationType` is `task`.
488
- # @param [String] integration_channel The Task Channel for the TaskRouter Task
489
- # that will be created. Applicable and required when integrationType is `task`.
490
- # Set to `sms` for SMS, and to `chat` otherwise. The default value is `default`
491
- # @param [String] integration_timeout The Task timeout in seconds for a new Task.
492
- # Default is 86,400 seconds (24 hours). Optional when `integrationType` is `task`,
493
- # not applicable otherwise.
494
- # @param [String] integration_priority The Task priority of a new Task. The
495
- # default priority is 0. Optional when `integrationType` is `task`, not applicable
496
- # otherwise.
497
- # @param [Boolean] integration_creation_on_message In the context of outbound
498
- # messaging, defines whether to create a Task immediately (and therefore reserve
499
- # the conversation to current agent), or delay Task creation until the customer
500
- # sends the first response. Set to false to create immediately, true to delay Task
501
- # creation. This setting is only applicable for outbound messaging.
502
- # @param [Boolean] long_lived When enabled, Flex will keep the chat channel active
503
- # so that it may be used for subsequent interactions with a contact identity.
504
- # Defaults to `false`.
505
- # @param [Boolean] janitor_enabled When enabled, the Messaging Channel Janitor
506
- # will remove active Proxy sessions if the associated Task is deleted outside of
507
- # the Flex UI. Defaults to `false`.
508
- # @param [String] integration_retry_count The number of times to retry the webhook
509
- # if the first attempt fails. Can be an integer between 0 and 3 (included),
510
- # default is 0. Optional when integrationType is `external`, not applicable
511
- # otherwise.
512
- # @return [FlexFlowInstance] Updated FlexFlowInstance
513
- def update(friendly_name: :unset, chat_service_sid: :unset, channel_type: :unset, contact_identity: :unset, enabled: :unset, integration_type: :unset, integration_flow_sid: :unset, integration_url: :unset, integration_workspace_sid: :unset, integration_workflow_sid: :unset, integration_channel: :unset, integration_timeout: :unset, integration_priority: :unset, integration_creation_on_message: :unset, long_lived: :unset, janitor_enabled: :unset, integration_retry_count: :unset)
514
- context.update(
515
- friendly_name: friendly_name,
516
- chat_service_sid: chat_service_sid,
517
- channel_type: channel_type,
518
- contact_identity: contact_identity,
519
- enabled: enabled,
520
- integration_type: integration_type,
521
- integration_flow_sid: integration_flow_sid,
522
- integration_url: integration_url,
523
- integration_workspace_sid: integration_workspace_sid,
524
- integration_workflow_sid: integration_workflow_sid,
525
- integration_channel: integration_channel,
526
- integration_timeout: integration_timeout,
527
- integration_priority: integration_priority,
528
- integration_creation_on_message: integration_creation_on_message,
529
- long_lived: long_lived,
530
- janitor_enabled: janitor_enabled,
531
- integration_retry_count: integration_retry_count,
532
- )
533
- end
534
-
535
- ##
536
- # Delete the FlexFlowInstance
537
- # @return [Boolean] true if delete succeeds, false otherwise
538
- def delete
539
- context.delete
540
- end
541
-
542
- ##
543
- # Provide a user friendly representation
544
- def to_s
545
- values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
546
- "<Twilio.FlexApi.V1.FlexFlowInstance #{values}>"
547
- end
548
-
549
- ##
550
- # Provide a detailed, user friendly representation
551
- def inspect
552
- values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
553
- "<Twilio.FlexApi.V1.FlexFlowInstance #{values}>"
554
- end
555
936
  end
556
- end
557
937
  end
558
- end
559
- end
938
+ end