twilio-ruby 5.74.4 → 7.7.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 (769) hide show
  1. checksums.yaml +4 -4
  2. data/.dockerignore +1 -1
  3. data/.github/ISSUE_TEMPLATE/bug_report.yml +69 -0
  4. data/.github/workflows/test-and-deploy.yml +20 -2
  5. data/.gitignore +3 -0
  6. data/.rubocop.yml +1 -0
  7. data/CHANGES.md +1073 -0
  8. data/CONTRIBUTING.md +11 -9
  9. data/Dockerfile +2 -1
  10. data/Gemfile +5 -0
  11. data/LICENSE +1 -1
  12. data/Makefile +6 -0
  13. data/README.md +138 -40
  14. data/UPGRADE.md +21 -0
  15. data/advanced-examples/custom-http-client.md +170 -0
  16. data/cluster/cluster_oauth_spec.rb +19 -0
  17. data/cluster/cluster_orgs_spec.rb +40 -0
  18. data/cluster/cluster_spec.rb +75 -0
  19. data/examples/public_oauth.rb +13 -0
  20. data/lib/twilio-ruby/auth_strategy/auth_strategy.rb +19 -0
  21. data/lib/twilio-ruby/auth_strategy/no_auth_strategy.rb +17 -0
  22. data/lib/twilio-ruby/auth_strategy/token_auth_strategy.rb +39 -0
  23. data/lib/twilio-ruby/base/client_base.rb +131 -0
  24. data/lib/twilio-ruby/credential/auth_type.rb +17 -0
  25. data/lib/twilio-ruby/credential/client_credential_provider.rb +28 -0
  26. data/lib/twilio-ruby/credential/credential_provider.rb +11 -0
  27. data/lib/twilio-ruby/credential/orgs_credential_provider.rb +30 -0
  28. data/lib/twilio-ruby/framework/request.rb +8 -1
  29. data/lib/twilio-ruby/framework/rest/domain.rb +0 -1
  30. data/lib/twilio-ruby/framework/rest/error.rb +0 -12
  31. data/lib/twilio-ruby/framework/rest/page.rb +1 -0
  32. data/lib/twilio-ruby/http/client_token_manager.rb +28 -0
  33. data/lib/twilio-ruby/http/http_client.rb +22 -5
  34. data/lib/twilio-ruby/http/org_token_manager.rb +28 -0
  35. data/lib/twilio-ruby/jwt/access_token.rb +0 -59
  36. data/lib/twilio-ruby/rest/accounts/v1/auth_token_promotion.rb +205 -178
  37. data/lib/twilio-ruby/rest/accounts/v1/bulk_consents.rb +137 -0
  38. data/lib/twilio-ruby/rest/accounts/v1/bulk_contacts.rb +137 -0
  39. data/lib/twilio-ruby/rest/accounts/v1/credential/aws.rb +397 -332
  40. data/lib/twilio-ruby/rest/accounts/v1/credential/public_key.rb +397 -332
  41. data/lib/twilio-ruby/rest/accounts/v1/credential.rb +122 -114
  42. data/lib/twilio-ruby/rest/accounts/v1/safelist.rb +186 -0
  43. data/lib/twilio-ruby/rest/accounts/v1/secondary_auth_token.rb +225 -192
  44. data/lib/twilio-ruby/rest/accounts/v1.rb +63 -42
  45. data/lib/twilio-ruby/rest/accounts.rb +4 -34
  46. data/lib/twilio-ruby/rest/accounts_base.rb +38 -0
  47. data/lib/twilio-ruby/rest/api/v2010/account/address/dependent_phone_number.rb +374 -365
  48. data/lib/twilio-ruby/rest/api/v2010/account/address.rb +583 -530
  49. data/lib/twilio-ruby/rest/api/v2010/account/application.rb +641 -605
  50. data/lib/twilio-ruby/rest/api/v2010/account/authorized_connect_app.rb +323 -320
  51. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/local.rb +398 -0
  52. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/machine_to_machine.rb +398 -0
  53. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/mobile.rb +398 -0
  54. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/national.rb +398 -0
  55. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/shared_cost.rb +398 -0
  56. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/toll_free.rb +398 -0
  57. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/voip.rb +398 -0
  58. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country.rb +442 -0
  59. data/lib/twilio-ruby/rest/api/v2010/account/balance.rb +143 -118
  60. data/lib/twilio-ruby/rest/api/v2010/account/call/event.rb +206 -194
  61. data/lib/twilio-ruby/rest/api/v2010/account/call/notification.rb +410 -417
  62. data/lib/twilio-ruby/rest/api/v2010/account/call/payment.rb +302 -342
  63. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +520 -511
  64. data/lib/twilio-ruby/rest/api/v2010/account/call/siprec.rb +852 -641
  65. data/lib/twilio-ruby/rest/api/v2010/account/call/stream.rb +852 -641
  66. data/lib/twilio-ruby/rest/api/v2010/account/call/transcription.rb +318 -0
  67. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message.rb +163 -153
  68. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message_subscription.rb +239 -240
  69. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +972 -1050
  70. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +685 -756
  71. data/lib/twilio-ruby/rest/api/v2010/account/conference/recording.rb +471 -458
  72. data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +505 -493
  73. data/lib/twilio-ruby/rest/api/v2010/account/connect_app.rb +446 -407
  74. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension.rb +330 -352
  75. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on.rb +416 -418
  76. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +546 -554
  77. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +546 -553
  78. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +546 -553
  79. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +867 -903
  80. data/lib/twilio-ruby/rest/api/v2010/account/key.rb +355 -302
  81. data/lib/twilio-ruby/rest/api/v2010/account/message/feedback.rb +174 -166
  82. data/lib/twilio-ruby/rest/api/v2010/account/message/media.rb +354 -350
  83. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +644 -641
  84. data/lib/twilio-ruby/rest/api/v2010/account/new_key.rb +164 -138
  85. data/lib/twilio-ruby/rest/api/v2010/account/new_signing_key.rb +164 -138
  86. data/lib/twilio-ruby/rest/api/v2010/account/notification.rb +410 -399
  87. data/lib/twilio-ruby/rest/api/v2010/account/outgoing_caller_id.rb +388 -358
  88. data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +356 -338
  89. data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +452 -390
  90. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload/data.rb +204 -0
  91. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload.rb +393 -380
  92. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result.rb +382 -385
  93. data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +378 -372
  94. data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +521 -513
  95. data/lib/twilio-ruby/rest/api/v2010/account/short_code.rb +433 -408
  96. data/lib/twilio-ruby/rest/api/v2010/account/signing_key.rb +355 -306
  97. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list/credential.rb +401 -368
  98. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list.rb +425 -373
  99. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls/auth_calls_credential_list_mapping.rb +366 -0
  100. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls/auth_calls_ip_access_control_list_mapping.rb +366 -0
  101. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls.rb +141 -0
  102. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_registrations/auth_registrations_credential_list_mapping.rb +366 -0
  103. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_registrations.rb +127 -0
  104. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types.rb +95 -103
  105. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb +359 -339
  106. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/ip_access_control_list_mapping.rb +359 -338
  107. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +675 -645
  108. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +438 -421
  109. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb +425 -374
  110. data/lib/twilio-ruby/rest/api/v2010/account/sip.rb +142 -150
  111. data/lib/twilio-ruby/rest/api/v2010/account/token.rb +178 -154
  112. data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +378 -350
  113. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +318 -339
  114. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +318 -339
  115. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +318 -339
  116. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +318 -339
  117. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +318 -339
  118. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +318 -339
  119. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +318 -339
  120. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +318 -339
  121. data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +385 -416
  122. data/lib/twilio-ruby/rest/api/v2010/account/usage/trigger.rb +511 -484
  123. data/lib/twilio-ruby/rest/api/v2010/account/usage.rb +113 -104
  124. data/lib/twilio-ruby/rest/api/v2010/account/validation_request.rb +179 -161
  125. data/lib/twilio-ruby/rest/api/v2010/account.rb +1001 -943
  126. data/lib/twilio-ruby/rest/api/v2010.rb +126 -148
  127. data/lib/twilio-ruby/rest/api.rb +25 -34
  128. data/lib/twilio-ruby/rest/api_base.rb +38 -0
  129. data/lib/twilio-ruby/rest/assistants/v1/assistant/assistants_knowledge.rb +371 -0
  130. data/lib/twilio-ruby/rest/assistants/v1/assistant/assistants_tool.rb +371 -0
  131. data/lib/twilio-ruby/rest/assistants/v1/assistant/feedback.rb +311 -0
  132. data/lib/twilio-ruby/rest/assistants/v1/assistant/message.rb +206 -0
  133. data/lib/twilio-ruby/rest/assistants/v1/assistant.rb +687 -0
  134. data/lib/twilio-ruby/rest/assistants/v1/knowledge/chunk.rb +232 -0
  135. data/lib/twilio-ruby/rest/assistants/v1/knowledge/knowledge_status.rb +213 -0
  136. data/lib/twilio-ruby/rest/assistants/v1/knowledge.rb +629 -0
  137. data/lib/twilio-ruby/rest/assistants/v1/policy.rb +267 -0
  138. data/lib/twilio-ruby/rest/assistants/v1/session/message.rb +267 -0
  139. data/lib/twilio-ruby/rest/assistants/v1/session.rb +335 -0
  140. data/lib/twilio-ruby/rest/assistants/v1/tool.rb +605 -0
  141. data/lib/twilio-ruby/rest/assistants/v1.rb +100 -0
  142. data/lib/twilio-ruby/rest/assistants.rb +6 -0
  143. data/lib/twilio-ruby/rest/assistants_base.rb +38 -0
  144. data/lib/twilio-ruby/rest/bulkexports/v1/export/day.rb +309 -279
  145. data/lib/twilio-ruby/rest/bulkexports/v1/export/export_custom_job.rb +308 -279
  146. data/lib/twilio-ruby/rest/bulkexports/v1/export/job.rb +282 -248
  147. data/lib/twilio-ruby/rest/bulkexports/v1/export.rb +253 -235
  148. data/lib/twilio-ruby/rest/bulkexports/v1/export_configuration.rb +256 -216
  149. data/lib/twilio-ruby/rest/bulkexports/v1.rb +57 -55
  150. data/lib/twilio-ruby/rest/bulkexports.rb +3 -34
  151. data/lib/twilio-ruby/rest/bulkexports_base.rb +38 -0
  152. data/lib/twilio-ruby/rest/chat/v1/credential.rb +445 -403
  153. data/lib/twilio-ruby/rest/chat/v1/service/channel/invite.rb +394 -391
  154. data/lib/twilio-ruby/rest/chat/v1/service/channel/member.rb +448 -440
  155. data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +464 -437
  156. data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +560 -515
  157. data/lib/twilio-ruby/rest/chat/v1/service/role.rb +422 -367
  158. data/lib/twilio-ruby/rest/chat/v1/service/user/user_channel.rb +248 -239
  159. data/lib/twilio-ruby/rest/chat/v1/service/user.rb +491 -440
  160. data/lib/twilio-ruby/rest/chat/v1/service.rb +887 -894
  161. data/lib/twilio-ruby/rest/chat/v1.rb +57 -55
  162. data/lib/twilio-ruby/rest/chat/v2/credential.rb +445 -401
  163. data/lib/twilio-ruby/rest/chat/v2/service/binding.rb +385 -370
  164. data/lib/twilio-ruby/rest/chat/v2/service/channel/invite.rb +394 -386
  165. data/lib/twilio-ruby/rest/chat/v2/service/channel/member.rb +509 -527
  166. data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +536 -533
  167. data/lib/twilio-ruby/rest/chat/v2/service/channel/webhook.rb +466 -467
  168. data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +629 -605
  169. data/lib/twilio-ruby/rest/chat/v2/service/role.rb +422 -369
  170. data/lib/twilio-ruby/rest/chat/v2/service/user/user_binding.rb +378 -381
  171. data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +425 -419
  172. data/lib/twilio-ruby/rest/chat/v2/service/user.rb +533 -491
  173. data/lib/twilio-ruby/rest/chat/v2/service.rb +790 -778
  174. data/lib/twilio-ruby/rest/chat/v2.rb +57 -53
  175. data/lib/twilio-ruby/rest/chat/v3/channel.rb +295 -267
  176. data/lib/twilio-ruby/rest/chat/v3.rb +64 -41
  177. data/lib/twilio-ruby/rest/chat.rb +4 -48
  178. data/lib/twilio-ruby/rest/chat_base.rb +48 -0
  179. data/lib/twilio-ruby/rest/client.rb +333 -584
  180. data/lib/twilio-ruby/rest/content/v1/content/approval_create.rb +190 -0
  181. data/lib/twilio-ruby/rest/content/v1/content/approval_fetch.rb +206 -188
  182. data/lib/twilio-ruby/rest/content/v1/content.rb +964 -336
  183. data/lib/twilio-ruby/rest/content/v1/content_and_approvals.rb +255 -0
  184. data/lib/twilio-ruby/rest/content/v1/legacy_content.rb +261 -246
  185. data/lib/twilio-ruby/rest/content/v1.rb +54 -45
  186. data/lib/twilio-ruby/rest/content/v2/content.rb +319 -0
  187. data/lib/twilio-ruby/rest/content/v2/content_and_approvals.rb +312 -0
  188. data/lib/twilio-ruby/rest/content/v2.rb +46 -0
  189. data/lib/twilio-ruby/rest/content.rb +2 -40
  190. data/lib/twilio-ruby/rest/content_base.rb +43 -0
  191. data/lib/twilio-ruby/rest/conversations/v1/address_configuration.rb +498 -444
  192. data/lib/twilio-ruby/rest/conversations/v1/configuration/webhook.rb +267 -227
  193. data/lib/twilio-ruby/rest/conversations/v1/configuration.rb +292 -252
  194. data/lib/twilio-ruby/rest/conversations/v1/conversation/message/delivery_receipt.rb +344 -344
  195. data/lib/twilio-ruby/rest/conversations/v1/conversation/message.rb +560 -510
  196. data/lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb +521 -495
  197. data/lib/twilio-ruby/rest/conversations/v1/conversation/webhook.rb +451 -403
  198. data/lib/twilio-ruby/rest/conversations/v1/conversation.rb +643 -552
  199. data/lib/twilio-ruby/rest/conversations/v1/conversation_with_participants.rb +263 -0
  200. data/lib/twilio-ruby/rest/conversations/v1/credential.rb +451 -409
  201. data/lib/twilio-ruby/rest/conversations/v1/participant_conversation.rb +308 -304
  202. data/lib/twilio-ruby/rest/conversations/v1/role.rb +410 -356
  203. data/lib/twilio-ruby/rest/conversations/v1/service/binding.rb +378 -373
  204. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb +313 -289
  205. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb +259 -235
  206. data/lib/twilio-ruby/rest/conversations/v1/service/configuration.rb +320 -279
  207. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message/delivery_receipt.rb +351 -371
  208. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message.rb +567 -550
  209. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/participant.rb +530 -530
  210. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/webhook.rb +460 -438
  211. data/lib/twilio-ruby/rest/conversations/v1/service/conversation.rb +655 -588
  212. data/lib/twilio-ruby/rest/conversations/v1/service/conversation_with_participants.rb +269 -0
  213. data/lib/twilio-ruby/rest/conversations/v1/service/participant_conversation.rb +314 -317
  214. data/lib/twilio-ruby/rest/conversations/v1/service/role.rb +422 -380
  215. data/lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb +466 -455
  216. data/lib/twilio-ruby/rest/conversations/v1/service/user.rb +507 -474
  217. data/lib/twilio-ruby/rest/conversations/v1/service.rb +515 -447
  218. data/lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb +465 -435
  219. data/lib/twilio-ruby/rest/conversations/v1/user.rb +495 -441
  220. data/lib/twilio-ruby/rest/conversations/v1.rb +135 -136
  221. data/lib/twilio-ruby/rest/conversations.rb +9 -34
  222. data/lib/twilio-ruby/rest/conversations_base.rb +38 -0
  223. data/lib/twilio-ruby/rest/events/v1/event_type.rb +326 -288
  224. data/lib/twilio-ruby/rest/events/v1/schema/schema_version.rb +309 -0
  225. data/lib/twilio-ruby/rest/events/v1/schema.rb +234 -218
  226. data/lib/twilio-ruby/rest/events/v1/sink/sink_test.rb +121 -100
  227. data/lib/twilio-ruby/rest/events/v1/sink/sink_validate.rb +127 -103
  228. data/lib/twilio-ruby/rest/events/v1/sink.rb +460 -408
  229. data/lib/twilio-ruby/rest/events/v1/subscription/subscribed_event.rb +391 -339
  230. data/lib/twilio-ruby/rest/events/v1/subscription.rb +436 -387
  231. data/lib/twilio-ruby/rest/events/v1.rb +87 -87
  232. data/lib/twilio-ruby/rest/events.rb +5 -34
  233. data/lib/twilio-ruby/rest/events_base.rb +38 -0
  234. data/lib/twilio-ruby/rest/flex_api/v1/assessments.rb +452 -301
  235. data/lib/twilio-ruby/rest/flex_api/v1/channel.rb +385 -330
  236. data/lib/twilio-ruby/rest/flex_api/v1/configuration.rb +555 -496
  237. data/lib/twilio-ruby/rest/flex_api/v1/flex_flow.rb +589 -570
  238. data/lib/twilio-ruby/rest/flex_api/v1/insights_assessments_comment.rb +328 -306
  239. data/lib/twilio-ruby/rest/flex_api/v1/insights_conversations.rb +232 -0
  240. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires.rb +452 -384
  241. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_category.rb +363 -303
  242. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_question.rb +448 -380
  243. data/lib/twilio-ruby/rest/flex_api/v1/insights_segments.rb +355 -403
  244. data/lib/twilio-ruby/rest/flex_api/v1/insights_session.rb +213 -190
  245. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_answer_sets.rb +161 -0
  246. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_comment.rb +141 -124
  247. data/lib/twilio-ruby/rest/flex_api/v1/insights_user_roles.rb +192 -166
  248. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_invite.rb +252 -227
  249. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_participant.rb +354 -319
  250. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_transfer.rb +352 -0
  251. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb +442 -398
  252. data/lib/twilio-ruby/rest/flex_api/v1/interaction.rb +321 -225
  253. data/lib/twilio-ruby/rest/flex_api/v1/plugin/plugin_versions.rb +408 -0
  254. data/lib/twilio-ruby/rest/flex_api/v1/plugin.rb +461 -0
  255. data/lib/twilio-ruby/rest/flex_api/v1/plugin_archive.rb +251 -0
  256. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration/configured_plugin.rb +400 -0
  257. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration.rb +397 -0
  258. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration_archive.rb +237 -0
  259. data/lib/twilio-ruby/rest/flex_api/v1/plugin_release.rb +343 -0
  260. data/lib/twilio-ruby/rest/flex_api/v1/plugin_version_archive.rb +260 -0
  261. data/lib/twilio-ruby/rest/flex_api/v1/provisioning_status.rb +192 -0
  262. data/lib/twilio-ruby/rest/flex_api/v1/web_channel.rb +404 -331
  263. data/lib/twilio-ruby/rest/flex_api/v1.rb +313 -207
  264. data/lib/twilio-ruby/rest/flex_api/v2/flex_user.rb +339 -0
  265. data/lib/twilio-ruby/rest/flex_api/v2/web_channels.rb +152 -127
  266. data/lib/twilio-ruby/rest/flex_api/v2.rb +70 -28
  267. data/lib/twilio-ruby/rest/flex_api.rb +21 -111
  268. data/lib/twilio-ruby/rest/flex_api_base.rb +43 -0
  269. data/lib/twilio-ruby/rest/frontline_api/v1/user.rb +255 -227
  270. data/lib/twilio-ruby/rest/frontline_api/v1.rb +42 -38
  271. data/lib/twilio-ruby/rest/frontline_api.rb +2 -34
  272. data/lib/twilio-ruby/rest/frontline_api_base.rb +38 -0
  273. data/lib/twilio-ruby/rest/iam/v1/api_key.rb +280 -0
  274. data/lib/twilio-ruby/rest/iam/v1/get_api_keys.rb +233 -0
  275. data/lib/twilio-ruby/rest/iam/v1/new_api_key.rb +181 -0
  276. data/lib/twilio-ruby/rest/iam/v1/token.rb +186 -0
  277. data/lib/twilio-ruby/rest/iam/v1.rb +67 -0
  278. data/lib/twilio-ruby/rest/iam.rb +6 -0
  279. data/lib/twilio-ruby/rest/iam_base.rb +38 -0
  280. data/lib/twilio-ruby/rest/insights/v1/call/annotation.rb +323 -315
  281. data/lib/twilio-ruby/rest/insights/v1/call/call_summary.rb +357 -0
  282. data/lib/twilio-ruby/rest/insights/v1/call/event.rb +273 -255
  283. data/lib/twilio-ruby/rest/insights/v1/call/metric.rb +245 -225
  284. data/lib/twilio-ruby/rest/insights/v1/call.rb +267 -236
  285. data/lib/twilio-ruby/rest/insights/v1/call_summaries.rb +561 -433
  286. data/lib/twilio-ruby/rest/insights/v1/conference/conference_participant.rb +491 -467
  287. data/lib/twilio-ruby/rest/insights/v1/conference.rb +505 -502
  288. data/lib/twilio-ruby/rest/insights/v1/room/participant.rb +386 -371
  289. data/lib/twilio-ruby/rest/insights/v1/room.rb +498 -489
  290. data/lib/twilio-ruby/rest/insights/v1/setting.rb +257 -205
  291. data/lib/twilio-ruby/rest/insights/v1.rb +84 -83
  292. data/lib/twilio-ruby/rest/insights.rb +6 -34
  293. data/lib/twilio-ruby/rest/insights_base.rb +38 -0
  294. data/lib/twilio-ruby/rest/intelligence/v2/custom_operator.rb +464 -0
  295. data/lib/twilio-ruby/rest/intelligence/v2/operator.rb +363 -0
  296. data/lib/twilio-ruby/rest/intelligence/v2/operator_attachment.rb +223 -0
  297. data/lib/twilio-ruby/rest/intelligence/v2/operator_attachments.rb +201 -0
  298. data/lib/twilio-ruby/rest/intelligence/v2/operator_type.rb +365 -0
  299. data/lib/twilio-ruby/rest/intelligence/v2/prebuilt_operator.rb +363 -0
  300. data/lib/twilio-ruby/rest/intelligence/v2/service.rb +534 -0
  301. data/lib/twilio-ruby/rest/intelligence/v2/transcript/media.rb +231 -0
  302. data/lib/twilio-ruby/rest/intelligence/v2/transcript/operator_result.rb +403 -0
  303. data/lib/twilio-ruby/rest/intelligence/v2/transcript/sentence.rb +265 -0
  304. data/lib/twilio-ruby/rest/intelligence/v2/transcript.rb +538 -0
  305. data/lib/twilio-ruby/rest/intelligence/v2.rb +176 -0
  306. data/lib/twilio-ruby/rest/intelligence.rb +6 -0
  307. data/lib/twilio-ruby/rest/intelligence_base.rb +38 -0
  308. data/lib/twilio-ruby/rest/ip_messaging/v1/credential.rb +445 -364
  309. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/invite.rb +394 -359
  310. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb +448 -397
  311. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +464 -409
  312. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +560 -488
  313. data/lib/twilio-ruby/rest/ip_messaging/v1/service/role.rb +422 -347
  314. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user/user_channel.rb +248 -233
  315. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +491 -418
  316. data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +887 -779
  317. data/lib/twilio-ruby/rest/ip_messaging/v1.rb +57 -53
  318. data/lib/twilio-ruby/rest/ip_messaging/v2/credential.rb +445 -364
  319. data/lib/twilio-ruby/rest/ip_messaging/v2/service/binding.rb +385 -343
  320. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/invite.rb +394 -359
  321. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb +509 -451
  322. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +536 -479
  323. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/webhook.rb +466 -411
  324. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +629 -555
  325. data/lib/twilio-ruby/rest/ip_messaging/v2/service/role.rb +422 -347
  326. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_binding.rb +378 -351
  327. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_channel.rb +417 -384
  328. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +533 -467
  329. data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +790 -689
  330. data/lib/twilio-ruby/rest/ip_messaging/v2.rb +57 -53
  331. data/lib/twilio-ruby/rest/ip_messaging.rb +3 -41
  332. data/lib/twilio-ruby/rest/ip_messaging_base.rb +43 -0
  333. data/lib/twilio-ruby/rest/lookups/v1/phone_number.rb +248 -237
  334. data/lib/twilio-ruby/rest/lookups/v1.rb +42 -39
  335. data/lib/twilio-ruby/rest/lookups/v2/bucket.rb +315 -0
  336. data/lib/twilio-ruby/rest/lookups/v2/lookup_override.rb +390 -0
  337. data/lib/twilio-ruby/rest/lookups/v2/phone_number.rb +386 -342
  338. data/lib/twilio-ruby/rest/lookups/v2/query.rb +456 -0
  339. data/lib/twilio-ruby/rest/lookups/v2/rate_limit.rb +136 -0
  340. data/lib/twilio-ruby/rest/lookups/v2.rb +128 -38
  341. data/lib/twilio-ruby/rest/lookups.rb +2 -41
  342. data/lib/twilio-ruby/rest/lookups_base.rb +43 -0
  343. data/lib/twilio-ruby/rest/marketplace/v1/available_add_on/available_add_on_extension.rb +316 -0
  344. data/lib/twilio-ruby/rest/marketplace/v1/available_add_on.rb +343 -0
  345. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on/installed_add_on_extension.rb +363 -0
  346. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on/installed_add_on_usage.rb +162 -0
  347. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on.rb +482 -0
  348. data/lib/twilio-ruby/rest/marketplace/v1/module_data.rb +221 -0
  349. data/lib/twilio-ruby/rest/marketplace/v1/module_data_management.rb +325 -0
  350. data/lib/twilio-ruby/rest/marketplace/v1/referral_conversion.rb +146 -0
  351. data/lib/twilio-ruby/rest/marketplace/v1.rb +91 -0
  352. data/lib/twilio-ruby/rest/marketplace.rb +6 -0
  353. data/lib/twilio-ruby/rest/marketplace_base.rb +38 -0
  354. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_registration_otp.rb +143 -0
  355. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_vetting.rb +372 -346
  356. data/lib/twilio-ruby/rest/messaging/v1/brand_registration.rb +532 -443
  357. data/lib/twilio-ruby/rest/messaging/v1/deactivations.rb +196 -0
  358. data/lib/twilio-ruby/rest/messaging/v1/domain_certs.rb +295 -0
  359. data/lib/twilio-ruby/rest/messaging/v1/domain_config.rb +292 -259
  360. data/lib/twilio-ruby/rest/messaging/v1/domain_config_messaging_service.rb +243 -0
  361. data/lib/twilio-ruby/rest/messaging/v1/external_campaign.rb +165 -144
  362. data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service.rb +223 -0
  363. data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service_domain_association.rb +201 -0
  364. data/lib/twilio-ruby/rest/messaging/v1/request_managed_cert.rb +243 -0
  365. data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +369 -335
  366. data/lib/twilio-ruby/rest/messaging/v1/service/channel_sender.rb +383 -0
  367. data/lib/twilio-ruby/rest/messaging/v1/service/destination_alpha_sender.rb +392 -0
  368. data/lib/twilio-ruby/rest/messaging/v1/service/phone_number.rb +376 -341
  369. data/lib/twilio-ruby/rest/messaging/v1/service/short_code.rb +376 -336
  370. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person.rb +630 -521
  371. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person_usecase.rb +128 -115
  372. data/lib/twilio-ruby/rest/messaging/v1/service.rb +818 -763
  373. data/lib/twilio-ruby/rest/messaging/v1/tollfree_verification.rb +810 -699
  374. data/lib/twilio-ruby/rest/messaging/v1/usecase.rb +113 -94
  375. data/lib/twilio-ruby/rest/messaging/v1.rb +202 -124
  376. data/lib/twilio-ruby/rest/messaging/v2/channels_sender.rb +769 -0
  377. data/lib/twilio-ruby/rest/messaging/v2.rb +49 -0
  378. data/lib/twilio-ruby/rest/messaging.rb +10 -35
  379. data/lib/twilio-ruby/rest/messaging_base.rb +43 -0
  380. data/lib/twilio-ruby/rest/monitor/v1/alert.rb +408 -395
  381. data/lib/twilio-ruby/rest/monitor/v1/event.rb +391 -390
  382. data/lib/twilio-ruby/rest/monitor/v1.rb +57 -53
  383. data/lib/twilio-ruby/rest/monitor.rb +3 -34
  384. data/lib/twilio-ruby/rest/monitor_base.rb +38 -0
  385. data/lib/twilio-ruby/rest/notify/v1/credential.rb +445 -408
  386. data/lib/twilio-ruby/rest/notify/v1/service/binding.rb +455 -452
  387. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +320 -362
  388. data/lib/twilio-ruby/rest/notify/v1/service.rb +650 -622
  389. data/lib/twilio-ruby/rest/notify/v1.rb +57 -55
  390. data/lib/twilio-ruby/rest/notify.rb +3 -34
  391. data/lib/twilio-ruby/rest/notify_base.rb +38 -0
  392. data/lib/twilio-ruby/rest/numbers/v1/bulk_eligibility.rb +249 -0
  393. data/lib/twilio-ruby/rest/numbers/v1/eligibility.rb +132 -0
  394. data/lib/twilio-ruby/rest/numbers/v1/porting_port_in.rb +325 -0
  395. data/lib/twilio-ruby/rest/numbers/v1/porting_port_in_phone_number.rb +328 -0
  396. data/lib/twilio-ruby/rest/numbers/v1/porting_portability.rb +260 -0
  397. data/lib/twilio-ruby/rest/numbers/v1/porting_webhook_configuration.rb +153 -0
  398. data/lib/twilio-ruby/rest/numbers/v1/porting_webhook_configuration_delete.rb +170 -0
  399. data/lib/twilio-ruby/rest/numbers/v1/signing_request_configuration.rb +280 -0
  400. data/lib/twilio-ruby/rest/numbers/v1/webhook.rb +165 -0
  401. data/lib/twilio-ruby/rest/numbers/v1.rb +155 -0
  402. data/lib/twilio-ruby/rest/numbers/v2/authorization_document/dependent_hosted_number_order.rb +347 -0
  403. data/lib/twilio-ruby/rest/numbers/v2/authorization_document.rb +421 -0
  404. data/lib/twilio-ruby/rest/numbers/v2/bulk_hosted_number_order.rb +274 -0
  405. data/lib/twilio-ruby/rest/numbers/v2/bundle_clone.rb +281 -0
  406. data/lib/twilio-ruby/rest/numbers/v2/hosted_number_order.rb +613 -0
  407. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/bundle_copy.rb +288 -261
  408. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/evaluation.rb +340 -298
  409. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/item_assignment.rb +353 -309
  410. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/replace_items.rb +201 -181
  411. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle.rb +630 -607
  412. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user.rb +417 -351
  413. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user_type.rb +300 -266
  414. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/regulation.rb +349 -307
  415. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document.rb +445 -371
  416. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document_type.rb +300 -266
  417. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance.rb +178 -181
  418. data/lib/twilio-ruby/rest/numbers/v2.rb +93 -28
  419. data/lib/twilio-ruby/rest/numbers.rb +2 -34
  420. data/lib/twilio-ruby/rest/numbers_base.rb +43 -0
  421. data/lib/twilio-ruby/rest/oauth/v1/authorize.rb +148 -0
  422. data/lib/twilio-ruby/rest/oauth/v1/token.rb +180 -151
  423. data/lib/twilio-ruby/rest/oauth/v1.rb +39 -56
  424. data/lib/twilio-ruby/rest/oauth.rb +3 -65
  425. data/lib/twilio-ruby/rest/oauth_base.rb +38 -0
  426. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document/dependent_hosted_number_order.rb +374 -396
  427. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document.rb +466 -446
  428. data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +634 -625
  429. data/lib/twilio-ruby/rest/preview/hosted_numbers.rb +57 -55
  430. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on/available_add_on_extension.rb +309 -298
  431. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on.rb +333 -309
  432. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on/installed_add_on_extension.rb +356 -330
  433. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on.rb +453 -398
  434. data/lib/twilio-ruby/rest/preview/marketplace.rb +57 -53
  435. data/lib/twilio-ruby/rest/preview/wireless/command.rb +401 -364
  436. data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +472 -398
  437. data/lib/twilio-ruby/rest/preview/wireless/sim/usage.rb +237 -205
  438. data/lib/twilio-ruby/rest/preview/wireless/sim.rb +588 -523
  439. data/lib/twilio-ruby/rest/preview/wireless.rb +72 -69
  440. data/lib/twilio-ruby/rest/preview.rb +10 -87
  441. data/lib/twilio-ruby/rest/preview_base.rb +48 -0
  442. data/lib/twilio-ruby/rest/preview_iam/v1/authorize.rb +148 -0
  443. data/lib/twilio-ruby/rest/preview_iam/v1/token.rb +186 -0
  444. data/lib/twilio-ruby/rest/preview_iam/v1.rb +46 -0
  445. data/lib/twilio-ruby/rest/preview_iam/versionless/organization/account.rb +309 -0
  446. data/lib/twilio-ruby/rest/preview_iam/versionless/organization/role_assignment.rb +375 -0
  447. data/lib/twilio-ruby/rest/preview_iam/versionless/organization/user.rb +530 -0
  448. data/lib/twilio-ruby/rest/preview_iam/versionless/organization.rb +277 -0
  449. data/lib/twilio-ruby/rest/preview_iam/versionless.rb +49 -0
  450. data/lib/twilio-ruby/rest/preview_iam.rb +9 -0
  451. data/lib/twilio-ruby/rest/preview_iam_base.rb +38 -0
  452. data/lib/twilio-ruby/rest/pricing/v1/messaging/country.rb +307 -275
  453. data/lib/twilio-ruby/rest/pricing/v1/messaging.rb +108 -119
  454. data/lib/twilio-ruby/rest/pricing/v1/phone_number/country.rb +300 -268
  455. data/lib/twilio-ruby/rest/pricing/v1/phone_number.rb +108 -119
  456. data/lib/twilio-ruby/rest/pricing/v1/voice/country.rb +307 -275
  457. data/lib/twilio-ruby/rest/pricing/v1/voice/number.rb +227 -197
  458. data/lib/twilio-ruby/rest/pricing/v1/voice.rb +122 -135
  459. data/lib/twilio-ruby/rest/pricing/v1.rb +45 -42
  460. data/lib/twilio-ruby/rest/pricing/v2/country.rb +299 -270
  461. data/lib/twilio-ruby/rest/pricing/v2/number.rb +239 -217
  462. data/lib/twilio-ruby/rest/pricing/v2/voice/country.rb +307 -275
  463. data/lib/twilio-ruby/rest/pricing/v2/voice/number.rb +245 -220
  464. data/lib/twilio-ruby/rest/pricing/v2/voice.rb +122 -138
  465. data/lib/twilio-ruby/rest/pricing/v2.rb +63 -65
  466. data/lib/twilio-ruby/rest/pricing.rb +6 -41
  467. data/lib/twilio-ruby/rest/pricing_base.rb +43 -0
  468. data/lib/twilio-ruby/rest/proxy/v1/service/phone_number.rb +443 -403
  469. data/lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb +420 -418
  470. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant/message_interaction.rb +444 -449
  471. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb +439 -442
  472. data/lib/twilio-ruby/rest/proxy/v1/service/session.rb +546 -506
  473. data/lib/twilio-ruby/rest/proxy/v1/service.rb +556 -596
  474. data/lib/twilio-ruby/rest/proxy/v1.rb +42 -38
  475. data/lib/twilio-ruby/rest/proxy.rb +2 -34
  476. data/lib/twilio-ruby/rest/proxy_base.rb +38 -0
  477. data/lib/twilio-ruby/rest/routes/v2/phone_number.rb +273 -227
  478. data/lib/twilio-ruby/rest/routes/v2/sip_domain.rb +273 -223
  479. data/lib/twilio-ruby/rest/routes/v2/trunk.rb +273 -227
  480. data/lib/twilio-ruby/rest/routes/v2.rb +72 -69
  481. data/lib/twilio-ruby/rest/routes.rb +4 -34
  482. data/lib/twilio-ruby/rest/routes_base.rb +38 -0
  483. data/lib/twilio-ruby/rest/serverless/v1/service/asset/asset_version.rb +323 -323
  484. data/lib/twilio-ruby/rest/serverless/v1/service/asset.rb +436 -380
  485. data/lib/twilio-ruby/rest/serverless/v1/service/build/build_status.rb +213 -208
  486. data/lib/twilio-ruby/rest/serverless/v1/service/build.rb +425 -384
  487. data/lib/twilio-ruby/rest/serverless/v1/service/environment/deployment.rb +353 -338
  488. data/lib/twilio-ruby/rest/serverless/v1/service/environment/log.rb +369 -383
  489. data/lib/twilio-ruby/rest/serverless/v1/service/environment/variable.rb +427 -396
  490. data/lib/twilio-ruby/rest/serverless/v1/service/environment.rb +474 -447
  491. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version/function_version_content.rb +228 -234
  492. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version.rb +350 -353
  493. data/lib/twilio-ruby/rest/serverless/v1/service/function.rb +436 -380
  494. data/lib/twilio-ruby/rest/serverless/v1/service.rb +547 -493
  495. data/lib/twilio-ruby/rest/serverless/v1.rb +42 -37
  496. data/lib/twilio-ruby/rest/serverless.rb +2 -34
  497. data/lib/twilio-ruby/rest/serverless_base.rb +38 -0
  498. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/engagement_context.rb +213 -199
  499. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step/step_context.rb +228 -218
  500. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb +378 -355
  501. data/lib/twilio-ruby/rest/studio/v1/flow/engagement.rb +442 -394
  502. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_context.rb +213 -200
  503. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step/execution_step_context.rb +228 -221
  504. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step.rb +378 -361
  505. data/lib/twilio-ruby/rest/studio/v1/flow/execution.rb +494 -449
  506. data/lib/twilio-ruby/rest/studio/v1/flow.rb +394 -355
  507. data/lib/twilio-ruby/rest/studio/v1.rb +42 -37
  508. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_context.rb +213 -200
  509. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step/execution_step_context.rb +228 -221
  510. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step.rb +378 -361
  511. data/lib/twilio-ruby/rest/studio/v2/flow/execution.rb +487 -442
  512. data/lib/twilio-ruby/rest/studio/v2/flow/flow_revision.rb +351 -320
  513. data/lib/twilio-ruby/rest/studio/v2/flow/flow_test_user.rb +245 -0
  514. data/lib/twilio-ruby/rest/studio/v2/flow.rb +545 -472
  515. data/lib/twilio-ruby/rest/studio/v2/flow_validate.rb +128 -99
  516. data/lib/twilio-ruby/rest/studio/v2.rb +48 -44
  517. data/lib/twilio-ruby/rest/studio.rb +3 -41
  518. data/lib/twilio-ruby/rest/studio_base.rb +43 -0
  519. data/lib/twilio-ruby/rest/supersim/v1/esim_profile.rb +407 -362
  520. data/lib/twilio-ruby/rest/supersim/v1/fleet.rb +492 -483
  521. data/lib/twilio-ruby/rest/supersim/v1/ip_command.rb +412 -409
  522. data/lib/twilio-ruby/rest/supersim/v1/network.rb +310 -297
  523. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile/network_access_profile_network.rb +355 -332
  524. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile.rb +400 -351
  525. data/lib/twilio-ruby/rest/supersim/v1/settings_update.rb +250 -237
  526. data/lib/twilio-ruby/rest/supersim/v1/sim/billing_period.rb +246 -224
  527. data/lib/twilio-ruby/rest/supersim/v1/sim/sim_ip_address.rb +204 -188
  528. data/lib/twilio-ruby/rest/supersim/v1/sim.rb +480 -453
  529. data/lib/twilio-ruby/rest/supersim/v1/sms_command.rb +372 -361
  530. data/lib/twilio-ruby/rest/supersim/v1/usage_record.rb +309 -344
  531. data/lib/twilio-ruby/rest/supersim/v1.rb +144 -147
  532. data/lib/twilio-ruby/rest/supersim.rb +10 -34
  533. data/lib/twilio-ruby/rest/supersim_base.rb +38 -0
  534. data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +396 -371
  535. data/lib/twilio-ruby/rest/sync/v1/service/document.rb +481 -423
  536. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +490 -490
  537. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +396 -370
  538. data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +496 -445
  539. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +493 -495
  540. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +396 -368
  541. data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +496 -444
  542. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream/stream_message.rb +146 -132
  543. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream.rb +445 -400
  544. data/lib/twilio-ruby/rest/sync/v1/service.rb +601 -567
  545. data/lib/twilio-ruby/rest/sync/v1.rb +42 -37
  546. data/lib/twilio-ruby/rest/sync.rb +2 -34
  547. data/lib/twilio-ruby/rest/sync_base.rb +38 -0
  548. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/activity.rb +431 -395
  549. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +452 -464
  550. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +720 -749
  551. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +676 -661
  552. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_channel.rb +435 -382
  553. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_bulk_real_time_statistics.rb +168 -0
  554. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics.rb +366 -369
  555. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics.rb +286 -275
  556. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_statistics.rb +237 -236
  557. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queues_statistics.rb +243 -258
  558. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +600 -572
  559. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +702 -732
  560. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_channel.rb +405 -388
  561. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_statistics.rb +242 -239
  562. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_cumulative_statistics.rb +288 -265
  563. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_real_time_statistics.rb +222 -193
  564. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_statistics.rb +258 -234
  565. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +647 -637
  566. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics.rb +366 -375
  567. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_real_time_statistics.rb +252 -241
  568. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_statistics.rb +237 -244
  569. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +549 -510
  570. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_cumulative_statistics.rb +360 -356
  571. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_real_time_statistics.rb +238 -206
  572. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_statistics.rb +248 -234
  573. data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +746 -730
  574. data/lib/twilio-ruby/rest/taskrouter/v1.rb +42 -37
  575. data/lib/twilio-ruby/rest/taskrouter.rb +2 -34
  576. data/lib/twilio-ruby/rest/taskrouter_base.rb +38 -0
  577. data/lib/twilio-ruby/rest/trunking/v1/trunk/credential_list.rb +362 -320
  578. data/lib/twilio-ruby/rest/trunking/v1/trunk/ip_access_control_list.rb +362 -317
  579. data/lib/twilio-ruby/rest/trunking/v1/trunk/origination_url.rb +466 -419
  580. data/lib/twilio-ruby/rest/trunking/v1/trunk/phone_number.rb +495 -451
  581. data/lib/twilio-ruby/rest/trunking/v1/trunk/recording.rb +237 -191
  582. data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +656 -630
  583. data/lib/twilio-ruby/rest/trunking/v1.rb +42 -38
  584. data/lib/twilio-ruby/rest/trunking.rb +2 -34
  585. data/lib/twilio-ruby/rest/trunking_base.rb +38 -0
  586. data/lib/twilio-ruby/rest/trusthub/v1/compliance_inquiries.rb +257 -0
  587. data/lib/twilio-ruby/rest/trusthub/v1/compliance_registration_inquiries.rb +365 -0
  588. data/lib/twilio-ruby/rest/trusthub/v1/compliance_tollfree_inquiries.rb +224 -0
  589. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_channel_endpoint_assignment.rb +377 -352
  590. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_entity_assignments.rb +361 -323
  591. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_evaluations.rb +349 -321
  592. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles.rb +558 -513
  593. data/lib/twilio-ruby/rest/trusthub/v1/end_user.rb +409 -346
  594. data/lib/twilio-ruby/rest/trusthub/v1/end_user_type.rb +292 -261
  595. data/lib/twilio-ruby/rest/trusthub/v1/policies.rb +285 -252
  596. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document.rb +423 -359
  597. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document_type.rb +292 -261
  598. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_channel_endpoint_assignment.rb +377 -352
  599. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_entity_assignments.rb +361 -323
  600. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_evaluations.rb +349 -321
  601. data/lib/twilio-ruby/rest/trusthub/v1/trust_products.rb +558 -513
  602. data/lib/twilio-ruby/rest/trusthub/v1.rb +168 -139
  603. data/lib/twilio-ruby/rest/trusthub.rb +8 -34
  604. data/lib/twilio-ruby/rest/trusthub_base.rb +38 -0
  605. data/lib/twilio-ruby/rest/verify/v2/form.rb +200 -183
  606. data/lib/twilio-ruby/rest/verify/v2/safelist.rb +238 -207
  607. data/lib/twilio-ruby/rest/verify/v2/service/access_token.rb +285 -254
  608. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge/notification.rb +198 -192
  609. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb +518 -531
  610. data/lib/twilio-ruby/rest/verify/v2/service/entity/factor.rb +467 -453
  611. data/lib/twilio-ruby/rest/verify/v2/service/entity/new_factor.rb +263 -283
  612. data/lib/twilio-ruby/rest/verify/v2/service/entity.rb +442 -414
  613. data/lib/twilio-ruby/rest/verify/v2/service/messaging_configuration.rb +405 -363
  614. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb +427 -388
  615. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit.rb +446 -384
  616. data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +402 -371
  617. data/lib/twilio-ruby/rest/verify/v2/service/verification_check.rb +228 -205
  618. data/lib/twilio-ruby/rest/verify/v2/service/webhook.rb +473 -412
  619. data/lib/twilio-ruby/rest/verify/v2/service.rb +876 -780
  620. data/lib/twilio-ruby/rest/verify/v2/template.rb +225 -205
  621. data/lib/twilio-ruby/rest/verify/v2/verification_attempt.rb +382 -387
  622. data/lib/twilio-ruby/rest/verify/v2/verification_attempts_summary.rb +246 -226
  623. data/lib/twilio-ruby/rest/verify/v2.rb +99 -103
  624. data/lib/twilio-ruby/rest/verify.rb +7 -34
  625. data/lib/twilio-ruby/rest/verify_base.rb +38 -0
  626. data/lib/twilio-ruby/rest/video/v1/composition.rb +497 -507
  627. data/lib/twilio-ruby/rest/video/v1/composition_hook.rb +551 -647
  628. data/lib/twilio-ruby/rest/video/v1/composition_settings.rb +294 -261
  629. data/lib/twilio-ruby/rest/video/v1/recording.rb +440 -426
  630. data/lib/twilio-ruby/rest/video/v1/recording_settings.rb +294 -261
  631. data/lib/twilio-ruby/rest/video/v1/room/participant/anonymize.rb +266 -0
  632. data/lib/twilio-ruby/rest/video/v1/room/participant/published_track.rb +341 -0
  633. data/lib/twilio-ruby/rest/video/v1/room/participant/subscribe_rules.rb +194 -0
  634. data/lib/twilio-ruby/rest/video/v1/room/participant/subscribed_track.rb +348 -0
  635. data/lib/twilio-ruby/rest/video/v1/room/participant.rb +514 -0
  636. data/lib/twilio-ruby/rest/video/v1/room/recording_rules.rb +183 -0
  637. data/lib/twilio-ruby/rest/video/v1/room/room_recording.rb +437 -0
  638. data/lib/twilio-ruby/rest/video/v1/room/transcriptions.rb +417 -0
  639. data/lib/twilio-ruby/rest/video/v1/room.rb +661 -602
  640. data/lib/twilio-ruby/rest/video/v1.rb +99 -99
  641. data/lib/twilio-ruby/rest/video.rb +7 -34
  642. data/lib/twilio-ruby/rest/video_base.rb +38 -0
  643. data/lib/twilio-ruby/rest/voice/v1/archived_call.rb +163 -176
  644. data/lib/twilio-ruby/rest/voice/v1/byoc_trunk.rb +527 -486
  645. data/lib/twilio-ruby/rest/voice/v1/connection_policy/connection_policy_target.rb +466 -434
  646. data/lib/twilio-ruby/rest/voice/v1/connection_policy.rb +417 -352
  647. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/bulk_country_update.rb +142 -121
  648. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country/highrisk_special_prefix.rb +199 -183
  649. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country.rb +383 -397
  650. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/settings.rb +228 -190
  651. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions.rb +123 -121
  652. data/lib/twilio-ruby/rest/voice/v1/ip_record.rb +403 -339
  653. data/lib/twilio-ruby/rest/voice/v1/source_ip_mapping.rb +386 -319
  654. data/lib/twilio-ruby/rest/voice/v1.rb +130 -117
  655. data/lib/twilio-ruby/rest/voice.rb +7 -34
  656. data/lib/twilio-ruby/rest/voice_base.rb +33 -0
  657. data/lib/twilio-ruby/rest/wireless/v1/command.rb +428 -406
  658. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +492 -436
  659. data/lib/twilio-ruby/rest/wireless/v1/sim/data_session.rb +302 -284
  660. data/lib/twilio-ruby/rest/wireless/v1/sim/usage_record.rb +243 -243
  661. data/lib/twilio-ruby/rest/wireless/v1/sim.rb +654 -647
  662. data/lib/twilio-ruby/rest/wireless/v1/usage_record.rb +230 -221
  663. data/lib/twilio-ruby/rest/wireless/v1.rb +78 -76
  664. data/lib/twilio-ruby/rest/wireless.rb +5 -34
  665. data/lib/twilio-ruby/rest/wireless_base.rb +38 -0
  666. data/lib/twilio-ruby/rest.rb +1 -0
  667. data/lib/twilio-ruby/twiml/messaging_response.rb +1 -1
  668. data/lib/twilio-ruby/twiml/voice_response.rb +263 -20
  669. data/lib/twilio-ruby/version.rb +1 -1
  670. data/sonar-project.properties +1 -1
  671. data/twilio-ruby.gemspec +3 -2
  672. metadata +201 -108
  673. data/conf/cacert.pem +0 -3376
  674. data/lib/twilio-ruby/framework/twilio_response.rb +0 -19
  675. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/local.rb +0 -500
  676. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/machine_to_machine.rb +0 -500
  677. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/mobile.rb +0 -500
  678. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/national.rb +0 -500
  679. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/shared_cost.rb +0 -500
  680. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/toll_free.rb +0 -500
  681. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/voip.rb +0 -500
  682. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number.rb +0 -464
  683. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb +0 -301
  684. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb +0 -314
  685. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_credential_list_mapping.rb +0 -348
  686. 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
  687. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping.rb +0 -163
  688. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping/auth_registrations_credential_list_mapping.rb +0 -348
  689. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping.rb +0 -137
  690. data/lib/twilio-ruby/rest/autopilot/v1/assistant/defaults.rb +0 -220
  691. data/lib/twilio-ruby/rest/autopilot/v1/assistant/dialogue.rb +0 -214
  692. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type/field_value.rb +0 -399
  693. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type.rb +0 -418
  694. data/lib/twilio-ruby/rest/autopilot/v1/assistant/model_build.rb +0 -392
  695. data/lib/twilio-ruby/rest/autopilot/v1/assistant/query.rb +0 -469
  696. data/lib/twilio-ruby/rest/autopilot/v1/assistant/style_sheet.rb +0 -218
  697. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/field.rb +0 -386
  698. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/sample.rb +0 -456
  699. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_actions.rb +0 -255
  700. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_statistics.rb +0 -237
  701. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task.rb +0 -507
  702. data/lib/twilio-ruby/rest/autopilot/v1/assistant/webhook.rb +0 -420
  703. data/lib/twilio-ruby/rest/autopilot/v1/assistant.rb +0 -650
  704. data/lib/twilio-ruby/rest/autopilot/v1/restore_assistant.rb +0 -194
  705. data/lib/twilio-ruby/rest/autopilot/v1.rb +0 -52
  706. data/lib/twilio-ruby/rest/autopilot.rb +0 -53
  707. data/lib/twilio-ruby/rest/events/v1/schema/version.rb +0 -290
  708. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_answersets.rb +0 -144
  709. data/lib/twilio-ruby/rest/insights/v1/call/summary.rb +0 -321
  710. data/lib/twilio-ruby/rest/media/v1/media_processor.rb +0 -397
  711. data/lib/twilio-ruby/rest/media/v1/media_recording.rb +0 -399
  712. data/lib/twilio-ruby/rest/media/v1/player_streamer/playback_grant.rb +0 -221
  713. data/lib/twilio-ruby/rest/media/v1/player_streamer.rb +0 -403
  714. data/lib/twilio-ruby/rest/media/v1.rb +0 -76
  715. data/lib/twilio-ruby/rest/media.rb +0 -65
  716. data/lib/twilio-ruby/rest/messaging/v1/deactivation.rb +0 -164
  717. data/lib/twilio-ruby/rest/messaging/v1/domain_cert.rb +0 -257
  718. data/lib/twilio-ruby/rest/microvisor/v1/account_config.rb +0 -317
  719. data/lib/twilio-ruby/rest/microvisor/v1/account_secret.rb +0 -310
  720. data/lib/twilio-ruby/rest/microvisor/v1/app.rb +0 -305
  721. data/lib/twilio-ruby/rest/microvisor/v1/device/device_config.rb +0 -342
  722. data/lib/twilio-ruby/rest/microvisor/v1/device/device_secret.rb +0 -335
  723. data/lib/twilio-ruby/rest/microvisor/v1/device.rb +0 -393
  724. data/lib/twilio-ruby/rest/microvisor/v1.rb +0 -92
  725. data/lib/twilio-ruby/rest/microvisor.rb +0 -70
  726. data/lib/twilio-ruby/rest/oauth/v1/device_code.rb +0 -153
  727. data/lib/twilio-ruby/rest/oauth/v1/oauth.rb +0 -162
  728. data/lib/twilio-ruby/rest/oauth/v1/openid_discovery.rb +0 -242
  729. data/lib/twilio-ruby/rest/oauth/v1/user_info.rb +0 -193
  730. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/certificate.rb +0 -382
  731. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/deployment.rb +0 -365
  732. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/device.rb +0 -425
  733. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/key.rb +0 -376
  734. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet.rb +0 -469
  735. data/lib/twilio-ruby/rest/preview/deployed_devices.rb +0 -45
  736. data/lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb +0 -385
  737. data/lib/twilio-ruby/rest/preview/sync/service/document.rb +0 -406
  738. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_item.rb +0 -418
  739. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_permission.rb +0 -385
  740. data/lib/twilio-ruby/rest/preview/sync/service/sync_list.rb +0 -405
  741. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_item.rb +0 -415
  742. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_permission.rb +0 -385
  743. data/lib/twilio-ruby/rest/preview/sync/service/sync_map.rb +0 -405
  744. data/lib/twilio-ruby/rest/preview/sync/service.rb +0 -462
  745. data/lib/twilio-ruby/rest/preview/sync.rb +0 -44
  746. data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_fallback_actions.rb +0 -212
  747. data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_initiation_actions.rb +0 -212
  748. data/lib/twilio-ruby/rest/preview/understand/assistant/dialogue.rb +0 -206
  749. data/lib/twilio-ruby/rest/preview/understand/assistant/field_type/field_value.rb +0 -386
  750. data/lib/twilio-ruby/rest/preview/understand/assistant/field_type.rb +0 -407
  751. data/lib/twilio-ruby/rest/preview/understand/assistant/model_build.rb +0 -380
  752. data/lib/twilio-ruby/rest/preview/understand/assistant/query.rb +0 -437
  753. data/lib/twilio-ruby/rest/preview/understand/assistant/style_sheet.rb +0 -212
  754. data/lib/twilio-ruby/rest/preview/understand/assistant/task/field.rb +0 -373
  755. data/lib/twilio-ruby/rest/preview/understand/assistant/task/sample.rb +0 -428
  756. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_actions.rb +0 -241
  757. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_statistics.rb +0 -225
  758. data/lib/twilio-ruby/rest/preview/understand/assistant/task.rb +0 -495
  759. data/lib/twilio-ruby/rest/preview/understand/assistant.rb +0 -629
  760. data/lib/twilio-ruby/rest/preview/understand.rb +0 -45
  761. data/lib/twilio-ruby/rest/proxy/v1/service/short_code.rb +0 -377
  762. data/lib/twilio-ruby/rest/studio/v2/flow/test_user.rb +0 -199
  763. data/lib/twilio-ruby/rest/video/v1/room/recording.rb +0 -413
  764. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_anonymize.rb +0 -240
  765. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_published_track.rb +0 -335
  766. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribe_rule.rb +0 -175
  767. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribed_track.rb +0 -340
  768. data/lib/twilio-ruby/rest/video/v1/room/room_participant.rb +0 -499
  769. data/lib/twilio-ruby/rest/video/v1/room/room_recording_rule.rb +0 -144
@@ -1,612 +1,636 @@
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 - Chat
8
+ # This is the public Twilio REST API.
9
+ #
10
+ # NOTE: This class is auto generated by OpenAPI Generator.
11
+ # https://openapi-generator.tech
12
+ # Do not edit the class manually.
6
13
  #
7
- # frozen_string_literal: true
8
-
9
- module Twilio
10
- module REST
11
- class Chat < Domain
12
- class V2 < Version
13
- class ServiceContext < InstanceContext
14
- class ChannelList < ListResource
15
- ##
16
- # Initialize the ChannelList
17
- # @param [Version] version Version that contains the resource
18
- # @param [String] service_sid The SID of the
19
- # {Service}[https://www.twilio.com/docs/chat/rest/service-resource] the Channel
20
- # resource is associated with.
21
- # @return [ChannelList] ChannelList
22
- def initialize(version, service_sid: nil)
23
- super(version)
24
-
25
- # Path Solution
26
- @solution = {service_sid: service_sid}
27
- @uri = "/Services/#{@solution[:service_sid]}/Channels"
28
- end
29
-
30
- ##
31
- # Create the ChannelInstance
32
- # @param [String] friendly_name A descriptive string that you create to describe
33
- # the new resource. It can be up to 64 characters long.
34
- # @param [String] unique_name An application-defined string that uniquely
35
- # identifies the resource. It can be used to address the resource in place of the
36
- # Channel resource's `sid` in the URL. This value must be 64 characters or less in
37
- # length and be unique within the Service.
38
- # @param [String] attributes A valid JSON string that contains
39
- # application-specific data.
40
- # @param [channel.ChannelType] type The visibility of the channel. Can be:
41
- # `public` or `private` and defaults to `public`.
42
- # @param [Time] date_created The date, specified in {ISO
43
- # 8601}[https://en.wikipedia.org/wiki/ISO_8601] format, to assign to the resource
44
- # as the date it was created. The default value is the current time set by the
45
- # Chat service. Note that this should only be used in cases where a Channel is
46
- # being recreated from a backup/separate source.
47
- # @param [Time] date_updated The date, specified in {ISO
48
- # 8601}[https://en.wikipedia.org/wiki/ISO_8601] format, to assign to the resource
49
- # as the date it was last updated. The default value is `null`. Note that this
50
- # parameter should only be used in cases where a Channel is being recreated from a
51
- # backup/separate source and where a Message was previously updated.
52
- # @param [String] created_by The `identity` of the User that created the channel.
53
- # Default is: `system`.
54
- # @param [channel.WebhookEnabledType] x_twilio_webhook_enabled The
55
- # X-Twilio-Webhook-Enabled HTTP request header
56
- # @return [ChannelInstance] Created ChannelInstance
57
- def create(friendly_name: :unset, unique_name: :unset, attributes: :unset, type: :unset, date_created: :unset, date_updated: :unset, created_by: :unset, x_twilio_webhook_enabled: :unset)
58
- data = Twilio::Values.of({
59
- 'FriendlyName' => friendly_name,
60
- 'UniqueName' => unique_name,
61
- 'Attributes' => attributes,
62
- 'Type' => type,
63
- 'DateCreated' => Twilio.serialize_iso8601_datetime(date_created),
64
- 'DateUpdated' => Twilio.serialize_iso8601_datetime(date_updated),
65
- 'CreatedBy' => created_by,
66
- })
67
- headers = Twilio::Values.of({'X-Twilio-Webhook-Enabled' => x_twilio_webhook_enabled, })
68
-
69
- payload = @version.create('POST', @uri, data: data, headers: headers)
70
-
71
- ChannelInstance.new(@version, payload, service_sid: @solution[:service_sid], )
72
- end
73
-
74
- ##
75
- # Lists ChannelInstance records from the API as a list.
76
- # Unlike stream(), this operation is eager and will load `limit` records into
77
- # memory before returning.
78
- # @param [Array[channel.ChannelType]] type The visibility of the Channels to read.
79
- # Can be: `public` or `private` and defaults to `public`.
80
- # @param [Integer] limit Upper limit for the number of records to return. stream()
81
- # guarantees to never return more than limit. Default is no limit
82
- # @param [Integer] page_size Number of records to fetch per request, when
83
- # not set will use the default value of 50 records. If no page_size is defined
84
- # but a limit is defined, stream() will attempt to read the limit with the most
85
- # efficient page size, i.e. min(limit, 1000)
86
- # @return [Array] Array of up to limit results
87
- def list(type: :unset, limit: nil, page_size: nil)
88
- self.stream(type: type, limit: limit, page_size: page_size).entries
89
- end
90
-
91
- ##
92
- # Streams ChannelInstance records from the API as an Enumerable.
93
- # This operation lazily loads records as efficiently as possible until the limit
94
- # is reached.
95
- # @param [Array[channel.ChannelType]] type The visibility of the Channels to read.
96
- # Can be: `public` or `private` and defaults to `public`.
97
- # @param [Integer] limit Upper limit for the number of records to return. stream()
98
- # guarantees to never return more than limit. Default is no limit.
99
- # @param [Integer] page_size Number of records to fetch per request, when
100
- # not set will use the default value of 50 records. If no page_size is defined
101
- # but a limit is defined, stream() will attempt to read the limit with the most
102
- # efficient page size, i.e. min(limit, 1000)
103
- # @return [Enumerable] Enumerable that will yield up to limit results
104
- def stream(type: :unset, limit: nil, page_size: nil)
105
- limits = @version.read_limits(limit, page_size)
106
-
107
- page = self.page(type: type, page_size: limits[:page_size], )
108
-
109
- @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
110
- end
111
-
112
- ##
113
- # When passed a block, yields ChannelInstance records from the API.
114
- # This operation lazily loads records as efficiently as possible until the limit
115
- # is reached.
116
- def each
117
- limits = @version.read_limits
118
-
119
- page = self.page(page_size: limits[:page_size], )
120
-
121
- @version.stream(page,
122
- limit: limits[:limit],
123
- page_limit: limits[:page_limit]).each {|x| yield x}
124
- end
125
-
126
- ##
127
- # Retrieve a single page of ChannelInstance records from the API.
128
- # Request is executed immediately.
129
- # @param [Array[channel.ChannelType]] type The visibility of the Channels to read.
130
- # Can be: `public` or `private` and defaults to `public`.
131
- # @param [String] page_token PageToken provided by the API
132
- # @param [Integer] page_number Page Number, this value is simply for client state
133
- # @param [Integer] page_size Number of records to return, defaults to 50
134
- # @return [Page] Page of ChannelInstance
135
- def page(type: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
136
- params = Twilio::Values.of({
137
- 'Type' => Twilio.serialize_list(type) { |e| e },
138
- 'PageToken' => page_token,
139
- 'Page' => page_number,
140
- 'PageSize' => page_size,
141
- })
142
-
143
- response = @version.page('GET', @uri, params: params)
144
-
145
- ChannelPage.new(@version, response, @solution)
146
- end
147
-
148
- ##
149
- # Retrieve a single page of ChannelInstance records from the API.
150
- # Request is executed immediately.
151
- # @param [String] target_url API-generated URL for the requested results page
152
- # @return [Page] Page of ChannelInstance
153
- def get_page(target_url)
154
- response = @version.domain.request(
155
- 'GET',
156
- target_url
157
- )
158
- ChannelPage.new(@version, response, @solution)
159
- end
160
-
161
- ##
162
- # Provide a user friendly representation
163
- def to_s
164
- '#<Twilio.Chat.V2.ChannelList>'
165
- end
166
- end
167
-
168
- class ChannelPage < Page
169
- ##
170
- # Initialize the ChannelPage
171
- # @param [Version] version Version that contains the resource
172
- # @param [Response] response Response from the API
173
- # @param [Hash] solution Path solution for the resource
174
- # @return [ChannelPage] ChannelPage
175
- def initialize(version, response, solution)
176
- super(version, response)
177
-
178
- # Path Solution
179
- @solution = solution
180
- end
181
-
182
- ##
183
- # Build an instance of ChannelInstance
184
- # @param [Hash] payload Payload response from the API
185
- # @return [ChannelInstance] ChannelInstance
186
- def get_instance(payload)
187
- ChannelInstance.new(@version, payload, service_sid: @solution[:service_sid], )
188
- end
189
-
190
- ##
191
- # Provide a user friendly representation
192
- def to_s
193
- '<Twilio.Chat.V2.ChannelPage>'
194
- end
195
- end
196
-
197
- class ChannelContext < InstanceContext
198
- ##
199
- # Initialize the ChannelContext
200
- # @param [Version] version Version that contains the resource
201
- # @param [String] service_sid The SID of the
202
- # {Service}[https://www.twilio.com/docs/chat/rest/service-resource] to fetch the
203
- # Channel resource from.
204
- # @param [String] sid The SID of the Channel resource to fetch. This value can be
205
- # either the `sid` or the `unique_name` of the Channel resource to fetch.
206
- # @return [ChannelContext] ChannelContext
207
- def initialize(version, service_sid, sid)
208
- super(version)
209
-
210
- # Path Solution
211
- @solution = {service_sid: service_sid, sid: sid, }
212
- @uri = "/Services/#{@solution[:service_sid]}/Channels/#{@solution[:sid]}"
213
-
214
- # Dependents
215
- @members = nil
216
- @messages = nil
217
- @invites = nil
218
- @webhooks = nil
219
- end
220
-
221
- ##
222
- # Fetch the ChannelInstance
223
- # @return [ChannelInstance] Fetched ChannelInstance
224
- def fetch
225
- payload = @version.fetch('GET', @uri)
226
-
227
- ChannelInstance.new(@version, payload, service_sid: @solution[:service_sid], sid: @solution[:sid], )
228
- end
229
-
230
- ##
231
- # Delete the ChannelInstance
232
- # @param [channel.WebhookEnabledType] x_twilio_webhook_enabled The
233
- # X-Twilio-Webhook-Enabled HTTP request header
234
- # @return [Boolean] true if delete succeeds, false otherwise
235
- def delete(x_twilio_webhook_enabled: :unset)
236
- headers = Twilio::Values.of({'X-Twilio-Webhook-Enabled' => x_twilio_webhook_enabled, })
237
-
238
- @version.delete('DELETE', @uri, headers: headers)
239
- end
240
-
241
- ##
242
- # Update the ChannelInstance
243
- # @param [String] friendly_name A descriptive string that you create to describe
244
- # the resource. It can be up to 256 characters long.
245
- # @param [String] unique_name An application-defined string that uniquely
246
- # identifies the resource. It can be used to address the resource in place of the
247
- # resource's `sid` in the URL. This value must be 256 characters or less in length
248
- # and unique within the Service.
249
- # @param [String] attributes A valid JSON string that contains
250
- # application-specific data.
251
- # @param [Time] date_created The date, specified in {ISO
252
- # 8601}[https://en.wikipedia.org/wiki/ISO_8601] format, to assign to the resource
253
- # as the date it was created. The default value is the current time set by the
254
- # Chat service. Note that this should only be used in cases where a Channel is
255
- # being recreated from a backup/separate source.
256
- # @param [Time] date_updated The date, specified in {ISO
257
- # 8601}[https://en.wikipedia.org/wiki/ISO_8601] format, to assign to the resource
258
- # as the date it was last updated.
259
- # @param [String] created_by The `identity` of the User that created the channel.
260
- # Default is: `system`.
261
- # @param [channel.WebhookEnabledType] x_twilio_webhook_enabled The
262
- # X-Twilio-Webhook-Enabled HTTP request header
263
- # @return [ChannelInstance] Updated ChannelInstance
264
- def update(friendly_name: :unset, unique_name: :unset, attributes: :unset, date_created: :unset, date_updated: :unset, created_by: :unset, x_twilio_webhook_enabled: :unset)
265
- data = Twilio::Values.of({
266
- 'FriendlyName' => friendly_name,
267
- 'UniqueName' => unique_name,
268
- 'Attributes' => attributes,
269
- 'DateCreated' => Twilio.serialize_iso8601_datetime(date_created),
270
- 'DateUpdated' => Twilio.serialize_iso8601_datetime(date_updated),
271
- 'CreatedBy' => created_by,
272
- })
273
- headers = Twilio::Values.of({'X-Twilio-Webhook-Enabled' => x_twilio_webhook_enabled, })
274
-
275
- payload = @version.update('POST', @uri, data: data, headers: headers)
276
-
277
- ChannelInstance.new(@version, payload, service_sid: @solution[:service_sid], sid: @solution[:sid], )
278
- end
279
-
280
- ##
281
- # Access the members
282
- # @return [MemberList]
283
- # @return [MemberContext] if sid was passed.
284
- def members(sid=:unset)
285
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
286
-
287
- if sid != :unset
288
- return MemberContext.new(@version, @solution[:service_sid], @solution[:sid], sid, )
289
- end
290
-
291
- unless @members
292
- @members = MemberList.new(
293
- @version,
294
- service_sid: @solution[:service_sid],
295
- channel_sid: @solution[:sid],
296
- )
297
- end
298
-
299
- @members
300
- end
301
-
302
- ##
303
- # Access the messages
304
- # @return [MessageList]
305
- # @return [MessageContext] if sid was passed.
306
- def messages(sid=:unset)
307
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
308
-
309
- if sid != :unset
310
- return MessageContext.new(@version, @solution[:service_sid], @solution[:sid], sid, )
311
- end
312
-
313
- unless @messages
314
- @messages = MessageList.new(
315
- @version,
316
- service_sid: @solution[:service_sid],
317
- channel_sid: @solution[:sid],
318
- )
319
- end
320
-
321
- @messages
322
- end
323
-
324
- ##
325
- # Access the invites
326
- # @return [InviteList]
327
- # @return [InviteContext] if sid was passed.
328
- def invites(sid=:unset)
329
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
330
-
331
- if sid != :unset
332
- return InviteContext.new(@version, @solution[:service_sid], @solution[:sid], sid, )
333
- end
334
-
335
- unless @invites
336
- @invites = InviteList.new(
337
- @version,
338
- service_sid: @solution[:service_sid],
339
- channel_sid: @solution[:sid],
340
- )
341
- end
342
-
343
- @invites
344
- end
345
-
346
- ##
347
- # Access the webhooks
348
- # @return [WebhookList]
349
- # @return [WebhookContext] if sid was passed.
350
- def webhooks(sid=:unset)
351
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
352
-
353
- if sid != :unset
354
- return WebhookContext.new(@version, @solution[:service_sid], @solution[:sid], sid, )
355
- end
356
-
357
- unless @webhooks
358
- @webhooks = WebhookList.new(
359
- @version,
360
- service_sid: @solution[:service_sid],
361
- channel_sid: @solution[:sid],
362
- )
363
- end
364
-
365
- @webhooks
366
- end
367
-
368
- ##
369
- # Provide a user friendly representation
370
- def to_s
371
- context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
372
- "#<Twilio.Chat.V2.ChannelContext #{context}>"
373
- end
374
-
375
- ##
376
- # Provide a detailed, user friendly representation
377
- def inspect
378
- context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
379
- "#<Twilio.Chat.V2.ChannelContext #{context}>"
380
- end
381
- end
382
-
383
- class ChannelInstance < InstanceResource
384
- ##
385
- # Initialize the ChannelInstance
386
- # @param [Version] version Version that contains the resource
387
- # @param [Hash] payload payload that contains response from Twilio
388
- # @param [String] service_sid The SID of the
389
- # {Service}[https://www.twilio.com/docs/chat/rest/service-resource] the Channel
390
- # resource is associated with.
391
- # @param [String] sid The SID of the Channel resource to fetch. This value can be
392
- # either the `sid` or the `unique_name` of the Channel resource to fetch.
393
- # @return [ChannelInstance] ChannelInstance
394
- def initialize(version, payload, service_sid: nil, sid: nil)
395
- super(version)
396
-
397
- # Marshaled Properties
398
- @properties = {
399
- 'sid' => payload['sid'],
400
- 'account_sid' => payload['account_sid'],
401
- 'service_sid' => payload['service_sid'],
402
- 'friendly_name' => payload['friendly_name'],
403
- 'unique_name' => payload['unique_name'],
404
- 'attributes' => payload['attributes'],
405
- 'type' => payload['type'],
406
- 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
407
- 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
408
- 'created_by' => payload['created_by'],
409
- 'members_count' => payload['members_count'] == nil ? payload['members_count'] : payload['members_count'].to_i,
410
- 'messages_count' => payload['messages_count'] == nil ? payload['messages_count'] : payload['messages_count'].to_i,
411
- 'url' => payload['url'],
412
- 'links' => payload['links'],
413
- }
414
-
415
- # Context
416
- @instance_context = nil
417
- @params = {'service_sid' => service_sid, 'sid' => sid || @properties['sid'], }
418
- end
419
-
420
- ##
421
- # Generate an instance context for the instance, the context is capable of
422
- # performing various actions. All instance actions are proxied to the context
423
- # @return [ChannelContext] ChannelContext for this ChannelInstance
424
- def context
425
- unless @instance_context
426
- @instance_context = ChannelContext.new(@version, @params['service_sid'], @params['sid'], )
427
- end
428
- @instance_context
429
- end
430
-
431
- ##
432
- # @return [String] The unique string that identifies the resource
433
- def sid
434
- @properties['sid']
435
- end
436
-
437
- ##
438
- # @return [String] The SID of the Account that created the resource
439
- def account_sid
440
- @properties['account_sid']
441
- end
442
-
443
- ##
444
- # @return [String] The SID of the Service that the resource is associated with
445
- def service_sid
446
- @properties['service_sid']
447
- end
448
-
449
- ##
450
- # @return [String] The string that you assigned to describe the resource
451
- def friendly_name
452
- @properties['friendly_name']
453
- end
454
-
455
- ##
456
- # @return [String] An application-defined string that uniquely identifies the resource
457
- def unique_name
458
- @properties['unique_name']
459
- end
460
-
461
- ##
462
- # @return [String] The JSON string that stores application-specific data
463
- def attributes
464
- @properties['attributes']
465
- end
466
-
467
- ##
468
- # @return [channel.ChannelType] The visibility of the channel. Can be: `public` or `private`
469
- def type
470
- @properties['type']
471
- end
472
-
473
- ##
474
- # @return [Time] The ISO 8601 date and time in GMT when the resource was created
475
- def date_created
476
- @properties['date_created']
477
- end
478
-
479
- ##
480
- # @return [Time] The ISO 8601 date and time in GMT when the resource was last updated
481
- def date_updated
482
- @properties['date_updated']
483
- end
484
-
485
- ##
486
- # @return [String] The identity of the User that created the channel
487
- def created_by
488
- @properties['created_by']
489
- end
490
-
491
- ##
492
- # @return [String] The number of Members in the Channel
493
- def members_count
494
- @properties['members_count']
495
- end
496
-
497
- ##
498
- # @return [String] The number of Messages that have been passed in the Channel
499
- def messages_count
500
- @properties['messages_count']
501
- end
502
-
503
- ##
504
- # @return [String] The absolute URL of the Channel resource
505
- def url
506
- @properties['url']
507
- end
508
-
509
- ##
510
- # @return [String] Absolute URLs to access the Members, Messages , Invites and, if it exists, the last Message for the Channel
511
- def links
512
- @properties['links']
513
- end
514
-
515
- ##
516
- # Fetch the ChannelInstance
517
- # @return [ChannelInstance] Fetched ChannelInstance
518
- def fetch
519
- context.fetch
520
- end
521
-
522
- ##
523
- # Delete the ChannelInstance
524
- # @param [channel.WebhookEnabledType] x_twilio_webhook_enabled The
525
- # X-Twilio-Webhook-Enabled HTTP request header
526
- # @return [Boolean] true if delete succeeds, false otherwise
527
- def delete(x_twilio_webhook_enabled: :unset)
528
- context.delete(x_twilio_webhook_enabled: x_twilio_webhook_enabled, )
529
- end
530
-
531
- ##
532
- # Update the ChannelInstance
533
- # @param [String] friendly_name A descriptive string that you create to describe
534
- # the resource. It can be up to 256 characters long.
535
- # @param [String] unique_name An application-defined string that uniquely
536
- # identifies the resource. It can be used to address the resource in place of the
537
- # resource's `sid` in the URL. This value must be 256 characters or less in length
538
- # and unique within the Service.
539
- # @param [String] attributes A valid JSON string that contains
540
- # application-specific data.
541
- # @param [Time] date_created The date, specified in {ISO
542
- # 8601}[https://en.wikipedia.org/wiki/ISO_8601] format, to assign to the resource
543
- # as the date it was created. The default value is the current time set by the
544
- # Chat service. Note that this should only be used in cases where a Channel is
545
- # being recreated from a backup/separate source.
546
- # @param [Time] date_updated The date, specified in {ISO
547
- # 8601}[https://en.wikipedia.org/wiki/ISO_8601] format, to assign to the resource
548
- # as the date it was last updated.
549
- # @param [String] created_by The `identity` of the User that created the channel.
550
- # Default is: `system`.
551
- # @param [channel.WebhookEnabledType] x_twilio_webhook_enabled The
552
- # X-Twilio-Webhook-Enabled HTTP request header
553
- # @return [ChannelInstance] Updated ChannelInstance
554
- def update(friendly_name: :unset, unique_name: :unset, attributes: :unset, date_created: :unset, date_updated: :unset, created_by: :unset, x_twilio_webhook_enabled: :unset)
555
- context.update(
556
- friendly_name: friendly_name,
557
- unique_name: unique_name,
558
- attributes: attributes,
559
- date_created: date_created,
560
- date_updated: date_updated,
561
- created_by: created_by,
562
- x_twilio_webhook_enabled: x_twilio_webhook_enabled,
563
- )
564
- end
565
-
566
- ##
567
- # Access the members
568
- # @return [members] members
569
- def members
570
- context.members
571
- end
572
-
573
- ##
574
- # Access the messages
575
- # @return [messages] messages
576
- def messages
577
- context.messages
578
- end
579
-
580
- ##
581
- # Access the invites
582
- # @return [invites] invites
583
- def invites
584
- context.invites
585
- end
586
-
587
- ##
588
- # Access the webhooks
589
- # @return [webhooks] webhooks
590
- def webhooks
591
- context.webhooks
592
- end
593
14
 
594
- ##
595
- # Provide a user friendly representation
596
- def to_s
597
- values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
598
- "<Twilio.Chat.V2.ChannelInstance #{values}>"
599
- end
600
15
 
601
- ##
602
- # Provide a detailed, user friendly representation
603
- def inspect
604
- values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
605
- "<Twilio.Chat.V2.ChannelInstance #{values}>"
16
+ module Twilio
17
+ module REST
18
+ class Chat < ChatBase
19
+ class V2 < Version
20
+ class ServiceContext < InstanceContext
21
+
22
+ class ChannelList < ListResource
23
+
24
+ ##
25
+ # Initialize the ChannelList
26
+ # @param [Version] version Version that contains the resource
27
+ # @return [ChannelList] ChannelList
28
+ def initialize(version, service_sid: nil)
29
+ super(version)
30
+ # Path Solution
31
+ @solution = { service_sid: service_sid }
32
+ @uri = "/Services/#{@solution[:service_sid]}/Channels"
33
+
34
+ end
35
+ ##
36
+ # Create the ChannelInstance
37
+ # @param [String] friendly_name A descriptive string that you create to describe the new resource. It can be up to 64 characters long.
38
+ # @param [String] unique_name An application-defined string that uniquely identifies the resource. It can be used to address the resource in place of the Channel resource's `sid` in the URL. This value must be 64 characters or less in length and be unique within the Service.
39
+ # @param [String] attributes A valid JSON string that contains application-specific data.
40
+ # @param [ChannelType] type
41
+ # @param [Time] date_created The date, specified in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format, to assign to the resource as the date it was created. The default value is the current time set by the Chat service. Note that this should only be used in cases where a Channel is being recreated from a backup/separate source.
42
+ # @param [Time] date_updated The date, specified in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format, to assign to the resource as the date it was last updated. The default value is `null`. Note that this parameter should only be used in cases where a Channel is being recreated from a backup/separate source and where a Message was previously updated.
43
+ # @param [String] created_by The `identity` of the User that created the channel. Default is: `system`.
44
+ # @param [ChannelEnumWebhookEnabledType] x_twilio_webhook_enabled The X-Twilio-Webhook-Enabled HTTP request header
45
+ # @return [ChannelInstance] Created ChannelInstance
46
+ def create(
47
+ friendly_name: :unset,
48
+ unique_name: :unset,
49
+ attributes: :unset,
50
+ type: :unset,
51
+ date_created: :unset,
52
+ date_updated: :unset,
53
+ created_by: :unset,
54
+ x_twilio_webhook_enabled: :unset
55
+ )
56
+
57
+ data = Twilio::Values.of({
58
+ 'FriendlyName' => friendly_name,
59
+ 'UniqueName' => unique_name,
60
+ 'Attributes' => attributes,
61
+ 'Type' => type,
62
+ 'DateCreated' => Twilio.serialize_iso8601_datetime(date_created),
63
+ 'DateUpdated' => Twilio.serialize_iso8601_datetime(date_updated),
64
+ 'CreatedBy' => created_by,
65
+ })
66
+
67
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', 'X-Twilio-Webhook-Enabled' => x_twilio_webhook_enabled, })
68
+
69
+
70
+
71
+
72
+
73
+ payload = @version.create('POST', @uri, data: data, headers: headers)
74
+ ChannelInstance.new(
75
+ @version,
76
+ payload,
77
+ service_sid: @solution[:service_sid],
78
+ )
79
+ end
80
+
81
+
82
+ ##
83
+ # Lists ChannelInstance records from the API as a list.
84
+ # Unlike stream(), this operation is eager and will load `limit` records into
85
+ # memory before returning.
86
+ # @param [Array[ChannelType]] type The visibility of the Channels to read. Can be: `public` or `private` and defaults to `public`.
87
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
88
+ # guarantees to never return more than limit. Default is no limit
89
+ # @param [Integer] page_size Number of records to fetch per request, when
90
+ # not set will use the default value of 50 records. If no page_size is defined
91
+ # but a limit is defined, stream() will attempt to read the limit with the most
92
+ # efficient page size, i.e. min(limit, 1000)
93
+ # @return [Array] Array of up to limit results
94
+ def list(type: :unset, limit: nil, page_size: nil)
95
+ self.stream(
96
+ type: type,
97
+ limit: limit,
98
+ page_size: page_size
99
+ ).entries
100
+ end
101
+
102
+ ##
103
+ # Streams Instance records from the API as an Enumerable.
104
+ # This operation lazily loads records as efficiently as possible until the limit
105
+ # is reached.
106
+ # @param [Array[ChannelType]] type The visibility of the Channels to read. Can be: `public` or `private` and defaults to `public`.
107
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
108
+ # guarantees to never return more than limit. Default is no limit
109
+ # @param [Integer] page_size Number of records to fetch per request, when
110
+ # not set will use the default value of 50 records. If no page_size is defined
111
+ # but a limit is defined, stream() will attempt to read the limit with the most
112
+ # efficient page size, i.e. min(limit, 1000)
113
+ # @return [Enumerable] Enumerable that will yield up to limit results
114
+ def stream(type: :unset, limit: nil, page_size: nil)
115
+ limits = @version.read_limits(limit, page_size)
116
+
117
+ page = self.page(
118
+ type: type,
119
+ page_size: limits[:page_size], )
120
+
121
+ @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
122
+ end
123
+
124
+ ##
125
+ # When passed a block, yields ChannelInstance records from the API.
126
+ # This operation lazily loads records as efficiently as possible until the limit
127
+ # is reached.
128
+ def each
129
+ limits = @version.read_limits
130
+
131
+ page = self.page(page_size: limits[:page_size], )
132
+
133
+ @version.stream(page,
134
+ limit: limits[:limit],
135
+ page_limit: limits[:page_limit]).each {|x| yield x}
136
+ end
137
+
138
+ ##
139
+ # Retrieve a single page of ChannelInstance records from the API.
140
+ # Request is executed immediately.
141
+ # @param [Array[ChannelType]] type The visibility of the Channels to read. Can be: `public` or `private` and defaults to `public`.
142
+ # @param [String] page_token PageToken provided by the API
143
+ # @param [Integer] page_number Page Number, this value is simply for client state
144
+ # @param [Integer] page_size Number of records to return, defaults to 50
145
+ # @return [Page] Page of ChannelInstance
146
+ def page(type: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
147
+ params = Twilio::Values.of({
148
+
149
+ 'Type' => Twilio.serialize_list(type) { |e| e },
150
+ 'PageToken' => page_token,
151
+ 'Page' => page_number,
152
+ 'PageSize' => page_size,
153
+ })
154
+ headers = Twilio::Values.of({})
155
+
156
+
157
+
158
+ response = @version.page('GET', @uri, params: params, headers: headers)
159
+
160
+ ChannelPage.new(@version, response, @solution)
161
+ end
162
+
163
+ ##
164
+ # Retrieve a single page of ChannelInstance records from the API.
165
+ # Request is executed immediately.
166
+ # @param [String] target_url API-generated URL for the requested results page
167
+ # @return [Page] Page of ChannelInstance
168
+ def get_page(target_url)
169
+ response = @version.domain.request(
170
+ 'GET',
171
+ target_url
172
+ )
173
+ ChannelPage.new(@version, response, @solution)
174
+ end
175
+
176
+
177
+
178
+ # Provide a user friendly representation
179
+ def to_s
180
+ '#<Twilio.Chat.V2.ChannelList>'
181
+ end
182
+ end
183
+
184
+
185
+ class ChannelContext < InstanceContext
186
+ ##
187
+ # Initialize the ChannelContext
188
+ # @param [Version] version Version that contains the resource
189
+ # @param [String] service_sid The SID of the [Service](https://www.twilio.com/docs/chat/rest/service-resource) to update the Channel resource in.
190
+ # @param [String] sid The SID of the Channel resource to update. This value can be either the `sid` or the `unique_name` of the Channel resource to update.
191
+ # @return [ChannelContext] ChannelContext
192
+ def initialize(version, service_sid, sid)
193
+ super(version)
194
+
195
+ # Path Solution
196
+ @solution = { service_sid: service_sid, sid: sid, }
197
+ @uri = "/Services/#{@solution[:service_sid]}/Channels/#{@solution[:sid]}"
198
+
199
+ # Dependents
200
+ @webhooks = nil
201
+ @members = nil
202
+ @messages = nil
203
+ @invites = nil
204
+ end
205
+ ##
206
+ # Delete the ChannelInstance
207
+ # @param [ChannelEnumWebhookEnabledType] x_twilio_webhook_enabled The X-Twilio-Webhook-Enabled HTTP request header
208
+ # @return [Boolean] True if delete succeeds, false otherwise
209
+ def delete(
210
+ x_twilio_webhook_enabled: :unset
211
+ )
212
+
213
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', 'X-Twilio-Webhook-Enabled' => x_twilio_webhook_enabled, })
214
+
215
+
216
+
217
+ @version.delete('DELETE', @uri, headers: headers)
218
+ end
219
+
220
+ ##
221
+ # Fetch the ChannelInstance
222
+ # @return [ChannelInstance] Fetched ChannelInstance
223
+ def fetch
224
+
225
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
226
+
227
+
228
+
229
+
230
+
231
+ payload = @version.fetch('GET', @uri, headers: headers)
232
+ ChannelInstance.new(
233
+ @version,
234
+ payload,
235
+ service_sid: @solution[:service_sid],
236
+ sid: @solution[:sid],
237
+ )
238
+ end
239
+
240
+ ##
241
+ # Update the ChannelInstance
242
+ # @param [String] friendly_name A descriptive string that you create to describe the resource. It can be up to 256 characters long.
243
+ # @param [String] unique_name An application-defined string that uniquely identifies the resource. It can be used to address the resource in place of the resource's `sid` in the URL. This value must be 256 characters or less in length and unique within the Service.
244
+ # @param [String] attributes A valid JSON string that contains application-specific data.
245
+ # @param [Time] date_created The date, specified in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format, to assign to the resource as the date it was created. The default value is the current time set by the Chat service. Note that this should only be used in cases where a Channel is being recreated from a backup/separate source.
246
+ # @param [Time] date_updated The date, specified in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format, to assign to the resource as the date it was last updated.
247
+ # @param [String] created_by The `identity` of the User that created the channel. Default is: `system`.
248
+ # @param [ChannelEnumWebhookEnabledType] x_twilio_webhook_enabled The X-Twilio-Webhook-Enabled HTTP request header
249
+ # @return [ChannelInstance] Updated ChannelInstance
250
+ def update(
251
+ friendly_name: :unset,
252
+ unique_name: :unset,
253
+ attributes: :unset,
254
+ date_created: :unset,
255
+ date_updated: :unset,
256
+ created_by: :unset,
257
+ x_twilio_webhook_enabled: :unset
258
+ )
259
+
260
+ data = Twilio::Values.of({
261
+ 'FriendlyName' => friendly_name,
262
+ 'UniqueName' => unique_name,
263
+ 'Attributes' => attributes,
264
+ 'DateCreated' => Twilio.serialize_iso8601_datetime(date_created),
265
+ 'DateUpdated' => Twilio.serialize_iso8601_datetime(date_updated),
266
+ 'CreatedBy' => created_by,
267
+ })
268
+
269
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', 'X-Twilio-Webhook-Enabled' => x_twilio_webhook_enabled, })
270
+
271
+
272
+
273
+
274
+
275
+ payload = @version.update('POST', @uri, data: data, headers: headers)
276
+ ChannelInstance.new(
277
+ @version,
278
+ payload,
279
+ service_sid: @solution[:service_sid],
280
+ sid: @solution[:sid],
281
+ )
282
+ end
283
+
284
+ ##
285
+ # Access the webhooks
286
+ # @return [WebhookList]
287
+ # @return [WebhookContext] if sid was passed.
288
+ def webhooks(sid=:unset)
289
+
290
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
291
+
292
+ if sid != :unset
293
+ return WebhookContext.new(@version, @solution[:service_sid], @solution[:sid],sid )
294
+ end
295
+
296
+ unless @webhooks
297
+ @webhooks = WebhookList.new(
298
+ @version, service_sid: @solution[:service_sid], channel_sid: @solution[:sid], )
299
+ end
300
+
301
+ @webhooks
302
+ end
303
+ ##
304
+ # Access the members
305
+ # @return [MemberList]
306
+ # @return [MemberContext] if sid was passed.
307
+ def members(sid=:unset)
308
+
309
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
310
+
311
+ if sid != :unset
312
+ return MemberContext.new(@version, @solution[:service_sid], @solution[:sid],sid )
313
+ end
314
+
315
+ unless @members
316
+ @members = MemberList.new(
317
+ @version, service_sid: @solution[:service_sid], channel_sid: @solution[:sid], )
318
+ end
319
+
320
+ @members
321
+ end
322
+ ##
323
+ # Access the messages
324
+ # @return [MessageList]
325
+ # @return [MessageContext] if sid was passed.
326
+ def messages(sid=:unset)
327
+
328
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
329
+
330
+ if sid != :unset
331
+ return MessageContext.new(@version, @solution[:service_sid], @solution[:sid],sid )
332
+ end
333
+
334
+ unless @messages
335
+ @messages = MessageList.new(
336
+ @version, service_sid: @solution[:service_sid], channel_sid: @solution[:sid], )
337
+ end
338
+
339
+ @messages
340
+ end
341
+ ##
342
+ # Access the invites
343
+ # @return [InviteList]
344
+ # @return [InviteContext] if sid was passed.
345
+ def invites(sid=:unset)
346
+
347
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
348
+
349
+ if sid != :unset
350
+ return InviteContext.new(@version, @solution[:service_sid], @solution[:sid],sid )
351
+ end
352
+
353
+ unless @invites
354
+ @invites = InviteList.new(
355
+ @version, service_sid: @solution[:service_sid], channel_sid: @solution[:sid], )
356
+ end
357
+
358
+ @invites
359
+ end
360
+
361
+ ##
362
+ # Provide a user friendly representation
363
+ def to_s
364
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
365
+ "#<Twilio.Chat.V2.ChannelContext #{context}>"
366
+ end
367
+
368
+ ##
369
+ # Provide a detailed, user friendly representation
370
+ def inspect
371
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
372
+ "#<Twilio.Chat.V2.ChannelContext #{context}>"
373
+ end
374
+ end
375
+
376
+ class ChannelPage < Page
377
+ ##
378
+ # Initialize the ChannelPage
379
+ # @param [Version] version Version that contains the resource
380
+ # @param [Response] response Response from the API
381
+ # @param [Hash] solution Path solution for the resource
382
+ # @return [ChannelPage] ChannelPage
383
+ def initialize(version, response, solution)
384
+ super(version, response)
385
+
386
+ # Path Solution
387
+ @solution = solution
388
+ end
389
+
390
+ ##
391
+ # Build an instance of ChannelInstance
392
+ # @param [Hash] payload Payload response from the API
393
+ # @return [ChannelInstance] ChannelInstance
394
+ def get_instance(payload)
395
+ ChannelInstance.new(@version, payload, service_sid: @solution[:service_sid])
396
+ end
397
+
398
+ ##
399
+ # Provide a user friendly representation
400
+ def to_s
401
+ '<Twilio.Chat.V2.ChannelPage>'
402
+ end
403
+ end
404
+ class ChannelInstance < InstanceResource
405
+ ##
406
+ # Initialize the ChannelInstance
407
+ # @param [Version] version Version that contains the resource
408
+ # @param [Hash] payload payload that contains response from Twilio
409
+ # @param [String] account_sid The SID of the
410
+ # {Account}[https://www.twilio.com/docs/iam/api/account] that created this Channel
411
+ # resource.
412
+ # @param [String] sid The SID of the Call resource to fetch.
413
+ # @return [ChannelInstance] ChannelInstance
414
+ def initialize(version, payload , service_sid: nil, sid: nil)
415
+ super(version)
416
+
417
+ # Marshaled Properties
418
+ @properties = {
419
+ 'sid' => payload['sid'],
420
+ 'account_sid' => payload['account_sid'],
421
+ 'service_sid' => payload['service_sid'],
422
+ 'friendly_name' => payload['friendly_name'],
423
+ 'unique_name' => payload['unique_name'],
424
+ 'attributes' => payload['attributes'],
425
+ 'type' => payload['type'],
426
+ 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
427
+ 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
428
+ 'created_by' => payload['created_by'],
429
+ 'members_count' => payload['members_count'] == nil ? payload['members_count'] : payload['members_count'].to_i,
430
+ 'messages_count' => payload['messages_count'] == nil ? payload['messages_count'] : payload['messages_count'].to_i,
431
+ 'url' => payload['url'],
432
+ 'links' => payload['links'],
433
+ }
434
+
435
+ # Context
436
+ @instance_context = nil
437
+ @params = { 'service_sid' => service_sid || @properties['service_sid'] ,'sid' => sid || @properties['sid'] , }
438
+ end
439
+
440
+ ##
441
+ # Generate an instance context for the instance, the context is capable of
442
+ # performing various actions. All instance actions are proxied to the context
443
+ # @return [ChannelContext] CallContext for this CallInstance
444
+ def context
445
+ unless @instance_context
446
+ @instance_context = ChannelContext.new(@version , @params['service_sid'], @params['sid'])
447
+ end
448
+ @instance_context
449
+ end
450
+
451
+ ##
452
+ # @return [String] The unique string that we created to identify the Channel resource.
453
+ def sid
454
+ @properties['sid']
455
+ end
456
+
457
+ ##
458
+ # @return [String] The SID of the [Account](https://www.twilio.com/docs/iam/api/account) that created the Channel resource.
459
+ def account_sid
460
+ @properties['account_sid']
461
+ end
462
+
463
+ ##
464
+ # @return [String] The SID of the [Service](https://www.twilio.com/docs/chat/rest/service-resource) the Channel resource is associated with.
465
+ def service_sid
466
+ @properties['service_sid']
467
+ end
468
+
469
+ ##
470
+ # @return [String] The string that you assigned to describe the resource.
471
+ def friendly_name
472
+ @properties['friendly_name']
473
+ end
474
+
475
+ ##
476
+ # @return [String] An application-defined string that uniquely identifies the resource. It can be used to address the resource in place of the resource's `sid` in the URL.
477
+ def unique_name
478
+ @properties['unique_name']
479
+ end
480
+
481
+ ##
482
+ # @return [String] The JSON string that stores application-specific data. If attributes have not been set, `{}` is returned.
483
+ def attributes
484
+ @properties['attributes']
485
+ end
486
+
487
+ ##
488
+ # @return [ChannelType]
489
+ def type
490
+ @properties['type']
491
+ end
492
+
493
+ ##
494
+ # @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.
495
+ def date_created
496
+ @properties['date_created']
497
+ end
498
+
499
+ ##
500
+ # @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.
501
+ def date_updated
502
+ @properties['date_updated']
503
+ end
504
+
505
+ ##
506
+ # @return [String] The `identity` of the User that created the channel. If the Channel was created by using the API, the value is `system`.
507
+ def created_by
508
+ @properties['created_by']
509
+ end
510
+
511
+ ##
512
+ # @return [String] The number of Members in the Channel.
513
+ def members_count
514
+ @properties['members_count']
515
+ end
516
+
517
+ ##
518
+ # @return [String] The number of Messages that have been passed in the Channel.
519
+ def messages_count
520
+ @properties['messages_count']
521
+ end
522
+
523
+ ##
524
+ # @return [String] The absolute URL of the Channel resource.
525
+ def url
526
+ @properties['url']
527
+ end
528
+
529
+ ##
530
+ # @return [Hash] The absolute URLs of the [Members](https://www.twilio.com/docs/chat/rest/member-resource), [Messages](https://www.twilio.com/docs/chat/rest/message-resource), [Invites](https://www.twilio.com/docs/chat/rest/invite-resource), Webhooks and, if it exists, the last [Message](https://www.twilio.com/docs/chat/rest/message-resource) for the Channel.
531
+ def links
532
+ @properties['links']
533
+ end
534
+
535
+ ##
536
+ # Delete the ChannelInstance
537
+ # @param [ChannelEnumWebhookEnabledType] x_twilio_webhook_enabled The X-Twilio-Webhook-Enabled HTTP request header
538
+ # @return [Boolean] True if delete succeeds, false otherwise
539
+ def delete(
540
+ x_twilio_webhook_enabled: :unset
541
+ )
542
+
543
+ context.delete(
544
+ x_twilio_webhook_enabled: x_twilio_webhook_enabled,
545
+ )
546
+ end
547
+
548
+ ##
549
+ # Fetch the ChannelInstance
550
+ # @return [ChannelInstance] Fetched ChannelInstance
551
+ def fetch
552
+
553
+ context.fetch
554
+ end
555
+
556
+ ##
557
+ # Update the ChannelInstance
558
+ # @param [String] friendly_name A descriptive string that you create to describe the resource. It can be up to 256 characters long.
559
+ # @param [String] unique_name An application-defined string that uniquely identifies the resource. It can be used to address the resource in place of the resource's `sid` in the URL. This value must be 256 characters or less in length and unique within the Service.
560
+ # @param [String] attributes A valid JSON string that contains application-specific data.
561
+ # @param [Time] date_created The date, specified in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format, to assign to the resource as the date it was created. The default value is the current time set by the Chat service. Note that this should only be used in cases where a Channel is being recreated from a backup/separate source.
562
+ # @param [Time] date_updated The date, specified in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format, to assign to the resource as the date it was last updated.
563
+ # @param [String] created_by The `identity` of the User that created the channel. Default is: `system`.
564
+ # @param [ChannelEnumWebhookEnabledType] x_twilio_webhook_enabled The X-Twilio-Webhook-Enabled HTTP request header
565
+ # @return [ChannelInstance] Updated ChannelInstance
566
+ def update(
567
+ friendly_name: :unset,
568
+ unique_name: :unset,
569
+ attributes: :unset,
570
+ date_created: :unset,
571
+ date_updated: :unset,
572
+ created_by: :unset,
573
+ x_twilio_webhook_enabled: :unset
574
+ )
575
+
576
+ context.update(
577
+ friendly_name: friendly_name,
578
+ unique_name: unique_name,
579
+ attributes: attributes,
580
+ date_created: date_created,
581
+ date_updated: date_updated,
582
+ created_by: created_by,
583
+ x_twilio_webhook_enabled: x_twilio_webhook_enabled,
584
+ )
585
+ end
586
+
587
+ ##
588
+ # Access the webhooks
589
+ # @return [webhooks] webhooks
590
+ def webhooks
591
+ context.webhooks
592
+ end
593
+
594
+ ##
595
+ # Access the members
596
+ # @return [members] members
597
+ def members
598
+ context.members
599
+ end
600
+
601
+ ##
602
+ # Access the messages
603
+ # @return [messages] messages
604
+ def messages
605
+ context.messages
606
+ end
607
+
608
+ ##
609
+ # Access the invites
610
+ # @return [invites] invites
611
+ def invites
612
+ context.invites
613
+ end
614
+
615
+ ##
616
+ # Provide a user friendly representation
617
+ def to_s
618
+ values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
619
+ "<Twilio.Chat.V2.ChannelInstance #{values}>"
620
+ end
621
+
622
+ ##
623
+ # Provide a detailed, user friendly representation
624
+ def inspect
625
+ values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
626
+ "<Twilio.Chat.V2.ChannelInstance #{values}>"
627
+ end
628
+ end
629
+
630
+ end
606
631
  end
607
- end
608
632
  end
609
- end
610
633
  end
611
- end
612
- end
634
+ end
635
+
636
+