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,517 +1,567 @@
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 - Conversations
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 Conversations < Domain
12
- class V1 < Version
13
- class ConversationContext < InstanceContext
14
- class MessageList < ListResource
15
- ##
16
- # Initialize the MessageList
17
- # @param [Version] version Version that contains the resource
18
- # @param [String] conversation_sid The unique ID of the
19
- # {Conversation}[https://www.twilio.com/docs/conversations/api/conversation-resource]
20
- # for this message.
21
- # @return [MessageList] MessageList
22
- def initialize(version, conversation_sid: nil)
23
- super(version)
24
-
25
- # Path Solution
26
- @solution = {conversation_sid: conversation_sid}
27
- @uri = "/Conversations/#{@solution[:conversation_sid]}/Messages"
28
- end
29
-
30
- ##
31
- # Create the MessageInstance
32
- # @param [String] author The channel specific identifier of the message's author.
33
- # Defaults to `system`.
34
- # @param [String] body The content of the message, can be up to 1,600 characters
35
- # long.
36
- # @param [Time] date_created The date that this resource was created.
37
- # @param [Time] date_updated The date that this resource was last updated. `null`
38
- # if the message has not been edited.
39
- # @param [String] attributes A string metadata field you can use to store any data
40
- # you wish. The string value must contain structurally valid JSON if specified.
41
- # **Note** that if the attributes are not set "{}" will be returned.
42
- # @param [String] media_sid The Media SID to be attached to the new Message.
43
- # @param [String] content_sid The unique ID of the multi-channel {Rich
44
- # Content}[https://www.twilio.com/docs/content-api] template, required for
45
- # template-generated messages. **Note** that if this field is set, `Body` and
46
- # `MediaSid` parameters are ignored.
47
- # @param [String] content_variables A structurally valid JSON string that contains
48
- # values to resolve Rich Content template variables.
49
- # @param [message.WebhookEnabledType] x_twilio_webhook_enabled The
50
- # X-Twilio-Webhook-Enabled HTTP request header
51
- # @return [MessageInstance] Created MessageInstance
52
- def create(author: :unset, body: :unset, date_created: :unset, date_updated: :unset, attributes: :unset, media_sid: :unset, content_sid: :unset, content_variables: :unset, x_twilio_webhook_enabled: :unset)
53
- data = Twilio::Values.of({
54
- 'Author' => author,
55
- 'Body' => body,
56
- 'DateCreated' => Twilio.serialize_iso8601_datetime(date_created),
57
- 'DateUpdated' => Twilio.serialize_iso8601_datetime(date_updated),
58
- 'Attributes' => attributes,
59
- 'MediaSid' => media_sid,
60
- 'ContentSid' => content_sid,
61
- 'ContentVariables' => content_variables,
62
- })
63
- headers = Twilio::Values.of({'X-Twilio-Webhook-Enabled' => x_twilio_webhook_enabled, })
64
-
65
- payload = @version.create('POST', @uri, data: data, headers: headers)
66
-
67
- MessageInstance.new(@version, payload, conversation_sid: @solution[:conversation_sid], )
68
- end
69
-
70
- ##
71
- # Lists MessageInstance records from the API as a list.
72
- # Unlike stream(), this operation is eager and will load `limit` records into
73
- # memory before returning.
74
- # @param [message.OrderType] order The sort order of the returned messages. Can
75
- # be: `asc` (ascending) or `desc` (descending), with `asc` as the default.
76
- # @param [Integer] limit Upper limit for the number of records to return. stream()
77
- # guarantees to never return more than limit. Default is no limit
78
- # @param [Integer] page_size Number of records to fetch per request, when
79
- # not set will use the default value of 50 records. If no page_size is defined
80
- # but a limit is defined, stream() will attempt to read the limit with the most
81
- # efficient page size, i.e. min(limit, 1000)
82
- # @return [Array] Array of up to limit results
83
- def list(order: :unset, limit: nil, page_size: nil)
84
- self.stream(order: order, limit: limit, page_size: page_size).entries
85
- end
86
-
87
- ##
88
- # Streams MessageInstance records from the API as an Enumerable.
89
- # This operation lazily loads records as efficiently as possible until the limit
90
- # is reached.
91
- # @param [message.OrderType] order The sort order of the returned messages. Can
92
- # be: `asc` (ascending) or `desc` (descending), with `asc` as the default.
93
- # @param [Integer] limit Upper limit for the number of records to return. stream()
94
- # guarantees to never return more than limit. Default is no limit.
95
- # @param [Integer] page_size Number of records to fetch per request, when
96
- # not set will use the default value of 50 records. If no page_size is defined
97
- # but a limit is defined, stream() will attempt to read the limit with the most
98
- # efficient page size, i.e. min(limit, 1000)
99
- # @return [Enumerable] Enumerable that will yield up to limit results
100
- def stream(order: :unset, limit: nil, page_size: nil)
101
- limits = @version.read_limits(limit, page_size)
102
-
103
- page = self.page(order: order, page_size: limits[:page_size], )
104
-
105
- @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
106
- end
107
-
108
- ##
109
- # When passed a block, yields MessageInstance records from the API.
110
- # This operation lazily loads records as efficiently as possible until the limit
111
- # is reached.
112
- def each
113
- limits = @version.read_limits
114
-
115
- page = self.page(page_size: limits[:page_size], )
116
-
117
- @version.stream(page,
118
- limit: limits[:limit],
119
- page_limit: limits[:page_limit]).each {|x| yield x}
120
- end
121
-
122
- ##
123
- # Retrieve a single page of MessageInstance records from the API.
124
- # Request is executed immediately.
125
- # @param [message.OrderType] order The sort order of the returned messages. Can
126
- # be: `asc` (ascending) or `desc` (descending), with `asc` as the default.
127
- # @param [String] page_token PageToken provided by the API
128
- # @param [Integer] page_number Page Number, this value is simply for client state
129
- # @param [Integer] page_size Number of records to return, defaults to 50
130
- # @return [Page] Page of MessageInstance
131
- def page(order: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
132
- params = Twilio::Values.of({
133
- 'Order' => order,
134
- 'PageToken' => page_token,
135
- 'Page' => page_number,
136
- 'PageSize' => page_size,
137
- })
138
-
139
- response = @version.page('GET', @uri, params: params)
140
-
141
- MessagePage.new(@version, response, @solution)
142
- end
143
-
144
- ##
145
- # Retrieve a single page of MessageInstance records from the API.
146
- # Request is executed immediately.
147
- # @param [String] target_url API-generated URL for the requested results page
148
- # @return [Page] Page of MessageInstance
149
- def get_page(target_url)
150
- response = @version.domain.request(
151
- 'GET',
152
- target_url
153
- )
154
- MessagePage.new(@version, response, @solution)
155
- end
156
-
157
- ##
158
- # Provide a user friendly representation
159
- def to_s
160
- '#<Twilio.Conversations.V1.MessageList>'
161
- end
162
- end
163
-
164
- class MessagePage < Page
165
- ##
166
- # Initialize the MessagePage
167
- # @param [Version] version Version that contains the resource
168
- # @param [Response] response Response from the API
169
- # @param [Hash] solution Path solution for the resource
170
- # @return [MessagePage] MessagePage
171
- def initialize(version, response, solution)
172
- super(version, response)
173
-
174
- # Path Solution
175
- @solution = solution
176
- end
177
-
178
- ##
179
- # Build an instance of MessageInstance
180
- # @param [Hash] payload Payload response from the API
181
- # @return [MessageInstance] MessageInstance
182
- def get_instance(payload)
183
- MessageInstance.new(@version, payload, conversation_sid: @solution[:conversation_sid], )
184
- end
185
-
186
- ##
187
- # Provide a user friendly representation
188
- def to_s
189
- '<Twilio.Conversations.V1.MessagePage>'
190
- end
191
- end
192
-
193
- class MessageContext < InstanceContext
194
- ##
195
- # Initialize the MessageContext
196
- # @param [Version] version Version that contains the resource
197
- # @param [String] conversation_sid The unique ID of the
198
- # {Conversation}[https://www.twilio.com/docs/conversations/api/conversation-resource]
199
- # for this message.
200
- # @param [String] sid A 34 character string that uniquely identifies this
201
- # resource.
202
- # @return [MessageContext] MessageContext
203
- def initialize(version, conversation_sid, sid)
204
- super(version)
205
-
206
- # Path Solution
207
- @solution = {conversation_sid: conversation_sid, sid: sid, }
208
- @uri = "/Conversations/#{@solution[:conversation_sid]}/Messages/#{@solution[:sid]}"
209
-
210
- # Dependents
211
- @delivery_receipts = nil
212
- end
213
-
214
- ##
215
- # Update the MessageInstance
216
- # @param [String] author The channel specific identifier of the message's author.
217
- # Defaults to `system`.
218
- # @param [String] body The content of the message, can be up to 1,600 characters
219
- # long.
220
- # @param [Time] date_created The date that this resource was created.
221
- # @param [Time] date_updated The date that this resource was last updated. `null`
222
- # if the message has not been edited.
223
- # @param [String] attributes A string metadata field you can use to store any data
224
- # you wish. The string value must contain structurally valid JSON if specified.
225
- # **Note** that if the attributes are not set "{}" will be returned.
226
- # @param [message.WebhookEnabledType] x_twilio_webhook_enabled The
227
- # X-Twilio-Webhook-Enabled HTTP request header
228
- # @return [MessageInstance] Updated MessageInstance
229
- def update(author: :unset, body: :unset, date_created: :unset, date_updated: :unset, attributes: :unset, x_twilio_webhook_enabled: :unset)
230
- data = Twilio::Values.of({
231
- 'Author' => author,
232
- 'Body' => body,
233
- 'DateCreated' => Twilio.serialize_iso8601_datetime(date_created),
234
- 'DateUpdated' => Twilio.serialize_iso8601_datetime(date_updated),
235
- 'Attributes' => attributes,
236
- })
237
- headers = Twilio::Values.of({'X-Twilio-Webhook-Enabled' => x_twilio_webhook_enabled, })
238
-
239
- payload = @version.update('POST', @uri, data: data, headers: headers)
240
-
241
- MessageInstance.new(
242
- @version,
243
- payload,
244
- conversation_sid: @solution[:conversation_sid],
245
- sid: @solution[:sid],
246
- )
247
- end
248
-
249
- ##
250
- # Delete the MessageInstance
251
- # @param [message.WebhookEnabledType] x_twilio_webhook_enabled The
252
- # X-Twilio-Webhook-Enabled HTTP request header
253
- # @return [Boolean] true if delete succeeds, false otherwise
254
- def delete(x_twilio_webhook_enabled: :unset)
255
- headers = Twilio::Values.of({'X-Twilio-Webhook-Enabled' => x_twilio_webhook_enabled, })
256
-
257
- @version.delete('DELETE', @uri, headers: headers)
258
- end
259
-
260
- ##
261
- # Fetch the MessageInstance
262
- # @return [MessageInstance] Fetched MessageInstance
263
- def fetch
264
- payload = @version.fetch('GET', @uri)
265
-
266
- MessageInstance.new(
267
- @version,
268
- payload,
269
- conversation_sid: @solution[:conversation_sid],
270
- sid: @solution[:sid],
271
- )
272
- end
273
-
274
- ##
275
- # Access the delivery_receipts
276
- # @return [DeliveryReceiptList]
277
- # @return [DeliveryReceiptContext] if sid was passed.
278
- def delivery_receipts(sid=:unset)
279
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
280
-
281
- if sid != :unset
282
- return DeliveryReceiptContext.new(@version, @solution[:conversation_sid], @solution[:sid], sid, )
283
- end
284
-
285
- unless @delivery_receipts
286
- @delivery_receipts = DeliveryReceiptList.new(
287
- @version,
288
- conversation_sid: @solution[:conversation_sid],
289
- message_sid: @solution[:sid],
290
- )
291
- end
292
-
293
- @delivery_receipts
294
- end
295
-
296
- ##
297
- # Provide a user friendly representation
298
- def to_s
299
- context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
300
- "#<Twilio.Conversations.V1.MessageContext #{context}>"
301
- end
302
-
303
- ##
304
- # Provide a detailed, user friendly representation
305
- def inspect
306
- context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
307
- "#<Twilio.Conversations.V1.MessageContext #{context}>"
308
- end
309
- end
310
-
311
- class MessageInstance < InstanceResource
312
- ##
313
- # Initialize the MessageInstance
314
- # @param [Version] version Version that contains the resource
315
- # @param [Hash] payload payload that contains response from Twilio
316
- # @param [String] conversation_sid The unique ID of the
317
- # {Conversation}[https://www.twilio.com/docs/conversations/api/conversation-resource]
318
- # for this message.
319
- # @param [String] sid A 34 character string that uniquely identifies this
320
- # resource.
321
- # @return [MessageInstance] MessageInstance
322
- def initialize(version, payload, conversation_sid: nil, sid: nil)
323
- super(version)
324
-
325
- # Marshaled Properties
326
- @properties = {
327
- 'account_sid' => payload['account_sid'],
328
- 'conversation_sid' => payload['conversation_sid'],
329
- 'sid' => payload['sid'],
330
- 'index' => payload['index'] == nil ? payload['index'] : payload['index'].to_i,
331
- 'author' => payload['author'],
332
- 'body' => payload['body'],
333
- 'media' => payload['media'],
334
- 'attributes' => payload['attributes'],
335
- 'participant_sid' => payload['participant_sid'],
336
- 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
337
- 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
338
- 'url' => payload['url'],
339
- 'delivery' => payload['delivery'],
340
- 'links' => payload['links'],
341
- 'content_sid' => payload['content_sid'],
342
- }
343
-
344
- # Context
345
- @instance_context = nil
346
- @params = {'conversation_sid' => conversation_sid, 'sid' => sid || @properties['sid'], }
347
- end
348
-
349
- ##
350
- # Generate an instance context for the instance, the context is capable of
351
- # performing various actions. All instance actions are proxied to the context
352
- # @return [MessageContext] MessageContext for this MessageInstance
353
- def context
354
- unless @instance_context
355
- @instance_context = MessageContext.new(@version, @params['conversation_sid'], @params['sid'], )
356
- end
357
- @instance_context
358
- end
359
-
360
- ##
361
- # @return [String] The unique ID of the Account responsible for this message.
362
- def account_sid
363
- @properties['account_sid']
364
- end
365
-
366
- ##
367
- # @return [String] The unique ID of the Conversation for this message.
368
- def conversation_sid
369
- @properties['conversation_sid']
370
- end
371
-
372
- ##
373
- # @return [String] A 34 character string that uniquely identifies this resource.
374
- def sid
375
- @properties['sid']
376
- end
377
-
378
- ##
379
- # @return [String] The index of the message within the Conversation.
380
- def index
381
- @properties['index']
382
- end
383
-
384
- ##
385
- # @return [String] The channel specific identifier of the message's author.
386
- def author
387
- @properties['author']
388
- end
389
-
390
- ##
391
- # @return [String] The content of the message.
392
- def body
393
- @properties['body']
394
- end
395
-
396
- ##
397
- # @return [Array[Hash]] An array of objects that describe the Message's media if attached, otherwise, null.
398
- def media
399
- @properties['media']
400
- end
401
-
402
- ##
403
- # @return [String] A string metadata field you can use to store any data you wish.
404
- def attributes
405
- @properties['attributes']
406
- end
407
-
408
- ##
409
- # @return [String] The unique ID of messages's author participant.
410
- def participant_sid
411
- @properties['participant_sid']
412
- end
413
-
414
- ##
415
- # @return [Time] The date that this resource was created.
416
- def date_created
417
- @properties['date_created']
418
- end
419
-
420
- ##
421
- # @return [Time] The date that this resource was last updated.
422
- def date_updated
423
- @properties['date_updated']
424
- end
425
-
426
- ##
427
- # @return [String] An absolute API URL for this message.
428
- def url
429
- @properties['url']
430
- end
431
-
432
- ##
433
- # @return [Hash] An object that contains the summary of delivery statuses for the message to non-chat participants.
434
- def delivery
435
- @properties['delivery']
436
- end
437
-
438
- ##
439
- # @return [String] Absolute URL to access the receipts of this message.
440
- def links
441
- @properties['links']
442
- end
443
-
444
- ##
445
- # @return [String] The unique ID of the multi-channel Rich Content template.
446
- def content_sid
447
- @properties['content_sid']
448
- end
449
-
450
- ##
451
- # Update the MessageInstance
452
- # @param [String] author The channel specific identifier of the message's author.
453
- # Defaults to `system`.
454
- # @param [String] body The content of the message, can be up to 1,600 characters
455
- # long.
456
- # @param [Time] date_created The date that this resource was created.
457
- # @param [Time] date_updated The date that this resource was last updated. `null`
458
- # if the message has not been edited.
459
- # @param [String] attributes A string metadata field you can use to store any data
460
- # you wish. The string value must contain structurally valid JSON if specified.
461
- # **Note** that if the attributes are not set "{}" will be returned.
462
- # @param [message.WebhookEnabledType] x_twilio_webhook_enabled The
463
- # X-Twilio-Webhook-Enabled HTTP request header
464
- # @return [MessageInstance] Updated MessageInstance
465
- def update(author: :unset, body: :unset, date_created: :unset, date_updated: :unset, attributes: :unset, x_twilio_webhook_enabled: :unset)
466
- context.update(
467
- author: author,
468
- body: body,
469
- date_created: date_created,
470
- date_updated: date_updated,
471
- attributes: attributes,
472
- x_twilio_webhook_enabled: x_twilio_webhook_enabled,
473
- )
474
- end
475
-
476
- ##
477
- # Delete the MessageInstance
478
- # @param [message.WebhookEnabledType] x_twilio_webhook_enabled The
479
- # X-Twilio-Webhook-Enabled HTTP request header
480
- # @return [Boolean] true if delete succeeds, false otherwise
481
- def delete(x_twilio_webhook_enabled: :unset)
482
- context.delete(x_twilio_webhook_enabled: x_twilio_webhook_enabled, )
483
- end
484
-
485
- ##
486
- # Fetch the MessageInstance
487
- # @return [MessageInstance] Fetched MessageInstance
488
- def fetch
489
- context.fetch
490
- end
491
-
492
- ##
493
- # Access the delivery_receipts
494
- # @return [delivery_receipts] delivery_receipts
495
- def delivery_receipts
496
- context.delivery_receipts
497
- end
498
14
 
499
- ##
500
- # Provide a user friendly representation
501
- def to_s
502
- values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
503
- "<Twilio.Conversations.V1.MessageInstance #{values}>"
504
- end
505
15
 
506
- ##
507
- # Provide a detailed, user friendly representation
508
- def inspect
509
- values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
510
- "<Twilio.Conversations.V1.MessageInstance #{values}>"
16
+ module Twilio
17
+ module REST
18
+ class Conversations < ConversationsBase
19
+ class V1 < Version
20
+ class ConversationContext < InstanceContext
21
+
22
+ class MessageList < ListResource
23
+
24
+ ##
25
+ # Initialize the MessageList
26
+ # @param [Version] version Version that contains the resource
27
+ # @return [MessageList] MessageList
28
+ def initialize(version, conversation_sid: nil)
29
+ super(version)
30
+ # Path Solution
31
+ @solution = { conversation_sid: conversation_sid }
32
+ @uri = "/Conversations/#{@solution[:conversation_sid]}/Messages"
33
+
34
+ end
35
+ ##
36
+ # Create the MessageInstance
37
+ # @param [String] author The channel specific identifier of the message's author. Defaults to `system`.
38
+ # @param [String] body The content of the message, can be up to 1,600 characters long.
39
+ # @param [Time] date_created The date that this resource was created.
40
+ # @param [Time] date_updated The date that this resource was last updated. `null` if the message has not been edited.
41
+ # @param [String] attributes A string metadata field you can use to store any data you wish. The string value must contain structurally valid JSON if specified. **Note** that if the attributes are not set \\\"{}\\\" will be returned.
42
+ # @param [String] media_sid The Media SID to be attached to the new Message.
43
+ # @param [String] content_sid The unique ID of the multi-channel [Rich Content](https://www.twilio.com/docs/content) template, required for template-generated messages. **Note** that if this field is set, `Body` and `MediaSid` parameters are ignored.
44
+ # @param [String] content_variables A structurally valid JSON string that contains values to resolve Rich Content template variables.
45
+ # @param [String] subject The subject of the message, can be up to 256 characters long.
46
+ # @param [ConversationMessageEnumWebhookEnabledType] x_twilio_webhook_enabled The X-Twilio-Webhook-Enabled HTTP request header
47
+ # @return [MessageInstance] Created MessageInstance
48
+ def create(
49
+ author: :unset,
50
+ body: :unset,
51
+ date_created: :unset,
52
+ date_updated: :unset,
53
+ attributes: :unset,
54
+ media_sid: :unset,
55
+ content_sid: :unset,
56
+ content_variables: :unset,
57
+ subject: :unset,
58
+ x_twilio_webhook_enabled: :unset
59
+ )
60
+
61
+ data = Twilio::Values.of({
62
+ 'Author' => author,
63
+ 'Body' => body,
64
+ 'DateCreated' => Twilio.serialize_iso8601_datetime(date_created),
65
+ 'DateUpdated' => Twilio.serialize_iso8601_datetime(date_updated),
66
+ 'Attributes' => attributes,
67
+ 'MediaSid' => media_sid,
68
+ 'ContentSid' => content_sid,
69
+ 'ContentVariables' => content_variables,
70
+ 'Subject' => subject,
71
+ })
72
+
73
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', 'X-Twilio-Webhook-Enabled' => x_twilio_webhook_enabled, })
74
+
75
+
76
+
77
+
78
+
79
+ payload = @version.create('POST', @uri, data: data, headers: headers)
80
+ MessageInstance.new(
81
+ @version,
82
+ payload,
83
+ conversation_sid: @solution[:conversation_sid],
84
+ )
85
+ end
86
+
87
+
88
+ ##
89
+ # Lists MessageInstance records from the API as a list.
90
+ # Unlike stream(), this operation is eager and will load `limit` records into
91
+ # memory before returning.
92
+ # @param [OrderType] order The sort order of the returned messages. Can be: `asc` (ascending) or `desc` (descending), with `asc` as the default.
93
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
94
+ # guarantees to never return more than limit. Default is no limit
95
+ # @param [Integer] page_size Number of records to fetch per request, when
96
+ # not set will use the default value of 50 records. If no page_size is defined
97
+ # but a limit is defined, stream() will attempt to read the limit with the most
98
+ # efficient page size, i.e. min(limit, 1000)
99
+ # @return [Array] Array of up to limit results
100
+ def list(order: :unset, limit: nil, page_size: nil)
101
+ self.stream(
102
+ order: order,
103
+ limit: limit,
104
+ page_size: page_size
105
+ ).entries
106
+ end
107
+
108
+ ##
109
+ # Streams Instance records from the API as an Enumerable.
110
+ # This operation lazily loads records as efficiently as possible until the limit
111
+ # is reached.
112
+ # @param [OrderType] order The sort order of the returned messages. Can be: `asc` (ascending) or `desc` (descending), with `asc` as the default.
113
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
114
+ # guarantees to never return more than limit. Default is no limit
115
+ # @param [Integer] page_size Number of records to fetch per request, when
116
+ # not set will use the default value of 50 records. If no page_size is defined
117
+ # but a limit is defined, stream() will attempt to read the limit with the most
118
+ # efficient page size, i.e. min(limit, 1000)
119
+ # @return [Enumerable] Enumerable that will yield up to limit results
120
+ def stream(order: :unset, limit: nil, page_size: nil)
121
+ limits = @version.read_limits(limit, page_size)
122
+
123
+ page = self.page(
124
+ order: order,
125
+ page_size: limits[:page_size], )
126
+
127
+ @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
128
+ end
129
+
130
+ ##
131
+ # When passed a block, yields MessageInstance records from the API.
132
+ # This operation lazily loads records as efficiently as possible until the limit
133
+ # is reached.
134
+ def each
135
+ limits = @version.read_limits
136
+
137
+ page = self.page(page_size: limits[:page_size], )
138
+
139
+ @version.stream(page,
140
+ limit: limits[:limit],
141
+ page_limit: limits[:page_limit]).each {|x| yield x}
142
+ end
143
+
144
+ ##
145
+ # Retrieve a single page of MessageInstance records from the API.
146
+ # Request is executed immediately.
147
+ # @param [OrderType] order The sort order of the returned messages. Can be: `asc` (ascending) or `desc` (descending), with `asc` as the default.
148
+ # @param [String] page_token PageToken provided by the API
149
+ # @param [Integer] page_number Page Number, this value is simply for client state
150
+ # @param [Integer] page_size Number of records to return, defaults to 50
151
+ # @return [Page] Page of MessageInstance
152
+ def page(order: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
153
+ params = Twilio::Values.of({
154
+ 'Order' => order,
155
+ 'PageToken' => page_token,
156
+ 'Page' => page_number,
157
+ 'PageSize' => page_size,
158
+ })
159
+ headers = Twilio::Values.of({})
160
+
161
+
162
+
163
+ response = @version.page('GET', @uri, params: params, headers: headers)
164
+
165
+ MessagePage.new(@version, response, @solution)
166
+ end
167
+
168
+ ##
169
+ # Retrieve a single page of MessageInstance records from the API.
170
+ # Request is executed immediately.
171
+ # @param [String] target_url API-generated URL for the requested results page
172
+ # @return [Page] Page of MessageInstance
173
+ def get_page(target_url)
174
+ response = @version.domain.request(
175
+ 'GET',
176
+ target_url
177
+ )
178
+ MessagePage.new(@version, response, @solution)
179
+ end
180
+
181
+
182
+
183
+ # Provide a user friendly representation
184
+ def to_s
185
+ '#<Twilio.Conversations.V1.MessageList>'
186
+ end
187
+ end
188
+
189
+
190
+ class MessageContext < InstanceContext
191
+ ##
192
+ # Initialize the MessageContext
193
+ # @param [Version] version Version that contains the resource
194
+ # @param [String] conversation_sid The unique ID of the [Conversation](https://www.twilio.com/docs/conversations/api/conversation-resource) for this message.
195
+ # @param [String] sid A 34 character string that uniquely identifies this resource.
196
+ # @return [MessageContext] MessageContext
197
+ def initialize(version, conversation_sid, sid)
198
+ super(version)
199
+
200
+ # Path Solution
201
+ @solution = { conversation_sid: conversation_sid, sid: sid, }
202
+ @uri = "/Conversations/#{@solution[:conversation_sid]}/Messages/#{@solution[:sid]}"
203
+
204
+ # Dependents
205
+ @delivery_receipts = nil
206
+ end
207
+ ##
208
+ # Delete the MessageInstance
209
+ # @param [ConversationMessageEnumWebhookEnabledType] x_twilio_webhook_enabled The X-Twilio-Webhook-Enabled HTTP request header
210
+ # @return [Boolean] True if delete succeeds, false otherwise
211
+ def delete(
212
+ x_twilio_webhook_enabled: :unset
213
+ )
214
+
215
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', 'X-Twilio-Webhook-Enabled' => x_twilio_webhook_enabled, })
216
+
217
+
218
+
219
+ @version.delete('DELETE', @uri, headers: headers)
220
+ end
221
+
222
+ ##
223
+ # Fetch the MessageInstance
224
+ # @return [MessageInstance] Fetched MessageInstance
225
+ def fetch
226
+
227
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
228
+
229
+
230
+
231
+
232
+
233
+ payload = @version.fetch('GET', @uri, headers: headers)
234
+ MessageInstance.new(
235
+ @version,
236
+ payload,
237
+ conversation_sid: @solution[:conversation_sid],
238
+ sid: @solution[:sid],
239
+ )
240
+ end
241
+
242
+ ##
243
+ # Update the MessageInstance
244
+ # @param [String] author The channel specific identifier of the message's author. Defaults to `system`.
245
+ # @param [String] body The content of the message, can be up to 1,600 characters long.
246
+ # @param [Time] date_created The date that this resource was created.
247
+ # @param [Time] date_updated The date that this resource was last updated. `null` if the message has not been edited.
248
+ # @param [String] attributes A string metadata field you can use to store any data you wish. The string value must contain structurally valid JSON if specified. **Note** that if the attributes are not set \\\"{}\\\" will be returned.
249
+ # @param [String] subject The subject of the message, can be up to 256 characters long.
250
+ # @param [ConversationMessageEnumWebhookEnabledType] x_twilio_webhook_enabled The X-Twilio-Webhook-Enabled HTTP request header
251
+ # @return [MessageInstance] Updated MessageInstance
252
+ def update(
253
+ author: :unset,
254
+ body: :unset,
255
+ date_created: :unset,
256
+ date_updated: :unset,
257
+ attributes: :unset,
258
+ subject: :unset,
259
+ x_twilio_webhook_enabled: :unset
260
+ )
261
+
262
+ data = Twilio::Values.of({
263
+ 'Author' => author,
264
+ 'Body' => body,
265
+ 'DateCreated' => Twilio.serialize_iso8601_datetime(date_created),
266
+ 'DateUpdated' => Twilio.serialize_iso8601_datetime(date_updated),
267
+ 'Attributes' => attributes,
268
+ 'Subject' => subject,
269
+ })
270
+
271
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', 'X-Twilio-Webhook-Enabled' => x_twilio_webhook_enabled, })
272
+
273
+
274
+
275
+
276
+
277
+ payload = @version.update('POST', @uri, data: data, headers: headers)
278
+ MessageInstance.new(
279
+ @version,
280
+ payload,
281
+ conversation_sid: @solution[:conversation_sid],
282
+ sid: @solution[:sid],
283
+ )
284
+ end
285
+
286
+ ##
287
+ # Access the delivery_receipts
288
+ # @return [DeliveryReceiptList]
289
+ # @return [DeliveryReceiptContext] if sid was passed.
290
+ def delivery_receipts(sid=:unset)
291
+
292
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
293
+
294
+ if sid != :unset
295
+ return DeliveryReceiptContext.new(@version, @solution[:conversation_sid], @solution[:sid],sid )
296
+ end
297
+
298
+ unless @delivery_receipts
299
+ @delivery_receipts = DeliveryReceiptList.new(
300
+ @version, conversation_sid: @solution[:conversation_sid], message_sid: @solution[:sid], )
301
+ end
302
+
303
+ @delivery_receipts
304
+ end
305
+
306
+ ##
307
+ # Provide a user friendly representation
308
+ def to_s
309
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
310
+ "#<Twilio.Conversations.V1.MessageContext #{context}>"
311
+ end
312
+
313
+ ##
314
+ # Provide a detailed, user friendly representation
315
+ def inspect
316
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
317
+ "#<Twilio.Conversations.V1.MessageContext #{context}>"
318
+ end
319
+ end
320
+
321
+ class MessagePage < Page
322
+ ##
323
+ # Initialize the MessagePage
324
+ # @param [Version] version Version that contains the resource
325
+ # @param [Response] response Response from the API
326
+ # @param [Hash] solution Path solution for the resource
327
+ # @return [MessagePage] MessagePage
328
+ def initialize(version, response, solution)
329
+ super(version, response)
330
+
331
+ # Path Solution
332
+ @solution = solution
333
+ end
334
+
335
+ ##
336
+ # Build an instance of MessageInstance
337
+ # @param [Hash] payload Payload response from the API
338
+ # @return [MessageInstance] MessageInstance
339
+ def get_instance(payload)
340
+ MessageInstance.new(@version, payload, conversation_sid: @solution[:conversation_sid])
341
+ end
342
+
343
+ ##
344
+ # Provide a user friendly representation
345
+ def to_s
346
+ '<Twilio.Conversations.V1.MessagePage>'
347
+ end
348
+ end
349
+ class MessageInstance < InstanceResource
350
+ ##
351
+ # Initialize the MessageInstance
352
+ # @param [Version] version Version that contains the resource
353
+ # @param [Hash] payload payload that contains response from Twilio
354
+ # @param [String] account_sid The SID of the
355
+ # {Account}[https://www.twilio.com/docs/iam/api/account] that created this Message
356
+ # resource.
357
+ # @param [String] sid The SID of the Call resource to fetch.
358
+ # @return [MessageInstance] MessageInstance
359
+ def initialize(version, payload , conversation_sid: nil, sid: nil)
360
+ super(version)
361
+
362
+ # Marshaled Properties
363
+ @properties = {
364
+ 'account_sid' => payload['account_sid'],
365
+ 'conversation_sid' => payload['conversation_sid'],
366
+ 'sid' => payload['sid'],
367
+ 'index' => payload['index'] == nil ? payload['index'] : payload['index'].to_i,
368
+ 'author' => payload['author'],
369
+ 'body' => payload['body'],
370
+ 'media' => payload['media'],
371
+ 'attributes' => payload['attributes'],
372
+ 'participant_sid' => payload['participant_sid'],
373
+ 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
374
+ 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
375
+ 'url' => payload['url'],
376
+ 'delivery' => payload['delivery'],
377
+ 'links' => payload['links'],
378
+ 'content_sid' => payload['content_sid'],
379
+ }
380
+
381
+ # Context
382
+ @instance_context = nil
383
+ @params = { 'conversation_sid' => conversation_sid || @properties['conversation_sid'] ,'sid' => sid || @properties['sid'] , }
384
+ end
385
+
386
+ ##
387
+ # Generate an instance context for the instance, the context is capable of
388
+ # performing various actions. All instance actions are proxied to the context
389
+ # @return [MessageContext] CallContext for this CallInstance
390
+ def context
391
+ unless @instance_context
392
+ @instance_context = MessageContext.new(@version , @params['conversation_sid'], @params['sid'])
393
+ end
394
+ @instance_context
395
+ end
396
+
397
+ ##
398
+ # @return [String] The unique ID of the [Account](https://www.twilio.com/docs/iam/api/account) responsible for this message.
399
+ def account_sid
400
+ @properties['account_sid']
401
+ end
402
+
403
+ ##
404
+ # @return [String] The unique ID of the [Conversation](https://www.twilio.com/docs/conversations/api/conversation-resource) for this message.
405
+ def conversation_sid
406
+ @properties['conversation_sid']
407
+ end
408
+
409
+ ##
410
+ # @return [String] A 34 character string that uniquely identifies this resource.
411
+ def sid
412
+ @properties['sid']
413
+ end
414
+
415
+ ##
416
+ # @return [String] The index of the message within the [Conversation](https://www.twilio.com/docs/conversations/api/conversation-resource). Indices may skip numbers, but will always be in order of when the message was received.
417
+ def index
418
+ @properties['index']
419
+ end
420
+
421
+ ##
422
+ # @return [String] The channel specific identifier of the message's author. Defaults to `system`.
423
+ def author
424
+ @properties['author']
425
+ end
426
+
427
+ ##
428
+ # @return [String] The content of the message, can be up to 1,600 characters long.
429
+ def body
430
+ @properties['body']
431
+ end
432
+
433
+ ##
434
+ # @return [Array<Hash>] An array of objects that describe the Message's media, if the message contains media. Each object contains these fields: `content_type` with the MIME type of the media, `filename` with the name of the media, `sid` with the SID of the Media resource, and `size` with the media object's file size in bytes. If the Message has no media, this value is `null`.
435
+ def media
436
+ @properties['media']
437
+ end
438
+
439
+ ##
440
+ # @return [String] A string metadata field you can use to store any data you wish. The string value must contain structurally valid JSON if specified. **Note** that if the attributes are not set \"{}\" will be returned.
441
+ def attributes
442
+ @properties['attributes']
443
+ end
444
+
445
+ ##
446
+ # @return [String] The unique ID of messages's author participant. Null in case of `system` sent message.
447
+ def participant_sid
448
+ @properties['participant_sid']
449
+ end
450
+
451
+ ##
452
+ # @return [Time] The date that this resource was created.
453
+ def date_created
454
+ @properties['date_created']
455
+ end
456
+
457
+ ##
458
+ # @return [Time] The date that this resource was last updated. `null` if the message has not been edited.
459
+ def date_updated
460
+ @properties['date_updated']
461
+ end
462
+
463
+ ##
464
+ # @return [String] An absolute API resource API URL for this message.
465
+ def url
466
+ @properties['url']
467
+ end
468
+
469
+ ##
470
+ # @return [Hash] An object that contains the summary of delivery statuses for the message to non-chat participants.
471
+ def delivery
472
+ @properties['delivery']
473
+ end
474
+
475
+ ##
476
+ # @return [Hash] Contains an absolute API resource URL to access the delivery & read receipts of this message.
477
+ def links
478
+ @properties['links']
479
+ end
480
+
481
+ ##
482
+ # @return [String] The unique ID of the multi-channel [Rich Content](https://www.twilio.com/docs/content) template.
483
+ def content_sid
484
+ @properties['content_sid']
485
+ end
486
+
487
+ ##
488
+ # Delete the MessageInstance
489
+ # @param [ConversationMessageEnumWebhookEnabledType] x_twilio_webhook_enabled The X-Twilio-Webhook-Enabled HTTP request header
490
+ # @return [Boolean] True if delete succeeds, false otherwise
491
+ def delete(
492
+ x_twilio_webhook_enabled: :unset
493
+ )
494
+
495
+ context.delete(
496
+ x_twilio_webhook_enabled: x_twilio_webhook_enabled,
497
+ )
498
+ end
499
+
500
+ ##
501
+ # Fetch the MessageInstance
502
+ # @return [MessageInstance] Fetched MessageInstance
503
+ def fetch
504
+
505
+ context.fetch
506
+ end
507
+
508
+ ##
509
+ # Update the MessageInstance
510
+ # @param [String] author The channel specific identifier of the message's author. Defaults to `system`.
511
+ # @param [String] body The content of the message, can be up to 1,600 characters long.
512
+ # @param [Time] date_created The date that this resource was created.
513
+ # @param [Time] date_updated The date that this resource was last updated. `null` if the message has not been edited.
514
+ # @param [String] attributes A string metadata field you can use to store any data you wish. The string value must contain structurally valid JSON if specified. **Note** that if the attributes are not set \\\"{}\\\" will be returned.
515
+ # @param [String] subject The subject of the message, can be up to 256 characters long.
516
+ # @param [ConversationMessageEnumWebhookEnabledType] x_twilio_webhook_enabled The X-Twilio-Webhook-Enabled HTTP request header
517
+ # @return [MessageInstance] Updated MessageInstance
518
+ def update(
519
+ author: :unset,
520
+ body: :unset,
521
+ date_created: :unset,
522
+ date_updated: :unset,
523
+ attributes: :unset,
524
+ subject: :unset,
525
+ x_twilio_webhook_enabled: :unset
526
+ )
527
+
528
+ context.update(
529
+ author: author,
530
+ body: body,
531
+ date_created: date_created,
532
+ date_updated: date_updated,
533
+ attributes: attributes,
534
+ subject: subject,
535
+ x_twilio_webhook_enabled: x_twilio_webhook_enabled,
536
+ )
537
+ end
538
+
539
+ ##
540
+ # Access the delivery_receipts
541
+ # @return [delivery_receipts] delivery_receipts
542
+ def delivery_receipts
543
+ context.delivery_receipts
544
+ end
545
+
546
+ ##
547
+ # Provide a user friendly representation
548
+ def to_s
549
+ values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
550
+ "<Twilio.Conversations.V1.MessageInstance #{values}>"
551
+ end
552
+
553
+ ##
554
+ # Provide a detailed, user friendly representation
555
+ def inspect
556
+ values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
557
+ "<Twilio.Conversations.V1.MessageInstance #{values}>"
558
+ end
559
+ end
560
+
561
+ end
511
562
  end
512
- end
513
563
  end
514
- end
515
564
  end
516
- end
517
- end
565
+ end
566
+
567
+