twilio-ruby 7.4.4 → 7.10.4

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 (590) hide show
  1. checksums.yaml +5 -5
  2. data/.dockerignore +1 -1
  3. data/.github/workflows/test-and-deploy.yml +4 -3
  4. data/.gitignore +1 -0
  5. data/CHANGES.md +529 -0
  6. data/Dockerfile +3 -2
  7. data/README.md +2 -2
  8. data/cluster/cluster_oauth_spec.rb +4 -4
  9. data/lib/twilio-ruby/framework/rest/api_v1_version.rb +22 -0
  10. data/lib/twilio-ruby/framework/rest/error.rb +27 -0
  11. data/lib/twilio-ruby/framework/rest/page_metadata.rb +83 -0
  12. data/lib/twilio-ruby/framework/rest/resource.rb +16 -0
  13. data/lib/twilio-ruby/framework/rest/token_page.rb +73 -0
  14. data/lib/twilio-ruby/framework/rest/version.rb +91 -4
  15. data/lib/twilio-ruby/http/client_token_manager.rb +5 -2
  16. data/lib/twilio-ruby/http/org_token_manager.rb +5 -2
  17. data/lib/twilio-ruby/rest/accounts/v1/auth_token_promotion.rb +135 -0
  18. data/lib/twilio-ruby/rest/accounts/v1/bulk_consents.rb +95 -1
  19. data/lib/twilio-ruby/rest/accounts/v1/bulk_contacts.rb +94 -0
  20. data/lib/twilio-ruby/rest/accounts/v1/credential/aws.rb +248 -1
  21. data/lib/twilio-ruby/rest/accounts/v1/credential/public_key.rb +248 -1
  22. data/lib/twilio-ruby/rest/accounts/v1/credential.rb +63 -0
  23. data/lib/twilio-ruby/rest/accounts/v1/messaging_geopermissions.rb +285 -0
  24. data/lib/twilio-ruby/rest/accounts/v1/safelist.rb +154 -4
  25. data/lib/twilio-ruby/rest/accounts/v1/secondary_auth_token.rb +155 -0
  26. data/lib/twilio-ruby/rest/accounts/v1.rb +6 -0
  27. data/lib/twilio-ruby/rest/api/v2010/account/address/dependent_phone_number.rb +86 -1
  28. data/lib/twilio-ruby/rest/api/v2010/account/address.rb +313 -4
  29. data/lib/twilio-ruby/rest/api/v2010/account/application.rb +337 -1
  30. data/lib/twilio-ruby/rest/api/v2010/account/authorized_connect_app.rb +160 -1
  31. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/local.rb +125 -4
  32. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/machine_to_machine.rb +125 -4
  33. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/mobile.rb +125 -4
  34. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/national.rb +125 -4
  35. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/shared_cost.rb +125 -4
  36. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/toll_free.rb +125 -4
  37. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/voip.rb +125 -4
  38. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country.rb +160 -1
  39. data/lib/twilio-ruby/rest/api/v2010/account/balance.rb +88 -0
  40. data/lib/twilio-ruby/rest/api/v2010/account/call/event.rb +86 -1
  41. data/lib/twilio-ruby/rest/api/v2010/account/call/notification.rb +169 -1
  42. data/lib/twilio-ruby/rest/api/v2010/account/call/payment.rb +245 -1
  43. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +272 -1
  44. data/lib/twilio-ruby/rest/api/v2010/account/call/siprec.rb +784 -0
  45. data/lib/twilio-ruby/rest/api/v2010/account/call/stream.rb +784 -0
  46. data/lib/twilio-ruby/rest/api/v2010/account/call/transcription.rb +237 -2
  47. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message.rb +99 -0
  48. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message_subscription.rb +170 -0
  49. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +416 -20
  50. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +446 -7
  51. data/lib/twilio-ruby/rest/api/v2010/account/conference/recording.rb +224 -1
  52. data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +216 -2
  53. data/lib/twilio-ruby/rest/api/v2010/account/connect_app.rb +234 -1
  54. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension.rb +162 -1
  55. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on.rb +214 -1
  56. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +192 -1
  57. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +192 -1
  58. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +192 -1
  59. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +395 -1
  60. data/lib/twilio-ruby/rest/api/v2010/account/key.rb +213 -1
  61. data/lib/twilio-ruby/rest/api/v2010/account/message/feedback.rb +96 -0
  62. data/lib/twilio-ruby/rest/api/v2010/account/message/media.rb +187 -1
  63. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +336 -7
  64. data/lib/twilio-ruby/rest/api/v2010/account/new_key.rb +95 -0
  65. data/lib/twilio-ruby/rest/api/v2010/account/new_signing_key.rb +95 -0
  66. data/lib/twilio-ruby/rest/api/v2010/account/notification.rb +168 -1
  67. data/lib/twilio-ruby/rest/api/v2010/account/outgoing_caller_id.rb +217 -1
  68. data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +198 -1
  69. data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +251 -1
  70. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload/data.rb +139 -0
  71. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload.rb +182 -1
  72. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result.rb +181 -1
  73. data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +181 -1
  74. data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +199 -2
  75. data/lib/twilio-ruby/rest/api/v2010/account/short_code.rb +212 -1
  76. data/lib/twilio-ruby/rest/api/v2010/account/signing_key.rb +213 -1
  77. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list/credential.rb +251 -1
  78. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list.rb +245 -1
  79. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls/auth_calls_credential_list_mapping.rb +214 -1
  80. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls/auth_calls_ip_access_control_list_mapping.rb +214 -1
  81. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls.rb +63 -0
  82. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_registrations/auth_registrations_credential_list_mapping.rb +214 -1
  83. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_registrations.rb +63 -0
  84. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types.rb +63 -0
  85. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb +214 -1
  86. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/ip_access_control_list_mapping.rb +214 -1
  87. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +317 -1
  88. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +260 -1
  89. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb +245 -1
  90. data/lib/twilio-ruby/rest/api/v2010/account/sip.rb +63 -0
  91. data/lib/twilio-ruby/rest/api/v2010/account/token.rb +95 -0
  92. data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +180 -1
  93. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +98 -5
  94. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +98 -5
  95. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +98 -5
  96. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +98 -5
  97. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +98 -5
  98. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +98 -5
  99. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +98 -5
  100. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +98 -5
  101. data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +98 -5
  102. data/lib/twilio-ruby/rest/api/v2010/account/usage/trigger.rb +280 -6
  103. data/lib/twilio-ruby/rest/api/v2010/account/usage.rb +63 -0
  104. data/lib/twilio-ruby/rest/api/v2010/account/validation_request.rb +110 -0
  105. data/lib/twilio-ruby/rest/api/v2010/account.rb +229 -1
  106. data/lib/twilio-ruby/rest/assistants/v1/assistant/assistants_knowledge.rb +180 -1
  107. data/lib/twilio-ruby/rest/assistants/v1/assistant/assistants_tool.rb +180 -1
  108. data/lib/twilio-ruby/rest/assistants/v1/assistant/feedback.rb +113 -1
  109. data/lib/twilio-ruby/rest/assistants/v1/assistant/message.rb +90 -0
  110. data/lib/twilio-ruby/rest/assistants/v1/assistant.rb +232 -1
  111. data/lib/twilio-ruby/rest/assistants/v1/knowledge/chunk.rb +86 -1
  112. data/lib/twilio-ruby/rest/assistants/v1/knowledge/knowledge_status.rb +136 -0
  113. data/lib/twilio-ruby/rest/assistants/v1/knowledge.rb +234 -1
  114. data/lib/twilio-ruby/rest/assistants/v1/policy.rb +90 -1
  115. data/lib/twilio-ruby/rest/assistants/v1/session/message.rb +86 -1
  116. data/lib/twilio-ruby/rest/assistants/v1/session.rb +159 -1
  117. data/lib/twilio-ruby/rest/assistants/v1/tool.rb +234 -1
  118. data/lib/twilio-ruby/rest/bulkexports/v1/export/day.rb +160 -1
  119. data/lib/twilio-ruby/rest/bulkexports/v1/export/export_custom_job.rb +134 -2
  120. data/lib/twilio-ruby/rest/bulkexports/v1/export/job.rb +157 -1
  121. data/lib/twilio-ruby/rest/bulkexports/v1/export.rb +136 -0
  122. data/lib/twilio-ruby/rest/bulkexports/v1/export_configuration.rb +174 -0
  123. data/lib/twilio-ruby/rest/chat/v1/credential.rb +275 -1
  124. data/lib/twilio-ruby/rest/chat/v1/service/channel/invite.rb +220 -1
  125. data/lib/twilio-ruby/rest/chat/v1/service/channel/member.rb +257 -1
  126. data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +259 -1
  127. data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +263 -1
  128. data/lib/twilio-ruby/rest/chat/v1/service/role.rb +251 -1
  129. data/lib/twilio-ruby/rest/chat/v1/service/user/user_channel.rb +86 -1
  130. data/lib/twilio-ruby/rest/chat/v1/service/user.rb +260 -1
  131. data/lib/twilio-ruby/rest/chat/v1/service.rb +401 -1
  132. data/lib/twilio-ruby/rest/chat/v2/credential.rb +275 -1
  133. data/lib/twilio-ruby/rest/chat/v2/service/binding.rb +186 -1
  134. data/lib/twilio-ruby/rest/chat/v2/service/channel/invite.rb +220 -1
  135. data/lib/twilio-ruby/rest/chat/v2/service/channel/member.rb +291 -1
  136. data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +290 -1
  137. data/lib/twilio-ruby/rest/chat/v2/service/channel/webhook.rb +281 -1
  138. data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +288 -1
  139. data/lib/twilio-ruby/rest/chat/v2/service/role.rb +251 -1
  140. data/lib/twilio-ruby/rest/chat/v2/service/user/user_binding.rb +184 -1
  141. data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +224 -1
  142. data/lib/twilio-ruby/rest/chat/v2/service/user.rb +264 -1
  143. data/lib/twilio-ruby/rest/chat/v2/service.rb +332 -1
  144. data/lib/twilio-ruby/rest/chat/v3/channel.rb +149 -0
  145. data/lib/twilio-ruby/rest/client.rb +5 -5
  146. data/lib/twilio-ruby/rest/content/v1/content/approval_create.rb +90 -0
  147. data/lib/twilio-ruby/rest/content/v1/content/approval_fetch.rb +136 -0
  148. data/lib/twilio-ruby/rest/content/v1/content.rb +962 -6
  149. data/lib/twilio-ruby/rest/content/v1/content_and_approvals.rb +86 -1
  150. data/lib/twilio-ruby/rest/content/v1/legacy_content.rb +86 -1
  151. data/lib/twilio-ruby/rest/content/v2/content.rb +107 -1
  152. data/lib/twilio-ruby/rest/content/v2/content_and_approvals.rb +107 -1
  153. data/lib/twilio-ruby/rest/conversations/v1/address_configuration.rb +301 -1
  154. data/lib/twilio-ruby/rest/conversations/v1/configuration/webhook.rb +178 -0
  155. data/lib/twilio-ruby/rest/conversations/v1/configuration.rb +175 -0
  156. data/lib/twilio-ruby/rest/conversations/v1/conversation/message/delivery_receipt.rb +161 -1
  157. data/lib/twilio-ruby/rest/conversations/v1/conversation/message.rb +293 -1
  158. data/lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb +297 -1
  159. data/lib/twilio-ruby/rest/conversations/v1/conversation/webhook.rb +275 -1
  160. data/lib/twilio-ruby/rest/conversations/v1/conversation.rb +315 -1
  161. data/lib/twilio-ruby/rest/conversations/v1/conversation_with_participants.rb +129 -0
  162. data/lib/twilio-ruby/rest/conversations/v1/credential.rb +278 -1
  163. data/lib/twilio-ruby/rest/conversations/v1/participant_conversation.rb +90 -1
  164. data/lib/twilio-ruby/rest/conversations/v1/role.rb +248 -1
  165. data/lib/twilio-ruby/rest/conversations/v1/service/binding.rb +189 -4
  166. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb +204 -0
  167. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb +177 -0
  168. data/lib/twilio-ruby/rest/conversations/v1/service/configuration.rb +177 -0
  169. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message/delivery_receipt.rb +162 -1
  170. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message.rb +296 -1
  171. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/participant.rb +300 -1
  172. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/webhook.rb +278 -1
  173. data/lib/twilio-ruby/rest/conversations/v1/service/conversation.rb +318 -1
  174. data/lib/twilio-ruby/rest/conversations/v1/service/conversation_with_participants.rb +130 -0
  175. data/lib/twilio-ruby/rest/conversations/v1/service/participant_conversation.rb +90 -1
  176. data/lib/twilio-ruby/rest/conversations/v1/service/role.rb +251 -1
  177. data/lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb +221 -1
  178. data/lib/twilio-ruby/rest/conversations/v1/service/user.rb +267 -1
  179. data/lib/twilio-ruby/rest/conversations/v1/service.rb +210 -1
  180. data/lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb +219 -1
  181. data/lib/twilio-ruby/rest/conversations/v1/user.rb +264 -1
  182. data/lib/twilio-ruby/rest/events/v1/event_type.rb +161 -1
  183. data/lib/twilio-ruby/rest/events/v1/schema/schema_version.rb +160 -1
  184. data/lib/twilio-ruby/rest/events/v1/schema.rb +136 -0
  185. data/lib/twilio-ruby/rest/events/v1/sink/sink_test.rb +88 -0
  186. data/lib/twilio-ruby/rest/events/v1/sink/sink_validate.rb +95 -0
  187. data/lib/twilio-ruby/rest/events/v1/sink.rb +252 -1
  188. data/lib/twilio-ruby/rest/events/v1/subscription/subscribed_event.rb +248 -1
  189. data/lib/twilio-ruby/rest/events/v1/subscription.rb +253 -26
  190. data/lib/twilio-ruby/rest/flex_api/v1/assessments.rb +241 -4
  191. data/lib/twilio-ruby/rest/flex_api/v1/channel.rb +237 -1
  192. data/lib/twilio-ruby/rest/flex_api/v1/configuration.rb +167 -0
  193. data/lib/twilio-ruby/rest/flex_api/v1/create_flex_instance.rb +382 -0
  194. data/lib/twilio-ruby/rest/flex_api/v1/flex_flow.rb +340 -1
  195. data/lib/twilio-ruby/rest/flex_api/v1/insights_assessments_comment.rb +143 -4
  196. data/lib/twilio-ruby/rest/flex_api/v1/insights_conversations.rb +90 -1
  197. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires.rb +274 -1
  198. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_category.rb +226 -1
  199. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_question.rb +253 -1
  200. data/lib/twilio-ruby/rest/flex_api/v1/insights_segments.rb +93 -1
  201. data/lib/twilio-ruby/rest/flex_api/v1/insights_session.rb +138 -0
  202. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_answer_sets.rb +90 -0
  203. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_comment.rb +90 -0
  204. data/lib/twilio-ruby/rest/flex_api/v1/insights_user_roles.rb +138 -0
  205. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_invite.rb +119 -1
  206. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_participant.rb +207 -1
  207. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_transfer.rb +547 -0
  208. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb +223 -1
  209. data/lib/twilio-ruby/rest/flex_api/v1/interaction.rb +258 -1
  210. data/lib/twilio-ruby/rest/flex_api/v1/plugin/plugin_versions.rb +214 -1
  211. data/lib/twilio-ruby/rest/flex_api/v1/plugin.rb +240 -1
  212. data/lib/twilio-ruby/rest/flex_api/v1/plugin_archive.rb +139 -0
  213. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration/configured_plugin.rb +165 -1
  214. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration.rb +203 -1
  215. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration_archive.rb +139 -0
  216. data/lib/twilio-ruby/rest/flex_api/v1/plugin_release.rb +197 -1
  217. data/lib/twilio-ruby/rest/flex_api/v1/plugin_version_archive.rb +140 -0
  218. data/lib/twilio-ruby/rest/flex_api/v1/provisioning_status.rb +135 -0
  219. data/lib/twilio-ruby/rest/flex_api/v1/web_channel.rb +260 -1
  220. data/lib/twilio-ruby/rest/flex_api/v1.rb +6 -0
  221. data/lib/twilio-ruby/rest/flex_api/v2/flex_user.rb +176 -39
  222. data/lib/twilio-ruby/rest/flex_api/v2/web_channels.rb +111 -0
  223. data/lib/twilio-ruby/rest/flex_api_base.rb +1 -6
  224. data/lib/twilio-ruby/rest/frontline_api/v1/user.rb +177 -0
  225. data/lib/twilio-ruby/rest/iam/v1/api_key.rb +191 -0
  226. data/lib/twilio-ruby/rest/iam/v1/get_api_keys.rb +95 -1
  227. data/lib/twilio-ruby/rest/iam/v1/new_api_key.rb +103 -0
  228. data/lib/twilio-ruby/rest/iam/v1/o_auth_app.rb +646 -0
  229. data/lib/twilio-ruby/rest/iam/v1/token.rb +301 -0
  230. data/lib/twilio-ruby/rest/iam/v1.rb +21 -0
  231. data/lib/twilio-ruby/rest/iam_base.rb +1 -6
  232. data/lib/twilio-ruby/rest/insights/v1/call/annotation.rb +186 -0
  233. data/lib/twilio-ruby/rest/insights/v1/call/call_summary.rb +142 -0
  234. data/lib/twilio-ruby/rest/insights/v1/call/event.rb +88 -1
  235. data/lib/twilio-ruby/rest/insights/v1/call/metric.rb +90 -1
  236. data/lib/twilio-ruby/rest/insights/v1/call.rb +136 -0
  237. data/lib/twilio-ruby/rest/insights/v1/call_summaries.rb +184 -3
  238. data/lib/twilio-ruby/rest/insights/v1/conference/conference_participant.rb +175 -1
  239. data/lib/twilio-ruby/rest/insights/v1/conference.rb +179 -1
  240. data/lib/twilio-ruby/rest/insights/v1/room/participant.rb +160 -1
  241. data/lib/twilio-ruby/rest/insights/v1/room.rb +171 -1
  242. data/lib/twilio-ruby/rest/insights/v1/setting.rb +178 -0
  243. data/lib/twilio-ruby/rest/insights/v2/inbound.rb +570 -0
  244. data/lib/twilio-ruby/rest/insights/v2/outbound.rb +641 -0
  245. data/lib/twilio-ruby/rest/insights/v2/report.rb +940 -0
  246. data/lib/twilio-ruby/rest/insights/v2.rb +79 -0
  247. data/lib/twilio-ruby/rest/insights_base.rb +6 -1
  248. data/lib/twilio-ruby/rest/intelligence/v2/custom_operator.rb +257 -1
  249. data/lib/twilio-ruby/rest/intelligence/v2/operator.rb +163 -1
  250. data/lib/twilio-ruby/rest/intelligence/v2/operator_attachment.rb +157 -0
  251. data/lib/twilio-ruby/rest/intelligence/v2/operator_attachments.rb +136 -0
  252. data/lib/twilio-ruby/rest/intelligence/v2/operator_type.rb +169 -3
  253. data/lib/twilio-ruby/rest/intelligence/v2/prebuilt_operator.rb +163 -1
  254. data/lib/twilio-ruby/rest/intelligence/v2/service.rb +312 -2
  255. data/lib/twilio-ruby/rest/intelligence/v2/transcript/encrypted_operator_results.rb +359 -0
  256. data/lib/twilio-ruby/rest/intelligence/v2/transcript/encrypted_sentences.rb +359 -0
  257. data/lib/twilio-ruby/rest/intelligence/v2/transcript/media.rb +142 -0
  258. data/lib/twilio-ruby/rest/intelligence/v2/transcript/operator_result.rb +168 -1
  259. data/lib/twilio-ruby/rest/intelligence/v2/transcript/sentence.rb +93 -4
  260. data/lib/twilio-ruby/rest/intelligence/v2/transcript.rb +278 -1
  261. data/lib/twilio-ruby/rest/ip_messaging/v1/credential.rb +275 -1
  262. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/invite.rb +220 -1
  263. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb +257 -1
  264. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +259 -1
  265. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +263 -1
  266. data/lib/twilio-ruby/rest/ip_messaging/v1/service/role.rb +251 -1
  267. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user/user_channel.rb +86 -1
  268. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +260 -1
  269. data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +401 -1
  270. data/lib/twilio-ruby/rest/ip_messaging/v2/credential.rb +275 -1
  271. data/lib/twilio-ruby/rest/ip_messaging/v2/service/binding.rb +186 -1
  272. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/invite.rb +220 -1
  273. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb +291 -1
  274. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +290 -1
  275. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/webhook.rb +281 -1
  276. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +288 -1
  277. data/lib/twilio-ruby/rest/ip_messaging/v2/service/role.rb +251 -1
  278. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_binding.rb +184 -1
  279. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_channel.rb +221 -1
  280. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +264 -1
  281. data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +332 -1
  282. data/lib/twilio-ruby/rest/{microvisor/v1/app.rb → knowledge/v1/knowledge/chunk.rb} +129 -173
  283. data/lib/twilio-ruby/rest/knowledge/v1/knowledge/knowledge_status.rb +349 -0
  284. data/lib/twilio-ruby/rest/knowledge/v1/knowledge.rb +856 -0
  285. data/lib/twilio-ruby/rest/{preview/sync.rb → knowledge/v1.rb} +16 -16
  286. data/lib/twilio-ruby/rest/knowledge.rb +6 -0
  287. data/lib/twilio-ruby/rest/{microvisor_base.rb → knowledge_base.rb} +6 -6
  288. data/lib/twilio-ruby/rest/lookups/v1/phone_number.rb +153 -2
  289. data/lib/twilio-ruby/rest/lookups/v2/bucket.rb +500 -0
  290. data/lib/twilio-ruby/rest/lookups/v2/lookup_override.rb +603 -0
  291. data/lib/twilio-ruby/rest/lookups/v2/phone_number.rb +197 -13
  292. data/lib/twilio-ruby/rest/lookups/v2/query.rb +351 -0
  293. data/lib/twilio-ruby/rest/lookups/v2/rate_limit.rb +229 -0
  294. data/lib/twilio-ruby/rest/lookups/v2.rb +86 -0
  295. data/lib/twilio-ruby/rest/marketplace/v1/available_add_on/available_add_on_extension.rb +160 -1
  296. data/lib/twilio-ruby/rest/marketplace/v1/available_add_on.rb +159 -1
  297. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on/installed_add_on_extension.rb +193 -1
  298. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on/installed_add_on_usage.rb +90 -0
  299. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on.rb +254 -1
  300. data/lib/twilio-ruby/rest/marketplace/v1/module_data.rb +121 -0
  301. data/lib/twilio-ruby/rest/marketplace/v1/module_data_management.rb +186 -0
  302. data/lib/twilio-ruby/rest/marketplace/v1/referral_conversion.rb +89 -0
  303. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_registration_otp.rb +88 -0
  304. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_vetting.rb +197 -1
  305. data/lib/twilio-ruby/rest/messaging/v1/brand_registration.rb +245 -1
  306. data/lib/twilio-ruby/rest/messaging/v1/deactivations.rb +141 -0
  307. data/lib/twilio-ruby/rest/messaging/v1/domain_certs.rb +188 -0
  308. data/lib/twilio-ruby/rest/messaging/v1/domain_config.rb +177 -0
  309. data/lib/twilio-ruby/rest/messaging/v1/domain_config_messaging_service.rb +136 -0
  310. data/lib/twilio-ruby/rest/messaging/v1/domain_validate_dn.rb +344 -0
  311. data/lib/twilio-ruby/rest/messaging/v1/external_campaign.rb +100 -0
  312. data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service.rb +157 -0
  313. data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service_domain_association.rb +136 -0
  314. data/lib/twilio-ruby/rest/messaging/v1/request_managed_cert.rb +136 -0
  315. data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +212 -1
  316. data/lib/twilio-ruby/rest/messaging/v1/service/channel_sender.rb +212 -1
  317. data/lib/twilio-ruby/rest/messaging/v1/service/destination_alpha_sender.rb +225 -3
  318. data/lib/twilio-ruby/rest/messaging/v1/service/phone_number.rb +212 -1
  319. data/lib/twilio-ruby/rest/messaging/v1/service/short_code.rb +212 -1
  320. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person.rb +393 -12
  321. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person_usecase.rb +94 -0
  322. data/lib/twilio-ruby/rest/messaging/v1/service.rb +336 -5
  323. data/lib/twilio-ruby/rest/messaging/v1/tollfree_verification.rb +717 -10
  324. data/lib/twilio-ruby/rest/messaging/v1/usecase.rb +87 -0
  325. data/lib/twilio-ruby/rest/messaging/v1.rb +15 -0
  326. data/lib/twilio-ruby/rest/messaging/v2/channels_sender.rb +1002 -0
  327. data/lib/twilio-ruby/rest/messaging/v2/domain_certs.rb +386 -0
  328. data/lib/twilio-ruby/rest/messaging/v2/typing_indicator.rb +237 -0
  329. data/lib/twilio-ruby/rest/messaging/v2.rb +70 -0
  330. data/lib/twilio-ruby/rest/messaging_base.rb +6 -1
  331. data/lib/twilio-ruby/rest/monitor/v1/alert.rb +165 -1
  332. data/lib/twilio-ruby/rest/monitor/v1/event.rb +172 -2
  333. data/lib/twilio-ruby/rest/notify/v1/credential.rb +275 -1
  334. data/lib/twilio-ruby/rest/notify/v1/service/binding.rb +240 -1
  335. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +146 -0
  336. data/lib/twilio-ruby/rest/notify/v1/service.rb +322 -1
  337. data/lib/twilio-ruby/rest/numbers/v1/bulk_eligibility.rb +162 -0
  338. data/lib/twilio-ruby/rest/numbers/v1/eligibility.rb +89 -0
  339. data/lib/twilio-ruby/rest/numbers/v1/embedded_session.rb +251 -0
  340. data/lib/twilio-ruby/rest/numbers/v1/porting_all_port_in.rb +367 -0
  341. data/lib/twilio-ruby/rest/numbers/v1/porting_port_in.rb +320 -8
  342. data/lib/twilio-ruby/rest/numbers/v1/porting_port_in_phone_number.rb +157 -0
  343. data/lib/twilio-ruby/rest/numbers/v1/porting_portability.rb +145 -0
  344. data/lib/twilio-ruby/rest/numbers/v1/porting_webhook_configuration.rb +89 -0
  345. data/lib/twilio-ruby/rest/numbers/v1/porting_webhook_configuration_delete.rb +131 -0
  346. data/lib/twilio-ruby/rest/numbers/v1/sender_id_registration.rb +333 -0
  347. data/lib/twilio-ruby/rest/numbers/v1/signing_request_configuration.rb +116 -1
  348. data/lib/twilio-ruby/rest/numbers/v1/{porting_webhook_configuration_fetch.rb → webhook.rb} +107 -20
  349. data/lib/twilio-ruby/rest/numbers/v1.rb +22 -4
  350. data/lib/twilio-ruby/rest/numbers/v2/application.rb +707 -0
  351. data/lib/twilio-ruby/rest/numbers/v2/authorization_document/dependent_hosted_number_order.rb +94 -1
  352. data/lib/twilio-ruby/rest/numbers/v2/authorization_document.rb +229 -1
  353. data/lib/twilio-ruby/rest/numbers/v2/bulk_hosted_number_order.rb +168 -0
  354. data/lib/twilio-ruby/rest/numbers/v2/bundle_clone.rb +149 -0
  355. data/lib/twilio-ruby/rest/numbers/v2/hosted_number_order.rb +303 -1
  356. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/bundle_copy.rb +118 -1
  357. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/evaluation.rb +185 -1
  358. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/item_assignment.rb +212 -1
  359. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/replace_items.rb +95 -0
  360. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle.rb +312 -3
  361. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user.rb +251 -1
  362. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user_type.rb +159 -1
  363. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/regulation.rb +173 -1
  364. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document.rb +251 -1
  365. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document_type.rb +159 -1
  366. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance.rb +63 -0
  367. data/lib/twilio-ruby/rest/numbers/v2.rb +15 -0
  368. data/lib/twilio-ruby/rest/numbers/v3/hosted_number_order.rb +484 -0
  369. data/lib/twilio-ruby/rest/numbers/v3.rb +40 -0
  370. data/lib/twilio-ruby/rest/numbers_base.rb +5 -0
  371. data/lib/twilio-ruby/rest/oauth/v1/authorize.rb +105 -0
  372. data/lib/twilio-ruby/rest/oauth/v1/token.rb +115 -0
  373. data/lib/twilio-ruby/rest/oauth/v2/authorize.rb +253 -0
  374. data/lib/twilio-ruby/rest/oauth/v2/token.rb +311 -0
  375. data/lib/twilio-ruby/rest/oauth/v2.rb +46 -0
  376. data/lib/twilio-ruby/rest/oauth_base.rb +6 -1
  377. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document/dependent_hosted_number_order.rb +96 -1
  378. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document.rb +259 -1
  379. data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +327 -1
  380. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on/available_add_on_extension.rb +160 -1
  381. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on.rb +159 -1
  382. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on/installed_add_on_extension.rb +193 -1
  383. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on.rb +254 -1
  384. data/lib/twilio-ruby/rest/preview/wireless/command.rb +216 -1
  385. data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +272 -1
  386. data/lib/twilio-ruby/rest/preview/wireless/sim/usage.rb +145 -0
  387. data/lib/twilio-ruby/rest/preview/wireless/sim.rb +246 -1
  388. data/lib/twilio-ruby/rest/preview_base.rb +0 -5
  389. data/lib/twilio-ruby/rest/preview_iam/v1/authorize.rb +105 -0
  390. data/lib/twilio-ruby/rest/preview_iam/v1/token.rb +115 -0
  391. data/lib/twilio-ruby/rest/preview_iam/versionless/organization/account.rb +160 -1
  392. data/lib/twilio-ruby/rest/preview_iam/versionless/organization/role_assignment.rb +185 -1
  393. data/lib/twilio-ruby/rest/preview_iam/versionless/organization/user.rb +436 -1
  394. data/lib/twilio-ruby/rest/preview_iam/versionless/organization.rb +136 -0
  395. data/lib/twilio-ruby/rest/pricing/v1/messaging/country.rb +159 -1
  396. data/lib/twilio-ruby/rest/pricing/v1/messaging.rb +63 -0
  397. data/lib/twilio-ruby/rest/pricing/v1/phone_number/country.rb +159 -1
  398. data/lib/twilio-ruby/rest/pricing/v1/phone_number.rb +63 -0
  399. data/lib/twilio-ruby/rest/pricing/v1/voice/country.rb +159 -1
  400. data/lib/twilio-ruby/rest/pricing/v1/voice/number.rb +136 -0
  401. data/lib/twilio-ruby/rest/pricing/v1/voice.rb +63 -0
  402. data/lib/twilio-ruby/rest/pricing/v2/country.rb +159 -1
  403. data/lib/twilio-ruby/rest/pricing/v2/number.rb +142 -0
  404. data/lib/twilio-ruby/rest/pricing/v2/voice/country.rb +159 -1
  405. data/lib/twilio-ruby/rest/pricing/v2/voice/number.rb +142 -0
  406. data/lib/twilio-ruby/rest/pricing/v2/voice.rb +63 -0
  407. data/lib/twilio-ruby/rest/proxy/v1/service/phone_number.rb +251 -1
  408. data/lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb +181 -1
  409. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant/message_interaction.rb +199 -1
  410. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb +223 -1
  411. data/lib/twilio-ruby/rest/proxy/v1/service/session.rb +266 -1
  412. data/lib/twilio-ruby/rest/proxy/v1/service.rb +284 -28
  413. data/lib/twilio-ruby/rest/routes/v2/phone_number.rb +171 -0
  414. data/lib/twilio-ruby/rest/routes/v2/sip_domain.rb +171 -0
  415. data/lib/twilio-ruby/rest/routes/v2/trunk.rb +171 -0
  416. data/lib/twilio-ruby/rest/serverless/v1/service/asset/asset_version.rb +161 -1
  417. data/lib/twilio-ruby/rest/serverless/v1/service/asset.rb +245 -1
  418. data/lib/twilio-ruby/rest/serverless/v1/service/build/build_status.rb +137 -0
  419. data/lib/twilio-ruby/rest/serverless/v1/service/build.rb +221 -1
  420. data/lib/twilio-ruby/rest/serverless/v1/service/environment/deployment.rb +197 -1
  421. data/lib/twilio-ruby/rest/serverless/v1/service/environment/log.rb +168 -2
  422. data/lib/twilio-ruby/rest/serverless/v1/service/environment/variable.rb +254 -1
  423. data/lib/twilio-ruby/rest/serverless/v1/service/environment.rb +215 -1
  424. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version/function_version_content.rb +138 -0
  425. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version.rb +161 -1
  426. data/lib/twilio-ruby/rest/serverless/v1/service/function.rb +245 -1
  427. data/lib/twilio-ruby/rest/serverless/v1/service.rb +257 -1
  428. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/engagement_context.rb +137 -0
  429. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step/step_context.rb +138 -0
  430. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb +175 -1
  431. data/lib/twilio-ruby/rest/studio/v1/flow/engagement.rb +218 -1
  432. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_context.rb +137 -0
  433. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step/execution_step_context.rb +138 -0
  434. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step.rb +175 -1
  435. data/lib/twilio-ruby/rest/studio/v1/flow/execution.rb +255 -1
  436. data/lib/twilio-ruby/rest/studio/v1/flow.rb +179 -1
  437. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_context.rb +137 -0
  438. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step/execution_step_context.rb +138 -0
  439. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step.rb +175 -1
  440. data/lib/twilio-ruby/rest/studio/v2/flow/execution.rb +269 -1
  441. data/lib/twilio-ruby/rest/studio/v2/flow/flow_revision.rb +167 -1
  442. data/lib/twilio-ruby/rest/studio/v2/flow/flow_test_user.rb +168 -0
  443. data/lib/twilio-ruby/rest/studio/v2/flow.rb +267 -1
  444. data/lib/twilio-ruby/rest/studio/v2/flow_validate.rb +103 -0
  445. data/lib/twilio-ruby/rest/supersim/v1/esim_profile.rb +205 -1
  446. data/lib/twilio-ruby/rest/supersim/v1/fleet.rb +266 -1
  447. data/lib/twilio-ruby/rest/supersim/v1/ip_command.rb +213 -1
  448. data/lib/twilio-ruby/rest/supersim/v1/network.rb +165 -1
  449. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile/network_access_profile_network.rb +212 -1
  450. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile.rb +225 -1
  451. data/lib/twilio-ruby/rest/supersim/v1/settings_update.rb +90 -1
  452. data/lib/twilio-ruby/rest/supersim/v1/sim/billing_period.rb +86 -1
  453. data/lib/twilio-ruby/rest/supersim/v1/sim/sim_ip_address.rb +86 -1
  454. data/lib/twilio-ruby/rest/supersim/v1/sim.rb +246 -1
  455. data/lib/twilio-ruby/rest/supersim/v1/sms_command.rb +205 -1
  456. data/lib/twilio-ruby/rest/supersim/v1/usage_record.rb +102 -1
  457. data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +221 -1
  458. data/lib/twilio-ruby/rest/sync/v1/service/document.rb +256 -1
  459. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +277 -1
  460. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +221 -1
  461. data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +254 -1
  462. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +280 -1
  463. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +221 -1
  464. data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +254 -1
  465. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream/stream_message.rb +96 -0
  466. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream.rb +248 -1
  467. data/lib/twilio-ruby/rest/sync/v1/service.rb +278 -1
  468. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/activity.rb +252 -1
  469. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +182 -1
  470. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +362 -3
  471. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +311 -2
  472. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_channel.rb +254 -1
  473. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_bulk_real_time_statistics.rb +90 -0
  474. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics.rb +155 -0
  475. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics.rb +143 -0
  476. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_statistics.rb +155 -0
  477. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queues_statistics.rb +98 -1
  478. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +283 -1
  479. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +354 -3
  480. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_channel.rb +198 -1
  481. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_statistics.rb +152 -0
  482. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_cumulative_statistics.rb +151 -0
  483. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_real_time_statistics.rb +142 -0
  484. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_statistics.rb +160 -0
  485. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +281 -1
  486. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics.rb +155 -0
  487. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_real_time_statistics.rb +143 -0
  488. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_statistics.rb +155 -0
  489. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +274 -1
  490. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_cumulative_statistics.rb +154 -0
  491. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_real_time_statistics.rb +142 -0
  492. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_statistics.rb +154 -0
  493. data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +277 -1
  494. data/lib/twilio-ruby/rest/trunking/v1/trunk/credential_list.rb +212 -1
  495. data/lib/twilio-ruby/rest/trunking/v1/trunk/ip_access_control_list.rb +212 -1
  496. data/lib/twilio-ruby/rest/trunking/v1/trunk/origination_url.rb +269 -1
  497. data/lib/twilio-ruby/rest/trunking/v1/trunk/phone_number.rb +213 -2
  498. data/lib/twilio-ruby/rest/trunking/v1/trunk/recording.rb +171 -0
  499. data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +291 -1
  500. data/lib/twilio-ruby/rest/trusthub/v1/compliance_inquiries.rb +187 -4
  501. data/lib/twilio-ruby/rest/trusthub/v1/compliance_registration_inquiries.rb +291 -0
  502. data/lib/twilio-ruby/rest/trusthub/v1/compliance_tollfree_inquiries.rb +251 -1
  503. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_channel_endpoint_assignment.rb +219 -1
  504. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_entity_assignments.rb +214 -1
  505. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_evaluations.rb +192 -1
  506. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles.rb +266 -1
  507. data/lib/twilio-ruby/rest/trusthub/v1/end_user.rb +251 -1
  508. data/lib/twilio-ruby/rest/trusthub/v1/end_user_type.rb +159 -1
  509. data/lib/twilio-ruby/rest/trusthub/v1/policies.rb +159 -1
  510. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document.rb +251 -1
  511. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document_type.rb +159 -1
  512. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_channel_endpoint_assignment.rb +219 -1
  513. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_entity_assignments.rb +214 -1
  514. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_evaluations.rb +192 -1
  515. data/lib/twilio-ruby/rest/trusthub/v1/trust_products.rb +266 -1
  516. data/lib/twilio-ruby/rest/verify/v2/form.rb +136 -0
  517. data/lib/twilio-ruby/rest/verify/v2/safelist.rb +187 -0
  518. data/lib/twilio-ruby/rest/verify/v2/service/access_token.rb +178 -0
  519. data/lib/twilio-ruby/rest/verify/v2/service/approve_challenge.rb +402 -0
  520. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge/notification.rb +97 -0
  521. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb +252 -1
  522. data/lib/twilio-ruby/rest/verify/v2/service/entity/factor.rb +239 -1
  523. data/lib/twilio-ruby/rest/verify/v2/service/entity/new_factor.rb +142 -0
  524. data/lib/twilio-ruby/rest/verify/v2/service/entity.rb +212 -1
  525. data/lib/twilio-ruby/rest/verify/v2/service/messaging_configuration.rb +248 -1
  526. data/lib/twilio-ruby/rest/verify/v2/service/new_challenge.rb +478 -0
  527. data/lib/twilio-ruby/rest/verify/v2/service/new_factor.rb +387 -0
  528. data/lib/twilio-ruby/rest/verify/v2/service/new_verify_factor.rb +357 -0
  529. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb +254 -1
  530. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit.rb +248 -1
  531. data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +254 -1
  532. data/lib/twilio-ruby/rest/verify/v2/service/verification_check.rb +110 -0
  533. data/lib/twilio-ruby/rest/verify/v2/service/webhook.rb +269 -1
  534. data/lib/twilio-ruby/rest/verify/v2/service.rb +529 -2
  535. data/lib/twilio-ruby/rest/verify/v2/template.rb +88 -1
  536. data/lib/twilio-ruby/rest/verify/v2/verification_attempt.rb +178 -4
  537. data/lib/twilio-ruby/rest/verify/v2/verification_attempts_summary.rb +159 -3
  538. data/lib/twilio-ruby/rest/video/v1/composition.rb +242 -1
  539. data/lib/twilio-ruby/rest/video/v1/composition_hook.rb +304 -1
  540. data/lib/twilio-ruby/rest/video/v1/composition_settings.rb +181 -0
  541. data/lib/twilio-ruby/rest/video/v1/recording.rb +192 -1
  542. data/lib/twilio-ruby/rest/video/v1/recording_settings.rb +181 -0
  543. data/lib/twilio-ruby/rest/video/v1/room/participant/anonymize.rb +137 -0
  544. data/lib/twilio-ruby/rest/video/v1/room/participant/published_track.rb +161 -1
  545. data/lib/twilio-ruby/rest/video/v1/room/participant/subscribe_rules.rb +122 -0
  546. data/lib/twilio-ruby/rest/video/v1/room/participant/subscribed_track.rb +161 -1
  547. data/lib/twilio-ruby/rest/video/v1/room/participant.rb +201 -1
  548. data/lib/twilio-ruby/rest/video/v1/room/recording_rules.rb +120 -0
  549. data/lib/twilio-ruby/rest/video/v1/room/room_recording.rb +188 -1
  550. data/lib/twilio-ruby/rest/video/v1/room/transcriptions.rb +657 -0
  551. data/lib/twilio-ruby/rest/video/v1/room.rb +311 -1
  552. data/lib/twilio-ruby/rest/voice/v1/archived_call.rb +131 -0
  553. data/lib/twilio-ruby/rest/voice/v1/byoc_trunk.rb +296 -1
  554. data/lib/twilio-ruby/rest/voice/v1/connection_policy/connection_policy_target.rb +269 -1
  555. data/lib/twilio-ruby/rest/voice/v1/connection_policy.rb +242 -1
  556. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/bulk_country_update.rb +94 -0
  557. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country/highrisk_special_prefix.rb +86 -1
  558. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country.rb +171 -1
  559. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/settings.rb +166 -0
  560. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions.rb +63 -0
  561. data/lib/twilio-ruby/rest/voice/v1/ip_record.rb +248 -1
  562. data/lib/twilio-ruby/rest/voice/v1/source_ip_mapping.rb +245 -1
  563. data/lib/twilio-ruby/rest/wireless/v1/command.rb +236 -1
  564. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +282 -2
  565. data/lib/twilio-ruby/rest/wireless/v1/sim/data_session.rb +86 -1
  566. data/lib/twilio-ruby/rest/wireless/v1/sim/usage_record.rb +92 -1
  567. data/lib/twilio-ruby/rest/wireless/v1/sim.rb +272 -1
  568. data/lib/twilio-ruby/rest/wireless/v1/usage_record.rb +92 -1
  569. data/lib/twilio-ruby/twiml/voice_response.rb +183 -18
  570. data/lib/twilio-ruby/version.rb +1 -1
  571. data/twilio-ruby.gemspec +1 -3
  572. metadata +50 -61
  573. data/lib/twilio-ruby/rest/microvisor/v1/account_config.rb +0 -382
  574. data/lib/twilio-ruby/rest/microvisor/v1/account_secret.rb +0 -375
  575. data/lib/twilio-ruby/rest/microvisor/v1/app/app_manifest.rb +0 -213
  576. data/lib/twilio-ruby/rest/microvisor/v1/device/device_config.rb +0 -398
  577. data/lib/twilio-ruby/rest/microvisor/v1/device/device_secret.rb +0 -391
  578. data/lib/twilio-ruby/rest/microvisor/v1/device.rb +0 -441
  579. data/lib/twilio-ruby/rest/microvisor/v1.rb +0 -94
  580. data/lib/twilio-ruby/rest/microvisor.rb +0 -24
  581. data/lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb +0 -407
  582. data/lib/twilio-ruby/rest/preview/sync/service/document.rb +0 -472
  583. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_item.rb +0 -467
  584. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_permission.rb +0 -407
  585. data/lib/twilio-ruby/rest/preview/sync/service/sync_list.rb +0 -444
  586. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_item.rb +0 -470
  587. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_permission.rb +0 -407
  588. data/lib/twilio-ruby/rest/preview/sync/service/sync_map.rb +0 -444
  589. data/lib/twilio-ruby/rest/preview/sync/service.rb +0 -529
  590. data/lib/twilio-ruby/rest/proxy/v1/service/short_code.rb +0 -430
@@ -25,6 +25,7 @@ module Twilio
25
25
  # @return [AssessmentsList] AssessmentsList
26
26
  def initialize(version)
27
27
  super(version)
28
+
28
29
  # Path Solution
29
30
  @solution = { }
30
31
  @uri = "/Insights/QualityManagement/Assessments"
@@ -84,6 +85,66 @@ module Twilio
84
85
  )
85
86
  end
86
87
 
88
+ ##
89
+ # Create the AssessmentsInstanceMetadata
90
+ # @param [String] category_sid The SID of the category
91
+ # @param [String] category_name The name of the category
92
+ # @param [String] segment_id Segment Id of the conversation
93
+ # @param [String] agent_id The id of the Agent
94
+ # @param [Float] offset The offset of the conversation.
95
+ # @param [String] metric_id The question SID selected for assessment
96
+ # @param [String] metric_name The question name of the assessment
97
+ # @param [String] answer_text The answer text selected by user
98
+ # @param [String] answer_id The id of the answer selected by user
99
+ # @param [String] questionnaire_sid Questionnaire SID of the associated question
100
+ # @param [String] authorization The Authorization HTTP request header
101
+ # @return [AssessmentsInstance] Created AssessmentsInstance
102
+ def create_with_metadata(
103
+ category_sid: nil,
104
+ category_name: nil,
105
+ segment_id: nil,
106
+ agent_id: nil,
107
+ offset: nil,
108
+ metric_id: nil,
109
+ metric_name: nil,
110
+ answer_text: nil,
111
+ answer_id: nil,
112
+ questionnaire_sid: nil,
113
+ authorization: :unset
114
+ )
115
+
116
+ data = Twilio::Values.of({
117
+ 'CategorySid' => category_sid,
118
+ 'CategoryName' => category_name,
119
+ 'SegmentId' => segment_id,
120
+ 'AgentId' => agent_id,
121
+ 'Offset' => offset,
122
+ 'MetricId' => metric_id,
123
+ 'MetricName' => metric_name,
124
+ 'AnswerText' => answer_text,
125
+ 'AnswerId' => answer_id,
126
+ 'QuestionnaireSid' => questionnaire_sid,
127
+ })
128
+
129
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', 'Authorization' => authorization, })
130
+
131
+
132
+
133
+
134
+
135
+ response = @version.create_with_metadata('POST', @uri, data: data, headers: headers)
136
+ assessments_instance = AssessmentsInstance.new(
137
+ @version,
138
+ response.body,
139
+ )
140
+ AssessmentsInstanceMetadata.new(
141
+ @version,
142
+ assessments_instance,
143
+ response.headers,
144
+ response.status_code
145
+ )
146
+ end
147
+
87
148
 
88
149
  ##
89
150
  # Lists AssessmentsInstance records from the API as a list.
@@ -131,6 +192,32 @@ module Twilio
131
192
  @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
132
193
  end
133
194
 
195
+ ##
196
+ # Lists AssessmentsPageMetadata records from the API as a list.
197
+ # @param [String] authorization The Authorization HTTP request header
198
+ # @param [String] segment_id The id of the segment.
199
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
200
+ # guarantees to never return more than limit. Default is no limit
201
+ # @param [Integer] page_size Number of records to fetch per request, when
202
+ # not set will use the default value of 50 records. If no page_size is defined
203
+ # but a limit is defined, stream() will attempt to read the limit with the most
204
+ # efficient page size, i.e. min(limit, 1000)
205
+ # @return [Array] Array of up to limit results
206
+ def list_with_metadata(authorization: :unset, segment_id: :unset, limit: nil, page_size: nil)
207
+ limits = @version.read_limits(limit, page_size)
208
+ params = Twilio::Values.of({
209
+ 'Authorization' => authorization,
210
+ 'SegmentId' => segment_id,
211
+
212
+ 'PageSize' => limits[:page_size],
213
+ });
214
+ headers = Twilio::Values.of({})
215
+
216
+ response = @version.page('GET', @uri, params: params, headers: headers)
217
+
218
+ AssessmentsPageMetadata.new(@version, response, @solution, limits[:limit])
219
+ end
220
+
134
221
  ##
135
222
  # When passed a block, yields AssessmentsInstance records from the API.
136
223
  # This operation lazily loads records as efficiently as possible until the limit
@@ -154,7 +241,7 @@ module Twilio
154
241
  # @param [Integer] page_number Page Number, this value is simply for client state
155
242
  # @param [Integer] page_size Number of records to return, defaults to 50
156
243
  # @return [Page] Page of AssessmentsInstance
157
- def page(authorization: :unset, segment_id: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
244
+ def page(authorization: :unset, segment_id: :unset, page_token: :unset, page_number: :unset,page_size: :unset)
158
245
  params = Twilio::Values.of({
159
246
  'Authorization' => authorization,
160
247
  'SegmentId' => segment_id,
@@ -201,6 +288,7 @@ module Twilio
201
288
  # @return [AssessmentsContext] AssessmentsContext
202
289
  def initialize(version, assessment_sid)
203
290
  super(version)
291
+
204
292
 
205
293
  # Path Solution
206
294
  @solution = { assessment_sid: assessment_sid, }
@@ -242,6 +330,46 @@ module Twilio
242
330
  )
243
331
  end
244
332
 
333
+ ##
334
+ # Update the AssessmentsInstanceMetadata
335
+ # @param [Float] offset The offset of the conversation
336
+ # @param [String] answer_text The answer text selected by user
337
+ # @param [String] answer_id The id of the answer selected by user
338
+ # @param [String] authorization The Authorization HTTP request header
339
+ # @return [AssessmentsInstance] Updated AssessmentsInstance
340
+ def update_with_metadata(
341
+ offset: nil,
342
+ answer_text: nil,
343
+ answer_id: nil,
344
+ authorization: :unset
345
+ )
346
+
347
+ data = Twilio::Values.of({
348
+ 'Offset' => offset,
349
+ 'AnswerText' => answer_text,
350
+ 'AnswerId' => answer_id,
351
+ })
352
+
353
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', 'Authorization' => authorization, })
354
+
355
+
356
+
357
+
358
+
359
+ response = @version.update_with_metadata('POST', @uri, data: data, headers: headers)
360
+ assessments_instance = AssessmentsInstance.new(
361
+ @version,
362
+ response.body,
363
+ assessment_sid: @solution[:assessment_sid],
364
+ )
365
+ AssessmentsInstanceMetadata.new(
366
+ @version,
367
+ assessments_instance,
368
+ response.headers,
369
+ response.status_code
370
+ )
371
+ end
372
+
245
373
 
246
374
  ##
247
375
  # Provide a user friendly representation
@@ -258,6 +386,53 @@ module Twilio
258
386
  end
259
387
  end
260
388
 
389
+ class AssessmentsInstanceMetadata < InstanceResourceMetadata
390
+ ##
391
+ # Initializes a new AssessmentsInstanceMetadata.
392
+ # @param [Version] version Version that contains the resource
393
+ # @param [}AssessmentsInstance] assessments_instance The instance associated with the metadata.
394
+ # @param [Hash] headers Header object with response headers.
395
+ # @param [Integer] status_code The HTTP status code of the response.
396
+ # @return [AssessmentsInstanceMetadata] The initialized instance with metadata.
397
+ def initialize(version, assessments_instance, headers, status_code)
398
+ super(version, headers, status_code)
399
+ @assessments_instance = assessments_instance
400
+ end
401
+
402
+ def assessments
403
+ @assessments_instance
404
+ end
405
+
406
+ def headers
407
+ @headers
408
+ end
409
+
410
+ def status_code
411
+ @status_code
412
+ end
413
+
414
+ def to_s
415
+ "<Twilio.Api.V2010.AssessmentsInstanceMetadata status=#{@status_code}>"
416
+ end
417
+ end
418
+
419
+ class AssessmentsListResponse < InstanceListResource
420
+ # @param [Array<AssessmentsInstance>] instance
421
+ # @param [Hash{String => Object}] headers
422
+ # @param [Integer] status_code
423
+ def initialize(version, payload, key)
424
+ @assessments_instance = payload.body[key].map do |data|
425
+ AssessmentsInstance.new(version, data)
426
+ end
427
+ @headers = payload.headers
428
+ @status_code = payload.status_code
429
+ end
430
+
431
+ def assessments_instance
432
+ @instance
433
+ end
434
+ end
435
+
261
436
  class AssessmentsPage < Page
262
437
  ##
263
438
  # Initialize the AssessmentsPage
@@ -267,6 +442,7 @@ module Twilio
267
442
  # @return [AssessmentsPage] AssessmentsPage
268
443
  def initialize(version, response, solution)
269
444
  super(version, response)
445
+
270
446
 
271
447
  # Path Solution
272
448
  @solution = solution
@@ -286,6 +462,66 @@ module Twilio
286
462
  '<Twilio.FlexApi.V1.AssessmentsPage>'
287
463
  end
288
464
  end
465
+
466
+ class AssessmentsPageMetadata < PageMetadata
467
+ attr_reader :assessments_page
468
+
469
+ def initialize(version, response, solution, limit)
470
+ super(version, response)
471
+ @assessments_page = []
472
+ @limit = limit
473
+ key = get_key(response.body)
474
+ records = 0
475
+ while( limit != :unset && records < limit )
476
+ @assessments_page << AssessmentsListResponse.new(version, @payload, key, limit - records)
477
+ @payload = self.next_page
478
+ break unless @payload
479
+ records += @payload.body[key].size
480
+ end
481
+ # Path Solution
482
+ @solution = solution
483
+ end
484
+
485
+ def each
486
+ @assessments_page.each do |record|
487
+ yield record
488
+ end
489
+ end
490
+
491
+ def to_s
492
+ '<Twilio::REST::FlexApi::V1PageMetadata>';
493
+ end
494
+ end
495
+ class AssessmentsListResponse < InstanceListResource
496
+
497
+ # @param [Array<AssessmentsInstance>] instance
498
+ # @param [Hash{String => Object}] headers
499
+ # @param [Integer] status_code
500
+ def initialize(version, payload, key, limit = :unset)
501
+ data_list = payload.body[key]
502
+ if limit != :unset
503
+ data_list = data_list[0, limit]
504
+ end
505
+ @assessments = data_list.map do |data|
506
+ AssessmentsInstance.new(version, data)
507
+ end
508
+ @headers = payload.headers
509
+ @status_code = payload.status_code
510
+ end
511
+
512
+ def assessments
513
+ @assessments
514
+ end
515
+
516
+ def headers
517
+ @headers
518
+ end
519
+
520
+ def status_code
521
+ @status_code
522
+ end
523
+ end
524
+
289
525
  class AssessmentsInstance < InstanceResource
290
526
  ##
291
527
  # Initialize the AssessmentsInstance
@@ -299,6 +535,7 @@ module Twilio
299
535
  def initialize(version, payload , assessment_sid: nil)
300
536
  super(version)
301
537
 
538
+
302
539
  # Marshaled Properties
303
540
  @properties = {
304
541
  'account_sid' => payload['account_sid'],
@@ -346,7 +583,7 @@ module Twilio
346
583
  end
347
584
 
348
585
  ##
349
- # @return [Float] Offset of the conversation
586
+ # @return [String] Offset of the conversation
350
587
  def offset
351
588
  @properties['offset']
352
589
  end
@@ -358,7 +595,7 @@ module Twilio
358
595
  end
359
596
 
360
597
  ##
361
- # @return [Float] The weightage given to this comment
598
+ # @return [String] The weightage given to this comment
362
599
  def weight
363
600
  @properties['weight']
364
601
  end
@@ -406,7 +643,7 @@ module Twilio
406
643
  end
407
644
 
408
645
  ##
409
- # @return [Float]
646
+ # @return [String]
410
647
  def timestamp
411
648
  @properties['timestamp']
412
649
  end
@@ -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
  @uri = "/Channels"
@@ -82,6 +83,64 @@ module Twilio
82
83
  )
83
84
  end
84
85
 
86
+ ##
87
+ # Create the ChannelInstanceMetadata
88
+ # @param [String] flex_flow_sid The SID of the Flex Flow.
89
+ # @param [String] identity The `identity` value that uniquely identifies the new resource's chat User.
90
+ # @param [String] chat_user_friendly_name The chat participant's friendly name.
91
+ # @param [String] chat_friendly_name The chat channel's friendly name.
92
+ # @param [String] target The Target Contact Identity, for example the phone number of an SMS.
93
+ # @param [String] chat_unique_name The chat channel's unique name.
94
+ # @param [String] pre_engagement_data The pre-engagement data.
95
+ # @param [String] task_sid The SID of the TaskRouter Task. Only valid when integration type is `task`. `null` for integration types `studio` & `external`
96
+ # @param [String] task_attributes The Task attributes to be added for the TaskRouter Task.
97
+ # @param [Boolean] long_lived Whether to create the channel as long-lived.
98
+ # @return [ChannelInstance] Created ChannelInstance
99
+ def create_with_metadata(
100
+ flex_flow_sid: nil,
101
+ identity: nil,
102
+ chat_user_friendly_name: nil,
103
+ chat_friendly_name: nil,
104
+ target: :unset,
105
+ chat_unique_name: :unset,
106
+ pre_engagement_data: :unset,
107
+ task_sid: :unset,
108
+ task_attributes: :unset,
109
+ long_lived: :unset
110
+ )
111
+
112
+ data = Twilio::Values.of({
113
+ 'FlexFlowSid' => flex_flow_sid,
114
+ 'Identity' => identity,
115
+ 'ChatUserFriendlyName' => chat_user_friendly_name,
116
+ 'ChatFriendlyName' => chat_friendly_name,
117
+ 'Target' => target,
118
+ 'ChatUniqueName' => chat_unique_name,
119
+ 'PreEngagementData' => pre_engagement_data,
120
+ 'TaskSid' => task_sid,
121
+ 'TaskAttributes' => task_attributes,
122
+ 'LongLived' => long_lived,
123
+ })
124
+
125
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
126
+
127
+
128
+
129
+
130
+
131
+ response = @version.create_with_metadata('POST', @uri, data: data, headers: headers)
132
+ channel_instance = ChannelInstance.new(
133
+ @version,
134
+ response.body,
135
+ )
136
+ ChannelInstanceMetadata.new(
137
+ @version,
138
+ channel_instance,
139
+ response.headers,
140
+ response.status_code
141
+ )
142
+ end
143
+
85
144
 
86
145
  ##
87
146
  # Lists ChannelInstance records from the API as a list.
@@ -121,6 +180,28 @@ module Twilio
121
180
  @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
122
181
  end
123
182
 
183
+ ##
184
+ # Lists ChannelPageMetadata records from the API as a list.
185
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
186
+ # guarantees to never return more than limit. Default is no limit
187
+ # @param [Integer] page_size Number of records to fetch per request, when
188
+ # not set will use the default value of 50 records. If no page_size is defined
189
+ # but a limit is defined, stream() will attempt to read the limit with the most
190
+ # efficient page size, i.e. min(limit, 1000)
191
+ # @return [Array] Array of up to limit results
192
+ def list_with_metadata(limit: nil, page_size: nil)
193
+ limits = @version.read_limits(limit, page_size)
194
+ params = Twilio::Values.of({
195
+
196
+ 'PageSize' => limits[:page_size],
197
+ });
198
+ headers = Twilio::Values.of({})
199
+
200
+ response = @version.page('GET', @uri, params: params, headers: headers)
201
+
202
+ ChannelPageMetadata.new(@version, response, @solution, limits[:limit])
203
+ end
204
+
124
205
  ##
125
206
  # When passed a block, yields ChannelInstance records from the API.
126
207
  # This operation lazily loads records as efficiently as possible until the limit
@@ -142,7 +223,7 @@ module Twilio
142
223
  # @param [Integer] page_number Page Number, this value is simply for client state
143
224
  # @param [Integer] page_size Number of records to return, defaults to 50
144
225
  # @return [Page] Page of ChannelInstance
145
- def page(page_token: :unset, page_number: :unset, page_size: :unset)
226
+ def page(page_token: :unset, page_number: :unset,page_size: :unset)
146
227
  params = Twilio::Values.of({
147
228
  'PageToken' => page_token,
148
229
  'Page' => page_number,
@@ -187,6 +268,7 @@ module Twilio
187
268
  # @return [ChannelContext] ChannelContext
188
269
  def initialize(version, sid)
189
270
  super(version)
271
+
190
272
 
191
273
  # Path Solution
192
274
  @solution = { sid: sid, }
@@ -203,9 +285,29 @@ module Twilio
203
285
 
204
286
 
205
287
 
288
+
206
289
  @version.delete('DELETE', @uri, headers: headers)
207
290
  end
208
291
 
292
+ ##
293
+ # Delete the ChannelInstanceMetadata
294
+ # @return [Boolean] True if delete succeeds, false otherwise
295
+ def delete_with_metadata
296
+
297
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
298
+
299
+
300
+
301
+ response = @version.delete_with_metadata('DELETE', @uri, headers: headers)
302
+ channel_instance = ChannelInstance.new(
303
+ @version,
304
+ response.body,
305
+ account_sid: @solution[:account_sid],
306
+ sid: @solution[:sid],
307
+ )
308
+ ChannelInstanceMetadata.new(@version, channel_instance, response.headers, response.status_code)
309
+ end
310
+
209
311
  ##
210
312
  # Fetch the ChannelInstance
211
313
  # @return [ChannelInstance] Fetched ChannelInstance
@@ -225,6 +327,31 @@ module Twilio
225
327
  )
226
328
  end
227
329
 
330
+ ##
331
+ # Fetch the ChannelInstanceMetadata
332
+ # @return [ChannelInstance] Fetched ChannelInstance
333
+ def fetch_with_metadata
334
+
335
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
336
+
337
+
338
+
339
+
340
+
341
+ response = @version.fetch_with_metadata('GET', @uri, headers: headers)
342
+ channel_instance = ChannelInstance.new(
343
+ @version,
344
+ response.body,
345
+ sid: @solution[:sid],
346
+ )
347
+ ChannelInstanceMetadata.new(
348
+ @version,
349
+ channel_instance,
350
+ response.headers,
351
+ response.status_code
352
+ )
353
+ end
354
+
228
355
 
229
356
  ##
230
357
  # Provide a user friendly representation
@@ -241,6 +368,53 @@ module Twilio
241
368
  end
242
369
  end
243
370
 
371
+ class ChannelInstanceMetadata < InstanceResourceMetadata
372
+ ##
373
+ # Initializes a new ChannelInstanceMetadata.
374
+ # @param [Version] version Version that contains the resource
375
+ # @param [}ChannelInstance] channel_instance The instance associated with the metadata.
376
+ # @param [Hash] headers Header object with response headers.
377
+ # @param [Integer] status_code The HTTP status code of the response.
378
+ # @return [ChannelInstanceMetadata] The initialized instance with metadata.
379
+ def initialize(version, channel_instance, headers, status_code)
380
+ super(version, headers, status_code)
381
+ @channel_instance = channel_instance
382
+ end
383
+
384
+ def channel
385
+ @channel_instance
386
+ end
387
+
388
+ def headers
389
+ @headers
390
+ end
391
+
392
+ def status_code
393
+ @status_code
394
+ end
395
+
396
+ def to_s
397
+ "<Twilio.Api.V2010.ChannelInstanceMetadata status=#{@status_code}>"
398
+ end
399
+ end
400
+
401
+ class ChannelListResponse < InstanceListResource
402
+ # @param [Array<ChannelInstance>] instance
403
+ # @param [Hash{String => Object}] headers
404
+ # @param [Integer] status_code
405
+ def initialize(version, payload, key)
406
+ @channel_instance = payload.body[key].map do |data|
407
+ ChannelInstance.new(version, data)
408
+ end
409
+ @headers = payload.headers
410
+ @status_code = payload.status_code
411
+ end
412
+
413
+ def channel_instance
414
+ @instance
415
+ end
416
+ end
417
+
244
418
  class ChannelPage < Page
245
419
  ##
246
420
  # Initialize the ChannelPage
@@ -250,6 +424,7 @@ module Twilio
250
424
  # @return [ChannelPage] ChannelPage
251
425
  def initialize(version, response, solution)
252
426
  super(version, response)
427
+
253
428
 
254
429
  # Path Solution
255
430
  @solution = solution
@@ -269,6 +444,66 @@ module Twilio
269
444
  '<Twilio.FlexApi.V1.ChannelPage>'
270
445
  end
271
446
  end
447
+
448
+ class ChannelPageMetadata < PageMetadata
449
+ attr_reader :channel_page
450
+
451
+ def initialize(version, response, solution, limit)
452
+ super(version, response)
453
+ @channel_page = []
454
+ @limit = limit
455
+ key = get_key(response.body)
456
+ records = 0
457
+ while( limit != :unset && records < limit )
458
+ @channel_page << ChannelListResponse.new(version, @payload, key, limit - records)
459
+ @payload = self.next_page
460
+ break unless @payload
461
+ records += @payload.body[key].size
462
+ end
463
+ # Path Solution
464
+ @solution = solution
465
+ end
466
+
467
+ def each
468
+ @channel_page.each do |record|
469
+ yield record
470
+ end
471
+ end
472
+
473
+ def to_s
474
+ '<Twilio::REST::FlexApi::V1PageMetadata>';
475
+ end
476
+ end
477
+ class ChannelListResponse < InstanceListResource
478
+
479
+ # @param [Array<ChannelInstance>] instance
480
+ # @param [Hash{String => Object}] headers
481
+ # @param [Integer] status_code
482
+ def initialize(version, payload, key, limit = :unset)
483
+ data_list = payload.body[key]
484
+ if limit != :unset
485
+ data_list = data_list[0, limit]
486
+ end
487
+ @channel = data_list.map do |data|
488
+ ChannelInstance.new(version, data)
489
+ end
490
+ @headers = payload.headers
491
+ @status_code = payload.status_code
492
+ end
493
+
494
+ def channel
495
+ @channel
496
+ end
497
+
498
+ def headers
499
+ @headers
500
+ end
501
+
502
+ def status_code
503
+ @status_code
504
+ end
505
+ end
506
+
272
507
  class ChannelInstance < InstanceResource
273
508
  ##
274
509
  # Initialize the ChannelInstance
@@ -282,6 +517,7 @@ module Twilio
282
517
  def initialize(version, payload , sid: nil)
283
518
  super(version)
284
519
 
520
+
285
521
  # Marshaled Properties
286
522
  @properties = {
287
523
  'account_sid' => payload['account_sid'],