twilio-ruby 6.8.0 → 7.10.7

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 (761) hide show
  1. checksums.yaml +5 -5
  2. data/.dockerignore +1 -1
  3. data/.github/ISSUE_TEMPLATE/bug_report.yml +69 -0
  4. data/.github/workflows/test-and-deploy.yml +17 -8
  5. data/.gitignore +1 -0
  6. data/.rubocop.yml +1 -0
  7. data/CHANGES.md +1303 -1
  8. data/Dockerfile +3 -2
  9. data/Gemfile +5 -0
  10. data/Makefile +4 -1
  11. data/README.md +7 -2
  12. data/UPGRADE.md +11 -0
  13. data/cluster/cluster_oauth_spec.rb +19 -0
  14. data/cluster/cluster_orgs_spec.rb +40 -0
  15. data/{cluster_spec.rb → cluster/cluster_spec.rb} +0 -2
  16. data/examples/public_oauth.rb +13 -0
  17. data/lib/twilio-ruby/auth_strategy/auth_strategy.rb +19 -0
  18. data/lib/twilio-ruby/auth_strategy/no_auth_strategy.rb +17 -0
  19. data/lib/twilio-ruby/auth_strategy/token_auth_strategy.rb +39 -0
  20. data/lib/twilio-ruby/base/client_base.rb +12 -2
  21. data/lib/twilio-ruby/credential/auth_type.rb +17 -0
  22. data/lib/twilio-ruby/credential/client_credential_provider.rb +28 -0
  23. data/lib/twilio-ruby/credential/credential_provider.rb +11 -0
  24. data/lib/twilio-ruby/credential/orgs_credential_provider.rb +30 -0
  25. data/lib/twilio-ruby/framework/request.rb +8 -1
  26. data/lib/twilio-ruby/framework/rest/api_v1_version.rb +22 -0
  27. data/lib/twilio-ruby/framework/rest/domain.rb +0 -1
  28. data/lib/twilio-ruby/framework/rest/error.rb +27 -0
  29. data/lib/twilio-ruby/framework/rest/page.rb +1 -0
  30. data/lib/twilio-ruby/framework/rest/page_metadata.rb +83 -0
  31. data/lib/twilio-ruby/framework/rest/resource.rb +16 -0
  32. data/lib/twilio-ruby/framework/rest/token_page.rb +73 -0
  33. data/lib/twilio-ruby/framework/rest/version.rb +91 -4
  34. data/lib/twilio-ruby/http/client_token_manager.rb +31 -0
  35. data/lib/twilio-ruby/http/http_client.rb +22 -5
  36. data/lib/twilio-ruby/http/org_token_manager.rb +31 -0
  37. data/lib/twilio-ruby/rest/accounts/v1/auth_token_promotion.rb +143 -1
  38. data/lib/twilio-ruby/rest/accounts/v1/bulk_consents.rb +231 -0
  39. data/lib/twilio-ruby/rest/accounts/v1/bulk_contacts.rb +231 -0
  40. data/lib/twilio-ruby/rest/accounts/v1/credential/aws.rb +295 -14
  41. data/lib/twilio-ruby/rest/accounts/v1/credential/public_key.rb +295 -14
  42. data/lib/twilio-ruby/rest/accounts/v1/credential.rb +64 -0
  43. data/lib/twilio-ruby/rest/accounts/v1/messaging_geopermissions.rb +285 -0
  44. data/lib/twilio-ruby/rest/accounts/v1/safelist.rb +177 -10
  45. data/lib/twilio-ruby/rest/accounts/v1/secondary_auth_token.rb +168 -2
  46. data/lib/twilio-ruby/rest/accounts/v1.rb +29 -2
  47. data/lib/twilio-ruby/rest/api/v2010/account/address/dependent_phone_number.rb +102 -5
  48. data/lib/twilio-ruby/rest/api/v2010/account/address.rb +385 -42
  49. data/lib/twilio-ruby/rest/api/v2010/account/application.rb +427 -57
  50. data/lib/twilio-ruby/rest/api/v2010/account/authorized_connect_app.rb +183 -20
  51. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/local.rb +141 -8
  52. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/machine_to_machine.rb +141 -8
  53. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/mobile.rb +141 -8
  54. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/national.rb +141 -8
  55. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/shared_cost.rb +141 -8
  56. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/toll_free.rb +141 -8
  57. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/voip.rb +141 -8
  58. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country.rb +183 -6
  59. data/lib/twilio-ruby/rest/api/v2010/account/balance.rb +96 -1
  60. data/lib/twilio-ruby/rest/api/v2010/account/call/event.rb +102 -5
  61. data/lib/twilio-ruby/rest/api/v2010/account/call/notification.rb +192 -6
  62. data/lib/twilio-ruby/rest/api/v2010/account/call/payment.rb +283 -28
  63. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +330 -19
  64. data/lib/twilio-ruby/rest/api/v2010/account/call/siprec.rb +1004 -207
  65. data/lib/twilio-ruby/rest/api/v2010/account/call/stream.rb +1010 -213
  66. data/lib/twilio-ruby/rest/api/v2010/account/call/transcription.rb +559 -0
  67. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message.rb +109 -3
  68. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message_subscription.rb +186 -5
  69. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +550 -120
  70. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +572 -86
  71. data/lib/twilio-ruby/rest/api/v2010/account/conference/recording.rb +263 -12
  72. data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +274 -36
  73. data/lib/twilio-ruby/rest/api/v2010/account/connect_app.rb +285 -24
  74. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension.rb +185 -8
  75. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on.rb +250 -11
  76. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +238 -29
  77. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +238 -29
  78. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +238 -29
  79. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +507 -79
  80. data/lib/twilio-ruby/rest/api/v2010/account/key.rb +250 -10
  81. data/lib/twilio-ruby/rest/api/v2010/account/message/feedback.rb +105 -2
  82. data/lib/twilio-ruby/rest/api/v2010/account/message/media.rb +215 -7
  83. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +421 -52
  84. data/lib/twilio-ruby/rest/api/v2010/account/new_key.rb +104 -2
  85. data/lib/twilio-ruby/rest/api/v2010/account/new_signing_key.rb +104 -2
  86. data/lib/twilio-ruby/rest/api/v2010/account/notification.rb +191 -6
  87. data/lib/twilio-ruby/rest/api/v2010/account/outgoing_caller_id.rb +254 -10
  88. data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +232 -11
  89. data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +299 -15
  90. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload/data.rb +343 -0
  91. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload.rb +232 -8
  92. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result.rb +209 -7
  93. data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +209 -7
  94. data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +229 -10
  95. data/lib/twilio-ruby/rest/api/v2010/account/short_code.rb +254 -19
  96. data/lib/twilio-ruby/rest/api/v2010/account/signing_key.rb +250 -10
  97. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list/credential.rb +297 -13
  98. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list.rb +290 -12
  99. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls/auth_calls_credential_list_mapping.rb +250 -9
  100. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls/auth_calls_ip_access_control_list_mapping.rb +250 -9
  101. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls.rb +64 -0
  102. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_registrations/auth_registrations_credential_list_mapping.rb +250 -9
  103. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_registrations.rb +64 -0
  104. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types.rb +64 -0
  105. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb +250 -9
  106. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/ip_access_control_list_mapping.rb +250 -9
  107. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +398 -48
  108. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +311 -18
  109. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb +290 -12
  110. data/lib/twilio-ruby/rest/api/v2010/account/sip.rb +64 -0
  111. data/lib/twilio-ruby/rest/api/v2010/account/token.rb +104 -2
  112. data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +208 -7
  113. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +114 -9
  114. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +114 -9
  115. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +114 -9
  116. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +114 -9
  117. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +114 -9
  118. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +114 -9
  119. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +114 -9
  120. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +114 -9
  121. data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +114 -9
  122. data/lib/twilio-ruby/rest/api/v2010/account/usage/trigger.rb +335 -27
  123. data/lib/twilio-ruby/rest/api/v2010/account/usage.rb +64 -0
  124. data/lib/twilio-ruby/rest/api/v2010/account/validation_request.rb +124 -7
  125. data/lib/twilio-ruby/rest/api/v2010/account.rb +271 -13
  126. data/lib/twilio-ruby/rest/api/v2010.rb +1 -0
  127. data/lib/twilio-ruby/rest/assistants/v1/assistant/assistants_knowledge.rb +558 -0
  128. data/lib/twilio-ruby/rest/assistants/v1/assistant/assistants_tool.rb +558 -0
  129. data/lib/twilio-ruby/rest/assistants/v1/assistant/feedback.rb +431 -0
  130. data/lib/twilio-ruby/rest/assistants/v1/assistant/message.rb +296 -0
  131. data/lib/twilio-ruby/rest/assistants/v1/assistant.rb +927 -0
  132. data/lib/twilio-ruby/rest/{microvisor/v1/app.rb → assistants/v1/knowledge/chunk.rb} +145 -169
  133. data/lib/twilio-ruby/rest/assistants/v1/knowledge/knowledge_status.rb +349 -0
  134. data/lib/twilio-ruby/rest/assistants/v1/knowledge.rb +871 -0
  135. data/lib/twilio-ruby/rest/assistants/v1/policy.rb +364 -0
  136. data/lib/twilio-ruby/rest/assistants/v1/session/message.rb +360 -0
  137. data/lib/twilio-ruby/rest/assistants/v1/session.rb +501 -0
  138. data/lib/twilio-ruby/rest/assistants/v1/tool.rb +847 -0
  139. data/lib/twilio-ruby/rest/assistants/v1.rb +104 -0
  140. data/lib/twilio-ruby/rest/assistants.rb +6 -0
  141. data/lib/twilio-ruby/rest/{autopilot_base.rb → assistants_base.rb} +6 -6
  142. data/lib/twilio-ruby/rest/bulkexports/v1/export/day.rb +183 -6
  143. data/lib/twilio-ruby/rest/bulkexports/v1/export/export_custom_job.rb +163 -13
  144. data/lib/twilio-ruby/rest/bulkexports/v1/export/job.rb +170 -3
  145. data/lib/twilio-ruby/rest/bulkexports/v1/export.rb +144 -1
  146. data/lib/twilio-ruby/rest/bulkexports/v1/export_configuration.rb +195 -8
  147. data/lib/twilio-ruby/rest/bulkexports/v1.rb +2 -0
  148. data/lib/twilio-ruby/rest/chat/v1/credential.rb +336 -28
  149. data/lib/twilio-ruby/rest/chat/v1/service/channel/invite.rb +257 -10
  150. data/lib/twilio-ruby/rest/chat/v1/service/channel/member.rb +305 -15
  151. data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +308 -16
  152. data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +315 -19
  153. data/lib/twilio-ruby/rest/chat/v1/service/role.rb +298 -14
  154. data/lib/twilio-ruby/rest/chat/v1/service/user/user_channel.rb +102 -5
  155. data/lib/twilio-ruby/rest/chat/v1/service/user.rb +312 -19
  156. data/lib/twilio-ruby/rest/chat/v1/service.rb +552 -118
  157. data/lib/twilio-ruby/rest/chat/v1.rb +2 -0
  158. data/lib/twilio-ruby/rest/chat/v2/credential.rb +336 -28
  159. data/lib/twilio-ruby/rest/chat/v2/service/binding.rb +214 -7
  160. data/lib/twilio-ruby/rest/chat/v2/service/channel/invite.rb +257 -10
  161. data/lib/twilio-ruby/rest/chat/v2/service/channel/member.rb +354 -33
  162. data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +353 -33
  163. data/lib/twilio-ruby/rest/chat/v2/service/channel/webhook.rb +342 -28
  164. data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +351 -33
  165. data/lib/twilio-ruby/rest/chat/v2/service/role.rb +298 -14
  166. data/lib/twilio-ruby/rest/chat/v2/service/user/user_binding.rb +212 -7
  167. data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +266 -16
  168. data/lib/twilio-ruby/rest/chat/v2/service/user.rb +317 -22
  169. data/lib/twilio-ruby/rest/chat/v2/service.rb +437 -72
  170. data/lib/twilio-ruby/rest/chat/v2.rb +2 -0
  171. data/lib/twilio-ruby/rest/chat/v3/channel.rb +162 -7
  172. data/lib/twilio-ruby/rest/chat/v3.rb +6 -0
  173. data/lib/twilio-ruby/rest/client.rb +26 -11
  174. data/lib/twilio-ruby/rest/content/v1/content/approval_create.rb +280 -0
  175. data/lib/twilio-ruby/rest/content/v1/content/approval_fetch.rb +144 -3
  176. data/lib/twilio-ruby/rest/content/v1/content.rb +1577 -10
  177. data/lib/twilio-ruby/rest/content/v1/content_and_approvals.rb +102 -5
  178. data/lib/twilio-ruby/rest/content/v1/legacy_content.rb +102 -5
  179. data/lib/twilio-ruby/rest/content/v1.rb +1 -0
  180. data/lib/twilio-ruby/rest/content/v2/content.rb +433 -0
  181. data/lib/twilio-ruby/rest/content/v2/content_and_approvals.rb +426 -0
  182. data/lib/twilio-ruby/rest/content/v2.rb +46 -0
  183. data/lib/twilio-ruby/rest/content_base.rb +6 -1
  184. data/lib/twilio-ruby/rest/conversations/v1/address_configuration.rb +373 -39
  185. data/lib/twilio-ruby/rest/conversations/v1/configuration/webhook.rb +206 -15
  186. data/lib/twilio-ruby/rest/conversations/v1/configuration.rb +198 -10
  187. data/lib/twilio-ruby/rest/conversations/v1/conversation/message/delivery_receipt.rb +184 -6
  188. data/lib/twilio-ruby/rest/conversations/v1/conversation/message.rb +360 -37
  189. data/lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb +367 -40
  190. data/lib/twilio-ruby/rest/conversations/v1/conversation/webhook.rb +334 -26
  191. data/lib/twilio-ruby/rest/conversations/v1/conversation.rb +421 -76
  192. data/lib/twilio-ruby/rest/conversations/v1/conversation_with_participants.rb +392 -0
  193. data/lib/twilio-ruby/rest/conversations/v1/credential.rb +341 -30
  194. data/lib/twilio-ruby/rest/conversations/v1/participant_conversation.rb +106 -5
  195. data/lib/twilio-ruby/rest/conversations/v1/role.rb +295 -14
  196. data/lib/twilio-ruby/rest/conversations/v1/service/binding.rb +217 -10
  197. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb +245 -28
  198. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb +200 -10
  199. data/lib/twilio-ruby/rest/conversations/v1/service/configuration.rb +216 -26
  200. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message/delivery_receipt.rb +185 -6
  201. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message.rb +363 -37
  202. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/participant.rb +370 -40
  203. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/webhook.rb +337 -26
  204. data/lib/twilio-ruby/rest/conversations/v1/service/conversation.rb +425 -77
  205. data/lib/twilio-ruby/rest/conversations/v1/service/conversation_with_participants.rb +399 -0
  206. data/lib/twilio-ruby/rest/conversations/v1/service/participant_conversation.rb +106 -5
  207. data/lib/twilio-ruby/rest/conversations/v1/service/role.rb +298 -14
  208. data/lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb +262 -14
  209. data/lib/twilio-ruby/rest/conversations/v1/service/user.rb +321 -24
  210. data/lib/twilio-ruby/rest/conversations/v1/service.rb +283 -27
  211. data/lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb +260 -14
  212. data/lib/twilio-ruby/rest/conversations/v1/user.rb +318 -24
  213. data/lib/twilio-ruby/rest/conversations/v1.rb +12 -0
  214. data/lib/twilio-ruby/rest/conversations/v2/action.rb +507 -0
  215. data/lib/twilio-ruby/rest/conversations/v2/communication.rb +698 -0
  216. data/lib/twilio-ruby/rest/conversations/v2/configuration.rb +1208 -0
  217. data/lib/twilio-ruby/rest/conversations/v2/conversation.rb +1365 -0
  218. data/lib/twilio-ruby/rest/conversations/v2/operation.rb +369 -0
  219. data/lib/twilio-ruby/rest/conversations/v2/participant.rb +745 -0
  220. data/lib/twilio-ruby/rest/conversations/v2.rb +142 -0
  221. data/lib/twilio-ruby/rest/conversations_base.rb +6 -1
  222. data/lib/twilio-ruby/rest/events/v1/event_type.rb +198 -8
  223. data/lib/twilio-ruby/rest/events/v1/schema/schema_version.rb +183 -8
  224. data/lib/twilio-ruby/rest/events/v1/schema.rb +144 -3
  225. data/lib/twilio-ruby/rest/events/v1/sink/sink_test.rb +96 -1
  226. data/lib/twilio-ruby/rest/events/v1/sink/sink_validate.rb +104 -2
  227. data/lib/twilio-ruby/rest/events/v1/sink.rb +299 -16
  228. data/lib/twilio-ruby/rest/events/v1/subscription/subscribed_event.rb +298 -19
  229. data/lib/twilio-ruby/rest/events/v1/subscription.rb +297 -22
  230. data/lib/twilio-ruby/rest/events/v1.rb +4 -0
  231. data/lib/twilio-ruby/rest/flex_api/v1/assessments.rb +288 -31
  232. data/lib/twilio-ruby/rest/flex_api/v1/channel.rb +282 -18
  233. data/lib/twilio-ruby/rest/flex_api/v1/configuration.rb +216 -3
  234. data/lib/twilio-ruby/rest/flex_api/v1/flex_flow.rb +433 -60
  235. data/lib/twilio-ruby/rest/flex_api/v1/insights_assessments_comment.rb +172 -16
  236. data/lib/twilio-ruby/rest/flex_api/v1/insights_conversations.rb +106 -5
  237. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires.rb +331 -30
  238. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_category.rb +266 -18
  239. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_question.rb +305 -30
  240. data/lib/twilio-ruby/rest/flex_api/v1/insights_segments.rb +109 -5
  241. data/lib/twilio-ruby/rest/flex_api/v1/insights_session.rb +147 -5
  242. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_answer_sets.rb +98 -2
  243. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_comment.rb +98 -2
  244. data/lib/twilio-ruby/rest/flex_api/v1/insights_user_roles.rb +147 -5
  245. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_invite.rb +143 -7
  246. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_participant.rb +251 -11
  247. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_transfer.rb +548 -0
  248. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb +257 -11
  249. data/lib/twilio-ruby/rest/flex_api/v1/interaction.rb +275 -5
  250. data/lib/twilio-ruby/rest/flex_api/v1/plugin/plugin_versions.rb +629 -0
  251. data/lib/twilio-ruby/rest/flex_api/v1/plugin.rb +708 -0
  252. data/lib/twilio-ruby/rest/flex_api/v1/plugin_archive.rb +390 -0
  253. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration/configured_plugin.rb +572 -0
  254. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration.rb +607 -0
  255. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration_archive.rb +376 -0
  256. data/lib/twilio-ruby/rest/flex_api/v1/plugin_release.rb +547 -0
  257. data/lib/twilio-ruby/rest/flex_api/v1/plugin_version_archive.rb +400 -0
  258. data/lib/twilio-ruby/rest/flex_api/v1/provisioning_status.rb +327 -0
  259. data/lib/twilio-ruby/rest/flex_api/v1/web_channel.rb +312 -19
  260. data/lib/twilio-ruby/rest/flex_api/v1.rb +137 -0
  261. data/lib/twilio-ruby/rest/flex_api/v2/flex_user.rb +515 -0
  262. data/lib/twilio-ruby/rest/flex_api/v2/web_channels.rb +125 -5
  263. data/lib/twilio-ruby/rest/flex_api/v2.rb +43 -0
  264. data/lib/twilio-ruby/rest/frontline_api/v1/user.rb +200 -12
  265. data/lib/twilio-ruby/rest/frontline_api/v1.rb +1 -0
  266. data/lib/twilio-ruby/rest/iam/v1/api_key.rb +471 -0
  267. data/lib/twilio-ruby/rest/iam/v1/get_api_keys.rb +328 -0
  268. data/lib/twilio-ruby/rest/iam/v1/new_api_key.rb +284 -0
  269. data/lib/twilio-ruby/rest/iam/v1/o_auth_app.rb +647 -0
  270. data/lib/twilio-ruby/rest/iam/v1/role_permission.rb +327 -0
  271. data/lib/twilio-ruby/rest/iam/v1/token.rb +301 -0
  272. data/lib/twilio-ruby/rest/iam/v1.rb +99 -0
  273. data/lib/twilio-ruby/rest/iam.rb +6 -0
  274. data/lib/twilio-ruby/rest/iam_base.rb +33 -0
  275. data/lib/twilio-ruby/rest/insights/v1/call/annotation.rb +216 -19
  276. data/lib/twilio-ruby/rest/insights/v1/call/call_summary.rb +162 -13
  277. data/lib/twilio-ruby/rest/insights/v1/call/event.rb +108 -9
  278. data/lib/twilio-ruby/rest/insights/v1/call/metric.rb +106 -5
  279. data/lib/twilio-ruby/rest/insights/v1/call.rb +144 -1
  280. data/lib/twilio-ruby/rest/insights/v1/call_summaries.rb +267 -26
  281. data/lib/twilio-ruby/rest/insights/v1/conference/conference_participant.rb +202 -10
  282. data/lib/twilio-ruby/rest/insights/v1/conference.rb +202 -6
  283. data/lib/twilio-ruby/rest/insights/v1/room/participant.rb +183 -8
  284. data/lib/twilio-ruby/rest/insights/v1/room.rb +194 -8
  285. data/lib/twilio-ruby/rest/insights/v1/setting.rb +201 -10
  286. data/lib/twilio-ruby/rest/insights/v1.rb +3 -0
  287. data/lib/twilio-ruby/rest/insights/v2/inbound.rb +579 -0
  288. data/lib/twilio-ruby/rest/insights/v2/outbound.rb +650 -0
  289. data/lib/twilio-ruby/rest/insights/v2/report.rb +941 -0
  290. data/lib/twilio-ruby/rest/insights/v2.rb +82 -0
  291. data/lib/twilio-ruby/rest/insights/v3/metadata.rb +227 -0
  292. data/lib/twilio-ruby/rest/insights/v3/query.rb +394 -0
  293. data/lib/twilio-ruby/rest/insights/v3.rb +46 -0
  294. data/lib/twilio-ruby/rest/insights_base.rb +11 -1
  295. data/lib/twilio-ruby/rest/intelligence/v2/custom_operator.rb +728 -0
  296. data/lib/twilio-ruby/rest/intelligence/v2/operator.rb +533 -0
  297. data/lib/twilio-ruby/rest/intelligence/v2/operator_attachment.rb +380 -0
  298. data/lib/twilio-ruby/rest/intelligence/v2/operator_attachments.rb +337 -0
  299. data/lib/twilio-ruby/rest/intelligence/v2/operator_type.rb +539 -0
  300. data/lib/twilio-ruby/rest/intelligence/v2/prebuilt_operator.rb +533 -0
  301. data/lib/twilio-ruby/rest/intelligence/v2/service.rb +392 -50
  302. data/lib/twilio-ruby/rest/intelligence/v2/transcript/encrypted_operator_results.rb +359 -0
  303. data/lib/twilio-ruby/rest/intelligence/v2/transcript/encrypted_sentences.rb +359 -0
  304. data/lib/twilio-ruby/rest/intelligence/v2/transcript/media.rb +152 -5
  305. data/lib/twilio-ruby/rest/intelligence/v2/transcript/operator_result.rb +207 -10
  306. data/lib/twilio-ruby/rest/intelligence/v2/transcript/sentence.rb +124 -10
  307. data/lib/twilio-ruby/rest/intelligence/v2/transcript.rb +333 -30
  308. data/lib/twilio-ruby/rest/intelligence/v2.rb +125 -0
  309. data/lib/twilio-ruby/rest/intelligence/v3/configuration.rb +1073 -0
  310. data/lib/twilio-ruby/rest/intelligence/v3/conversation.rb +602 -0
  311. data/lib/twilio-ruby/rest/intelligence/v3/operator.rb +784 -0
  312. data/lib/twilio-ruby/rest/intelligence/v3/operator_result.rb +622 -0
  313. data/lib/twilio-ruby/rest/intelligence/v3/version.rb +556 -0
  314. data/lib/twilio-ruby/rest/intelligence/v3.rb +120 -0
  315. data/lib/twilio-ruby/rest/intelligence_base.rb +6 -1
  316. data/lib/twilio-ruby/rest/ip_messaging/v1/credential.rb +336 -28
  317. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/invite.rb +257 -10
  318. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb +305 -15
  319. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +308 -16
  320. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +315 -19
  321. data/lib/twilio-ruby/rest/ip_messaging/v1/service/role.rb +298 -14
  322. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user/user_channel.rb +102 -5
  323. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +312 -19
  324. data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +552 -118
  325. data/lib/twilio-ruby/rest/ip_messaging/v1.rb +2 -0
  326. data/lib/twilio-ruby/rest/ip_messaging/v2/credential.rb +336 -28
  327. data/lib/twilio-ruby/rest/ip_messaging/v2/service/binding.rb +214 -7
  328. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/invite.rb +257 -10
  329. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb +354 -33
  330. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +353 -33
  331. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/webhook.rb +342 -28
  332. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +351 -33
  333. data/lib/twilio-ruby/rest/ip_messaging/v2/service/role.rb +298 -14
  334. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_binding.rb +212 -7
  335. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_channel.rb +262 -14
  336. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +317 -22
  337. data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +437 -72
  338. data/lib/twilio-ruby/rest/ip_messaging/v2.rb +2 -0
  339. data/lib/twilio-ruby/rest/knowledge/v1/knowledge/chunk.rb +325 -0
  340. data/lib/twilio-ruby/rest/knowledge/v1/knowledge/knowledge_status.rb +349 -0
  341. data/lib/twilio-ruby/rest/knowledge/v1/knowledge.rb +865 -0
  342. data/lib/twilio-ruby/rest/{preview/sync.rb → knowledge/v1.rb} +17 -16
  343. data/lib/twilio-ruby/rest/knowledge/v2/chunk.rb +306 -0
  344. data/lib/twilio-ruby/rest/knowledge/v2/knowledge.rb +714 -0
  345. data/lib/twilio-ruby/rest/knowledge/v2/knowledge_basis.rb +739 -0
  346. data/lib/twilio-ruby/rest/knowledge/v2/operation.rb +376 -0
  347. data/lib/twilio-ruby/rest/knowledge/v2/search.rb +355 -0
  348. data/lib/twilio-ruby/rest/knowledge/v2.rb +145 -0
  349. data/lib/twilio-ruby/rest/knowledge.rb +6 -0
  350. data/lib/twilio-ruby/rest/knowledge_base.rb +43 -0
  351. data/lib/twilio-ruby/rest/lookups/v1/phone_number.rb +170 -12
  352. data/lib/twilio-ruby/rest/lookups/v1.rb +1 -0
  353. data/lib/twilio-ruby/rest/lookups/v2/bucket.rb +501 -0
  354. data/lib/twilio-ruby/rest/lookups/v2/lookup_override.rb +605 -0
  355. data/lib/twilio-ruby/rest/lookups/v2/phone_number.rb +252 -44
  356. data/lib/twilio-ruby/rest/lookups/v2/query.rb +351 -0
  357. data/lib/twilio-ruby/rest/lookups/v2/rate_limit.rb +229 -0
  358. data/lib/twilio-ruby/rest/lookups/v2.rb +99 -0
  359. data/lib/twilio-ruby/rest/marketplace/v1/available_add_on/available_add_on_extension.rb +483 -0
  360. data/lib/twilio-ruby/rest/marketplace/v1/available_add_on.rb +509 -0
  361. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on/installed_add_on_extension.rb +563 -0
  362. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on/installed_add_on_usage.rb +252 -0
  363. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on.rb +743 -0
  364. data/lib/twilio-ruby/rest/marketplace/v1/module_data.rb +342 -0
  365. data/lib/twilio-ruby/rest/marketplace/v1/module_data_management.rb +511 -0
  366. data/lib/twilio-ruby/rest/marketplace/v1/referral_conversion.rb +235 -0
  367. data/lib/twilio-ruby/rest/marketplace/v1.rb +94 -0
  368. data/lib/twilio-ruby/rest/marketplace.rb +6 -0
  369. data/lib/twilio-ruby/rest/marketplace_base.rb +38 -0
  370. data/lib/twilio-ruby/rest/memory/v1/bulk.rb +362 -0
  371. data/lib/twilio-ruby/rest/memory/v1/conversation_summary.rb +798 -0
  372. data/lib/twilio-ruby/rest/memory/v1/data_mapping.rb +843 -0
  373. data/lib/twilio-ruby/rest/memory/v1/event.rb +320 -0
  374. data/lib/twilio-ruby/rest/memory/v1/identifier.rb +710 -0
  375. data/lib/twilio-ruby/rest/memory/v1/identity_resolution_setting.rb +442 -0
  376. data/lib/twilio-ruby/rest/memory/v1/import.rb +574 -0
  377. data/lib/twilio-ruby/rest/memory/v1/lookup.rb +250 -0
  378. data/lib/twilio-ruby/rest/memory/v1/observation.rb +786 -0
  379. data/lib/twilio-ruby/rest/memory/v1/operation.rb +376 -0
  380. data/lib/twilio-ruby/rest/memory/v1/profile.rb +721 -0
  381. data/lib/twilio-ruby/rest/memory/v1/recall.rb +366 -0
  382. data/lib/twilio-ruby/rest/memory/v1/revision.rb +349 -0
  383. data/lib/twilio-ruby/rest/memory/v1/store.rb +746 -0
  384. data/lib/twilio-ruby/rest/memory/v1/trait.rb +336 -0
  385. data/lib/twilio-ruby/rest/memory/v1/trait_group.rb +904 -0
  386. data/lib/twilio-ruby/rest/memory/v1.rb +475 -0
  387. data/lib/twilio-ruby/rest/memory.rb +6 -0
  388. data/lib/twilio-ruby/rest/{media_base.rb → memory_base.rb} +6 -6
  389. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_registration_otp.rb +96 -1
  390. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_vetting.rb +229 -11
  391. data/lib/twilio-ruby/rest/messaging/v1/brand_registration.rb +296 -17
  392. data/lib/twilio-ruby/rest/messaging/v1/deactivations.rb +151 -3
  393. data/lib/twilio-ruby/rest/messaging/v1/domain_certs.rb +210 -7
  394. data/lib/twilio-ruby/rest/messaging/v1/domain_config.rb +200 -12
  395. data/lib/twilio-ruby/rest/messaging/v1/domain_config_messaging_service.rb +144 -3
  396. data/lib/twilio-ruby/rest/messaging/v1/domain_validate_dn.rb +344 -0
  397. data/lib/twilio-ruby/rest/messaging/v1/external_campaign.rb +113 -3
  398. data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service.rb +170 -4
  399. data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service_domain_association.rb +144 -3
  400. data/lib/twilio-ruby/rest/messaging/v1/request_managed_cert.rb +379 -0
  401. data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +248 -11
  402. data/lib/twilio-ruby/rest/messaging/v1/service/channel_sender.rb +282 -9
  403. data/lib/twilio-ruby/rest/messaging/v1/service/destination_alpha_sender.rb +616 -0
  404. data/lib/twilio-ruby/rest/messaging/v1/service/phone_number.rb +248 -11
  405. data/lib/twilio-ruby/rest/messaging/v1/service/short_code.rb +248 -11
  406. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person.rb +543 -30
  407. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person_usecase.rb +103 -2
  408. data/lib/twilio-ruby/rest/messaging/v1/service.rb +453 -63
  409. data/lib/twilio-ruby/rest/messaging/v1/tollfree_verification.rb +870 -83
  410. data/lib/twilio-ruby/rest/messaging/v1/usecase.rb +95 -1
  411. data/lib/twilio-ruby/rest/messaging/v1.rb +46 -1
  412. data/lib/twilio-ruby/rest/messaging/v2/channels_sender.rb +1017 -0
  413. data/lib/twilio-ruby/rest/messaging/v2/domain_certs.rb +386 -0
  414. data/lib/twilio-ruby/rest/messaging/v2/typing_indicator.rb +237 -0
  415. data/lib/twilio-ruby/rest/messaging/v2.rb +72 -0
  416. data/lib/twilio-ruby/rest/messaging/v3/typing_indicator.rb +247 -0
  417. data/lib/twilio-ruby/rest/messaging/v3.rb +40 -0
  418. data/lib/twilio-ruby/rest/messaging_base.rb +11 -1
  419. data/lib/twilio-ruby/rest/monitor/v1/alert.rb +188 -6
  420. data/lib/twilio-ruby/rest/monitor/v1/event.rb +195 -7
  421. data/lib/twilio-ruby/rest/monitor/v1.rb +2 -0
  422. data/lib/twilio-ruby/rest/notify/v1/credential.rb +336 -30
  423. data/lib/twilio-ruby/rest/notify/v1/service/binding.rb +282 -17
  424. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +173 -20
  425. data/lib/twilio-ruby/rest/notify/v1/service.rb +410 -57
  426. data/lib/twilio-ruby/rest/notify/v1.rb +2 -0
  427. data/lib/twilio-ruby/rest/numbers/v1/bulk_eligibility.rb +190 -3
  428. data/lib/twilio-ruby/rest/numbers/v1/eligibility.rb +221 -0
  429. data/lib/twilio-ruby/rest/numbers/v1/embedded_session.rb +251 -0
  430. data/lib/twilio-ruby/rest/numbers/v1/porting_all_port_in.rb +375 -0
  431. data/lib/twilio-ruby/rest/numbers/v1/porting_port_in.rb +616 -0
  432. data/lib/twilio-ruby/rest/numbers/v1/porting_port_in_phone_number.rb +485 -0
  433. data/lib/twilio-ruby/rest/numbers/v1/porting_portability.rb +168 -26
  434. data/lib/twilio-ruby/rest/numbers/v1/porting_webhook_configuration.rb +242 -0
  435. data/lib/twilio-ruby/rest/numbers/v1/porting_webhook_configuration_delete.rb +301 -0
  436. data/lib/twilio-ruby/rest/numbers/v1/sender_id_registration.rb +333 -0
  437. data/lib/twilio-ruby/rest/numbers/v1/signing_request_configuration.rb +403 -0
  438. data/lib/twilio-ruby/rest/numbers/v1/webhook.rb +252 -0
  439. data/lib/twilio-ruby/rest/numbers/v1.rb +125 -12
  440. data/lib/twilio-ruby/rest/numbers/v2/application.rb +715 -0
  441. data/lib/twilio-ruby/rest/numbers/v2/authorization_document/dependent_hosted_number_order.rb +110 -5
  442. data/lib/twilio-ruby/rest/numbers/v2/authorization_document.rb +270 -16
  443. data/lib/twilio-ruby/rest/numbers/v2/bulk_hosted_number_order.rb +198 -5
  444. data/lib/twilio-ruby/rest/numbers/v2/bundle_clone.rb +430 -0
  445. data/lib/twilio-ruby/rest/numbers/v2/hosted_number_order.rb +448 -27
  446. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/bundle_copy.rb +142 -7
  447. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/evaluation.rb +215 -7
  448. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/item_assignment.rb +248 -9
  449. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/replace_items.rb +104 -2
  450. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle.rb +376 -30
  451. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user.rb +300 -16
  452. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user_type.rb +182 -6
  453. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/regulation.rb +218 -11
  454. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document.rb +307 -16
  455. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document_type.rb +182 -6
  456. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance.rb +64 -0
  457. data/lib/twilio-ruby/rest/numbers/v2.rb +35 -0
  458. data/lib/twilio-ruby/rest/numbers/v3/hosted_number_order.rb +484 -0
  459. data/lib/twilio-ruby/rest/numbers/v3.rb +40 -0
  460. data/lib/twilio-ruby/rest/numbers_base.rb +5 -0
  461. data/lib/twilio-ruby/rest/oauth/v1/authorize.rb +253 -0
  462. data/lib/twilio-ruby/rest/oauth/v1/token.rb +149 -27
  463. data/lib/twilio-ruby/rest/oauth/v1.rb +4 -22
  464. data/lib/twilio-ruby/rest/oauth/v2/authorize.rb +253 -0
  465. data/lib/twilio-ruby/rest/oauth/v2/token.rb +311 -0
  466. data/lib/twilio-ruby/rest/oauth/v2.rb +46 -0
  467. data/lib/twilio-ruby/rest/oauth.rb +2 -29
  468. data/lib/twilio-ruby/rest/oauth_base.rb +6 -1
  469. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document/dependent_hosted_number_order.rb +112 -5
  470. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document.rb +316 -30
  471. data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +406 -48
  472. data/lib/twilio-ruby/rest/preview/hosted_numbers.rb +2 -0
  473. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on/available_add_on_extension.rb +183 -8
  474. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on.rb +182 -8
  475. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on/installed_add_on_extension.rb +225 -11
  476. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on.rb +304 -19
  477. data/lib/twilio-ruby/rest/preview/marketplace.rb +2 -0
  478. data/lib/twilio-ruby/rest/preview/wireless/command.rb +253 -16
  479. data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +328 -25
  480. data/lib/twilio-ruby/rest/preview/wireless/sim/usage.rb +157 -7
  481. data/lib/twilio-ruby/rest/preview/wireless/sim.rb +308 -41
  482. data/lib/twilio-ruby/rest/preview/wireless.rb +3 -0
  483. data/lib/twilio-ruby/rest/preview.rb +1 -20
  484. data/lib/twilio-ruby/rest/preview_base.rb +0 -15
  485. data/lib/twilio-ruby/rest/preview_iam/v1/authorize.rb +253 -0
  486. data/lib/twilio-ruby/rest/preview_iam/v1/token.rb +301 -0
  487. data/lib/twilio-ruby/rest/preview_iam/v1.rb +46 -0
  488. data/lib/twilio-ruby/rest/preview_iam/versionless/organization/account.rb +476 -0
  489. data/lib/twilio-ruby/rest/preview_iam/versionless/organization/role_assignment.rb +603 -0
  490. data/lib/twilio-ruby/rest/preview_iam/versionless/organization/user.rb +981 -0
  491. data/lib/twilio-ruby/rest/preview_iam/versionless/organization.rb +413 -0
  492. data/lib/twilio-ruby/rest/preview_iam/versionless.rb +50 -0
  493. data/lib/twilio-ruby/rest/preview_iam.rb +9 -0
  494. data/lib/twilio-ruby/rest/{microvisor_base.rb → preview_iam_base.rb} +6 -6
  495. data/lib/twilio-ruby/rest/pricing/v1/messaging/country.rb +182 -6
  496. data/lib/twilio-ruby/rest/pricing/v1/messaging.rb +64 -0
  497. data/lib/twilio-ruby/rest/pricing/v1/phone_number/country.rb +182 -6
  498. data/lib/twilio-ruby/rest/pricing/v1/phone_number.rb +64 -0
  499. data/lib/twilio-ruby/rest/pricing/v1/voice/country.rb +182 -6
  500. data/lib/twilio-ruby/rest/pricing/v1/voice/number.rb +144 -1
  501. data/lib/twilio-ruby/rest/pricing/v1/voice.rb +64 -0
  502. data/lib/twilio-ruby/rest/pricing/v1.rb +22 -4
  503. data/lib/twilio-ruby/rest/pricing/v2/country.rb +182 -6
  504. data/lib/twilio-ruby/rest/pricing/v2/number.rb +152 -3
  505. data/lib/twilio-ruby/rest/pricing/v2/voice/country.rb +182 -6
  506. data/lib/twilio-ruby/rest/pricing/v2/voice/number.rb +152 -3
  507. data/lib/twilio-ruby/rest/pricing/v2/voice.rb +64 -0
  508. data/lib/twilio-ruby/rest/pricing/v2.rb +13 -2
  509. data/lib/twilio-ruby/rest/proxy/v1/service/phone_number.rb +298 -16
  510. data/lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb +210 -10
  511. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant/message_interaction.rb +231 -11
  512. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb +262 -14
  513. data/lib/twilio-ruby/rest/proxy/v1/service/session.rb +320 -23
  514. data/lib/twilio-ruby/rest/proxy/v1/service.rb +350 -62
  515. data/lib/twilio-ruby/rest/proxy/v1.rb +1 -0
  516. data/lib/twilio-ruby/rest/routes/v2/phone_number.rb +190 -6
  517. data/lib/twilio-ruby/rest/routes/v2/sip_domain.rb +190 -6
  518. data/lib/twilio-ruby/rest/routes/v2/trunk.rb +190 -6
  519. data/lib/twilio-ruby/rest/routes/v2.rb +3 -0
  520. data/lib/twilio-ruby/rest/serverless/v1/service/asset/asset_version.rb +184 -8
  521. data/lib/twilio-ruby/rest/serverless/v1/service/asset.rb +290 -14
  522. data/lib/twilio-ruby/rest/serverless/v1/service/build/build_status.rb +145 -3
  523. data/lib/twilio-ruby/rest/serverless/v1/service/build.rb +260 -14
  524. data/lib/twilio-ruby/rest/serverless/v1/service/environment/deployment.rb +231 -10
  525. data/lib/twilio-ruby/rest/serverless/v1/service/environment/log.rb +191 -9
  526. data/lib/twilio-ruby/rest/serverless/v1/service/environment/variable.rb +302 -17
  527. data/lib/twilio-ruby/rest/serverless/v1/service/environment.rb +252 -12
  528. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version/function_version_content.rb +146 -3
  529. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version.rb +184 -8
  530. data/lib/twilio-ruby/rest/serverless/v1/service/function.rb +290 -14
  531. data/lib/twilio-ruby/rest/serverless/v1/service.rb +309 -21
  532. data/lib/twilio-ruby/rest/serverless/v1.rb +1 -0
  533. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/engagement_context.rb +145 -1
  534. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step/step_context.rb +146 -1
  535. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb +198 -6
  536. data/lib/twilio-ruby/rest/studio/v1/flow/engagement.rb +256 -11
  537. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_context.rb +145 -1
  538. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step/execution_step_context.rb +146 -1
  539. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step.rb +198 -6
  540. data/lib/twilio-ruby/rest/studio/v1/flow/execution.rb +302 -14
  541. data/lib/twilio-ruby/rest/studio/v1/flow.rb +207 -7
  542. data/lib/twilio-ruby/rest/studio/v1.rb +1 -0
  543. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_context.rb +145 -1
  544. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step/execution_step_context.rb +146 -1
  545. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step.rb +198 -6
  546. data/lib/twilio-ruby/rest/studio/v2/flow/execution.rb +333 -16
  547. data/lib/twilio-ruby/rest/studio/v2/flow/flow_revision.rb +190 -6
  548. data/lib/twilio-ruby/rest/studio/v2/flow/flow_test_user.rb +185 -4
  549. data/lib/twilio-ruby/rest/studio/v2/flow.rb +336 -21
  550. data/lib/twilio-ruby/rest/studio/v2/flow_validate.rb +115 -5
  551. data/lib/twilio-ruby/rest/studio/v2.rb +1 -0
  552. data/lib/twilio-ruby/rest/supersim/v1/esim_profile.rb +243 -17
  553. data/lib/twilio-ruby/rest/supersim/v1/fleet.rb +326 -33
  554. data/lib/twilio-ruby/rest/supersim/v1/ip_command.rb +249 -15
  555. data/lib/twilio-ruby/rest/supersim/v1/network.rb +188 -8
  556. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile/network_access_profile_network.rb +248 -11
  557. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile.rb +266 -14
  558. data/lib/twilio-ruby/rest/supersim/v1/settings_update.rb +106 -5
  559. data/lib/twilio-ruby/rest/supersim/v1/sim/billing_period.rb +102 -5
  560. data/lib/twilio-ruby/rest/supersim/v1/sim/sim_ip_address.rb +102 -5
  561. data/lib/twilio-ruby/rest/supersim/v1/sim.rb +297 -24
  562. data/lib/twilio-ruby/rest/supersim/v1/sms_command.rb +239 -13
  563. data/lib/twilio-ruby/rest/supersim/v1/usage_record.rb +118 -5
  564. data/lib/twilio-ruby/rest/supersim/v1.rb +7 -0
  565. data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +262 -14
  566. data/lib/twilio-ruby/rest/sync/v1/service/document.rb +306 -18
  567. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +333 -25
  568. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +262 -14
  569. data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +303 -16
  570. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +337 -26
  571. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +262 -14
  572. data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +303 -16
  573. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream/stream_message.rb +105 -2
  574. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream.rb +294 -13
  575. data/lib/twilio-ruby/rest/sync/v1/service.rb +341 -30
  576. data/lib/twilio-ruby/rest/sync/v1.rb +1 -0
  577. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/activity.rb +298 -13
  578. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +205 -6
  579. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +505 -117
  580. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +411 -41
  581. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_channel.rb +303 -16
  582. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_bulk_real_time_statistics.rb +258 -0
  583. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics.rb +173 -11
  584. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics.rb +154 -4
  585. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_statistics.rb +173 -11
  586. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queues_statistics.rb +114 -5
  587. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +351 -27
  588. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +493 -113
  589. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_channel.rb +232 -11
  590. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_statistics.rb +168 -9
  591. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_cumulative_statistics.rb +167 -9
  592. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_real_time_statistics.rb +152 -3
  593. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_statistics.rb +182 -15
  594. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +336 -24
  595. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics.rb +173 -11
  596. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_real_time_statistics.rb +153 -3
  597. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_statistics.rb +173 -11
  598. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +333 -26
  599. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_cumulative_statistics.rb +172 -11
  600. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_real_time_statistics.rb +152 -3
  601. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_statistics.rb +172 -11
  602. data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +339 -29
  603. data/lib/twilio-ruby/rest/taskrouter/v1.rb +1 -0
  604. data/lib/twilio-ruby/rest/trunking/v1/trunk/credential_list.rb +248 -9
  605. data/lib/twilio-ruby/rest/trunking/v1/trunk/ip_access_control_list.rb +248 -9
  606. data/lib/twilio-ruby/rest/trunking/v1/trunk/origination_url.rb +326 -24
  607. data/lib/twilio-ruby/rest/trunking/v1/trunk/phone_number.rb +249 -10
  608. data/lib/twilio-ruby/rest/trunking/v1/trunk/recording.rb +190 -6
  609. data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +357 -33
  610. data/lib/twilio-ruby/rest/trunking/v1.rb +1 -0
  611. data/lib/twilio-ruby/rest/trusthub/v1/compliance_inquiries.rb +213 -5
  612. data/lib/twilio-ruby/rest/trusthub/v1/compliance_registration_inquiries.rb +656 -0
  613. data/lib/twilio-ruby/rest/trusthub/v1/compliance_tollfree_inquiries.rb +474 -0
  614. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_channel_endpoint_assignment.rb +256 -10
  615. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_entity_assignments.rb +258 -11
  616. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_evaluations.rb +223 -8
  617. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles.rb +327 -21
  618. data/lib/twilio-ruby/rest/trusthub/v1/end_user.rb +300 -16
  619. data/lib/twilio-ruby/rest/trusthub/v1/end_user_type.rb +182 -6
  620. data/lib/twilio-ruby/rest/trusthub/v1/policies.rb +182 -6
  621. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document.rb +300 -16
  622. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document_type.rb +182 -6
  623. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_channel_endpoint_assignment.rb +256 -10
  624. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_entity_assignments.rb +258 -11
  625. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_evaluations.rb +223 -8
  626. data/lib/twilio-ruby/rest/trusthub/v1/trust_products.rb +345 -39
  627. data/lib/twilio-ruby/rest/trusthub/v1.rb +31 -1
  628. data/lib/twilio-ruby/rest/verify/v2/form.rb +144 -3
  629. data/lib/twilio-ruby/rest/verify/v2/safelist.rb +208 -6
  630. data/lib/twilio-ruby/rest/verify/v2/service/access_token.rb +197 -6
  631. data/lib/twilio-ruby/rest/verify/v2/service/approve_challenge.rb +402 -0
  632. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge/notification.rb +106 -2
  633. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb +299 -18
  634. data/lib/twilio-ruby/rest/verify/v2/service/entity/factor.rb +292 -26
  635. data/lib/twilio-ruby/rest/verify/v2/service/entity/new_factor.rb +164 -15
  636. data/lib/twilio-ruby/rest/verify/v2/service/entity.rb +248 -9
  637. data/lib/twilio-ruby/rest/verify/v2/service/messaging_configuration.rb +294 -13
  638. data/lib/twilio-ruby/rest/verify/v2/service/new_challenge.rb +479 -0
  639. data/lib/twilio-ruby/rest/verify/v2/service/new_factor.rb +387 -0
  640. data/lib/twilio-ruby/rest/verify/v2/service/new_verify_factor.rb +357 -0
  641. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb +302 -15
  642. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit.rb +294 -13
  643. data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +301 -23
  644. data/lib/twilio-ruby/rest/verify/v2/service/verification_check.rb +127 -7
  645. data/lib/twilio-ruby/rest/verify/v2/service/webhook.rb +332 -30
  646. data/lib/twilio-ruby/rest/verify/v2/service.rb +667 -65
  647. data/lib/twilio-ruby/rest/verify/v2/template.rb +104 -5
  648. data/lib/twilio-ruby/rest/verify/v2/verification_attempt.rb +202 -10
  649. data/lib/twilio-ruby/rest/verify/v2/verification_attempts_summary.rb +179 -16
  650. data/lib/twilio-ruby/rest/verify/v2.rb +4 -0
  651. data/lib/twilio-ruby/rest/video/v1/composition.rb +286 -17
  652. data/lib/twilio-ruby/rest/video/v1/composition_hook.rb +376 -39
  653. data/lib/twilio-ruby/rest/video/v1/composition_settings.rb +211 -17
  654. data/lib/twilio-ruby/rest/video/v1/recording.rb +220 -7
  655. data/lib/twilio-ruby/rest/video/v1/recording_settings.rb +211 -17
  656. data/lib/twilio-ruby/rest/video/v1/room/participant/anonymize.rb +145 -1
  657. data/lib/twilio-ruby/rest/video/v1/room/participant/published_track.rb +184 -6
  658. data/lib/twilio-ruby/rest/video/v1/room/participant/subscribe_rules.rb +138 -3
  659. data/lib/twilio-ruby/rest/video/v1/room/participant/subscribed_track.rb +184 -6
  660. data/lib/twilio-ruby/rest/video/v1/room/participant.rb +233 -9
  661. data/lib/twilio-ruby/rest/video/v1/room/recording_rules.rb +136 -3
  662. data/lib/twilio-ruby/rest/video/v1/room/room_recording.rb +216 -7
  663. data/lib/twilio-ruby/rest/video/v1/room/transcriptions.rb +665 -0
  664. data/lib/twilio-ruby/rest/video/v1/room.rb +379 -39
  665. data/lib/twilio-ruby/rest/video/v1.rb +4 -0
  666. data/lib/twilio-ruby/rest/voice/v1/archived_call.rb +137 -3
  667. data/lib/twilio-ruby/rest/voice/v1/byoc_trunk.rb +368 -39
  668. data/lib/twilio-ruby/rest/voice/v1/connection_policy/connection_policy_target.rb +326 -24
  669. data/lib/twilio-ruby/rest/voice/v1/connection_policy.rb +287 -12
  670. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/bulk_country_update.rb +103 -2
  671. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country/highrisk_special_prefix.rb +102 -5
  672. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country.rb +194 -8
  673. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/settings.rb +183 -6
  674. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions.rb +64 -0
  675. data/lib/twilio-ruby/rest/voice/v1/ip_record.rb +295 -14
  676. data/lib/twilio-ruby/rest/voice/v1/source_ip_mapping.rb +291 -13
  677. data/lib/twilio-ruby/rest/voice/v1.rb +10 -0
  678. data/lib/twilio-ruby/rest/voice/v3/transcription.rb +514 -0
  679. data/lib/twilio-ruby/rest/voice/v3.rb +50 -0
  680. data/lib/twilio-ruby/rest/voice_base.rb +6 -1
  681. data/lib/twilio-ruby/rest/wireless/v1/command.rb +278 -15
  682. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +338 -24
  683. data/lib/twilio-ruby/rest/wireless/v1/sim/data_session.rb +102 -5
  684. data/lib/twilio-ruby/rest/wireless/v1/sim/usage_record.rb +108 -5
  685. data/lib/twilio-ruby/rest/wireless/v1/sim.rb +343 -44
  686. data/lib/twilio-ruby/rest/wireless/v1/usage_record.rb +108 -5
  687. data/lib/twilio-ruby/rest/wireless/v1.rb +3 -0
  688. data/lib/twilio-ruby/twiml/messaging_response.rb +1 -1
  689. data/lib/twilio-ruby/twiml/voice_response.rb +403 -24
  690. data/lib/twilio-ruby/version.rb +1 -1
  691. data/twilio-ruby.gemspec +4 -3
  692. metadata +193 -88
  693. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb +0 -264
  694. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb +0 -328
  695. data/lib/twilio-ruby/rest/autopilot/v1/assistant/defaults.rb +0 -241
  696. data/lib/twilio-ruby/rest/autopilot/v1/assistant/dialogue.rb +0 -217
  697. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type/field_value.rb +0 -389
  698. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type.rb +0 -435
  699. data/lib/twilio-ruby/rest/autopilot/v1/assistant/model_build.rb +0 -409
  700. data/lib/twilio-ruby/rest/autopilot/v1/assistant/query.rb +0 -473
  701. data/lib/twilio-ruby/rest/autopilot/v1/assistant/style_sheet.rb +0 -241
  702. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/field.rb +0 -373
  703. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/sample.rb +0 -436
  704. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_actions.rb +0 -253
  705. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_statistics.rb +0 -226
  706. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task.rb +0 -525
  707. data/lib/twilio-ruby/rest/autopilot/v1/assistant/webhook.rb +0 -433
  708. data/lib/twilio-ruby/rest/autopilot/v1/assistant.rb +0 -683
  709. data/lib/twilio-ruby/rest/autopilot/v1/restore_assistant.rb +0 -207
  710. data/lib/twilio-ruby/rest/autopilot/v1.rb +0 -55
  711. data/lib/twilio-ruby/rest/autopilot.rb +0 -22
  712. data/lib/twilio-ruby/rest/media/v1/media_processor.rb +0 -420
  713. data/lib/twilio-ruby/rest/media/v1/media_recording.rb +0 -404
  714. data/lib/twilio-ruby/rest/media/v1/player_streamer/playback_grant.rb +0 -252
  715. data/lib/twilio-ruby/rest/media/v1/player_streamer.rb +0 -432
  716. data/lib/twilio-ruby/rest/media/v1.rb +0 -79
  717. data/lib/twilio-ruby/rest/media.rb +0 -35
  718. data/lib/twilio-ruby/rest/microvisor/v1/account_config.rb +0 -358
  719. data/lib/twilio-ruby/rest/microvisor/v1/account_secret.rb +0 -351
  720. data/lib/twilio-ruby/rest/microvisor/v1/app/app_manifest.rb +0 -208
  721. data/lib/twilio-ruby/rest/microvisor/v1/device/device_config.rb +0 -374
  722. data/lib/twilio-ruby/rest/microvisor/v1/device/device_secret.rb +0 -367
  723. data/lib/twilio-ruby/rest/microvisor/v1/device.rb +0 -427
  724. data/lib/twilio-ruby/rest/microvisor/v1.rb +0 -94
  725. data/lib/twilio-ruby/rest/microvisor.rb +0 -24
  726. data/lib/twilio-ruby/rest/numbers/v1/porting_bulk_portability.rb +0 -229
  727. data/lib/twilio-ruby/rest/oauth/v1/device_code.rb +0 -171
  728. data/lib/twilio-ruby/rest/oauth/v1/oauth.rb +0 -185
  729. data/lib/twilio-ruby/rest/oauth/v1/openid_discovery.rb +0 -262
  730. data/lib/twilio-ruby/rest/oauth/v1/user_info.rb +0 -213
  731. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/certificate.rb +0 -417
  732. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/deployment.rb +0 -401
  733. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/device.rb +0 -456
  734. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/key.rb +0 -414
  735. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet.rb +0 -504
  736. data/lib/twilio-ruby/rest/preview/deployed_devices.rb +0 -49
  737. data/lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb +0 -389
  738. data/lib/twilio-ruby/rest/preview/sync/service/document.rb +0 -449
  739. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_item.rb +0 -445
  740. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_permission.rb +0 -389
  741. data/lib/twilio-ruby/rest/preview/sync/service/sync_list.rb +0 -426
  742. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_item.rb +0 -448
  743. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_permission.rb +0 -389
  744. data/lib/twilio-ruby/rest/preview/sync/service/sync_map.rb +0 -426
  745. data/lib/twilio-ruby/rest/preview/sync/service.rb +0 -505
  746. data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_fallback_actions.rb +0 -241
  747. data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_initiation_actions.rb +0 -241
  748. data/lib/twilio-ruby/rest/preview/understand/assistant/dialogue.rb +0 -217
  749. data/lib/twilio-ruby/rest/preview/understand/assistant/field_type/field_value.rb +0 -389
  750. data/lib/twilio-ruby/rest/preview/understand/assistant/field_type.rb +0 -435
  751. data/lib/twilio-ruby/rest/preview/understand/assistant/model_build.rb +0 -409
  752. data/lib/twilio-ruby/rest/preview/understand/assistant/query.rb +0 -463
  753. data/lib/twilio-ruby/rest/preview/understand/assistant/style_sheet.rb +0 -241
  754. data/lib/twilio-ruby/rest/preview/understand/assistant/task/field.rb +0 -373
  755. data/lib/twilio-ruby/rest/preview/understand/assistant/task/sample.rb +0 -436
  756. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_actions.rb +0 -253
  757. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_statistics.rb +0 -226
  758. data/lib/twilio-ruby/rest/preview/understand/assistant/task.rb +0 -525
  759. data/lib/twilio-ruby/rest/preview/understand/assistant.rb +0 -663
  760. data/lib/twilio-ruby/rest/preview/understand.rb +0 -49
  761. data/lib/twilio-ruby/rest/proxy/v1/service/short_code.rb +0 -406
@@ -0,0 +1,847 @@
1
+ ##
2
+ # This code was generated by
3
+ # ___ _ _ _ _ _ _ ____ ____ ____ _ ____ ____ _ _ ____ ____ ____ ___ __ __
4
+ # | | | | | | | | | __ | | |__| | __ | __ |___ |\ | |___ |__/ |__| | | | |__/
5
+ # | |_|_| | |___ | |__| |__| | | | |__] |___ | \| |___ | \ | | | |__| | \
6
+ #
7
+ # Twilio - Assistants
8
+ # This is the public Twilio REST API.
9
+ #
10
+ # NOTE: This class is auto generated by OpenAPI Generator.
11
+ # https://openapi-generator.tech
12
+ # Do not edit the class manually.
13
+ #
14
+
15
+
16
+ module Twilio
17
+ module REST
18
+ class Assistants < AssistantsBase
19
+ class V1 < Version
20
+ class ToolList < ListResource
21
+
22
+ class AssistantsV1ServiceCreatePolicyRequest
23
+ # @param [description]: [String] The description of the policy.
24
+ # @param [id]: [String] The Policy ID.
25
+ # @param [name]: [String] The name of the policy.
26
+ # @param [policy_details]: [Hash]
27
+ # @param [type]: [String] The description of the policy.
28
+ attr_accessor :description, :id, :name, :policy_details, :type
29
+ def initialize(payload)
30
+ @description = payload["description"]
31
+ @id = payload["id"]
32
+ @name = payload["name"]
33
+ @policy_details = payload["policy_details"]
34
+ @type = payload["type"]
35
+ end
36
+ def to_json(options = {})
37
+ {
38
+ "description": @description,
39
+ "id": @id,
40
+ "name": @name,
41
+ "policy_details": @policy_details,
42
+ "type": @type,
43
+ }.to_json(options)
44
+ end
45
+ end
46
+
47
+ class AssistantsV1ServiceCreateToolRequest
48
+ # @param [assistant_id]: [String] The Assistant ID.
49
+ # @param [description]: [String] The description of the tool.
50
+ # @param [enabled]: [Boolean] True if the tool is enabled.
51
+ # @param [meta]: [Hash] The metadata related to method, url, input_schema to used with the Tool.
52
+ # @param [name]: [String] The name of the tool.
53
+ # @param [policy]: [ToolList.AssistantsV1ServiceCreatePolicyRequest]
54
+ # @param [type]: [String] The description of the tool.
55
+ attr_accessor :assistant_id, :description, :enabled, :meta, :name, :policy, :type
56
+ def initialize(payload)
57
+ @assistant_id = payload["assistant_id"]
58
+ @description = payload["description"]
59
+ @enabled = payload["enabled"]
60
+ @meta = payload["meta"]
61
+ @name = payload["name"]
62
+ @policy = payload["policy"]
63
+ @type = payload["type"]
64
+ end
65
+ def to_json(options = {})
66
+ {
67
+ "assistant_id": @assistant_id,
68
+ "description": @description,
69
+ "enabled": @enabled,
70
+ "meta": @meta,
71
+ "name": @name,
72
+ "policy": @policy,
73
+ "type": @type,
74
+ }.to_json(options)
75
+ end
76
+ end
77
+
78
+ class AssistantsV1ServiceUpdateToolRequest
79
+ # @param [assistant_id]: [String] The Assistant ID.
80
+ # @param [description]: [String] The description of the tool.
81
+ # @param [enabled]: [Boolean] True if the tool is enabled.
82
+ # @param [meta]: [Hash] The metadata related to method, url, input_schema to used with the Tool.
83
+ # @param [name]: [String] The name of the tool.
84
+ # @param [policy]: [ToolList.AssistantsV1ServiceCreatePolicyRequest]
85
+ # @param [type]: [String] The type of the tool.
86
+ attr_accessor :assistant_id, :description, :enabled, :meta, :name, :policy, :type
87
+ def initialize(payload)
88
+ @assistant_id = payload["assistant_id"]
89
+ @description = payload["description"]
90
+ @enabled = payload["enabled"]
91
+ @meta = payload["meta"]
92
+ @name = payload["name"]
93
+ @policy = payload["policy"]
94
+ @type = payload["type"]
95
+ end
96
+ def to_json(options = {})
97
+ {
98
+ "assistant_id": @assistant_id,
99
+ "description": @description,
100
+ "enabled": @enabled,
101
+ "meta": @meta,
102
+ "name": @name,
103
+ "policy": @policy,
104
+ "type": @type,
105
+ }.to_json(options)
106
+ end
107
+ end
108
+
109
+
110
+ class AssistantsV1ServiceCreatePolicyRequest
111
+ # @param [description]: [String] The description of the policy.
112
+ # @param [id]: [String] The Policy ID.
113
+ # @param [name]: [String] The name of the policy.
114
+ # @param [policy_details]: [Hash]
115
+ # @param [type]: [String] The description of the policy.
116
+ attr_accessor :description, :id, :name, :policy_details, :type
117
+ def initialize(payload)
118
+ @description = payload["description"]
119
+ @id = payload["id"]
120
+ @name = payload["name"]
121
+ @policy_details = payload["policy_details"]
122
+ @type = payload["type"]
123
+ end
124
+ def to_json(options = {})
125
+ {
126
+ "description": @description,
127
+ "id": @id,
128
+ "name": @name,
129
+ "policy_details": @policy_details,
130
+ "type": @type,
131
+ }.to_json(options)
132
+ end
133
+ end
134
+
135
+ class AssistantsV1ServiceCreateToolRequest
136
+ # @param [assistant_id]: [String] The Assistant ID.
137
+ # @param [description]: [String] The description of the tool.
138
+ # @param [enabled]: [Boolean] True if the tool is enabled.
139
+ # @param [meta]: [Hash] The metadata related to method, url, input_schema to used with the Tool.
140
+ # @param [name]: [String] The name of the tool.
141
+ # @param [policy]: [ToolList.AssistantsV1ServiceCreatePolicyRequest]
142
+ # @param [type]: [String] The description of the tool.
143
+ attr_accessor :assistant_id, :description, :enabled, :meta, :name, :policy, :type
144
+ def initialize(payload)
145
+ @assistant_id = payload["assistant_id"]
146
+ @description = payload["description"]
147
+ @enabled = payload["enabled"]
148
+ @meta = payload["meta"]
149
+ @name = payload["name"]
150
+ @policy = payload["policy"]
151
+ @type = payload["type"]
152
+ end
153
+ def to_json(options = {})
154
+ {
155
+ "assistant_id": @assistant_id,
156
+ "description": @description,
157
+ "enabled": @enabled,
158
+ "meta": @meta,
159
+ "name": @name,
160
+ "policy": @policy,
161
+ "type": @type,
162
+ }.to_json(options)
163
+ end
164
+ end
165
+
166
+ class AssistantsV1ServiceUpdateToolRequest
167
+ # @param [assistant_id]: [String] The Assistant ID.
168
+ # @param [description]: [String] The description of the tool.
169
+ # @param [enabled]: [Boolean] True if the tool is enabled.
170
+ # @param [meta]: [Hash] The metadata related to method, url, input_schema to used with the Tool.
171
+ # @param [name]: [String] The name of the tool.
172
+ # @param [policy]: [ToolList.AssistantsV1ServiceCreatePolicyRequest]
173
+ # @param [type]: [String] The type of the tool.
174
+ attr_accessor :assistant_id, :description, :enabled, :meta, :name, :policy, :type
175
+ def initialize(payload)
176
+ @assistant_id = payload["assistant_id"]
177
+ @description = payload["description"]
178
+ @enabled = payload["enabled"]
179
+ @meta = payload["meta"]
180
+ @name = payload["name"]
181
+ @policy = payload["policy"]
182
+ @type = payload["type"]
183
+ end
184
+ def to_json(options = {})
185
+ {
186
+ "assistant_id": @assistant_id,
187
+ "description": @description,
188
+ "enabled": @enabled,
189
+ "meta": @meta,
190
+ "name": @name,
191
+ "policy": @policy,
192
+ "type": @type,
193
+ }.to_json(options)
194
+ end
195
+ end
196
+
197
+
198
+ ##
199
+ # Initialize the ToolList
200
+ # @param [Version] version Version that contains the resource
201
+ # @return [ToolList] ToolList
202
+ def initialize(version)
203
+ super(version)
204
+
205
+ # Path Solution
206
+ @solution = { }
207
+ @uri = "/Tools"
208
+
209
+ end
210
+ ##
211
+ # Create the ToolInstance
212
+ # @param [AssistantsV1ServiceCreateToolRequest] assistants_v1_service_create_tool_request
213
+ # @return [ToolInstance] Created ToolInstance
214
+ def create(assistants_v1_service_create_tool_request: nil
215
+ )
216
+
217
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
218
+ headers['Content-Type'] = 'application/json'
219
+
220
+
221
+
222
+
223
+ payload = @version.create('POST', @uri, headers: headers, data: assistants_v1_service_create_tool_request.to_json)
224
+ ToolInstance.new(
225
+ @version,
226
+ payload,
227
+ )
228
+ end
229
+
230
+ ##
231
+ # Create the ToolInstanceMetadata
232
+ # @param [AssistantsV1ServiceCreateToolRequest] assistants_v1_service_create_tool_request
233
+ # @return [ToolInstance] Created ToolInstance
234
+ def create_with_metadata(assistants_v1_service_create_tool_request: nil
235
+ )
236
+
237
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
238
+ headers['Content-Type'] = 'application/json'
239
+
240
+
241
+
242
+
243
+ response = @version.create_with_metadata('POST', @uri, headers: headers, data: assistants_v1_service_create_tool_request.to_json)
244
+ tool_instance = ToolInstance.new(
245
+ @version,
246
+ response.body,
247
+ )
248
+ ToolInstanceMetadata.new(
249
+ @version,
250
+ tool_instance,
251
+ response.headers,
252
+ response.status_code
253
+ )
254
+ end
255
+
256
+
257
+ ##
258
+ # Lists ToolInstance records from the API as a list.
259
+ # Unlike stream(), this operation is eager and will load `limit` records into
260
+ # memory before returning.
261
+ # @param [String] assistant_id
262
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
263
+ # guarantees to never return more than limit. Default is no limit
264
+ # @param [Integer] page_size Number of records to fetch per request, when
265
+ # not set will use the default value of 50 records. If no page_size is defined
266
+ # but a limit is defined, stream() will attempt to read the limit with the most
267
+ # efficient page size, i.e. min(limit, 1000)
268
+ # @return [Array] Array of up to limit results
269
+ def list(assistant_id: :unset, limit: nil, page_size: nil)
270
+ self.stream(
271
+ assistant_id: assistant_id,
272
+ limit: limit,
273
+ page_size: page_size
274
+ ).entries
275
+ end
276
+
277
+ ##
278
+ # Streams Instance records from the API as an Enumerable.
279
+ # This operation lazily loads records as efficiently as possible until the limit
280
+ # is reached.
281
+ # @param [String] assistant_id
282
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
283
+ # guarantees to never return more than limit. Default is no limit
284
+ # @param [Integer] page_size Number of records to fetch per request, when
285
+ # not set will use the default value of 50 records. If no page_size is defined
286
+ # but a limit is defined, stream() will attempt to read the limit with the most
287
+ # efficient page size, i.e. min(limit, 1000)
288
+ # @return [Enumerable] Enumerable that will yield up to limit results
289
+ def stream(assistant_id: :unset, limit: nil, page_size: nil)
290
+ limits = @version.read_limits(limit, page_size)
291
+
292
+ page = self.page(
293
+ assistant_id: assistant_id,
294
+ page_size: limits[:page_size], )
295
+
296
+ return [].each if page.nil?
297
+
298
+ result = @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
299
+ return [].each if result.nil?
300
+ result
301
+ end
302
+
303
+ ##
304
+ # Lists ToolPageMetadata records from the API as a list.
305
+ # @param [String] assistant_id
306
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
307
+ # guarantees to never return more than limit. Default is no limit
308
+ # @param [Integer] page_size Number of records to fetch per request, when
309
+ # not set will use the default value of 50 records. If no page_size is defined
310
+ # but a limit is defined, stream() will attempt to read the limit with the most
311
+ # efficient page size, i.e. min(limit, 1000)
312
+ # @return [Array] Array of up to limit results
313
+ def list_with_metadata(assistant_id: :unset, limit: nil, page_size: nil)
314
+ limits = @version.read_limits(limit, page_size)
315
+ params = Twilio::Values.of({
316
+ 'AssistantId' => assistant_id,
317
+
318
+ 'PageSize' => limits[:page_size],
319
+ });
320
+ headers = Twilio::Values.of({})
321
+
322
+ response = @version.page('GET', @uri, params: params, headers: headers)
323
+
324
+ ToolPageMetadata.new(@version, response, @solution, limits[:limit])
325
+ end
326
+
327
+ ##
328
+ # When passed a block, yields ToolInstance records from the API.
329
+ # This operation lazily loads records as efficiently as possible until the limit
330
+ # is reached.
331
+ def each
332
+ limits = @version.read_limits
333
+
334
+ page = self.page(page_size: limits[:page_size], )
335
+
336
+ return [].each if page.nil?
337
+
338
+ result = @version.stream(page,
339
+ limit: limits[:limit],
340
+ page_limit: limits[:page_limit])
341
+ return [].each if result.nil?
342
+ result.each {|x| yield x}
343
+ end
344
+
345
+ ##
346
+ # Retrieve a single page of ToolInstance records from the API.
347
+ # Request is executed immediately.
348
+ # @param [String] assistant_id
349
+ # @param [String] page_token PageToken provided by the API
350
+ # @param [Integer] page_number Page Number, this value is simply for client state
351
+ # @param [Integer] page_size Number of records to return, defaults to 50
352
+ # @return [Page] Page of ToolInstance
353
+ def page(assistant_id: :unset, page_token: :unset, page_number: :unset,page_size: :unset)
354
+ params = Twilio::Values.of({
355
+ 'AssistantId' => assistant_id,
356
+ 'PageToken' => page_token,
357
+ 'Page' => page_number,
358
+ 'PageSize' => page_size,
359
+ })
360
+ headers = Twilio::Values.of({})
361
+
362
+
363
+
364
+ response = @version.page('GET', @uri, params: params, headers: headers)
365
+
366
+ ToolPage.new(@version, response, @solution)
367
+ end
368
+
369
+ ##
370
+ # Retrieve a single page of ToolInstance records from the API.
371
+ # Request is executed immediately.
372
+ # @param [String] target_url API-generated URL for the requested results page
373
+ # @return [Page] Page of ToolInstance
374
+ def get_page(target_url)
375
+ response = @version.domain.request(
376
+ 'GET',
377
+ target_url
378
+ )
379
+ ToolPage.new(@version, response, @solution)
380
+ end
381
+
382
+
383
+
384
+ # Provide a user friendly representation
385
+ def to_s
386
+ '#<Twilio.Assistants.V1.ToolList>'
387
+ end
388
+ end
389
+
390
+
391
+ class ToolContext < InstanceContext
392
+ ##
393
+ # Initialize the ToolContext
394
+ # @param [Version] version Version that contains the resource
395
+ # @param [String] id
396
+ # @return [ToolContext] ToolContext
397
+ def initialize(version, id)
398
+ super(version)
399
+
400
+
401
+ # Path Solution
402
+ @solution = { id: id, }
403
+ @uri = "/Tools/#{@solution[:id]}"
404
+
405
+
406
+ end
407
+ ##
408
+ # Delete the ToolInstance
409
+ # @return [Boolean] True if delete succeeds, false otherwise
410
+ def delete
411
+
412
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
413
+
414
+
415
+
416
+
417
+ @version.delete('DELETE', @uri, headers: headers)
418
+ end
419
+
420
+ ##
421
+ # Delete the ToolInstanceMetadata
422
+ # @return [Boolean] True if delete succeeds, false otherwise
423
+ def delete_with_metadata
424
+
425
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
426
+
427
+
428
+
429
+ response = @version.delete_with_metadata('DELETE', @uri, headers: headers)
430
+ tool_instance = ToolInstance.new(
431
+ @version,
432
+ response.body,
433
+ account_sid: @solution[:account_sid],
434
+ sid: @solution[:sid],
435
+ )
436
+ ToolInstanceMetadata.new(@version, tool_instance, response.headers, response.status_code)
437
+ end
438
+
439
+ ##
440
+ # Fetch the ToolInstance
441
+ # @return [ToolInstance] Fetched ToolInstance
442
+ def fetch
443
+
444
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
445
+
446
+
447
+
448
+
449
+
450
+ payload = @version.fetch('GET', @uri, headers: headers)
451
+ ToolInstance.new(
452
+ @version,
453
+ payload,
454
+ id: @solution[:id],
455
+ )
456
+ end
457
+
458
+ ##
459
+ # Fetch the ToolInstanceMetadata
460
+ # @return [ToolInstance] Fetched ToolInstance
461
+ def fetch_with_metadata
462
+
463
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
464
+
465
+
466
+
467
+
468
+
469
+ response = @version.fetch_with_metadata('GET', @uri, headers: headers)
470
+ tool_instance = ToolInstance.new(
471
+ @version,
472
+ response.body,
473
+ id: @solution[:id],
474
+ )
475
+ ToolInstanceMetadata.new(
476
+ @version,
477
+ tool_instance,
478
+ response.headers,
479
+ response.status_code
480
+ )
481
+ end
482
+
483
+ ##
484
+ # Update the ToolInstance
485
+ # @param [AssistantsV1ServiceUpdateToolRequest] assistants_v1_service_update_tool_request
486
+ # @return [ToolInstance] Updated ToolInstance
487
+ def update(assistants_v1_service_update_tool_request: :unset
488
+ )
489
+
490
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
491
+ headers['Content-Type'] = 'application/json'
492
+
493
+
494
+
495
+
496
+ payload = @version.update('PUT', @uri, headers: headers, data: assistants_v1_service_update_tool_request.to_json)
497
+ ToolInstance.new(
498
+ @version,
499
+ payload,
500
+ id: @solution[:id],
501
+ )
502
+ end
503
+
504
+ ##
505
+ # Update the ToolInstanceMetadata
506
+ # @param [AssistantsV1ServiceUpdateToolRequest] assistants_v1_service_update_tool_request
507
+ # @return [ToolInstance] Updated ToolInstance
508
+ def update_with_metadata(assistants_v1_service_update_tool_request: :unset
509
+ )
510
+
511
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
512
+ headers['Content-Type'] = 'application/json'
513
+
514
+
515
+
516
+
517
+ response = @version.update_with_metadata('PUT', @uri, headers: headers, data: assistants_v1_service_update_tool_request.to_json)
518
+ tool_instance = ToolInstance.new(
519
+ @version,
520
+ response.body,
521
+ id: @solution[:id],
522
+ )
523
+ ToolInstanceMetadata.new(
524
+ @version,
525
+ tool_instance,
526
+ response.headers,
527
+ response.status_code
528
+ )
529
+ end
530
+
531
+
532
+ ##
533
+ # Provide a user friendly representation
534
+ def to_s
535
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
536
+ "#<Twilio.Assistants.V1.ToolContext #{context}>"
537
+ end
538
+
539
+ ##
540
+ # Provide a detailed, user friendly representation
541
+ def inspect
542
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
543
+ "#<Twilio.Assistants.V1.ToolContext #{context}>"
544
+ end
545
+ end
546
+
547
+ class ToolInstanceMetadata < InstanceResourceMetadata
548
+ ##
549
+ # Initializes a new ToolInstanceMetadata.
550
+ # @param [Version] version Version that contains the resource
551
+ # @param [}ToolInstance] tool_instance The instance associated with the metadata.
552
+ # @param [Hash] headers Header object with response headers.
553
+ # @param [Integer] status_code The HTTP status code of the response.
554
+ # @return [ToolInstanceMetadata] The initialized instance with metadata.
555
+ def initialize(version, tool_instance, headers, status_code)
556
+ super(version, headers, status_code)
557
+ @tool_instance = tool_instance
558
+ end
559
+
560
+ def tool
561
+ @tool_instance
562
+ end
563
+
564
+ def headers
565
+ @headers
566
+ end
567
+
568
+ def status_code
569
+ @status_code
570
+ end
571
+
572
+ def to_s
573
+ "<Twilio.Api.V2010.ToolInstanceMetadata status=#{@status_code}>"
574
+ end
575
+ end
576
+
577
+ class ToolListResponse < InstanceListResource
578
+ # @param [Array<ToolInstance>] instance
579
+ # @param [Hash{String => Object}] headers
580
+ # @param [Integer] status_code
581
+ def initialize(version, payload, key)
582
+ @tool_instance = payload.body[key].map do |data|
583
+ ToolInstance.new(version, data)
584
+ end
585
+ @headers = payload.headers
586
+ @status_code = payload.status_code
587
+ end
588
+
589
+ def tool_instance
590
+ @instance
591
+ end
592
+ end
593
+
594
+ class ToolPage < Page
595
+ ##
596
+ # Initialize the ToolPage
597
+ # @param [Version] version Version that contains the resource
598
+ # @param [Response] response Response from the API
599
+ # @param [Hash] solution Path solution for the resource
600
+ # @return [ToolPage] ToolPage
601
+ def initialize(version, response, solution)
602
+ super(version, response)
603
+
604
+
605
+ # Path Solution
606
+ @solution = solution
607
+ end
608
+
609
+ ##
610
+ # Build an instance of ToolInstance
611
+ # @param [Hash] payload Payload response from the API
612
+ # @return [ToolInstance] ToolInstance
613
+ def get_instance(payload)
614
+ ToolInstance.new(@version, payload)
615
+ end
616
+
617
+ ##
618
+ # Provide a user friendly representation
619
+ def to_s
620
+ '<Twilio.Assistants.V1.ToolPage>'
621
+ end
622
+ end
623
+
624
+ class ToolPageMetadata < PageMetadata
625
+ attr_reader :tool_page
626
+
627
+ def initialize(version, response, solution, limit)
628
+ super(version, response)
629
+ @tool_page = []
630
+ @limit = limit
631
+ key = get_key(response.body)
632
+ records = 0
633
+ while( limit != :unset && records < limit )
634
+ @tool_page << ToolListResponse.new(version, @payload, key, limit - records)
635
+ @payload = self.next_page
636
+ break unless @payload
637
+ records += (@payload.body[key] || []).size
638
+ end
639
+ # Path Solution
640
+ @solution = solution
641
+ end
642
+
643
+ def each
644
+ @tool_page.each do |record|
645
+ yield record
646
+ end
647
+ end
648
+
649
+ def to_s
650
+ '<Twilio::REST::Assistants::V1PageMetadata>';
651
+ end
652
+ end
653
+ class ToolListResponse < InstanceListResource
654
+
655
+ # @param [Array<ToolInstance>] instance
656
+ # @param [Hash{String => Object}] headers
657
+ # @param [Integer] status_code
658
+ def initialize(version, payload, key, limit = :unset)
659
+ data_list = payload.body[key] || []
660
+ if limit != :unset
661
+ data_list = data_list[0, limit]
662
+ end
663
+ @tool = data_list.map do |data|
664
+ ToolInstance.new(version, data)
665
+ end
666
+ @headers = payload.headers
667
+ @status_code = payload.status_code
668
+ end
669
+
670
+ def tool
671
+ @tool
672
+ end
673
+
674
+ def headers
675
+ @headers
676
+ end
677
+
678
+ def status_code
679
+ @status_code
680
+ end
681
+ end
682
+
683
+ class ToolInstance < InstanceResource
684
+ ##
685
+ # Initialize the ToolInstance
686
+ # @param [Version] version Version that contains the resource
687
+ # @param [Hash] payload payload that contains response from Twilio
688
+ # @param [String] account_sid The SID of the
689
+ # {Account}[https://www.twilio.com/docs/iam/api/account] that created this Tool
690
+ # resource.
691
+ # @param [String] sid The SID of the Call resource to fetch.
692
+ # @return [ToolInstance] ToolInstance
693
+ def initialize(version, payload , id: nil)
694
+ super(version)
695
+
696
+
697
+ # Marshaled Properties
698
+ @properties = {
699
+ 'account_sid' => payload['account_sid'],
700
+ 'description' => payload['description'],
701
+ 'enabled' => payload['enabled'],
702
+ 'id' => payload['id'],
703
+ 'meta' => payload['meta'],
704
+ 'name' => payload['name'],
705
+ 'requires_auth' => payload['requires_auth'],
706
+ 'type' => payload['type'],
707
+ 'url' => payload['url'],
708
+ 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
709
+ 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
710
+ 'policies' => payload['policies'],
711
+ }
712
+
713
+ # Context
714
+ @instance_context = nil
715
+ @params = { 'id' => id || @properties['id'] , }
716
+ end
717
+
718
+ ##
719
+ # Generate an instance context for the instance, the context is capable of
720
+ # performing various actions. All instance actions are proxied to the context
721
+ # @return [ToolContext] CallContext for this CallInstance
722
+ def context
723
+ unless @instance_context
724
+ @instance_context = ToolContext.new(@version , @params['id'])
725
+ end
726
+ @instance_context
727
+ end
728
+
729
+ ##
730
+ # @return [String] The SID of the [Account](https://www.twilio.com/docs/iam/api/account) that created the Tool resource.
731
+ def account_sid
732
+ @properties['account_sid']
733
+ end
734
+
735
+ ##
736
+ # @return [String] The description of the tool.
737
+ def description
738
+ @properties['description']
739
+ end
740
+
741
+ ##
742
+ # @return [Boolean] True if the tool is enabled.
743
+ def enabled
744
+ @properties['enabled']
745
+ end
746
+
747
+ ##
748
+ # @return [String] The tool ID.
749
+ def id
750
+ @properties['id']
751
+ end
752
+
753
+ ##
754
+ # @return [Hash] The metadata related to method, url, input_schema to used with the Tool.
755
+ def meta
756
+ @properties['meta']
757
+ end
758
+
759
+ ##
760
+ # @return [String] The name of the tool.
761
+ def name
762
+ @properties['name']
763
+ end
764
+
765
+ ##
766
+ # @return [Boolean] The authentication requirement for the tool.
767
+ def requires_auth
768
+ @properties['requires_auth']
769
+ end
770
+
771
+ ##
772
+ # @return [String] The type of the tool. ('WEBHOOK')
773
+ def type
774
+ @properties['type']
775
+ end
776
+
777
+ ##
778
+ # @return [String] The url of the tool resource.
779
+ def url
780
+ @properties['url']
781
+ end
782
+
783
+ ##
784
+ # @return [Time] The date and time in GMT when the Tool was created specified in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format.
785
+ def date_created
786
+ @properties['date_created']
787
+ end
788
+
789
+ ##
790
+ # @return [Time] The date and time in GMT when the Tool was last updated specified in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format.
791
+ def date_updated
792
+ @properties['date_updated']
793
+ end
794
+
795
+ ##
796
+ # @return [Array<AssistantsV1ServicePolicy>] The Policies associated with the tool.
797
+ def policies
798
+ @properties['policies']
799
+ end
800
+
801
+ ##
802
+ # Delete the ToolInstance
803
+ # @return [Boolean] True if delete succeeds, false otherwise
804
+ def delete
805
+
806
+ context.delete
807
+ end
808
+
809
+ ##
810
+ # Fetch the ToolInstance
811
+ # @return [ToolInstance] Fetched ToolInstance
812
+ def fetch
813
+
814
+ context.fetch
815
+ end
816
+
817
+ ##
818
+ # Update the ToolInstance
819
+ # @param [AssistantsV1ServiceUpdateToolRequest] assistants_v1_service_update_tool_request
820
+ # @return [ToolInstance] Updated ToolInstance
821
+ def update(assistants_v1_service_update_tool_request: :unset
822
+ )
823
+
824
+ context.update(
825
+ assistants_v1_service_update_tool_request: assistants_v1_service_update_tool_request,
826
+ )
827
+ end
828
+
829
+ ##
830
+ # Provide a user friendly representation
831
+ def to_s
832
+ values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
833
+ "<Twilio.Assistants.V1.ToolInstance #{values}>"
834
+ end
835
+
836
+ ##
837
+ # Provide a detailed, user friendly representation
838
+ def inspect
839
+ values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
840
+ "<Twilio.Assistants.V1.ToolInstance #{values}>"
841
+ end
842
+ end
843
+
844
+ end
845
+ end
846
+ end
847
+ end