twilio-ruby 7.3.3 → 7.10.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (607) 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 +10 -2
  5. data/.gitignore +1 -0
  6. data/.rubocop.yml +1 -0
  7. data/CHANGES.md +543 -0
  8. data/Dockerfile +2 -1
  9. data/Gemfile +2 -0
  10. data/Makefile +1 -1
  11. data/README.md +7 -2
  12. data/cluster/cluster_oauth_spec.rb +19 -0
  13. data/cluster/cluster_orgs_spec.rb +40 -0
  14. data/{cluster_spec.rb → cluster/cluster_spec.rb} +0 -2
  15. data/examples/public_oauth.rb +13 -0
  16. data/lib/twilio-ruby/auth_strategy/auth_strategy.rb +19 -0
  17. data/lib/twilio-ruby/auth_strategy/no_auth_strategy.rb +17 -0
  18. data/lib/twilio-ruby/auth_strategy/token_auth_strategy.rb +39 -0
  19. data/lib/twilio-ruby/base/client_base.rb +8 -1
  20. data/lib/twilio-ruby/credential/auth_type.rb +17 -0
  21. data/lib/twilio-ruby/credential/client_credential_provider.rb +28 -0
  22. data/lib/twilio-ruby/credential/credential_provider.rb +11 -0
  23. data/lib/twilio-ruby/credential/orgs_credential_provider.rb +30 -0
  24. data/lib/twilio-ruby/framework/rest/api_v1_version.rb +22 -0
  25. data/lib/twilio-ruby/framework/rest/domain.rb +0 -1
  26. data/lib/twilio-ruby/framework/rest/error.rb +27 -0
  27. data/lib/twilio-ruby/framework/rest/page.rb +1 -0
  28. data/lib/twilio-ruby/framework/rest/page_metadata.rb +83 -0
  29. data/lib/twilio-ruby/framework/rest/resource.rb +16 -0
  30. data/lib/twilio-ruby/framework/rest/token_page.rb +73 -0
  31. data/lib/twilio-ruby/framework/rest/version.rb +91 -4
  32. data/lib/twilio-ruby/http/client_token_manager.rb +31 -0
  33. data/lib/twilio-ruby/http/http_client.rb +9 -0
  34. data/lib/twilio-ruby/http/org_token_manager.rb +31 -0
  35. data/lib/twilio-ruby/rest/accounts/v1/auth_token_promotion.rb +139 -0
  36. data/lib/twilio-ruby/rest/accounts/v1/bulk_consents.rb +99 -1
  37. data/lib/twilio-ruby/rest/accounts/v1/bulk_contacts.rb +98 -0
  38. data/lib/twilio-ruby/rest/accounts/v1/credential/aws.rb +266 -2
  39. data/lib/twilio-ruby/rest/accounts/v1/credential/public_key.rb +266 -2
  40. data/lib/twilio-ruby/rest/accounts/v1/credential.rb +63 -0
  41. data/lib/twilio-ruby/rest/accounts/v1/messaging_geopermissions.rb +285 -0
  42. data/lib/twilio-ruby/rest/accounts/v1/safelist.rb +164 -4
  43. data/lib/twilio-ruby/rest/accounts/v1/secondary_auth_token.rb +161 -0
  44. data/lib/twilio-ruby/rest/accounts/v1.rb +6 -0
  45. data/lib/twilio-ruby/rest/api/v2010/account/address/dependent_phone_number.rb +90 -2
  46. data/lib/twilio-ruby/rest/api/v2010/account/address.rb +333 -7
  47. data/lib/twilio-ruby/rest/api/v2010/account/application.rb +355 -2
  48. data/lib/twilio-ruby/rest/api/v2010/account/authorized_connect_app.rb +168 -2
  49. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/local.rb +129 -5
  50. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/machine_to_machine.rb +129 -5
  51. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/mobile.rb +129 -5
  52. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/national.rb +129 -5
  53. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/shared_cost.rb +129 -5
  54. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/toll_free.rb +129 -5
  55. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/voip.rb +129 -5
  56. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country.rb +168 -2
  57. data/lib/twilio-ruby/rest/api/v2010/account/balance.rb +92 -0
  58. data/lib/twilio-ruby/rest/api/v2010/account/call/event.rb +90 -2
  59. data/lib/twilio-ruby/rest/api/v2010/account/call/notification.rb +177 -2
  60. data/lib/twilio-ruby/rest/api/v2010/account/call/payment.rb +240 -0
  61. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +290 -2
  62. data/lib/twilio-ruby/rest/api/v2010/account/call/siprec.rb +792 -0
  63. data/lib/twilio-ruby/rest/api/v2010/account/call/stream.rb +792 -0
  64. data/lib/twilio-ruby/rest/api/v2010/account/call/transcription.rb +235 -1
  65. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message.rb +103 -0
  66. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message_subscription.rb +176 -0
  67. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +428 -15
  68. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +464 -8
  69. data/lib/twilio-ruby/rest/api/v2010/account/conference/recording.rb +238 -2
  70. data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +228 -3
  71. data/lib/twilio-ruby/rest/api/v2010/account/connect_app.rb +248 -2
  72. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension.rb +170 -2
  73. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on.rb +228 -2
  74. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +200 -2
  75. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +200 -2
  76. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +200 -2
  77. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +413 -2
  78. data/lib/twilio-ruby/rest/api/v2010/account/key.rb +227 -2
  79. data/lib/twilio-ruby/rest/api/v2010/account/message/feedback.rb +100 -0
  80. data/lib/twilio-ruby/rest/api/v2010/account/message/media.rb +197 -2
  81. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +354 -8
  82. data/lib/twilio-ruby/rest/api/v2010/account/new_key.rb +99 -0
  83. data/lib/twilio-ruby/rest/api/v2010/account/new_signing_key.rb +99 -0
  84. data/lib/twilio-ruby/rest/api/v2010/account/notification.rb +176 -2
  85. data/lib/twilio-ruby/rest/api/v2010/account/outgoing_caller_id.rb +231 -2
  86. data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +210 -2
  87. data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +269 -2
  88. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload/data.rb +143 -0
  89. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload.rb +192 -2
  90. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result.rb +191 -2
  91. data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +191 -2
  92. data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +209 -3
  93. data/lib/twilio-ruby/rest/api/v2010/account/short_code.rb +224 -2
  94. data/lib/twilio-ruby/rest/api/v2010/account/signing_key.rb +227 -2
  95. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list/credential.rb +269 -2
  96. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list.rb +263 -2
  97. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls/auth_calls_credential_list_mapping.rb +228 -2
  98. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls/auth_calls_ip_access_control_list_mapping.rb +228 -2
  99. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls.rb +63 -0
  100. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_registrations/auth_registrations_credential_list_mapping.rb +228 -2
  101. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_registrations.rb +63 -0
  102. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types.rb +63 -0
  103. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb +228 -2
  104. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/ip_access_control_list_mapping.rb +228 -2
  105. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +335 -2
  106. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +278 -2
  107. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb +263 -2
  108. data/lib/twilio-ruby/rest/api/v2010/account/sip.rb +63 -0
  109. data/lib/twilio-ruby/rest/api/v2010/account/token.rb +99 -0
  110. data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +190 -2
  111. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +102 -6
  112. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +102 -6
  113. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +102 -6
  114. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +102 -6
  115. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +102 -6
  116. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +102 -6
  117. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +102 -6
  118. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +102 -6
  119. data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +102 -6
  120. data/lib/twilio-ruby/rest/api/v2010/account/usage/trigger.rb +298 -7
  121. data/lib/twilio-ruby/rest/api/v2010/account/usage.rb +63 -0
  122. data/lib/twilio-ruby/rest/api/v2010/account/validation_request.rb +114 -0
  123. data/lib/twilio-ruby/rest/api/v2010/account.rb +245 -2
  124. data/lib/twilio-ruby/rest/assistants/v1/assistant/assistants_knowledge.rb +197 -2
  125. data/lib/twilio-ruby/rest/assistants/v1/assistant/assistants_tool.rb +190 -2
  126. data/lib/twilio-ruby/rest/assistants/v1/assistant/feedback.rb +126 -6
  127. data/lib/twilio-ruby/rest/assistants/v1/assistant/message.rb +100 -5
  128. data/lib/twilio-ruby/rest/assistants/v1/assistant.rb +282 -32
  129. data/lib/twilio-ruby/rest/assistants/v1/knowledge/chunk.rb +90 -2
  130. data/lib/twilio-ruby/rest/assistants/v1/knowledge/knowledge_status.rb +140 -0
  131. data/lib/twilio-ruby/rest/assistants/v1/knowledge.rb +309 -38
  132. data/lib/twilio-ruby/rest/assistants/v1/policy.rb +94 -2
  133. data/lib/twilio-ruby/rest/assistants/v1/session/message.rb +90 -2
  134. data/lib/twilio-ruby/rest/assistants/v1/session.rb +167 -2
  135. data/lib/twilio-ruby/rest/assistants/v1/tool.rb +292 -40
  136. data/lib/twilio-ruby/rest/bulkexports/v1/export/day.rb +168 -2
  137. data/lib/twilio-ruby/rest/bulkexports/v1/export/export_custom_job.rb +142 -3
  138. data/lib/twilio-ruby/rest/bulkexports/v1/export/job.rb +163 -1
  139. data/lib/twilio-ruby/rest/bulkexports/v1/export.rb +140 -0
  140. data/lib/twilio-ruby/rest/bulkexports/v1/export_configuration.rb +182 -0
  141. data/lib/twilio-ruby/rest/chat/v1/credential.rb +293 -2
  142. data/lib/twilio-ruby/rest/chat/v1/service/channel/invite.rb +234 -2
  143. data/lib/twilio-ruby/rest/chat/v1/service/channel/member.rb +275 -2
  144. data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +277 -2
  145. data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +281 -2
  146. data/lib/twilio-ruby/rest/chat/v1/service/role.rb +269 -2
  147. data/lib/twilio-ruby/rest/chat/v1/service/user/user_channel.rb +90 -2
  148. data/lib/twilio-ruby/rest/chat/v1/service/user.rb +278 -2
  149. data/lib/twilio-ruby/rest/chat/v1/service.rb +419 -2
  150. data/lib/twilio-ruby/rest/chat/v2/credential.rb +293 -2
  151. data/lib/twilio-ruby/rest/chat/v2/service/binding.rb +196 -2
  152. data/lib/twilio-ruby/rest/chat/v2/service/channel/invite.rb +234 -2
  153. data/lib/twilio-ruby/rest/chat/v2/service/channel/member.rb +309 -2
  154. data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +308 -2
  155. data/lib/twilio-ruby/rest/chat/v2/service/channel/webhook.rb +299 -2
  156. data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +306 -2
  157. data/lib/twilio-ruby/rest/chat/v2/service/role.rb +269 -2
  158. data/lib/twilio-ruby/rest/chat/v2/service/user/user_binding.rb +194 -2
  159. data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +238 -2
  160. data/lib/twilio-ruby/rest/chat/v2/service/user.rb +282 -2
  161. data/lib/twilio-ruby/rest/chat/v2/service.rb +350 -2
  162. data/lib/twilio-ruby/rest/chat/v3/channel.rb +153 -0
  163. data/lib/twilio-ruby/rest/client.rb +10 -5
  164. data/lib/twilio-ruby/rest/content/v1/content/approval_create.rb +97 -2
  165. data/lib/twilio-ruby/rest/content/v1/content/approval_fetch.rb +140 -0
  166. data/lib/twilio-ruby/rest/content/v1/content.rb +1096 -126
  167. data/lib/twilio-ruby/rest/content/v1/content_and_approvals.rb +90 -2
  168. data/lib/twilio-ruby/rest/content/v1/legacy_content.rb +90 -2
  169. data/lib/twilio-ruby/rest/content/v2/content.rb +111 -2
  170. data/lib/twilio-ruby/rest/content/v2/content_and_approvals.rb +111 -2
  171. data/lib/twilio-ruby/rest/conversations/v1/address_configuration.rb +319 -2
  172. data/lib/twilio-ruby/rest/conversations/v1/configuration/webhook.rb +189 -3
  173. data/lib/twilio-ruby/rest/conversations/v1/configuration.rb +183 -0
  174. data/lib/twilio-ruby/rest/conversations/v1/conversation/message/delivery_receipt.rb +169 -2
  175. data/lib/twilio-ruby/rest/conversations/v1/conversation/message.rb +311 -2
  176. data/lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb +315 -2
  177. data/lib/twilio-ruby/rest/conversations/v1/conversation/webhook.rb +293 -2
  178. data/lib/twilio-ruby/rest/conversations/v1/conversation.rb +356 -25
  179. data/lib/twilio-ruby/rest/conversations/v1/conversation_with_participants.rb +392 -0
  180. data/lib/twilio-ruby/rest/conversations/v1/credential.rb +296 -2
  181. data/lib/twilio-ruby/rest/conversations/v1/participant_conversation.rb +94 -2
  182. data/lib/twilio-ruby/rest/conversations/v1/role.rb +266 -2
  183. data/lib/twilio-ruby/rest/conversations/v1/service/binding.rb +199 -5
  184. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb +212 -0
  185. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb +185 -0
  186. data/lib/twilio-ruby/rest/conversations/v1/service/configuration.rb +201 -16
  187. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message/delivery_receipt.rb +170 -2
  188. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message.rb +314 -2
  189. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/participant.rb +318 -2
  190. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/webhook.rb +296 -2
  191. data/lib/twilio-ruby/rest/conversations/v1/service/conversation.rb +360 -26
  192. data/lib/twilio-ruby/rest/conversations/v1/service/conversation_with_participants.rb +399 -0
  193. data/lib/twilio-ruby/rest/conversations/v1/service/participant_conversation.rb +94 -2
  194. data/lib/twilio-ruby/rest/conversations/v1/service/role.rb +269 -2
  195. data/lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb +235 -2
  196. data/lib/twilio-ruby/rest/conversations/v1/service/user.rb +285 -2
  197. data/lib/twilio-ruby/rest/conversations/v1/service.rb +261 -20
  198. data/lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb +233 -2
  199. data/lib/twilio-ruby/rest/conversations/v1/user.rb +282 -2
  200. data/lib/twilio-ruby/rest/conversations/v1.rb +6 -0
  201. data/lib/twilio-ruby/rest/events/v1/event_type.rb +169 -2
  202. data/lib/twilio-ruby/rest/events/v1/schema/schema_version.rb +168 -2
  203. data/lib/twilio-ruby/rest/events/v1/schema.rb +140 -0
  204. data/lib/twilio-ruby/rest/events/v1/sink/sink_test.rb +92 -0
  205. data/lib/twilio-ruby/rest/events/v1/sink/sink_validate.rb +99 -0
  206. data/lib/twilio-ruby/rest/events/v1/sink.rb +270 -2
  207. data/lib/twilio-ruby/rest/events/v1/subscription/subscribed_event.rb +266 -2
  208. data/lib/twilio-ruby/rest/events/v1/subscription.rb +270 -10
  209. data/lib/twilio-ruby/rest/flex_api/v1/assessments.rb +253 -5
  210. data/lib/twilio-ruby/rest/flex_api/v1/channel.rb +251 -2
  211. data/lib/twilio-ruby/rest/flex_api/v1/configuration.rb +175 -0
  212. data/lib/twilio-ruby/rest/flex_api/v1/create_flex_instance.rb +382 -0
  213. data/lib/twilio-ruby/rest/flex_api/v1/flex_flow.rb +358 -2
  214. data/lib/twilio-ruby/rest/flex_api/v1/insights_assessments_comment.rb +151 -5
  215. data/lib/twilio-ruby/rest/flex_api/v1/insights_conversations.rb +94 -2
  216. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires.rb +292 -2
  217. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_category.rb +240 -2
  218. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_question.rb +267 -2
  219. data/lib/twilio-ruby/rest/flex_api/v1/insights_segments.rb +97 -2
  220. data/lib/twilio-ruby/rest/flex_api/v1/insights_session.rb +142 -0
  221. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_answer_sets.rb +94 -0
  222. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_comment.rb +94 -0
  223. data/lib/twilio-ruby/rest/flex_api/v1/insights_user_roles.rb +142 -0
  224. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_invite.rb +127 -2
  225. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_participant.rb +219 -2
  226. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_transfer.rb +547 -0
  227. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb +235 -2
  228. data/lib/twilio-ruby/rest/flex_api/v1/interaction.rb +266 -1
  229. data/lib/twilio-ruby/rest/flex_api/v1/plugin/plugin_versions.rb +226 -2
  230. data/lib/twilio-ruby/rest/flex_api/v1/plugin.rb +256 -2
  231. data/lib/twilio-ruby/rest/flex_api/v1/plugin_archive.rb +143 -0
  232. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration/configured_plugin.rb +173 -2
  233. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration.rb +215 -2
  234. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration_archive.rb +143 -0
  235. data/lib/twilio-ruby/rest/flex_api/v1/plugin_release.rb +209 -2
  236. data/lib/twilio-ruby/rest/flex_api/v1/plugin_version_archive.rb +144 -0
  237. data/lib/twilio-ruby/rest/flex_api/v1/provisioning_status.rb +139 -0
  238. data/lib/twilio-ruby/rest/flex_api/v1/web_channel.rb +278 -2
  239. data/lib/twilio-ruby/rest/flex_api/v1.rb +6 -0
  240. data/lib/twilio-ruby/rest/flex_api/v2/flex_user.rb +184 -39
  241. data/lib/twilio-ruby/rest/flex_api/v2/web_channels.rb +115 -0
  242. data/lib/twilio-ruby/rest/frontline_api/v1/user.rb +185 -0
  243. data/lib/twilio-ruby/rest/iam/v1/api_key.rb +201 -0
  244. data/lib/twilio-ruby/rest/iam/v1/get_api_keys.rb +99 -2
  245. data/lib/twilio-ruby/rest/iam/v1/{key.rb → new_api_key.rb} +127 -20
  246. data/lib/twilio-ruby/rest/iam/v1/o_auth_app.rb +646 -0
  247. data/lib/twilio-ruby/rest/iam/v1/token.rb +301 -0
  248. data/lib/twilio-ruby/rest/iam/v1.rb +25 -4
  249. data/lib/twilio-ruby/rest/iam_base.rb +1 -6
  250. data/lib/twilio-ruby/rest/insights/v1/call/annotation.rb +194 -0
  251. data/lib/twilio-ruby/rest/insights/v1/call/call_summary.rb +146 -0
  252. data/lib/twilio-ruby/rest/insights/v1/call/event.rb +92 -2
  253. data/lib/twilio-ruby/rest/insights/v1/call/metric.rb +94 -2
  254. data/lib/twilio-ruby/rest/insights/v1/call.rb +140 -0
  255. data/lib/twilio-ruby/rest/insights/v1/call_summaries.rb +188 -4
  256. data/lib/twilio-ruby/rest/insights/v1/conference/conference_participant.rb +183 -2
  257. data/lib/twilio-ruby/rest/insights/v1/conference.rb +187 -2
  258. data/lib/twilio-ruby/rest/insights/v1/room/participant.rb +168 -2
  259. data/lib/twilio-ruby/rest/insights/v1/room.rb +179 -2
  260. data/lib/twilio-ruby/rest/insights/v1/setting.rb +186 -0
  261. data/lib/twilio-ruby/rest/intelligence/v2/custom_operator.rb +275 -2
  262. data/lib/twilio-ruby/rest/intelligence/v2/operator.rb +171 -2
  263. data/lib/twilio-ruby/rest/intelligence/v2/operator_attachment.rb +163 -0
  264. data/lib/twilio-ruby/rest/intelligence/v2/operator_attachments.rb +140 -0
  265. data/lib/twilio-ruby/rest/intelligence/v2/operator_type.rb +167 -2
  266. data/lib/twilio-ruby/rest/intelligence/v2/prebuilt_operator.rb +171 -2
  267. data/lib/twilio-ruby/rest/intelligence/v2/service.rb +330 -3
  268. data/lib/twilio-ruby/rest/intelligence/v2/transcript/encrypted_operator_results.rb +359 -0
  269. data/lib/twilio-ruby/rest/intelligence/v2/transcript/encrypted_sentences.rb +359 -0
  270. data/lib/twilio-ruby/rest/intelligence/v2/transcript/media.rb +146 -0
  271. data/lib/twilio-ruby/rest/intelligence/v2/transcript/operator_result.rb +183 -2
  272. data/lib/twilio-ruby/rest/intelligence/v2/transcript/sentence.rb +97 -5
  273. data/lib/twilio-ruby/rest/intelligence/v2/transcript.rb +292 -2
  274. data/lib/twilio-ruby/rest/ip_messaging/v1/credential.rb +293 -2
  275. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/invite.rb +234 -2
  276. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb +275 -2
  277. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +277 -2
  278. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +281 -2
  279. data/lib/twilio-ruby/rest/ip_messaging/v1/service/role.rb +269 -2
  280. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user/user_channel.rb +90 -2
  281. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +278 -2
  282. data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +419 -2
  283. data/lib/twilio-ruby/rest/ip_messaging/v2/credential.rb +293 -2
  284. data/lib/twilio-ruby/rest/ip_messaging/v2/service/binding.rb +196 -2
  285. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/invite.rb +234 -2
  286. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb +309 -2
  287. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +308 -2
  288. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/webhook.rb +299 -2
  289. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +306 -2
  290. data/lib/twilio-ruby/rest/ip_messaging/v2/service/role.rb +269 -2
  291. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_binding.rb +194 -2
  292. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_channel.rb +235 -2
  293. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +282 -2
  294. data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +350 -2
  295. data/lib/twilio-ruby/rest/{microvisor/v1/app.rb → knowledge/v1/knowledge/chunk.rb} +133 -168
  296. data/lib/twilio-ruby/rest/knowledge/v1/knowledge/knowledge_status.rb +349 -0
  297. data/lib/twilio-ruby/rest/knowledge/v1/knowledge.rb +856 -0
  298. data/lib/twilio-ruby/rest/{preview/sync.rb → knowledge/v1.rb} +16 -16
  299. data/lib/twilio-ruby/rest/knowledge.rb +6 -0
  300. data/lib/twilio-ruby/rest/{microvisor_base.rb → knowledge_base.rb} +6 -6
  301. data/lib/twilio-ruby/rest/lookups/v1/phone_number.rb +157 -2
  302. data/lib/twilio-ruby/rest/lookups/v2/bucket.rb +500 -0
  303. data/lib/twilio-ruby/rest/lookups/v2/lookup_override.rb +603 -0
  304. data/lib/twilio-ruby/rest/lookups/v2/phone_number.rb +209 -15
  305. data/lib/twilio-ruby/rest/lookups/v2/query.rb +351 -0
  306. data/lib/twilio-ruby/rest/lookups/v2/rate_limit.rb +229 -0
  307. data/lib/twilio-ruby/rest/lookups/v2.rb +86 -0
  308. data/lib/twilio-ruby/rest/marketplace/v1/available_add_on/available_add_on_extension.rb +168 -2
  309. data/lib/twilio-ruby/rest/marketplace/v1/available_add_on.rb +167 -2
  310. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on/installed_add_on_extension.rb +205 -2
  311. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on/installed_add_on_usage.rb +97 -2
  312. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on.rb +272 -2
  313. data/lib/twilio-ruby/rest/marketplace/v1/module_data.rb +342 -0
  314. data/lib/twilio-ruby/rest/marketplace/v1/module_data_management.rb +201 -0
  315. data/lib/twilio-ruby/rest/marketplace/v1/referral_conversion.rb +99 -63
  316. data/lib/twilio-ruby/rest/marketplace/v1.rb +8 -2
  317. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_registration_otp.rb +92 -0
  318. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_vetting.rb +209 -2
  319. data/lib/twilio-ruby/rest/messaging/v1/brand_registration.rb +261 -2
  320. data/lib/twilio-ruby/rest/messaging/v1/deactivations.rb +145 -0
  321. data/lib/twilio-ruby/rest/messaging/v1/domain_certs.rb +198 -0
  322. data/lib/twilio-ruby/rest/messaging/v1/domain_config.rb +185 -0
  323. data/lib/twilio-ruby/rest/messaging/v1/domain_config_messaging_service.rb +140 -0
  324. data/lib/twilio-ruby/rest/messaging/v1/domain_validate_dn.rb +344 -0
  325. data/lib/twilio-ruby/rest/messaging/v1/external_campaign.rb +104 -0
  326. data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service.rb +163 -0
  327. data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service_domain_association.rb +140 -0
  328. data/lib/twilio-ruby/rest/messaging/v1/request_managed_cert.rb +379 -0
  329. data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +226 -2
  330. data/lib/twilio-ruby/rest/messaging/v1/service/channel_sender.rb +226 -2
  331. data/lib/twilio-ruby/rest/messaging/v1/service/destination_alpha_sender.rb +608 -0
  332. data/lib/twilio-ruby/rest/messaging/v1/service/phone_number.rb +226 -2
  333. data/lib/twilio-ruby/rest/messaging/v1/service/short_code.rb +226 -2
  334. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person.rb +326 -2
  335. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person_usecase.rb +98 -0
  336. data/lib/twilio-ruby/rest/messaging/v1/service.rb +381 -6
  337. data/lib/twilio-ruby/rest/messaging/v1/tollfree_verification.rb +731 -7
  338. data/lib/twilio-ruby/rest/messaging/v1/usecase.rb +91 -0
  339. data/lib/twilio-ruby/rest/messaging/v1.rb +30 -0
  340. data/lib/twilio-ruby/rest/messaging/v2/channels_sender.rb +1002 -0
  341. data/lib/twilio-ruby/rest/messaging/v2/domain_certs.rb +386 -0
  342. data/lib/twilio-ruby/rest/messaging/v2/typing_indicator.rb +237 -0
  343. data/lib/twilio-ruby/rest/messaging/v2.rb +70 -0
  344. data/lib/twilio-ruby/rest/messaging_base.rb +6 -1
  345. data/lib/twilio-ruby/rest/monitor/v1/alert.rb +173 -2
  346. data/lib/twilio-ruby/rest/monitor/v1/event.rb +180 -3
  347. data/lib/twilio-ruby/rest/notify/v1/credential.rb +293 -2
  348. data/lib/twilio-ruby/rest/notify/v1/service/binding.rb +254 -2
  349. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +150 -0
  350. data/lib/twilio-ruby/rest/notify/v1/service.rb +340 -2
  351. data/lib/twilio-ruby/rest/numbers/v1/bulk_eligibility.rb +170 -0
  352. data/lib/twilio-ruby/rest/numbers/v1/eligibility.rb +93 -0
  353. data/lib/twilio-ruby/rest/numbers/v1/porting_all_port_in.rb +367 -0
  354. data/lib/twilio-ruby/rest/numbers/v1/porting_port_in.rb +330 -8
  355. data/lib/twilio-ruby/rest/numbers/v1/porting_port_in_phone_number.rb +163 -0
  356. data/lib/twilio-ruby/rest/numbers/v1/porting_portability.rb +149 -0
  357. data/lib/twilio-ruby/rest/numbers/v1/porting_webhook_configuration.rb +93 -0
  358. data/lib/twilio-ruby/rest/numbers/v1/porting_webhook_configuration_delete.rb +133 -0
  359. data/lib/twilio-ruby/rest/numbers/v1/signing_request_configuration.rb +124 -2
  360. data/lib/twilio-ruby/rest/numbers/v1/webhook.rb +91 -0
  361. data/lib/twilio-ruby/rest/numbers/v1.rb +6 -0
  362. data/lib/twilio-ruby/rest/numbers/v2/application.rb +562 -0
  363. data/lib/twilio-ruby/rest/numbers/v2/authorization_document/dependent_hosted_number_order.rb +98 -2
  364. data/lib/twilio-ruby/rest/numbers/v2/authorization_document.rb +243 -2
  365. data/lib/twilio-ruby/rest/numbers/v2/bulk_hosted_number_order.rb +176 -0
  366. data/lib/twilio-ruby/rest/numbers/v2/bundle_clone.rb +153 -0
  367. data/lib/twilio-ruby/rest/numbers/v2/hosted_number_order.rb +411 -3
  368. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/bundle_copy.rb +126 -2
  369. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/evaluation.rb +197 -2
  370. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/item_assignment.rb +226 -2
  371. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/replace_items.rb +99 -0
  372. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle.rb +312 -2
  373. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user.rb +269 -2
  374. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user_type.rb +167 -2
  375. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/regulation.rb +181 -2
  376. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document.rb +269 -2
  377. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document_type.rb +167 -2
  378. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance.rb +63 -0
  379. data/lib/twilio-ruby/rest/numbers/v2.rb +15 -0
  380. data/lib/twilio-ruby/rest/numbers/v3/hosted_number_order.rb +484 -0
  381. data/lib/twilio-ruby/rest/numbers/v3.rb +40 -0
  382. data/lib/twilio-ruby/rest/numbers_base.rb +5 -0
  383. data/lib/twilio-ruby/rest/oauth/v1/authorize.rb +109 -0
  384. data/lib/twilio-ruby/rest/oauth/v1/token.rb +119 -0
  385. data/lib/twilio-ruby/rest/oauth/v2/authorize.rb +253 -0
  386. data/lib/twilio-ruby/rest/oauth/v2/token.rb +311 -0
  387. data/lib/twilio-ruby/rest/oauth/v2.rb +46 -0
  388. data/lib/twilio-ruby/rest/oauth_base.rb +6 -1
  389. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document/dependent_hosted_number_order.rb +100 -2
  390. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document.rb +275 -2
  391. data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +345 -2
  392. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on/available_add_on_extension.rb +168 -2
  393. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on.rb +167 -2
  394. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on/installed_add_on_extension.rb +205 -2
  395. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on.rb +272 -2
  396. data/lib/twilio-ruby/rest/preview/wireless/command.rb +228 -2
  397. data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +290 -2
  398. data/lib/twilio-ruby/rest/preview/wireless/sim/usage.rb +149 -0
  399. data/lib/twilio-ruby/rest/preview/wireless/sim.rb +258 -2
  400. data/lib/twilio-ruby/rest/preview.rb +0 -9
  401. data/lib/twilio-ruby/rest/preview_base.rb +0 -5
  402. data/lib/twilio-ruby/rest/preview_iam/v1/authorize.rb +253 -0
  403. data/lib/twilio-ruby/rest/preview_iam/v1/token.rb +301 -0
  404. data/lib/twilio-ruby/rest/preview_iam/v1.rb +46 -0
  405. data/lib/twilio-ruby/rest/preview_iam/versionless/organization/account.rb +468 -0
  406. data/lib/twilio-ruby/rest/preview_iam/versionless/organization/role_assignment.rb +559 -0
  407. data/lib/twilio-ruby/rest/preview_iam/versionless/organization/user.rb +768 -0
  408. data/lib/twilio-ruby/rest/preview_iam/versionless/organization.rb +413 -0
  409. data/lib/twilio-ruby/rest/preview_iam/versionless.rb +49 -0
  410. data/lib/twilio-ruby/rest/preview_iam.rb +9 -0
  411. data/lib/twilio-ruby/rest/preview_iam_base.rb +38 -0
  412. data/lib/twilio-ruby/rest/pricing/v1/messaging/country.rb +167 -2
  413. data/lib/twilio-ruby/rest/pricing/v1/messaging.rb +63 -0
  414. data/lib/twilio-ruby/rest/pricing/v1/phone_number/country.rb +167 -2
  415. data/lib/twilio-ruby/rest/pricing/v1/phone_number.rb +63 -0
  416. data/lib/twilio-ruby/rest/pricing/v1/voice/country.rb +167 -2
  417. data/lib/twilio-ruby/rest/pricing/v1/voice/number.rb +140 -0
  418. data/lib/twilio-ruby/rest/pricing/v1/voice.rb +63 -0
  419. data/lib/twilio-ruby/rest/pricing/v2/country.rb +167 -2
  420. data/lib/twilio-ruby/rest/pricing/v2/number.rb +146 -0
  421. data/lib/twilio-ruby/rest/pricing/v2/voice/country.rb +167 -2
  422. data/lib/twilio-ruby/rest/pricing/v2/voice/number.rb +146 -0
  423. data/lib/twilio-ruby/rest/pricing/v2/voice.rb +63 -0
  424. data/lib/twilio-ruby/rest/proxy/v1/service/phone_number.rb +269 -2
  425. data/lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb +191 -2
  426. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant/message_interaction.rb +211 -2
  427. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb +237 -2
  428. data/lib/twilio-ruby/rest/proxy/v1/service/session.rb +284 -2
  429. data/lib/twilio-ruby/rest/proxy/v1/service.rb +302 -29
  430. data/lib/twilio-ruby/rest/routes/v2/phone_number.rb +179 -0
  431. data/lib/twilio-ruby/rest/routes/v2/sip_domain.rb +179 -0
  432. data/lib/twilio-ruby/rest/routes/v2/trunk.rb +179 -0
  433. data/lib/twilio-ruby/rest/serverless/v1/service/asset/asset_version.rb +169 -2
  434. data/lib/twilio-ruby/rest/serverless/v1/service/asset.rb +263 -2
  435. data/lib/twilio-ruby/rest/serverless/v1/service/build/build_status.rb +141 -0
  436. data/lib/twilio-ruby/rest/serverless/v1/service/build.rb +235 -2
  437. data/lib/twilio-ruby/rest/serverless/v1/service/environment/deployment.rb +209 -2
  438. data/lib/twilio-ruby/rest/serverless/v1/service/environment/log.rb +176 -3
  439. data/lib/twilio-ruby/rest/serverless/v1/service/environment/variable.rb +272 -2
  440. data/lib/twilio-ruby/rest/serverless/v1/service/environment.rb +229 -2
  441. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version/function_version_content.rb +142 -0
  442. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version.rb +169 -2
  443. data/lib/twilio-ruby/rest/serverless/v1/service/function.rb +263 -2
  444. data/lib/twilio-ruby/rest/serverless/v1/service.rb +275 -2
  445. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/engagement_context.rb +141 -0
  446. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step/step_context.rb +142 -0
  447. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb +183 -2
  448. data/lib/twilio-ruby/rest/studio/v1/flow/engagement.rb +232 -2
  449. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_context.rb +141 -0
  450. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step/execution_step_context.rb +142 -0
  451. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step.rb +183 -2
  452. data/lib/twilio-ruby/rest/studio/v1/flow/execution.rb +273 -2
  453. data/lib/twilio-ruby/rest/studio/v1/flow.rb +189 -2
  454. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_context.rb +141 -0
  455. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step/execution_step_context.rb +142 -0
  456. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step.rb +183 -2
  457. data/lib/twilio-ruby/rest/studio/v2/flow/execution.rb +273 -2
  458. data/lib/twilio-ruby/rest/studio/v2/flow/flow_revision.rb +168 -2
  459. data/lib/twilio-ruby/rest/studio/v2/flow/flow_test_user.rb +176 -0
  460. data/lib/twilio-ruby/rest/studio/v2/flow.rb +278 -2
  461. data/lib/twilio-ruby/rest/studio/v2/flow_validate.rb +107 -0
  462. data/lib/twilio-ruby/rest/supersim/v1/esim_profile.rb +217 -2
  463. data/lib/twilio-ruby/rest/supersim/v1/fleet.rb +282 -2
  464. data/lib/twilio-ruby/rest/supersim/v1/ip_command.rb +225 -2
  465. data/lib/twilio-ruby/rest/supersim/v1/network.rb +173 -2
  466. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile/network_access_profile_network.rb +226 -2
  467. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile.rb +241 -2
  468. data/lib/twilio-ruby/rest/supersim/v1/settings_update.rb +94 -2
  469. data/lib/twilio-ruby/rest/supersim/v1/sim/billing_period.rb +90 -2
  470. data/lib/twilio-ruby/rest/supersim/v1/sim/sim_ip_address.rb +90 -2
  471. data/lib/twilio-ruby/rest/supersim/v1/sim.rb +262 -2
  472. data/lib/twilio-ruby/rest/supersim/v1/sms_command.rb +217 -2
  473. data/lib/twilio-ruby/rest/supersim/v1/usage_record.rb +106 -2
  474. data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +235 -2
  475. data/lib/twilio-ruby/rest/sync/v1/service/document.rb +275 -3
  476. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +295 -2
  477. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +235 -2
  478. data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +274 -4
  479. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +298 -2
  480. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +235 -2
  481. data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +274 -4
  482. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream/stream_message.rb +100 -0
  483. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream.rb +267 -3
  484. data/lib/twilio-ruby/rest/sync/v1/service.rb +299 -5
  485. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/activity.rb +270 -2
  486. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +190 -2
  487. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +374 -4
  488. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +329 -3
  489. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_channel.rb +272 -2
  490. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_bulk_real_time_statistics.rb +94 -0
  491. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics.rb +159 -0
  492. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics.rb +147 -0
  493. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_statistics.rb +159 -0
  494. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queues_statistics.rb +102 -2
  495. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +301 -2
  496. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +366 -4
  497. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_channel.rb +210 -2
  498. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_statistics.rb +156 -0
  499. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_cumulative_statistics.rb +155 -0
  500. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_real_time_statistics.rb +146 -0
  501. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_statistics.rb +164 -0
  502. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +299 -2
  503. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics.rb +159 -0
  504. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_real_time_statistics.rb +147 -0
  505. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_statistics.rb +159 -0
  506. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +292 -2
  507. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_cumulative_statistics.rb +158 -0
  508. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_real_time_statistics.rb +146 -0
  509. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_statistics.rb +158 -0
  510. data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +295 -2
  511. data/lib/twilio-ruby/rest/trunking/v1/trunk/credential_list.rb +226 -2
  512. data/lib/twilio-ruby/rest/trunking/v1/trunk/ip_access_control_list.rb +226 -2
  513. data/lib/twilio-ruby/rest/trunking/v1/trunk/origination_url.rb +287 -2
  514. data/lib/twilio-ruby/rest/trunking/v1/trunk/phone_number.rb +227 -3
  515. data/lib/twilio-ruby/rest/trunking/v1/trunk/recording.rb +179 -0
  516. data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +309 -2
  517. data/lib/twilio-ruby/rest/trusthub/v1/compliance_inquiries.rb +195 -4
  518. data/lib/twilio-ruby/rest/trusthub/v1/compliance_registration_inquiries.rb +299 -0
  519. data/lib/twilio-ruby/rest/trusthub/v1/compliance_tollfree_inquiries.rb +255 -1
  520. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_channel_endpoint_assignment.rb +233 -2
  521. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_entity_assignments.rb +228 -2
  522. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_evaluations.rb +204 -2
  523. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles.rb +284 -2
  524. data/lib/twilio-ruby/rest/trusthub/v1/end_user.rb +269 -2
  525. data/lib/twilio-ruby/rest/trusthub/v1/end_user_type.rb +167 -2
  526. data/lib/twilio-ruby/rest/trusthub/v1/policies.rb +167 -2
  527. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document.rb +269 -2
  528. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document_type.rb +167 -2
  529. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_channel_endpoint_assignment.rb +233 -2
  530. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_entity_assignments.rb +228 -2
  531. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_evaluations.rb +204 -2
  532. data/lib/twilio-ruby/rest/trusthub/v1/trust_products.rb +284 -2
  533. data/lib/twilio-ruby/rest/verify/v2/form.rb +140 -0
  534. data/lib/twilio-ruby/rest/verify/v2/safelist.rb +197 -0
  535. data/lib/twilio-ruby/rest/verify/v2/service/access_token.rb +186 -0
  536. data/lib/twilio-ruby/rest/verify/v2/service/approve_challenge.rb +402 -0
  537. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge/notification.rb +101 -0
  538. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb +268 -2
  539. data/lib/twilio-ruby/rest/verify/v2/service/entity/factor.rb +253 -2
  540. data/lib/twilio-ruby/rest/verify/v2/service/entity/new_factor.rb +146 -0
  541. data/lib/twilio-ruby/rest/verify/v2/service/entity.rb +226 -2
  542. data/lib/twilio-ruby/rest/verify/v2/service/messaging_configuration.rb +266 -2
  543. data/lib/twilio-ruby/rest/verify/v2/service/new_challenge.rb +478 -0
  544. data/lib/twilio-ruby/rest/verify/v2/service/new_factor.rb +387 -0
  545. data/lib/twilio-ruby/rest/verify/v2/service/new_verify_factor.rb +357 -0
  546. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb +272 -2
  547. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit.rb +266 -2
  548. data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +265 -0
  549. data/lib/twilio-ruby/rest/verify/v2/service/verification_check.rb +114 -0
  550. data/lib/twilio-ruby/rest/verify/v2/service/webhook.rb +287 -2
  551. data/lib/twilio-ruby/rest/verify/v2/service.rb +547 -3
  552. data/lib/twilio-ruby/rest/verify/v2/template.rb +92 -2
  553. data/lib/twilio-ruby/rest/verify/v2/verification_attempt.rb +186 -5
  554. data/lib/twilio-ruby/rest/verify/v2/verification_attempts_summary.rb +163 -3
  555. data/lib/twilio-ruby/rest/video/v1/composition.rb +256 -2
  556. data/lib/twilio-ruby/rest/video/v1/composition_hook.rb +322 -2
  557. data/lib/twilio-ruby/rest/video/v1/composition_settings.rb +189 -0
  558. data/lib/twilio-ruby/rest/video/v1/recording.rb +202 -2
  559. data/lib/twilio-ruby/rest/video/v1/recording_settings.rb +189 -0
  560. data/lib/twilio-ruby/rest/video/v1/room/participant/anonymize.rb +141 -0
  561. data/lib/twilio-ruby/rest/video/v1/room/participant/published_track.rb +169 -2
  562. data/lib/twilio-ruby/rest/video/v1/room/participant/subscribe_rules.rb +130 -0
  563. data/lib/twilio-ruby/rest/video/v1/room/participant/subscribed_track.rb +169 -2
  564. data/lib/twilio-ruby/rest/video/v1/room/participant.rb +213 -2
  565. data/lib/twilio-ruby/rest/video/v1/room/recording_rules.rb +128 -0
  566. data/lib/twilio-ruby/rest/video/v1/room/room_recording.rb +198 -2
  567. data/lib/twilio-ruby/rest/video/v1/room/transcriptions.rb +648 -0
  568. data/lib/twilio-ruby/rest/video/v1/room.rb +341 -16
  569. data/lib/twilio-ruby/rest/voice/v1/archived_call.rb +133 -0
  570. data/lib/twilio-ruby/rest/voice/v1/byoc_trunk.rb +314 -2
  571. data/lib/twilio-ruby/rest/voice/v1/connection_policy/connection_policy_target.rb +287 -2
  572. data/lib/twilio-ruby/rest/voice/v1/connection_policy.rb +260 -2
  573. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/bulk_country_update.rb +98 -0
  574. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country/highrisk_special_prefix.rb +90 -2
  575. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country.rb +179 -2
  576. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/settings.rb +174 -0
  577. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions.rb +63 -0
  578. data/lib/twilio-ruby/rest/voice/v1/ip_record.rb +266 -2
  579. data/lib/twilio-ruby/rest/voice/v1/source_ip_mapping.rb +263 -2
  580. data/lib/twilio-ruby/rest/wireless/v1/command.rb +250 -2
  581. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +300 -3
  582. data/lib/twilio-ruby/rest/wireless/v1/sim/data_session.rb +90 -2
  583. data/lib/twilio-ruby/rest/wireless/v1/sim/usage_record.rb +96 -2
  584. data/lib/twilio-ruby/rest/wireless/v1/sim.rb +286 -2
  585. data/lib/twilio-ruby/rest/wireless/v1/usage_record.rb +96 -2
  586. data/lib/twilio-ruby/twiml/voice_response.rb +305 -10
  587. data/lib/twilio-ruby/version.rb +1 -1
  588. data/twilio-ruby.gemspec +1 -1
  589. metadata +76 -32
  590. data/lib/twilio-ruby/rest/microvisor/v1/account_config.rb +0 -365
  591. data/lib/twilio-ruby/rest/microvisor/v1/account_secret.rb +0 -358
  592. data/lib/twilio-ruby/rest/microvisor/v1/app/app_manifest.rb +0 -209
  593. data/lib/twilio-ruby/rest/microvisor/v1/device/device_config.rb +0 -381
  594. data/lib/twilio-ruby/rest/microvisor/v1/device/device_secret.rb +0 -374
  595. data/lib/twilio-ruby/rest/microvisor/v1/device.rb +0 -430
  596. data/lib/twilio-ruby/rest/microvisor/v1.rb +0 -94
  597. data/lib/twilio-ruby/rest/microvisor.rb +0 -24
  598. data/lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb +0 -394
  599. data/lib/twilio-ruby/rest/preview/sync/service/document.rb +0 -455
  600. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_item.rb +0 -450
  601. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_permission.rb +0 -394
  602. data/lib/twilio-ruby/rest/preview/sync/service/sync_list.rb +0 -431
  603. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_item.rb +0 -453
  604. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_permission.rb +0 -394
  605. data/lib/twilio-ruby/rest/preview/sync/service/sync_map.rb +0 -431
  606. data/lib/twilio-ruby/rest/preview/sync/service.rb +0 -512
  607. data/lib/twilio-ruby/rest/proxy/v1/service/short_code.rb +0 -413
@@ -25,6 +25,7 @@ module Twilio
25
25
  # @return [ServiceList] ServiceList
26
26
  def initialize(version)
27
27
  super(version)
28
+
28
29
  # Path Solution
29
30
  @solution = { }
30
31
  @uri = "/Services"
@@ -44,6 +45,10 @@ module Twilio
44
45
 
45
46
  headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
46
47
 
48
+
49
+
50
+
51
+
47
52
  payload = @version.create('POST', @uri, data: data, headers: headers)
48
53
  ServiceInstance.new(
49
54
  @version,
@@ -51,6 +56,37 @@ module Twilio
51
56
  )
52
57
  end
53
58
 
59
+ ##
60
+ # Create the ServiceInstanceMetadata
61
+ # @param [String] friendly_name A descriptive string that you create to describe the new resource.
62
+ # @return [ServiceInstance] Created ServiceInstance
63
+ def create_with_metadata(
64
+ friendly_name: nil
65
+ )
66
+
67
+ data = Twilio::Values.of({
68
+ 'FriendlyName' => friendly_name,
69
+ })
70
+
71
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
72
+
73
+
74
+
75
+
76
+
77
+ response = @version.create_with_metadata('POST', @uri, data: data, headers: headers)
78
+ service_instance = ServiceInstance.new(
79
+ @version,
80
+ response.body,
81
+ )
82
+ ServiceInstanceMetadata.new(
83
+ @version,
84
+ service_instance,
85
+ response.headers,
86
+ response.status_code
87
+ )
88
+ end
89
+
54
90
 
55
91
  ##
56
92
  # Lists ServiceInstance records from the API as a list.
@@ -90,6 +126,28 @@ module Twilio
90
126
  @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
91
127
  end
92
128
 
129
+ ##
130
+ # Lists ServicePageMetadata records from the API as a list.
131
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
132
+ # guarantees to never return more than limit. Default is no limit
133
+ # @param [Integer] page_size Number of records to fetch per request, when
134
+ # not set will use the default value of 50 records. If no page_size is defined
135
+ # but a limit is defined, stream() will attempt to read the limit with the most
136
+ # efficient page size, i.e. min(limit, 1000)
137
+ # @return [Array] Array of up to limit results
138
+ def list_with_metadata(limit: nil, page_size: nil)
139
+ limits = @version.read_limits(limit, page_size)
140
+ params = Twilio::Values.of({
141
+
142
+ 'PageSize' => limits[:page_size],
143
+ });
144
+ headers = Twilio::Values.of({})
145
+
146
+ response = @version.page('GET', @uri, params: params, headers: headers)
147
+
148
+ ServicePageMetadata.new(@version, response, @solution, limits[:limit])
149
+ end
150
+
93
151
  ##
94
152
  # When passed a block, yields ServiceInstance records from the API.
95
153
  # This operation lazily loads records as efficiently as possible until the limit
@@ -111,14 +169,17 @@ module Twilio
111
169
  # @param [Integer] page_number Page Number, this value is simply for client state
112
170
  # @param [Integer] page_size Number of records to return, defaults to 50
113
171
  # @return [Page] Page of ServiceInstance
114
- def page(page_token: :unset, page_number: :unset, page_size: :unset)
172
+ def page(page_token: :unset, page_number: :unset,page_size: :unset)
115
173
  params = Twilio::Values.of({
116
174
  'PageToken' => page_token,
117
175
  'Page' => page_number,
118
176
  'PageSize' => page_size,
119
177
  })
178
+ headers = Twilio::Values.of({})
179
+
180
+
120
181
 
121
- response = @version.page('GET', @uri, params: params)
182
+ response = @version.page('GET', @uri, params: params, headers: headers)
122
183
 
123
184
  ServicePage.new(@version, response, @solution)
124
185
  end
@@ -153,6 +214,7 @@ module Twilio
153
214
  # @return [ServiceContext] ServiceContext
154
215
  def initialize(version, sid)
155
216
  super(version)
217
+
156
218
 
157
219
  # Path Solution
158
220
  @solution = { sid: sid, }
@@ -171,9 +233,31 @@ module Twilio
171
233
 
172
234
  headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
173
235
 
236
+
237
+
238
+
174
239
  @version.delete('DELETE', @uri, headers: headers)
175
240
  end
176
241
 
242
+ ##
243
+ # Delete the ServiceInstanceMetadata
244
+ # @return [Boolean] True if delete succeeds, false otherwise
245
+ def delete_with_metadata
246
+
247
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
248
+
249
+
250
+
251
+ response = @version.delete_with_metadata('DELETE', @uri, headers: headers)
252
+ service_instance = ServiceInstance.new(
253
+ @version,
254
+ response.body,
255
+ account_sid: @solution[:account_sid],
256
+ sid: @solution[:sid],
257
+ )
258
+ ServiceInstanceMetadata.new(@version, service_instance, response.headers, response.status_code)
259
+ end
260
+
177
261
  ##
178
262
  # Fetch the ServiceInstance
179
263
  # @return [ServiceInstance] Fetched ServiceInstance
@@ -181,6 +265,10 @@ module Twilio
181
265
 
182
266
  headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
183
267
 
268
+
269
+
270
+
271
+
184
272
  payload = @version.fetch('GET', @uri, headers: headers)
185
273
  ServiceInstance.new(
186
274
  @version,
@@ -189,6 +277,31 @@ module Twilio
189
277
  )
190
278
  end
191
279
 
280
+ ##
281
+ # Fetch the ServiceInstanceMetadata
282
+ # @return [ServiceInstance] Fetched ServiceInstance
283
+ def fetch_with_metadata
284
+
285
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
286
+
287
+
288
+
289
+
290
+
291
+ response = @version.fetch_with_metadata('GET', @uri, headers: headers)
292
+ service_instance = ServiceInstance.new(
293
+ @version,
294
+ response.body,
295
+ sid: @solution[:sid],
296
+ )
297
+ ServiceInstanceMetadata.new(
298
+ @version,
299
+ service_instance,
300
+ response.headers,
301
+ response.status_code
302
+ )
303
+ end
304
+
192
305
  ##
193
306
  # Update the ServiceInstance
194
307
  # @param [String] friendly_name A descriptive string that you create to describe the resource.
@@ -293,6 +406,10 @@ module Twilio
293
406
 
294
407
  headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
295
408
 
409
+
410
+
411
+
412
+
296
413
  payload = @version.update('POST', @uri, data: data, headers: headers)
297
414
  ServiceInstance.new(
298
415
  @version,
@@ -301,6 +418,128 @@ module Twilio
301
418
  )
302
419
  end
303
420
 
421
+ ##
422
+ # Update the ServiceInstanceMetadata
423
+ # @param [String] friendly_name A descriptive string that you create to describe the resource.
424
+ # @param [String] default_service_role_sid The service role assigned to users when they are added to the service. See the [Role resource](https://www.twilio.com/docs/chat/rest/role-resource) for more info about roles.
425
+ # @param [String] default_channel_role_sid The channel role assigned to users when they are added to a channel. See the [Role resource](https://www.twilio.com/docs/chat/rest/role-resource) for more info about roles.
426
+ # @param [String] default_channel_creator_role_sid The channel role assigned to a channel creator when they join a new channel. See the [Role resource](https://www.twilio.com/docs/chat/rest/role-resource) for more info about roles.
427
+ # @param [Boolean] read_status_enabled Whether to enable the [Message Consumption Horizon](https://www.twilio.com/docs/chat/consumption-horizon) feature. The default is `true`.
428
+ # @param [Boolean] reachability_enabled Whether to enable the [Reachability Indicator](https://www.twilio.com/docs/chat/reachability-indicator) for this Service instance. The default is `false`.
429
+ # @param [String] typing_indicator_timeout How long in seconds after a `started typing` event until clients should assume that user is no longer typing, even if no `ended typing` message was received. The default is 5 seconds.
430
+ # @param [String] consumption_report_interval DEPRECATED. The interval in seconds between consumption reports submission batches from client endpoints.
431
+ # @param [Boolean] notifications_new_message_enabled Whether to send a notification when a new message is added to a channel. The default is `false`.
432
+ # @param [String] notifications_new_message_template The template to use to create the notification text displayed when a new message is added to a channel and `notifications.new_message.enabled` is `true`.
433
+ # @param [String] notifications_new_message_sound The name of the sound to play when a new message is added to a channel and `notifications.new_message.enabled` is `true`.
434
+ # @param [Boolean] notifications_new_message_badge_count_enabled Whether the new message badge is enabled. The default is `false`.
435
+ # @param [Boolean] notifications_added_to_channel_enabled Whether to send a notification when a member is added to a channel. The default is `false`.
436
+ # @param [String] notifications_added_to_channel_template The template to use to create the notification text displayed when a member is added to a channel and `notifications.added_to_channel.enabled` is `true`.
437
+ # @param [String] notifications_added_to_channel_sound The name of the sound to play when a member is added to a channel and `notifications.added_to_channel.enabled` is `true`.
438
+ # @param [Boolean] notifications_removed_from_channel_enabled Whether to send a notification to a user when they are removed from a channel. The default is `false`.
439
+ # @param [String] notifications_removed_from_channel_template The template to use to create the notification text displayed to a user when they are removed from a channel and `notifications.removed_from_channel.enabled` is `true`.
440
+ # @param [String] notifications_removed_from_channel_sound The name of the sound to play to a user when they are removed from a channel and `notifications.removed_from_channel.enabled` is `true`.
441
+ # @param [Boolean] notifications_invited_to_channel_enabled Whether to send a notification when a user is invited to a channel. The default is `false`.
442
+ # @param [String] notifications_invited_to_channel_template The template to use to create the notification text displayed when a user is invited to a channel and `notifications.invited_to_channel.enabled` is `true`.
443
+ # @param [String] notifications_invited_to_channel_sound The name of the sound to play when a user is invited to a channel and `notifications.invited_to_channel.enabled` is `true`.
444
+ # @param [String] pre_webhook_url The URL for pre-event webhooks, which are called by using the `webhook_method`. See [Webhook Events](https://www.twilio.com/docs/chat/webhook-events) for more details.
445
+ # @param [String] post_webhook_url The URL for post-event webhooks, which are called by using the `webhook_method`. See [Webhook Events](https://www.twilio.com/docs/chat/webhook-events) for more details.
446
+ # @param [String] webhook_method The HTTP method to use for calls to the `pre_webhook_url` and `post_webhook_url` webhooks. Can be: `POST` or `GET` and the default is `POST`. See [Webhook Events](https://www.twilio.com/docs/chat/webhook-events) for more details.
447
+ # @param [Array[String]] webhook_filters The list of webhook events that are enabled for this Service instance. See [Webhook Events](https://www.twilio.com/docs/chat/webhook-events) for more details.
448
+ # @param [String] limits_channel_members The maximum number of Members that can be added to Channels within this Service. Can be up to 1,000.
449
+ # @param [String] limits_user_channels The maximum number of Channels Users can be a Member of within this Service. Can be up to 1,000.
450
+ # @param [String] media_compatibility_message The message to send when a media message has no text. Can be used as placeholder message.
451
+ # @param [String] pre_webhook_retry_count The number of times to retry a call to the `pre_webhook_url` if the request times out (after 5 seconds) or it receives a 429, 503, or 504 HTTP response. Default retry count is 0 times, which means the call won't be retried.
452
+ # @param [String] post_webhook_retry_count The number of times to retry a call to the `post_webhook_url` if the request times out (after 5 seconds) or it receives a 429, 503, or 504 HTTP response. The default is 0, which means the call won't be retried.
453
+ # @param [Boolean] notifications_log_enabled Whether to log notifications. The default is `false`.
454
+ # @return [ServiceInstance] Updated ServiceInstance
455
+ def update_with_metadata(
456
+ friendly_name: :unset,
457
+ default_service_role_sid: :unset,
458
+ default_channel_role_sid: :unset,
459
+ default_channel_creator_role_sid: :unset,
460
+ read_status_enabled: :unset,
461
+ reachability_enabled: :unset,
462
+ typing_indicator_timeout: :unset,
463
+ consumption_report_interval: :unset,
464
+ notifications_new_message_enabled: :unset,
465
+ notifications_new_message_template: :unset,
466
+ notifications_new_message_sound: :unset,
467
+ notifications_new_message_badge_count_enabled: :unset,
468
+ notifications_added_to_channel_enabled: :unset,
469
+ notifications_added_to_channel_template: :unset,
470
+ notifications_added_to_channel_sound: :unset,
471
+ notifications_removed_from_channel_enabled: :unset,
472
+ notifications_removed_from_channel_template: :unset,
473
+ notifications_removed_from_channel_sound: :unset,
474
+ notifications_invited_to_channel_enabled: :unset,
475
+ notifications_invited_to_channel_template: :unset,
476
+ notifications_invited_to_channel_sound: :unset,
477
+ pre_webhook_url: :unset,
478
+ post_webhook_url: :unset,
479
+ webhook_method: :unset,
480
+ webhook_filters: :unset,
481
+ limits_channel_members: :unset,
482
+ limits_user_channels: :unset,
483
+ media_compatibility_message: :unset,
484
+ pre_webhook_retry_count: :unset,
485
+ post_webhook_retry_count: :unset,
486
+ notifications_log_enabled: :unset
487
+ )
488
+
489
+ data = Twilio::Values.of({
490
+ 'FriendlyName' => friendly_name,
491
+ 'DefaultServiceRoleSid' => default_service_role_sid,
492
+ 'DefaultChannelRoleSid' => default_channel_role_sid,
493
+ 'DefaultChannelCreatorRoleSid' => default_channel_creator_role_sid,
494
+ 'ReadStatusEnabled' => read_status_enabled,
495
+ 'ReachabilityEnabled' => reachability_enabled,
496
+ 'TypingIndicatorTimeout' => typing_indicator_timeout,
497
+ 'ConsumptionReportInterval' => consumption_report_interval,
498
+ 'Notifications.NewMessage.Enabled' => notifications_new_message_enabled,
499
+ 'Notifications.NewMessage.Template' => notifications_new_message_template,
500
+ 'Notifications.NewMessage.Sound' => notifications_new_message_sound,
501
+ 'Notifications.NewMessage.BadgeCountEnabled' => notifications_new_message_badge_count_enabled,
502
+ 'Notifications.AddedToChannel.Enabled' => notifications_added_to_channel_enabled,
503
+ 'Notifications.AddedToChannel.Template' => notifications_added_to_channel_template,
504
+ 'Notifications.AddedToChannel.Sound' => notifications_added_to_channel_sound,
505
+ 'Notifications.RemovedFromChannel.Enabled' => notifications_removed_from_channel_enabled,
506
+ 'Notifications.RemovedFromChannel.Template' => notifications_removed_from_channel_template,
507
+ 'Notifications.RemovedFromChannel.Sound' => notifications_removed_from_channel_sound,
508
+ 'Notifications.InvitedToChannel.Enabled' => notifications_invited_to_channel_enabled,
509
+ 'Notifications.InvitedToChannel.Template' => notifications_invited_to_channel_template,
510
+ 'Notifications.InvitedToChannel.Sound' => notifications_invited_to_channel_sound,
511
+ 'PreWebhookUrl' => pre_webhook_url,
512
+ 'PostWebhookUrl' => post_webhook_url,
513
+ 'WebhookMethod' => webhook_method,
514
+ 'WebhookFilters' => Twilio.serialize_list(webhook_filters) { |e| e },
515
+ 'Limits.ChannelMembers' => limits_channel_members,
516
+ 'Limits.UserChannels' => limits_user_channels,
517
+ 'Media.CompatibilityMessage' => media_compatibility_message,
518
+ 'PreWebhookRetryCount' => pre_webhook_retry_count,
519
+ 'PostWebhookRetryCount' => post_webhook_retry_count,
520
+ 'Notifications.LogEnabled' => notifications_log_enabled,
521
+ })
522
+
523
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
524
+
525
+
526
+
527
+
528
+
529
+ response = @version.update_with_metadata('POST', @uri, data: data, headers: headers)
530
+ service_instance = ServiceInstance.new(
531
+ @version,
532
+ response.body,
533
+ sid: @solution[:sid],
534
+ )
535
+ ServiceInstanceMetadata.new(
536
+ @version,
537
+ service_instance,
538
+ response.headers,
539
+ response.status_code
540
+ )
541
+ end
542
+
304
543
  ##
305
544
  # Access the bindings
306
545
  # @return [BindingList]
@@ -393,6 +632,53 @@ module Twilio
393
632
  end
394
633
  end
395
634
 
635
+ class ServiceInstanceMetadata < InstanceResourceMetadata
636
+ ##
637
+ # Initializes a new ServiceInstanceMetadata.
638
+ # @param [Version] version Version that contains the resource
639
+ # @param [}ServiceInstance] service_instance The instance associated with the metadata.
640
+ # @param [Hash] headers Header object with response headers.
641
+ # @param [Integer] status_code The HTTP status code of the response.
642
+ # @return [ServiceInstanceMetadata] The initialized instance with metadata.
643
+ def initialize(version, service_instance, headers, status_code)
644
+ super(version, headers, status_code)
645
+ @service_instance = service_instance
646
+ end
647
+
648
+ def service
649
+ @service_instance
650
+ end
651
+
652
+ def headers
653
+ @headers
654
+ end
655
+
656
+ def status_code
657
+ @status_code
658
+ end
659
+
660
+ def to_s
661
+ "<Twilio.Api.V2010.ServiceInstanceMetadata status=#{@status_code}>"
662
+ end
663
+ end
664
+
665
+ class ServiceListResponse < InstanceListResource
666
+ # @param [Array<ServiceInstance>] instance
667
+ # @param [Hash{String => Object}] headers
668
+ # @param [Integer] status_code
669
+ def initialize(version, payload, key)
670
+ @service_instance = payload.body[key].map do |data|
671
+ ServiceInstance.new(version, data)
672
+ end
673
+ @headers = payload.headers
674
+ @status_code = payload.status_code
675
+ end
676
+
677
+ def service_instance
678
+ @instance
679
+ end
680
+ end
681
+
396
682
  class ServicePage < Page
397
683
  ##
398
684
  # Initialize the ServicePage
@@ -402,6 +688,7 @@ module Twilio
402
688
  # @return [ServicePage] ServicePage
403
689
  def initialize(version, response, solution)
404
690
  super(version, response)
691
+
405
692
 
406
693
  # Path Solution
407
694
  @solution = solution
@@ -421,6 +708,66 @@ module Twilio
421
708
  '<Twilio.Chat.V2.ServicePage>'
422
709
  end
423
710
  end
711
+
712
+ class ServicePageMetadata < PageMetadata
713
+ attr_reader :service_page
714
+
715
+ def initialize(version, response, solution, limit)
716
+ super(version, response)
717
+ @service_page = []
718
+ @limit = limit
719
+ key = get_key(response.body)
720
+ records = 0
721
+ while( limit != :unset && records < limit )
722
+ @service_page << ServiceListResponse.new(version, @payload, key, limit - records)
723
+ @payload = self.next_page
724
+ break unless @payload
725
+ records += @payload.body[key].size
726
+ end
727
+ # Path Solution
728
+ @solution = solution
729
+ end
730
+
731
+ def each
732
+ @service_page.each do |record|
733
+ yield record
734
+ end
735
+ end
736
+
737
+ def to_s
738
+ '<Twilio::REST::Chat::V2PageMetadata>';
739
+ end
740
+ end
741
+ class ServiceListResponse < InstanceListResource
742
+
743
+ # @param [Array<ServiceInstance>] instance
744
+ # @param [Hash{String => Object}] headers
745
+ # @param [Integer] status_code
746
+ def initialize(version, payload, key, limit = :unset)
747
+ data_list = payload.body[key]
748
+ if limit != :unset
749
+ data_list = data_list[0, limit]
750
+ end
751
+ @service = data_list.map do |data|
752
+ ServiceInstance.new(version, data)
753
+ end
754
+ @headers = payload.headers
755
+ @status_code = payload.status_code
756
+ end
757
+
758
+ def service
759
+ @service
760
+ end
761
+
762
+ def headers
763
+ @headers
764
+ end
765
+
766
+ def status_code
767
+ @status_code
768
+ end
769
+ end
770
+
424
771
  class ServiceInstance < InstanceResource
425
772
  ##
426
773
  # Initialize the ServiceInstance
@@ -434,6 +781,7 @@ module Twilio
434
781
  def initialize(version, payload , sid: nil)
435
782
  super(version)
436
783
 
784
+
437
785
  # Marshaled Properties
438
786
  @properties = {
439
787
  'sid' => payload['sid'],
@@ -25,6 +25,7 @@ module Twilio
25
25
  # @return [ChannelList] ChannelList
26
26
  def initialize(version)
27
27
  super(version)
28
+
28
29
  # Path Solution
29
30
  @solution = { }
30
31
 
@@ -49,6 +50,7 @@ module Twilio
49
50
  # @return [ChannelContext] ChannelContext
50
51
  def initialize(version, service_sid, sid)
51
52
  super(version)
53
+
52
54
 
53
55
  # Path Solution
54
56
  @solution = { service_sid: service_sid, sid: sid, }
@@ -75,6 +77,10 @@ module Twilio
75
77
 
76
78
  headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', 'X-Twilio-Webhook-Enabled' => x_twilio_webhook_enabled, })
77
79
 
80
+
81
+
82
+
83
+
78
84
  payload = @version.update('POST', @uri, data: data, headers: headers)
79
85
  ChannelInstance.new(
80
86
  @version,
@@ -84,6 +90,44 @@ module Twilio
84
90
  )
85
91
  end
86
92
 
93
+ ##
94
+ # Update the ChannelInstanceMetadata
95
+ # @param [ChannelType] type
96
+ # @param [String] messaging_service_sid The unique ID of the [Messaging Service](https://www.twilio.com/docs/messaging/api/service-resource) this channel belongs to.
97
+ # @param [ChannelEnumWebhookEnabledType] x_twilio_webhook_enabled The X-Twilio-Webhook-Enabled HTTP request header
98
+ # @return [ChannelInstance] Updated ChannelInstance
99
+ def update_with_metadata(
100
+ type: :unset,
101
+ messaging_service_sid: :unset,
102
+ x_twilio_webhook_enabled: :unset
103
+ )
104
+
105
+ data = Twilio::Values.of({
106
+ 'Type' => type,
107
+ 'MessagingServiceSid' => messaging_service_sid,
108
+ })
109
+
110
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', 'X-Twilio-Webhook-Enabled' => x_twilio_webhook_enabled, })
111
+
112
+
113
+
114
+
115
+
116
+ response = @version.update_with_metadata('POST', @uri, data: data, headers: headers)
117
+ channel_instance = ChannelInstance.new(
118
+ @version,
119
+ response.body,
120
+ service_sid: @solution[:service_sid],
121
+ sid: @solution[:sid],
122
+ )
123
+ ChannelInstanceMetadata.new(
124
+ @version,
125
+ channel_instance,
126
+ response.headers,
127
+ response.status_code
128
+ )
129
+ end
130
+
87
131
 
88
132
  ##
89
133
  # Provide a user friendly representation
@@ -100,6 +144,53 @@ module Twilio
100
144
  end
101
145
  end
102
146
 
147
+ class ChannelInstanceMetadata < InstanceResourceMetadata
148
+ ##
149
+ # Initializes a new ChannelInstanceMetadata.
150
+ # @param [Version] version Version that contains the resource
151
+ # @param [}ChannelInstance] channel_instance The instance associated with the metadata.
152
+ # @param [Hash] headers Header object with response headers.
153
+ # @param [Integer] status_code The HTTP status code of the response.
154
+ # @return [ChannelInstanceMetadata] The initialized instance with metadata.
155
+ def initialize(version, channel_instance, headers, status_code)
156
+ super(version, headers, status_code)
157
+ @channel_instance = channel_instance
158
+ end
159
+
160
+ def channel
161
+ @channel_instance
162
+ end
163
+
164
+ def headers
165
+ @headers
166
+ end
167
+
168
+ def status_code
169
+ @status_code
170
+ end
171
+
172
+ def to_s
173
+ "<Twilio.Api.V2010.ChannelInstanceMetadata status=#{@status_code}>"
174
+ end
175
+ end
176
+
177
+ class ChannelListResponse < InstanceListResource
178
+ # @param [Array<ChannelInstance>] instance
179
+ # @param [Hash{String => Object}] headers
180
+ # @param [Integer] status_code
181
+ def initialize(version, payload, key)
182
+ @channel_instance = payload.body[key].map do |data|
183
+ ChannelInstance.new(version, data)
184
+ end
185
+ @headers = payload.headers
186
+ @status_code = payload.status_code
187
+ end
188
+
189
+ def channel_instance
190
+ @instance
191
+ end
192
+ end
193
+
103
194
  class ChannelPage < Page
104
195
  ##
105
196
  # Initialize the ChannelPage
@@ -109,6 +200,7 @@ module Twilio
109
200
  # @return [ChannelPage] ChannelPage
110
201
  def initialize(version, response, solution)
111
202
  super(version, response)
203
+
112
204
 
113
205
  # Path Solution
114
206
  @solution = solution
@@ -128,6 +220,66 @@ module Twilio
128
220
  '<Twilio.Chat.V3.ChannelPage>'
129
221
  end
130
222
  end
223
+
224
+ class ChannelPageMetadata < PageMetadata
225
+ attr_reader :channel_page
226
+
227
+ def initialize(version, response, solution, limit)
228
+ super(version, response)
229
+ @channel_page = []
230
+ @limit = limit
231
+ key = get_key(response.body)
232
+ records = 0
233
+ while( limit != :unset && records < limit )
234
+ @channel_page << ChannelListResponse.new(version, @payload, key, limit - records)
235
+ @payload = self.next_page
236
+ break unless @payload
237
+ records += @payload.body[key].size
238
+ end
239
+ # Path Solution
240
+ @solution = solution
241
+ end
242
+
243
+ def each
244
+ @channel_page.each do |record|
245
+ yield record
246
+ end
247
+ end
248
+
249
+ def to_s
250
+ '<Twilio::REST::Chat::V3PageMetadata>';
251
+ end
252
+ end
253
+ class ChannelListResponse < InstanceListResource
254
+
255
+ # @param [Array<ChannelInstance>] instance
256
+ # @param [Hash{String => Object}] headers
257
+ # @param [Integer] status_code
258
+ def initialize(version, payload, key, limit = :unset)
259
+ data_list = payload.body[key]
260
+ if limit != :unset
261
+ data_list = data_list[0, limit]
262
+ end
263
+ @channel = data_list.map do |data|
264
+ ChannelInstance.new(version, data)
265
+ end
266
+ @headers = payload.headers
267
+ @status_code = payload.status_code
268
+ end
269
+
270
+ def channel
271
+ @channel
272
+ end
273
+
274
+ def headers
275
+ @headers
276
+ end
277
+
278
+ def status_code
279
+ @status_code
280
+ end
281
+ end
282
+
131
283
  class ChannelInstance < InstanceResource
132
284
  ##
133
285
  # Initialize the ChannelInstance
@@ -141,6 +293,7 @@ module Twilio
141
293
  def initialize(version, payload , service_sid: nil, sid: nil)
142
294
  super(version)
143
295
 
296
+
144
297
  # Marshaled Properties
145
298
  @properties = {
146
299
  'sid' => payload['sid'],