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
@@ -27,6 +27,7 @@ module Twilio
27
27
  # @return [PluginVersionsList] PluginVersionsList
28
28
  def initialize(version, plugin_sid: nil)
29
29
  super(version)
30
+
30
31
  # Path Solution
31
32
  @solution = { plugin_sid: plugin_sid }
32
33
  @uri = "/PluginService/Plugins/#{@solution[:plugin_sid]}/Versions"
@@ -75,6 +76,55 @@ module Twilio
75
76
  )
76
77
  end
77
78
 
79
+ ##
80
+ # Create the PluginVersionsInstanceMetadata
81
+ # @param [String] version The Flex Plugin Version's version.
82
+ # @param [String] plugin_url The URL of the Flex Plugin Version bundle
83
+ # @param [String] changelog The changelog of the Flex Plugin Version.
84
+ # @param [Boolean] private Whether this Flex Plugin Version requires authorization.
85
+ # @param [String] cli_version The version of Flex Plugins CLI used to create this plugin
86
+ # @param [String] validate_status The validation status of the plugin, indicating whether it has been validated
87
+ # @param [String] flex_metadata The Flex-Metadata HTTP request header
88
+ # @return [PluginVersionsInstance] Created PluginVersionsInstance
89
+ def create_with_metadata(
90
+ version: nil,
91
+ plugin_url: nil,
92
+ changelog: :unset,
93
+ private: :unset,
94
+ cli_version: :unset,
95
+ validate_status: :unset,
96
+ flex_metadata: :unset
97
+ )
98
+
99
+ data = Twilio::Values.of({
100
+ 'Version' => version,
101
+ 'PluginUrl' => plugin_url,
102
+ 'Changelog' => changelog,
103
+ 'Private' => private,
104
+ 'CliVersion' => cli_version,
105
+ 'ValidateStatus' => validate_status,
106
+ })
107
+
108
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', 'Flex-Metadata' => flex_metadata, })
109
+
110
+
111
+
112
+
113
+
114
+ response = @version.create_with_metadata('POST', @uri, data: data, headers: headers)
115
+ plugin_versions_instance = PluginVersionsInstance.new(
116
+ @version,
117
+ response.body,
118
+ plugin_sid: @solution[:plugin_sid],
119
+ )
120
+ PluginVersionsInstanceMetadata.new(
121
+ @version,
122
+ plugin_versions_instance,
123
+ response.headers,
124
+ response.status_code
125
+ )
126
+ end
127
+
78
128
 
79
129
  ##
80
130
  # Lists PluginVersionsInstance records from the API as a list.
@@ -118,6 +168,30 @@ module Twilio
118
168
  @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
119
169
  end
120
170
 
171
+ ##
172
+ # Lists PluginVersionsPageMetadata records from the API as a list.
173
+ # @param [String] flex_metadata The Flex-Metadata HTTP request header
174
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
175
+ # guarantees to never return more than limit. Default is no limit
176
+ # @param [Integer] page_size Number of records to fetch per request, when
177
+ # not set will use the default value of 50 records. If no page_size is defined
178
+ # but a limit is defined, stream() will attempt to read the limit with the most
179
+ # efficient page size, i.e. min(limit, 1000)
180
+ # @return [Array] Array of up to limit results
181
+ def list_with_metadata(flex_metadata: :unset, limit: nil, page_size: nil)
182
+ limits = @version.read_limits(limit, page_size)
183
+ params = Twilio::Values.of({
184
+ 'Flex-Metadata' => flex_metadata,
185
+
186
+ 'PageSize' => limits[:page_size],
187
+ });
188
+ headers = Twilio::Values.of({})
189
+
190
+ response = @version.page('GET', @uri, params: params, headers: headers)
191
+
192
+ PluginVersionsPageMetadata.new(@version, response, @solution, limits[:limit])
193
+ end
194
+
121
195
  ##
122
196
  # When passed a block, yields PluginVersionsInstance records from the API.
123
197
  # This operation lazily loads records as efficiently as possible until the limit
@@ -140,7 +214,7 @@ module Twilio
140
214
  # @param [Integer] page_number Page Number, this value is simply for client state
141
215
  # @param [Integer] page_size Number of records to return, defaults to 50
142
216
  # @return [Page] Page of PluginVersionsInstance
143
- def page(flex_metadata: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
217
+ def page(flex_metadata: :unset, page_token: :unset, page_number: :unset,page_size: :unset)
144
218
  params = Twilio::Values.of({
145
219
  'Flex-Metadata' => flex_metadata,
146
220
  'PageToken' => page_token,
@@ -187,6 +261,7 @@ module Twilio
187
261
  # @return [PluginVersionsContext] PluginVersionsContext
188
262
  def initialize(version, plugin_sid, sid)
189
263
  super(version)
264
+
190
265
 
191
266
  # Path Solution
192
267
  @solution = { plugin_sid: plugin_sid, sid: sid, }
@@ -217,6 +292,35 @@ module Twilio
217
292
  )
218
293
  end
219
294
 
295
+ ##
296
+ # Fetch the PluginVersionsInstanceMetadata
297
+ # @param [String] flex_metadata The Flex-Metadata HTTP request header
298
+ # @return [PluginVersionsInstance] Fetched PluginVersionsInstance
299
+ def fetch_with_metadata(
300
+ flex_metadata: :unset
301
+ )
302
+
303
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', 'Flex-Metadata' => flex_metadata, })
304
+
305
+
306
+
307
+
308
+
309
+ response = @version.fetch_with_metadata('GET', @uri, headers: headers)
310
+ plugin_versions_instance = PluginVersionsInstance.new(
311
+ @version,
312
+ response.body,
313
+ plugin_sid: @solution[:plugin_sid],
314
+ sid: @solution[:sid],
315
+ )
316
+ PluginVersionsInstanceMetadata.new(
317
+ @version,
318
+ plugin_versions_instance,
319
+ response.headers,
320
+ response.status_code
321
+ )
322
+ end
323
+
220
324
 
221
325
  ##
222
326
  # Provide a user friendly representation
@@ -233,6 +337,53 @@ module Twilio
233
337
  end
234
338
  end
235
339
 
340
+ class PluginVersionsInstanceMetadata < InstanceResourceMetadata
341
+ ##
342
+ # Initializes a new PluginVersionsInstanceMetadata.
343
+ # @param [Version] version Version that contains the resource
344
+ # @param [}PluginVersionsInstance] plugin_versions_instance The instance associated with the metadata.
345
+ # @param [Hash] headers Header object with response headers.
346
+ # @param [Integer] status_code The HTTP status code of the response.
347
+ # @return [PluginVersionsInstanceMetadata] The initialized instance with metadata.
348
+ def initialize(version, plugin_versions_instance, headers, status_code)
349
+ super(version, headers, status_code)
350
+ @plugin_versions_instance = plugin_versions_instance
351
+ end
352
+
353
+ def plugin_versions
354
+ @plugin_versions_instance
355
+ end
356
+
357
+ def headers
358
+ @headers
359
+ end
360
+
361
+ def status_code
362
+ @status_code
363
+ end
364
+
365
+ def to_s
366
+ "<Twilio.Api.V2010.PluginVersionsInstanceMetadata status=#{@status_code}>"
367
+ end
368
+ end
369
+
370
+ class PluginVersionsListResponse < InstanceListResource
371
+ # @param [Array<PluginVersionsInstance>] instance
372
+ # @param [Hash{String => Object}] headers
373
+ # @param [Integer] status_code
374
+ def initialize(version, payload, key)
375
+ @plugin_versions_instance = payload.body[key].map do |data|
376
+ PluginVersionsInstance.new(version, data)
377
+ end
378
+ @headers = payload.headers
379
+ @status_code = payload.status_code
380
+ end
381
+
382
+ def plugin_versions_instance
383
+ @instance
384
+ end
385
+ end
386
+
236
387
  class PluginVersionsPage < Page
237
388
  ##
238
389
  # Initialize the PluginVersionsPage
@@ -242,6 +393,7 @@ module Twilio
242
393
  # @return [PluginVersionsPage] PluginVersionsPage
243
394
  def initialize(version, response, solution)
244
395
  super(version, response)
396
+
245
397
 
246
398
  # Path Solution
247
399
  @solution = solution
@@ -261,6 +413,66 @@ module Twilio
261
413
  '<Twilio.FlexApi.V1.PluginVersionsPage>'
262
414
  end
263
415
  end
416
+
417
+ class PluginVersionsPageMetadata < PageMetadata
418
+ attr_reader :plugin_versions_page
419
+
420
+ def initialize(version, response, solution, limit)
421
+ super(version, response)
422
+ @plugin_versions_page = []
423
+ @limit = limit
424
+ key = get_key(response.body)
425
+ records = 0
426
+ while( limit != :unset && records < limit )
427
+ @plugin_versions_page << PluginVersionsListResponse.new(version, @payload, key, limit - records)
428
+ @payload = self.next_page
429
+ break unless @payload
430
+ records += @payload.body[key].size
431
+ end
432
+ # Path Solution
433
+ @solution = solution
434
+ end
435
+
436
+ def each
437
+ @plugin_versions_page.each do |record|
438
+ yield record
439
+ end
440
+ end
441
+
442
+ def to_s
443
+ '<Twilio::REST::FlexApi::V1PageMetadata>';
444
+ end
445
+ end
446
+ class PluginVersionsListResponse < InstanceListResource
447
+
448
+ # @param [Array<PluginVersionsInstance>] instance
449
+ # @param [Hash{String => Object}] headers
450
+ # @param [Integer] status_code
451
+ def initialize(version, payload, key, limit = :unset)
452
+ data_list = payload.body[key]
453
+ if limit != :unset
454
+ data_list = data_list[0, limit]
455
+ end
456
+ @plugin_versions = data_list.map do |data|
457
+ PluginVersionsInstance.new(version, data)
458
+ end
459
+ @headers = payload.headers
460
+ @status_code = payload.status_code
461
+ end
462
+
463
+ def plugin_versions
464
+ @plugin_versions
465
+ end
466
+
467
+ def headers
468
+ @headers
469
+ end
470
+
471
+ def status_code
472
+ @status_code
473
+ end
474
+ end
475
+
264
476
  class PluginVersionsInstance < InstanceResource
265
477
  ##
266
478
  # Initialize the PluginVersionsInstance
@@ -274,6 +486,7 @@ module Twilio
274
486
  def initialize(version, payload , plugin_sid: nil, sid: nil)
275
487
  super(version)
276
488
 
489
+
277
490
  # Marshaled Properties
278
491
  @properties = {
279
492
  'sid' => payload['sid'],
@@ -25,6 +25,7 @@ module Twilio
25
25
  # @return [PluginList] PluginList
26
26
  def initialize(version)
27
27
  super(version)
28
+
28
29
  # Path Solution
29
30
  @solution = { }
30
31
  @uri = "/PluginService/Plugins"
@@ -63,6 +64,45 @@ module Twilio
63
64
  )
64
65
  end
65
66
 
67
+ ##
68
+ # Create the PluginInstanceMetadata
69
+ # @param [String] unique_name The Flex Plugin's unique name.
70
+ # @param [String] friendly_name The Flex Plugin's friendly name.
71
+ # @param [String] description A descriptive string that you create to describe the plugin resource. It can be up to 500 characters long
72
+ # @param [String] flex_metadata The Flex-Metadata HTTP request header
73
+ # @return [PluginInstance] Created PluginInstance
74
+ def create_with_metadata(
75
+ unique_name: nil,
76
+ friendly_name: :unset,
77
+ description: :unset,
78
+ flex_metadata: :unset
79
+ )
80
+
81
+ data = Twilio::Values.of({
82
+ 'UniqueName' => unique_name,
83
+ 'FriendlyName' => friendly_name,
84
+ 'Description' => description,
85
+ })
86
+
87
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', 'Flex-Metadata' => flex_metadata, })
88
+
89
+
90
+
91
+
92
+
93
+ response = @version.create_with_metadata('POST', @uri, data: data, headers: headers)
94
+ plugin_instance = PluginInstance.new(
95
+ @version,
96
+ response.body,
97
+ )
98
+ PluginInstanceMetadata.new(
99
+ @version,
100
+ plugin_instance,
101
+ response.headers,
102
+ response.status_code
103
+ )
104
+ end
105
+
66
106
 
67
107
  ##
68
108
  # Lists PluginInstance records from the API as a list.
@@ -106,6 +146,30 @@ module Twilio
106
146
  @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
107
147
  end
108
148
 
149
+ ##
150
+ # Lists PluginPageMetadata records from the API as a list.
151
+ # @param [String] flex_metadata The Flex-Metadata HTTP request header
152
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
153
+ # guarantees to never return more than limit. Default is no limit
154
+ # @param [Integer] page_size Number of records to fetch per request, when
155
+ # not set will use the default value of 50 records. If no page_size is defined
156
+ # but a limit is defined, stream() will attempt to read the limit with the most
157
+ # efficient page size, i.e. min(limit, 1000)
158
+ # @return [Array] Array of up to limit results
159
+ def list_with_metadata(flex_metadata: :unset, limit: nil, page_size: nil)
160
+ limits = @version.read_limits(limit, page_size)
161
+ params = Twilio::Values.of({
162
+ 'Flex-Metadata' => flex_metadata,
163
+
164
+ 'PageSize' => limits[:page_size],
165
+ });
166
+ headers = Twilio::Values.of({})
167
+
168
+ response = @version.page('GET', @uri, params: params, headers: headers)
169
+
170
+ PluginPageMetadata.new(@version, response, @solution, limits[:limit])
171
+ end
172
+
109
173
  ##
110
174
  # When passed a block, yields PluginInstance records from the API.
111
175
  # This operation lazily loads records as efficiently as possible until the limit
@@ -128,7 +192,7 @@ module Twilio
128
192
  # @param [Integer] page_number Page Number, this value is simply for client state
129
193
  # @param [Integer] page_size Number of records to return, defaults to 50
130
194
  # @return [Page] Page of PluginInstance
131
- def page(flex_metadata: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
195
+ def page(flex_metadata: :unset, page_token: :unset, page_number: :unset,page_size: :unset)
132
196
  params = Twilio::Values.of({
133
197
  'Flex-Metadata' => flex_metadata,
134
198
  'PageToken' => page_token,
@@ -174,6 +238,7 @@ module Twilio
174
238
  # @return [PluginContext] PluginContext
175
239
  def initialize(version, sid)
176
240
  super(version)
241
+
177
242
 
178
243
  # Path Solution
179
244
  @solution = { sid: sid, }
@@ -204,6 +269,34 @@ module Twilio
204
269
  )
205
270
  end
206
271
 
272
+ ##
273
+ # Fetch the PluginInstanceMetadata
274
+ # @param [String] flex_metadata The Flex-Metadata HTTP request header
275
+ # @return [PluginInstance] Fetched PluginInstance
276
+ def fetch_with_metadata(
277
+ flex_metadata: :unset
278
+ )
279
+
280
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', 'Flex-Metadata' => flex_metadata, })
281
+
282
+
283
+
284
+
285
+
286
+ response = @version.fetch_with_metadata('GET', @uri, headers: headers)
287
+ plugin_instance = PluginInstance.new(
288
+ @version,
289
+ response.body,
290
+ sid: @solution[:sid],
291
+ )
292
+ PluginInstanceMetadata.new(
293
+ @version,
294
+ plugin_instance,
295
+ response.headers,
296
+ response.status_code
297
+ )
298
+ end
299
+
207
300
  ##
208
301
  # Update the PluginInstance
209
302
  # @param [String] friendly_name The Flex Plugin's friendly name.
@@ -235,6 +328,43 @@ module Twilio
235
328
  )
236
329
  end
237
330
 
331
+ ##
332
+ # Update the PluginInstanceMetadata
333
+ # @param [String] friendly_name The Flex Plugin's friendly name.
334
+ # @param [String] description A descriptive string that you update to describe the plugin resource. It can be up to 500 characters long
335
+ # @param [String] flex_metadata The Flex-Metadata HTTP request header
336
+ # @return [PluginInstance] Updated PluginInstance
337
+ def update_with_metadata(
338
+ friendly_name: :unset,
339
+ description: :unset,
340
+ flex_metadata: :unset
341
+ )
342
+
343
+ data = Twilio::Values.of({
344
+ 'FriendlyName' => friendly_name,
345
+ 'Description' => description,
346
+ })
347
+
348
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', 'Flex-Metadata' => flex_metadata, })
349
+
350
+
351
+
352
+
353
+
354
+ response = @version.update_with_metadata('POST', @uri, data: data, headers: headers)
355
+ plugin_instance = PluginInstance.new(
356
+ @version,
357
+ response.body,
358
+ sid: @solution[:sid],
359
+ )
360
+ PluginInstanceMetadata.new(
361
+ @version,
362
+ plugin_instance,
363
+ response.headers,
364
+ response.status_code
365
+ )
366
+ end
367
+
238
368
  ##
239
369
  # Access the plugin_versions
240
370
  # @return [PluginVersionsList]
@@ -270,6 +400,53 @@ module Twilio
270
400
  end
271
401
  end
272
402
 
403
+ class PluginInstanceMetadata < InstanceResourceMetadata
404
+ ##
405
+ # Initializes a new PluginInstanceMetadata.
406
+ # @param [Version] version Version that contains the resource
407
+ # @param [}PluginInstance] plugin_instance The instance associated with the metadata.
408
+ # @param [Hash] headers Header object with response headers.
409
+ # @param [Integer] status_code The HTTP status code of the response.
410
+ # @return [PluginInstanceMetadata] The initialized instance with metadata.
411
+ def initialize(version, plugin_instance, headers, status_code)
412
+ super(version, headers, status_code)
413
+ @plugin_instance = plugin_instance
414
+ end
415
+
416
+ def plugin
417
+ @plugin_instance
418
+ end
419
+
420
+ def headers
421
+ @headers
422
+ end
423
+
424
+ def status_code
425
+ @status_code
426
+ end
427
+
428
+ def to_s
429
+ "<Twilio.Api.V2010.PluginInstanceMetadata status=#{@status_code}>"
430
+ end
431
+ end
432
+
433
+ class PluginListResponse < InstanceListResource
434
+ # @param [Array<PluginInstance>] instance
435
+ # @param [Hash{String => Object}] headers
436
+ # @param [Integer] status_code
437
+ def initialize(version, payload, key)
438
+ @plugin_instance = payload.body[key].map do |data|
439
+ PluginInstance.new(version, data)
440
+ end
441
+ @headers = payload.headers
442
+ @status_code = payload.status_code
443
+ end
444
+
445
+ def plugin_instance
446
+ @instance
447
+ end
448
+ end
449
+
273
450
  class PluginPage < Page
274
451
  ##
275
452
  # Initialize the PluginPage
@@ -279,6 +456,7 @@ module Twilio
279
456
  # @return [PluginPage] PluginPage
280
457
  def initialize(version, response, solution)
281
458
  super(version, response)
459
+
282
460
 
283
461
  # Path Solution
284
462
  @solution = solution
@@ -298,6 +476,66 @@ module Twilio
298
476
  '<Twilio.FlexApi.V1.PluginPage>'
299
477
  end
300
478
  end
479
+
480
+ class PluginPageMetadata < PageMetadata
481
+ attr_reader :plugin_page
482
+
483
+ def initialize(version, response, solution, limit)
484
+ super(version, response)
485
+ @plugin_page = []
486
+ @limit = limit
487
+ key = get_key(response.body)
488
+ records = 0
489
+ while( limit != :unset && records < limit )
490
+ @plugin_page << PluginListResponse.new(version, @payload, key, limit - records)
491
+ @payload = self.next_page
492
+ break unless @payload
493
+ records += @payload.body[key].size
494
+ end
495
+ # Path Solution
496
+ @solution = solution
497
+ end
498
+
499
+ def each
500
+ @plugin_page.each do |record|
501
+ yield record
502
+ end
503
+ end
504
+
505
+ def to_s
506
+ '<Twilio::REST::FlexApi::V1PageMetadata>';
507
+ end
508
+ end
509
+ class PluginListResponse < InstanceListResource
510
+
511
+ # @param [Array<PluginInstance>] instance
512
+ # @param [Hash{String => Object}] headers
513
+ # @param [Integer] status_code
514
+ def initialize(version, payload, key, limit = :unset)
515
+ data_list = payload.body[key]
516
+ if limit != :unset
517
+ data_list = data_list[0, limit]
518
+ end
519
+ @plugin = data_list.map do |data|
520
+ PluginInstance.new(version, data)
521
+ end
522
+ @headers = payload.headers
523
+ @status_code = payload.status_code
524
+ end
525
+
526
+ def plugin
527
+ @plugin
528
+ end
529
+
530
+ def headers
531
+ @headers
532
+ end
533
+
534
+ def status_code
535
+ @status_code
536
+ end
537
+ end
538
+
301
539
  class PluginInstance < InstanceResource
302
540
  ##
303
541
  # Initialize the PluginInstance
@@ -311,6 +549,7 @@ module Twilio
311
549
  def initialize(version, payload , sid: nil)
312
550
  super(version)
313
551
 
552
+
314
553
  # Marshaled Properties
315
554
  @properties = {
316
555
  'sid' => payload['sid'],