twilio-ruby 7.10.5 → 7.10.6

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 (636) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/test-and-deploy.yml +1 -1
  3. data/CHANGES.md +53 -0
  4. data/README.md +2 -2
  5. data/lib/twilio-ruby/rest/accounts/v1/auth_token_promotion.rb +2 -2
  6. data/lib/twilio-ruby/rest/accounts/v1/bulk_consents.rb +3 -3
  7. data/lib/twilio-ruby/rest/accounts/v1/bulk_contacts.rb +3 -3
  8. data/lib/twilio-ruby/rest/accounts/v1/credential/aws.rb +18 -10
  9. data/lib/twilio-ruby/rest/accounts/v1/credential/public_key.rb +18 -10
  10. data/lib/twilio-ruby/rest/accounts/v1/credential.rb +2 -2
  11. data/lib/twilio-ruby/rest/accounts/v1/messaging_geopermissions.rb +4 -4
  12. data/lib/twilio-ruby/rest/accounts/v1/safelist.rb +5 -5
  13. data/lib/twilio-ruby/rest/accounts/v1/secondary_auth_token.rb +2 -2
  14. data/lib/twilio-ruby/rest/accounts/v1.rb +11 -2
  15. data/lib/twilio-ruby/rest/api/v2010/account/address/dependent_phone_number.rb +13 -5
  16. data/lib/twilio-ruby/rest/api/v2010/account/address.rb +41 -33
  17. data/lib/twilio-ruby/rest/api/v2010/account/application.rb +61 -53
  18. data/lib/twilio-ruby/rest/api/v2010/account/authorized_connect_app.rb +13 -5
  19. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/local.rb +13 -5
  20. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/machine_to_machine.rb +13 -5
  21. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/mobile.rb +13 -5
  22. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/national.rb +13 -5
  23. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/shared_cost.rb +13 -5
  24. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/toll_free.rb +13 -5
  25. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/voip.rb +13 -5
  26. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country.rb +13 -5
  27. data/lib/twilio-ruby/rest/api/v2010/account/balance.rb +2 -2
  28. data/lib/twilio-ruby/rest/api/v2010/account/call/event.rb +13 -5
  29. data/lib/twilio-ruby/rest/api/v2010/account/call/notification.rb +13 -5
  30. data/lib/twilio-ruby/rest/api/v2010/account/call/payment.rb +28 -28
  31. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +30 -16
  32. data/lib/twilio-ruby/rest/api/v2010/account/call/siprec.rb +207 -207
  33. data/lib/twilio-ruby/rest/api/v2010/account/call/stream.rb +207 -207
  34. data/lib/twilio-ruby/rest/api/v2010/account/call/transcription.rb +27 -27
  35. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message.rb +4 -4
  36. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message_subscription.rb +5 -5
  37. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +73 -59
  38. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +93 -79
  39. data/lib/twilio-ruby/rest/api/v2010/account/conference/recording.rb +17 -9
  40. data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +19 -11
  41. data/lib/twilio-ruby/rest/api/v2010/account/connect_app.rb +29 -21
  42. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension.rb +13 -5
  43. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on.rb +14 -6
  44. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +36 -28
  45. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +36 -28
  46. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +36 -28
  47. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +83 -75
  48. data/lib/twilio-ruby/rest/api/v2010/account/key.rb +15 -7
  49. data/lib/twilio-ruby/rest/api/v2010/account/message/feedback.rb +3 -3
  50. data/lib/twilio-ruby/rest/api/v2010/account/message/media.rb +13 -5
  51. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +42 -34
  52. data/lib/twilio-ruby/rest/api/v2010/account/new_key.rb +3 -3
  53. data/lib/twilio-ruby/rest/api/v2010/account/new_signing_key.rb +3 -3
  54. data/lib/twilio-ruby/rest/api/v2010/account/notification.rb +13 -5
  55. data/lib/twilio-ruby/rest/api/v2010/account/outgoing_caller_id.rb +15 -7
  56. data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +17 -9
  57. data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +19 -11
  58. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload/data.rb +2 -2
  59. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload.rb +13 -5
  60. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result.rb +13 -5
  61. data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +13 -5
  62. data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +15 -7
  63. data/lib/twilio-ruby/rest/api/v2010/account/short_code.rb +25 -17
  64. data/lib/twilio-ruby/rest/api/v2010/account/signing_key.rb +15 -7
  65. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list/credential.rb +17 -9
  66. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list.rb +16 -8
  67. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls/auth_calls_credential_list_mapping.rb +14 -6
  68. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls/auth_calls_ip_access_control_list_mapping.rb +14 -6
  69. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls.rb +2 -2
  70. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_registrations/auth_registrations_credential_list_mapping.rb +14 -6
  71. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_registrations.rb +2 -2
  72. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types.rb +2 -2
  73. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb +14 -6
  74. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/ip_access_control_list_mapping.rb +14 -6
  75. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +52 -44
  76. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +22 -14
  77. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb +16 -8
  78. data/lib/twilio-ruby/rest/api/v2010/account/sip.rb +2 -2
  79. data/lib/twilio-ruby/rest/api/v2010/account/token.rb +3 -3
  80. data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +13 -5
  81. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +13 -5
  82. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +13 -5
  83. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +13 -5
  84. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +13 -5
  85. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +13 -5
  86. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +13 -5
  87. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +13 -5
  88. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +13 -5
  89. data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +13 -5
  90. data/lib/twilio-ruby/rest/api/v2010/account/usage/trigger.rb +26 -18
  91. data/lib/twilio-ruby/rest/api/v2010/account/usage.rb +2 -2
  92. data/lib/twilio-ruby/rest/api/v2010/account/validation_request.rb +8 -8
  93. data/lib/twilio-ruby/rest/api/v2010/account.rb +18 -10
  94. data/lib/twilio-ruby/rest/api/v2010.rb +1 -0
  95. data/lib/twilio-ruby/rest/assistants/v1/assistant/assistants_knowledge.rb +13 -5
  96. data/lib/twilio-ruby/rest/assistants/v1/assistant/assistants_tool.rb +13 -5
  97. data/lib/twilio-ruby/rest/assistants/v1/assistant/feedback.rb +13 -5
  98. data/lib/twilio-ruby/rest/assistants/v1/assistant/message.rb +2 -2
  99. data/lib/twilio-ruby/rest/assistants/v1/assistant.rb +14 -5
  100. data/lib/twilio-ruby/rest/assistants/v1/knowledge/chunk.rb +13 -5
  101. data/lib/twilio-ruby/rest/assistants/v1/knowledge/knowledge_status.rb +2 -2
  102. data/lib/twilio-ruby/rest/assistants/v1/knowledge.rb +14 -5
  103. data/lib/twilio-ruby/rest/assistants/v1/policy.rb +13 -5
  104. data/lib/twilio-ruby/rest/assistants/v1/session/message.rb +13 -5
  105. data/lib/twilio-ruby/rest/assistants/v1/session.rb +13 -5
  106. data/lib/twilio-ruby/rest/assistants/v1/tool.rb +14 -5
  107. data/lib/twilio-ruby/rest/assistants/v1.rb +4 -0
  108. data/lib/twilio-ruby/rest/bulkexports/v1/export/day.rb +13 -5
  109. data/lib/twilio-ruby/rest/bulkexports/v1/export/export_custom_job.rb +19 -11
  110. data/lib/twilio-ruby/rest/bulkexports/v1/export/job.rb +2 -2
  111. data/lib/twilio-ruby/rest/bulkexports/v1/export.rb +2 -2
  112. data/lib/twilio-ruby/rest/bulkexports/v1/export_configuration.rb +8 -8
  113. data/lib/twilio-ruby/rest/bulkexports/v1.rb +2 -0
  114. data/lib/twilio-ruby/rest/chat/v1/credential.rb +32 -24
  115. data/lib/twilio-ruby/rest/chat/v1/service/channel/invite.rb +15 -7
  116. data/lib/twilio-ruby/rest/chat/v1/service/channel/member.rb +19 -11
  117. data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +20 -12
  118. data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +23 -15
  119. data/lib/twilio-ruby/rest/chat/v1/service/role.rb +18 -10
  120. data/lib/twilio-ruby/rest/chat/v1/service/user/user_channel.rb +13 -5
  121. data/lib/twilio-ruby/rest/chat/v1/service/user.rb +23 -15
  122. data/lib/twilio-ruby/rest/chat/v1/service.rb +122 -114
  123. data/lib/twilio-ruby/rest/chat/v1.rb +2 -0
  124. data/lib/twilio-ruby/rest/chat/v2/credential.rb +32 -24
  125. data/lib/twilio-ruby/rest/chat/v2/service/binding.rb +13 -5
  126. data/lib/twilio-ruby/rest/chat/v2/service/channel/invite.rb +15 -7
  127. data/lib/twilio-ruby/rest/chat/v2/service/channel/member.rb +37 -29
  128. data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +37 -29
  129. data/lib/twilio-ruby/rest/chat/v2/service/channel/webhook.rb +32 -24
  130. data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +37 -29
  131. data/lib/twilio-ruby/rest/chat/v2/service/role.rb +18 -10
  132. data/lib/twilio-ruby/rest/chat/v2/service/user/user_binding.rb +13 -5
  133. data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +21 -13
  134. data/lib/twilio-ruby/rest/chat/v2/service/user.rb +26 -18
  135. data/lib/twilio-ruby/rest/chat/v2/service.rb +76 -68
  136. data/lib/twilio-ruby/rest/chat/v2.rb +2 -0
  137. data/lib/twilio-ruby/rest/chat/v3/channel.rb +8 -8
  138. data/lib/twilio-ruby/rest/chat/v3.rb +6 -0
  139. data/lib/twilio-ruby/rest/client.rb +5 -0
  140. data/lib/twilio-ruby/rest/content/v1/content/approval_create.rb +2 -2
  141. data/lib/twilio-ruby/rest/content/v1/content/approval_fetch.rb +2 -2
  142. data/lib/twilio-ruby/rest/content/v1/content.rb +14 -5
  143. data/lib/twilio-ruby/rest/content/v1/content_and_approvals.rb +13 -5
  144. data/lib/twilio-ruby/rest/content/v1/legacy_content.rb +13 -5
  145. data/lib/twilio-ruby/rest/content/v1.rb +1 -0
  146. data/lib/twilio-ruby/rest/content/v2/content.rb +13 -5
  147. data/lib/twilio-ruby/rest/content/v2/content_and_approvals.rb +13 -5
  148. data/lib/twilio-ruby/rest/conversations/v1/address_configuration.rb +43 -35
  149. data/lib/twilio-ruby/rest/conversations/v1/configuration/webhook.rb +12 -12
  150. data/lib/twilio-ruby/rest/conversations/v1/configuration.rb +10 -10
  151. data/lib/twilio-ruby/rest/conversations/v1/conversation/message/delivery_receipt.rb +13 -5
  152. data/lib/twilio-ruby/rest/conversations/v1/conversation/message.rb +39 -31
  153. data/lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb +44 -36
  154. data/lib/twilio-ruby/rest/conversations/v1/conversation/webhook.rb +30 -22
  155. data/lib/twilio-ruby/rest/conversations/v1/conversation.rb +51 -43
  156. data/lib/twilio-ruby/rest/conversations/v1/conversation_with_participants.rb +15 -15
  157. data/lib/twilio-ruby/rest/conversations/v1/credential.rb +34 -26
  158. data/lib/twilio-ruby/rest/conversations/v1/participant_conversation.rb +13 -5
  159. data/lib/twilio-ruby/rest/conversations/v1/role.rb +18 -10
  160. data/lib/twilio-ruby/rest/conversations/v1/service/binding.rb +13 -5
  161. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb +28 -28
  162. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb +10 -10
  163. data/lib/twilio-ruby/rest/conversations/v1/service/configuration.rb +10 -10
  164. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message/delivery_receipt.rb +13 -5
  165. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message.rb +39 -31
  166. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/participant.rb +44 -36
  167. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/webhook.rb +30 -22
  168. data/lib/twilio-ruby/rest/conversations/v1/service/conversation.rb +51 -43
  169. data/lib/twilio-ruby/rest/conversations/v1/service/conversation_with_participants.rb +15 -15
  170. data/lib/twilio-ruby/rest/conversations/v1/service/participant_conversation.rb +13 -5
  171. data/lib/twilio-ruby/rest/conversations/v1/service/role.rb +18 -10
  172. data/lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb +19 -11
  173. data/lib/twilio-ruby/rest/conversations/v1/service/user.rb +28 -20
  174. data/lib/twilio-ruby/rest/conversations/v1/service.rb +14 -6
  175. data/lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb +19 -11
  176. data/lib/twilio-ruby/rest/conversations/v1/user.rb +28 -20
  177. data/lib/twilio-ruby/rest/conversations/v1.rb +6 -0
  178. data/lib/twilio-ruby/rest/conversations/v2/communication.rb +698 -0
  179. data/lib/twilio-ruby/rest/conversations/v2/configuration.rb +1208 -0
  180. data/lib/twilio-ruby/rest/conversations/v2/conversation.rb +1365 -0
  181. data/lib/twilio-ruby/rest/conversations/v2/operation.rb +369 -0
  182. data/lib/twilio-ruby/rest/conversations/v2/participant.rb +745 -0
  183. data/lib/twilio-ruby/rest/conversations/v2.rb +126 -0
  184. data/lib/twilio-ruby/rest/conversations_base.rb +6 -1
  185. data/lib/twilio-ruby/rest/events/v1/event_type.rb +13 -5
  186. data/lib/twilio-ruby/rest/events/v1/schema/schema_version.rb +13 -5
  187. data/lib/twilio-ruby/rest/events/v1/schema.rb +2 -2
  188. data/lib/twilio-ruby/rest/events/v1/sink/sink_test.rb +2 -2
  189. data/lib/twilio-ruby/rest/events/v1/sink/sink_validate.rb +3 -3
  190. data/lib/twilio-ruby/rest/events/v1/sink.rb +18 -10
  191. data/lib/twilio-ruby/rest/events/v1/subscription/subscribed_event.rb +17 -9
  192. data/lib/twilio-ruby/rest/events/v1/subscription.rb +18 -10
  193. data/lib/twilio-ruby/rest/events/v1.rb +4 -0
  194. data/lib/twilio-ruby/rest/flex_api/v1/assessments.rb +32 -24
  195. data/lib/twilio-ruby/rest/flex_api/v1/channel.rb +23 -15
  196. data/lib/twilio-ruby/rest/flex_api/v1/configuration.rb +5 -4
  197. data/lib/twilio-ruby/rest/flex_api/v1/flex_flow.rb +64 -56
  198. data/lib/twilio-ruby/rest/flex_api/v1/insights_assessments_comment.rb +20 -12
  199. data/lib/twilio-ruby/rest/flex_api/v1/insights_conversations.rb +13 -5
  200. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires.rb +32 -24
  201. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_category.rb +21 -13
  202. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_question.rb +33 -25
  203. data/lib/twilio-ruby/rest/flex_api/v1/insights_segments.rb +13 -5
  204. data/lib/twilio-ruby/rest/flex_api/v1/insights_session.rb +4 -4
  205. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_answer_sets.rb +3 -3
  206. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_comment.rb +3 -3
  207. data/lib/twilio-ruby/rest/flex_api/v1/insights_user_roles.rb +4 -4
  208. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_invite.rb +14 -6
  209. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_participant.rb +18 -10
  210. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_transfer.rb +3 -2
  211. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb +17 -9
  212. data/lib/twilio-ruby/rest/flex_api/v1/interaction.rb +8 -8
  213. data/lib/twilio-ruby/rest/flex_api/v1/plugin/plugin_versions.rb +27 -19
  214. data/lib/twilio-ruby/rest/flex_api/v1/plugin.rb +25 -17
  215. data/lib/twilio-ruby/rest/flex_api/v1/plugin_archive.rb +4 -4
  216. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration/configured_plugin.rb +15 -7
  217. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration.rb +19 -11
  218. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration_archive.rb +4 -4
  219. data/lib/twilio-ruby/rest/flex_api/v1/plugin_release.rb +17 -9
  220. data/lib/twilio-ruby/rest/flex_api/v1/plugin_version_archive.rb +4 -4
  221. data/lib/twilio-ruby/rest/flex_api/v1/provisioning_status.rb +2 -2
  222. data/lib/twilio-ruby/rest/flex_api/v1/web_channel.rb +23 -15
  223. data/lib/twilio-ruby/rest/flex_api/v1.rb +19 -0
  224. data/lib/twilio-ruby/rest/flex_api/v2/flex_user.rb +8 -8
  225. data/lib/twilio-ruby/rest/flex_api/v2/web_channels.rb +8 -8
  226. data/lib/twilio-ruby/rest/flex_api/v2.rb +6 -0
  227. data/lib/twilio-ruby/rest/frontline_api/v1/user.rb +10 -10
  228. data/lib/twilio-ruby/rest/frontline_api/v1.rb +1 -0
  229. data/lib/twilio-ruby/rest/iam/v1/api_key.rb +6 -6
  230. data/lib/twilio-ruby/rest/iam/v1/get_api_keys.rb +13 -5
  231. data/lib/twilio-ruby/rest/iam/v1/new_api_key.rb +6 -6
  232. data/lib/twilio-ruby/rest/iam/v1/o_auth_app.rb +3 -2
  233. data/lib/twilio-ruby/rest/iam/v1/role_permission.rb +13 -5
  234. data/lib/twilio-ruby/rest/iam/v1/token.rb +10 -10
  235. data/lib/twilio-ruby/rest/iam/v1.rb +13 -2
  236. data/lib/twilio-ruby/rest/insights/v1/call/annotation.rb +16 -16
  237. data/lib/twilio-ruby/rest/insights/v1/call/call_summary.rb +14 -14
  238. data/lib/twilio-ruby/rest/insights/v1/call/event.rb +17 -9
  239. data/lib/twilio-ruby/rest/insights/v1/call/metric.rb +13 -5
  240. data/lib/twilio-ruby/rest/insights/v1/call.rb +2 -2
  241. data/lib/twilio-ruby/rest/insights/v1/call_summaries.rb +23 -15
  242. data/lib/twilio-ruby/rest/insights/v1/conference/conference_participant.rb +17 -9
  243. data/lib/twilio-ruby/rest/insights/v1/conference.rb +13 -5
  244. data/lib/twilio-ruby/rest/insights/v1/room/participant.rb +13 -5
  245. data/lib/twilio-ruby/rest/insights/v1/room.rb +13 -5
  246. data/lib/twilio-ruby/rest/insights/v1/setting.rb +10 -10
  247. data/lib/twilio-ruby/rest/insights/v1.rb +3 -0
  248. data/lib/twilio-ruby/rest/insights/v2/inbound.rb +14 -5
  249. data/lib/twilio-ruby/rest/insights/v2/outbound.rb +14 -5
  250. data/lib/twilio-ruby/rest/insights/v2/report.rb +3 -2
  251. data/lib/twilio-ruby/rest/insights/v2.rb +3 -0
  252. data/lib/twilio-ruby/rest/insights/v3/metadata.rb +227 -0
  253. data/lib/twilio-ruby/rest/insights/v3/query.rb +394 -0
  254. data/lib/twilio-ruby/rest/insights/v3.rb +46 -0
  255. data/lib/twilio-ruby/rest/insights_base.rb +5 -0
  256. data/lib/twilio-ruby/rest/intelligence/v2/custom_operator.rb +22 -14
  257. data/lib/twilio-ruby/rest/intelligence/v2/operator.rb +13 -5
  258. data/lib/twilio-ruby/rest/intelligence/v2/operator_attachment.rb +2 -2
  259. data/lib/twilio-ruby/rest/intelligence/v2/operator_attachments.rb +2 -2
  260. data/lib/twilio-ruby/rest/intelligence/v2/operator_type.rb +13 -5
  261. data/lib/twilio-ruby/rest/intelligence/v2/prebuilt_operator.rb +13 -5
  262. data/lib/twilio-ruby/rest/intelligence/v2/service.rb +43 -35
  263. data/lib/twilio-ruby/rest/intelligence/v2/transcript/encrypted_operator_results.rb +4 -4
  264. data/lib/twilio-ruby/rest/intelligence/v2/transcript/encrypted_sentences.rb +4 -4
  265. data/lib/twilio-ruby/rest/intelligence/v2/transcript/media.rb +4 -4
  266. data/lib/twilio-ruby/rest/intelligence/v2/transcript/operator_result.rb +15 -7
  267. data/lib/twilio-ruby/rest/intelligence/v2/transcript/sentence.rb +13 -5
  268. data/lib/twilio-ruby/rest/intelligence/v2/transcript.rb +17 -9
  269. data/lib/twilio-ruby/rest/intelligence/v2.rb +13 -0
  270. data/lib/twilio-ruby/rest/intelligence/v3/configuration.rb +1073 -0
  271. data/lib/twilio-ruby/rest/intelligence/v3/conversation.rb +602 -0
  272. data/lib/twilio-ruby/rest/intelligence/v3/operator.rb +784 -0
  273. data/lib/twilio-ruby/rest/intelligence/v3/operator_result.rb +622 -0
  274. data/lib/twilio-ruby/rest/intelligence/v3/version.rb +556 -0
  275. data/lib/twilio-ruby/rest/intelligence/v3.rb +120 -0
  276. data/lib/twilio-ruby/rest/intelligence_base.rb +6 -1
  277. data/lib/twilio-ruby/rest/ip_messaging/v1/credential.rb +32 -24
  278. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/invite.rb +15 -7
  279. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb +19 -11
  280. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +20 -12
  281. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +23 -15
  282. data/lib/twilio-ruby/rest/ip_messaging/v1/service/role.rb +18 -10
  283. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user/user_channel.rb +13 -5
  284. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +23 -15
  285. data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +122 -114
  286. data/lib/twilio-ruby/rest/ip_messaging/v1.rb +2 -0
  287. data/lib/twilio-ruby/rest/ip_messaging/v2/credential.rb +32 -24
  288. data/lib/twilio-ruby/rest/ip_messaging/v2/service/binding.rb +13 -5
  289. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/invite.rb +15 -7
  290. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb +37 -29
  291. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +37 -29
  292. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/webhook.rb +32 -24
  293. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +37 -29
  294. data/lib/twilio-ruby/rest/ip_messaging/v2/service/role.rb +18 -10
  295. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_binding.rb +13 -5
  296. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_channel.rb +19 -11
  297. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +26 -18
  298. data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +76 -68
  299. data/lib/twilio-ruby/rest/ip_messaging/v2.rb +2 -0
  300. data/lib/twilio-ruby/rest/knowledge/v1/knowledge/chunk.rb +13 -5
  301. data/lib/twilio-ruby/rest/knowledge/v1/knowledge/knowledge_status.rb +2 -2
  302. data/lib/twilio-ruby/rest/knowledge/v1/knowledge.rb +14 -5
  303. data/lib/twilio-ruby/rest/knowledge/v1.rb +1 -0
  304. data/lib/twilio-ruby/rest/knowledge/v2/chunk.rb +306 -0
  305. data/lib/twilio-ruby/rest/knowledge/v2/knowledge.rb +714 -0
  306. data/lib/twilio-ruby/rest/knowledge/v2/knowledge_basis.rb +739 -0
  307. data/lib/twilio-ruby/rest/knowledge/v2/operation.rb +376 -0
  308. data/lib/twilio-ruby/rest/knowledge/v2/search.rb +355 -0
  309. data/lib/twilio-ruby/rest/knowledge/v2.rb +145 -0
  310. data/lib/twilio-ruby/rest/knowledge_base.rb +6 -1
  311. data/lib/twilio-ruby/rest/lookups/v1/phone_number.rb +10 -10
  312. data/lib/twilio-ruby/rest/lookups/v1.rb +1 -0
  313. data/lib/twilio-ruby/rest/lookups/v2/bucket.rb +3 -2
  314. data/lib/twilio-ruby/rest/lookups/v2/lookup_override.rb +4 -2
  315. data/lib/twilio-ruby/rest/lookups/v2/phone_number.rb +32 -32
  316. data/lib/twilio-ruby/rest/lookups/v2/query.rb +2 -2
  317. data/lib/twilio-ruby/rest/lookups/v2/rate_limit.rb +3 -3
  318. data/lib/twilio-ruby/rest/lookups/v2.rb +13 -0
  319. data/lib/twilio-ruby/rest/marketplace/v1/available_add_on/available_add_on_extension.rb +13 -5
  320. data/lib/twilio-ruby/rest/marketplace/v1/available_add_on.rb +13 -5
  321. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on/installed_add_on_extension.rb +15 -7
  322. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on/installed_add_on_usage.rb +2 -2
  323. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on.rb +21 -13
  324. data/lib/twilio-ruby/rest/marketplace/v1/module_data.rb +4 -4
  325. data/lib/twilio-ruby/rest/marketplace/v1/module_data_management.rb +16 -16
  326. data/lib/twilio-ruby/rest/marketplace/v1/referral_conversion.rb +2 -2
  327. data/lib/twilio-ruby/rest/marketplace/v1.rb +3 -0
  328. data/lib/twilio-ruby/rest/memory/v1/bulk.rb +362 -0
  329. data/lib/twilio-ruby/rest/memory/v1/conversation_summary.rb +798 -0
  330. data/lib/twilio-ruby/rest/memory/v1/data_mapping.rb +843 -0
  331. data/lib/twilio-ruby/rest/memory/v1/event.rb +320 -0
  332. data/lib/twilio-ruby/rest/memory/v1/identifier.rb +710 -0
  333. data/lib/twilio-ruby/rest/memory/v1/identity_resolution_setting.rb +442 -0
  334. data/lib/twilio-ruby/rest/memory/v1/import.rb +574 -0
  335. data/lib/twilio-ruby/rest/memory/v1/lookup.rb +250 -0
  336. data/lib/twilio-ruby/rest/memory/v1/observation.rb +786 -0
  337. data/lib/twilio-ruby/rest/memory/v1/operation.rb +376 -0
  338. data/lib/twilio-ruby/rest/memory/v1/profile.rb +636 -0
  339. data/lib/twilio-ruby/rest/memory/v1/recall.rb +366 -0
  340. data/lib/twilio-ruby/rest/memory/v1/revision.rb +349 -0
  341. data/lib/twilio-ruby/rest/memory/v1/store.rb +701 -0
  342. data/lib/twilio-ruby/rest/memory/v1/trait.rb +336 -0
  343. data/lib/twilio-ruby/rest/memory/v1/trait_group.rb +904 -0
  344. data/lib/twilio-ruby/rest/memory/v1.rb +475 -0
  345. data/lib/twilio-ruby/rest/memory.rb +6 -0
  346. data/lib/twilio-ruby/rest/memory_base.rb +38 -0
  347. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_registration_otp.rb +2 -2
  348. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_vetting.rb +15 -7
  349. data/lib/twilio-ruby/rest/messaging/v1/brand_registration.rb +18 -10
  350. data/lib/twilio-ruby/rest/messaging/v1/deactivations.rb +4 -4
  351. data/lib/twilio-ruby/rest/messaging/v1/domain_certs.rb +4 -4
  352. data/lib/twilio-ruby/rest/messaging/v1/domain_config.rb +10 -10
  353. data/lib/twilio-ruby/rest/messaging/v1/domain_config_messaging_service.rb +2 -2
  354. data/lib/twilio-ruby/rest/messaging/v1/domain_validate_dn.rb +2 -2
  355. data/lib/twilio-ruby/rest/messaging/v1/external_campaign.rb +5 -5
  356. data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service.rb +2 -2
  357. data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service_domain_association.rb +2 -2
  358. data/lib/twilio-ruby/rest/messaging/v1/request_managed_cert.rb +2 -2
  359. data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +14 -6
  360. data/lib/twilio-ruby/rest/messaging/v1/service/channel_sender.rb +14 -6
  361. data/lib/twilio-ruby/rest/messaging/v1/service/destination_alpha_sender.rb +15 -7
  362. data/lib/twilio-ruby/rest/messaging/v1/service/phone_number.rb +14 -6
  363. data/lib/twilio-ruby/rest/messaging/v1/service/short_code.rb +14 -6
  364. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person.rb +54 -46
  365. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person_usecase.rb +3 -3
  366. data/lib/twilio-ruby/rest/messaging/v1/service.rb +61 -53
  367. data/lib/twilio-ruby/rest/messaging/v1/tollfree_verification.rb +120 -112
  368. data/lib/twilio-ruby/rest/messaging/v1/usecase.rb +2 -2
  369. data/lib/twilio-ruby/rest/messaging/v1.rb +15 -0
  370. data/lib/twilio-ruby/rest/messaging/v2/channels_sender.rb +22 -7
  371. data/lib/twilio-ruby/rest/messaging/v2/domain_certs.rb +2 -2
  372. data/lib/twilio-ruby/rest/messaging/v2/typing_indicator.rb +4 -4
  373. data/lib/twilio-ruby/rest/messaging/v2.rb +2 -0
  374. data/lib/twilio-ruby/rest/messaging/v3/typing_indicator.rb +2 -2
  375. data/lib/twilio-ruby/rest/monitor/v1/alert.rb +13 -5
  376. data/lib/twilio-ruby/rest/monitor/v1/event.rb +13 -5
  377. data/lib/twilio-ruby/rest/monitor/v1.rb +2 -0
  378. data/lib/twilio-ruby/rest/notify/v1/credential.rb +32 -24
  379. data/lib/twilio-ruby/rest/notify/v1/service/binding.rb +20 -12
  380. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +20 -20
  381. data/lib/twilio-ruby/rest/notify/v1/service.rb +55 -47
  382. data/lib/twilio-ruby/rest/notify/v1.rb +2 -0
  383. data/lib/twilio-ruby/rest/numbers/v1/bulk_eligibility.rb +2 -2
  384. data/lib/twilio-ruby/rest/numbers/v1/eligibility.rb +2 -2
  385. data/lib/twilio-ruby/rest/numbers/v1/embedded_session.rb +2 -2
  386. data/lib/twilio-ruby/rest/numbers/v1/porting_all_port_in.rb +13 -5
  387. data/lib/twilio-ruby/rest/numbers/v1/porting_port_in.rb +2 -2
  388. data/lib/twilio-ruby/rest/numbers/v1/porting_port_in_phone_number.rb +2 -2
  389. data/lib/twilio-ruby/rest/numbers/v1/porting_portability.rb +6 -6
  390. data/lib/twilio-ruby/rest/numbers/v1/porting_webhook_configuration.rb +2 -2
  391. data/lib/twilio-ruby/rest/numbers/v1/porting_webhook_configuration_delete.rb +2 -2
  392. data/lib/twilio-ruby/rest/numbers/v1/sender_id_registration.rb +2 -2
  393. data/lib/twilio-ruby/rest/numbers/v1/signing_request_configuration.rb +13 -5
  394. data/lib/twilio-ruby/rest/numbers/v1/webhook.rb +2 -2
  395. data/lib/twilio-ruby/rest/numbers/v1.rb +21 -2
  396. data/lib/twilio-ruby/rest/numbers/v2/application.rb +13 -5
  397. data/lib/twilio-ruby/rest/numbers/v2/authorization_document/dependent_hosted_number_order.rb +13 -5
  398. data/lib/twilio-ruby/rest/numbers/v2/authorization_document.rb +19 -11
  399. data/lib/twilio-ruby/rest/numbers/v2/bulk_hosted_number_order.rb +4 -4
  400. data/lib/twilio-ruby/rest/numbers/v2/bundle_clone.rb +8 -8
  401. data/lib/twilio-ruby/rest/numbers/v2/hosted_number_order.rb +35 -27
  402. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/bundle_copy.rb +14 -6
  403. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/evaluation.rb +13 -5
  404. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/item_assignment.rb +14 -6
  405. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/replace_items.rb +3 -3
  406. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle.rb +29 -21
  407. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user.rb +20 -12
  408. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user_type.rb +13 -5
  409. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/regulation.rb +15 -7
  410. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document.rb +20 -12
  411. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document_type.rb +13 -5
  412. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance.rb +2 -2
  413. data/lib/twilio-ruby/rest/numbers/v2.rb +5 -0
  414. data/lib/twilio-ruby/rest/numbers/v3/hosted_number_order.rb +19 -19
  415. data/lib/twilio-ruby/rest/oauth/v1/authorize.rb +7 -7
  416. data/lib/twilio-ruby/rest/oauth/v1/token.rb +10 -10
  417. data/lib/twilio-ruby/rest/oauth/v2/authorize.rb +7 -7
  418. data/lib/twilio-ruby/rest/oauth/v2/token.rb +11 -11
  419. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document/dependent_hosted_number_order.rb +13 -5
  420. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document.rb +33 -25
  421. data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +50 -42
  422. data/lib/twilio-ruby/rest/preview/hosted_numbers.rb +2 -0
  423. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on/available_add_on_extension.rb +13 -5
  424. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on.rb +13 -5
  425. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on/installed_add_on_extension.rb +15 -7
  426. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on.rb +21 -13
  427. data/lib/twilio-ruby/rest/preview/marketplace.rb +2 -0
  428. data/lib/twilio-ruby/rest/preview/wireless/command.rb +20 -12
  429. data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +27 -19
  430. data/lib/twilio-ruby/rest/preview/wireless/sim/usage.rb +6 -6
  431. data/lib/twilio-ruby/rest/preview/wireless/sim.rb +45 -37
  432. data/lib/twilio-ruby/rest/preview/wireless.rb +3 -0
  433. data/lib/twilio-ruby/rest/preview_iam/v1/authorize.rb +7 -7
  434. data/lib/twilio-ruby/rest/preview_iam/v1/token.rb +10 -10
  435. data/lib/twilio-ruby/rest/preview_iam/versionless/organization/account.rb +13 -5
  436. data/lib/twilio-ruby/rest/preview_iam/versionless/organization/role_assignment.rb +54 -10
  437. data/lib/twilio-ruby/rest/preview_iam/versionless/organization/user.rb +27 -11
  438. data/lib/twilio-ruby/rest/preview_iam/versionless/organization.rb +2 -2
  439. data/lib/twilio-ruby/rest/preview_iam/versionless.rb +1 -0
  440. data/lib/twilio-ruby/rest/pricing/v1/messaging/country.rb +13 -5
  441. data/lib/twilio-ruby/rest/pricing/v1/messaging.rb +2 -2
  442. data/lib/twilio-ruby/rest/pricing/v1/phone_number/country.rb +13 -5
  443. data/lib/twilio-ruby/rest/pricing/v1/phone_number.rb +2 -2
  444. data/lib/twilio-ruby/rest/pricing/v1/voice/country.rb +13 -5
  445. data/lib/twilio-ruby/rest/pricing/v1/voice/number.rb +2 -2
  446. data/lib/twilio-ruby/rest/pricing/v1/voice.rb +2 -2
  447. data/lib/twilio-ruby/rest/pricing/v1.rb +22 -4
  448. data/lib/twilio-ruby/rest/pricing/v2/country.rb +13 -5
  449. data/lib/twilio-ruby/rest/pricing/v2/number.rb +4 -4
  450. data/lib/twilio-ruby/rest/pricing/v2/voice/country.rb +13 -5
  451. data/lib/twilio-ruby/rest/pricing/v2/voice/number.rb +4 -4
  452. data/lib/twilio-ruby/rest/pricing/v2/voice.rb +2 -2
  453. data/lib/twilio-ruby/rest/pricing/v2.rb +13 -2
  454. data/lib/twilio-ruby/rest/proxy/v1/service/phone_number.rb +18 -10
  455. data/lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb +13 -5
  456. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant/message_interaction.rb +15 -7
  457. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb +17 -9
  458. data/lib/twilio-ruby/rest/proxy/v1/service/session.rb +25 -17
  459. data/lib/twilio-ruby/rest/proxy/v1/service.rb +37 -29
  460. data/lib/twilio-ruby/rest/proxy/v1.rb +1 -0
  461. data/lib/twilio-ruby/rest/routes/v2/phone_number.rb +6 -6
  462. data/lib/twilio-ruby/rest/routes/v2/sip_domain.rb +6 -6
  463. data/lib/twilio-ruby/rest/routes/v2/trunk.rb +6 -6
  464. data/lib/twilio-ruby/rest/routes/v2.rb +3 -0
  465. data/lib/twilio-ruby/rest/serverless/v1/service/asset/asset_version.rb +13 -5
  466. data/lib/twilio-ruby/rest/serverless/v1/service/asset.rb +16 -8
  467. data/lib/twilio-ruby/rest/serverless/v1/service/build/build_status.rb +2 -2
  468. data/lib/twilio-ruby/rest/serverless/v1/service/build.rb +17 -9
  469. data/lib/twilio-ruby/rest/serverless/v1/service/environment/deployment.rb +15 -7
  470. data/lib/twilio-ruby/rest/serverless/v1/service/environment/log.rb +13 -5
  471. data/lib/twilio-ruby/rest/serverless/v1/service/environment/variable.rb +19 -11
  472. data/lib/twilio-ruby/rest/serverless/v1/service/environment.rb +15 -7
  473. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version/function_version_content.rb +2 -2
  474. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version.rb +13 -5
  475. data/lib/twilio-ruby/rest/serverless/v1/service/function.rb +16 -8
  476. data/lib/twilio-ruby/rest/serverless/v1/service.rb +23 -15
  477. data/lib/twilio-ruby/rest/serverless/v1.rb +1 -0
  478. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/engagement_context.rb +2 -2
  479. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step/step_context.rb +2 -2
  480. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb +13 -5
  481. data/lib/twilio-ruby/rest/studio/v1/flow/engagement.rb +16 -8
  482. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_context.rb +2 -2
  483. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step/execution_step_context.rb +2 -2
  484. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step.rb +13 -5
  485. data/lib/twilio-ruby/rest/studio/v1/flow/execution.rb +18 -10
  486. data/lib/twilio-ruby/rest/studio/v1/flow.rb +13 -5
  487. data/lib/twilio-ruby/rest/studio/v1.rb +1 -0
  488. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_context.rb +2 -2
  489. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step/execution_step_context.rb +2 -2
  490. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step.rb +13 -5
  491. data/lib/twilio-ruby/rest/studio/v2/flow/execution.rb +18 -10
  492. data/lib/twilio-ruby/rest/studio/v2/flow/flow_revision.rb +13 -5
  493. data/lib/twilio-ruby/rest/studio/v2/flow/flow_test_user.rb +4 -4
  494. data/lib/twilio-ruby/rest/studio/v2/flow.rb +42 -19
  495. data/lib/twilio-ruby/rest/studio/v2/flow_validate.rb +6 -6
  496. data/lib/twilio-ruby/rest/studio/v2.rb +1 -0
  497. data/lib/twilio-ruby/rest/supersim/v1/esim_profile.rb +17 -9
  498. data/lib/twilio-ruby/rest/supersim/v1/fleet.rb +36 -28
  499. data/lib/twilio-ruby/rest/supersim/v1/ip_command.rb +19 -11
  500. data/lib/twilio-ruby/rest/supersim/v1/network.rb +13 -5
  501. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile/network_access_profile_network.rb +14 -6
  502. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile.rb +17 -9
  503. data/lib/twilio-ruby/rest/supersim/v1/settings_update.rb +13 -5
  504. data/lib/twilio-ruby/rest/supersim/v1/sim/billing_period.rb +13 -5
  505. data/lib/twilio-ruby/rest/supersim/v1/sim/sim_ip_address.rb +13 -5
  506. data/lib/twilio-ruby/rest/supersim/v1/sim.rb +27 -19
  507. data/lib/twilio-ruby/rest/supersim/v1/sms_command.rb +17 -9
  508. data/lib/twilio-ruby/rest/supersim/v1/usage_record.rb +13 -5
  509. data/lib/twilio-ruby/rest/supersim/v1.rb +7 -0
  510. data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +19 -11
  511. data/lib/twilio-ruby/rest/sync/v1/service/document.rb +22 -14
  512. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +29 -21
  513. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +19 -11
  514. data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +20 -12
  515. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +30 -22
  516. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +19 -11
  517. data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +20 -12
  518. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream/stream_message.rb +3 -3
  519. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream.rb +17 -9
  520. data/lib/twilio-ruby/rest/sync/v1/service.rb +34 -26
  521. data/lib/twilio-ruby/rest/sync/v1.rb +1 -0
  522. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/activity.rb +17 -9
  523. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +13 -5
  524. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +123 -115
  525. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +38 -30
  526. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_channel.rb +20 -12
  527. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_bulk_real_time_statistics.rb +2 -2
  528. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics.rb +12 -12
  529. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics.rb +4 -4
  530. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_statistics.rb +12 -12
  531. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queues_statistics.rb +13 -5
  532. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +31 -23
  533. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +119 -111
  534. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_channel.rb +17 -9
  535. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_statistics.rb +10 -10
  536. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_cumulative_statistics.rb +10 -10
  537. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_real_time_statistics.rb +4 -4
  538. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_statistics.rb +16 -16
  539. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +28 -20
  540. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics.rb +12 -12
  541. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_real_time_statistics.rb +4 -4
  542. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_statistics.rb +12 -12
  543. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +30 -22
  544. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_cumulative_statistics.rb +12 -12
  545. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_real_time_statistics.rb +4 -4
  546. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_statistics.rb +12 -12
  547. data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +33 -25
  548. data/lib/twilio-ruby/rest/taskrouter/v1.rb +1 -0
  549. data/lib/twilio-ruby/rest/trunking/v1/trunk/credential_list.rb +14 -6
  550. data/lib/twilio-ruby/rest/trunking/v1/trunk/ip_access_control_list.rb +14 -6
  551. data/lib/twilio-ruby/rest/trunking/v1/trunk/origination_url.rb +28 -20
  552. data/lib/twilio-ruby/rest/trunking/v1/trunk/phone_number.rb +14 -6
  553. data/lib/twilio-ruby/rest/trunking/v1/trunk/recording.rb +6 -6
  554. data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +37 -29
  555. data/lib/twilio-ruby/rest/trunking/v1.rb +1 -0
  556. data/lib/twilio-ruby/rest/trusthub/v1/compliance_inquiries.rb +9 -9
  557. data/lib/twilio-ruby/rest/trusthub/v1/compliance_registration_inquiries.rb +45 -45
  558. data/lib/twilio-ruby/rest/trusthub/v1/compliance_tollfree_inquiries.rb +40 -40
  559. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_channel_endpoint_assignment.rb +15 -7
  560. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_entity_assignments.rb +14 -6
  561. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_evaluations.rb +14 -6
  562. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles.rb +25 -17
  563. data/lib/twilio-ruby/rest/trusthub/v1/end_user.rb +20 -12
  564. data/lib/twilio-ruby/rest/trusthub/v1/end_user_type.rb +13 -5
  565. data/lib/twilio-ruby/rest/trusthub/v1/policies.rb +13 -5
  566. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document.rb +20 -12
  567. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document_type.rb +13 -5
  568. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_channel_endpoint_assignment.rb +15 -7
  569. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_entity_assignments.rb +14 -6
  570. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_evaluations.rb +14 -6
  571. data/lib/twilio-ruby/rest/trusthub/v1/trust_products.rb +25 -17
  572. data/lib/twilio-ruby/rest/trusthub/v1.rb +9 -0
  573. data/lib/twilio-ruby/rest/verify/v2/form.rb +2 -2
  574. data/lib/twilio-ruby/rest/verify/v2/safelist.rb +3 -3
  575. data/lib/twilio-ruby/rest/verify/v2/service/access_token.rb +6 -6
  576. data/lib/twilio-ruby/rest/verify/v2/service/approve_challenge.rb +2 -2
  577. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge/notification.rb +3 -3
  578. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb +23 -15
  579. data/lib/twilio-ruby/rest/verify/v2/service/entity/factor.rb +31 -23
  580. data/lib/twilio-ruby/rest/verify/v2/service/entity/new_factor.rb +16 -16
  581. data/lib/twilio-ruby/rest/verify/v2/service/entity.rb +14 -6
  582. data/lib/twilio-ruby/rest/verify/v2/service/messaging_configuration.rb +17 -9
  583. data/lib/twilio-ruby/rest/verify/v2/service/new_challenge.rb +3 -2
  584. data/lib/twilio-ruby/rest/verify/v2/service/new_factor.rb +2 -2
  585. data/lib/twilio-ruby/rest/verify/v2/service/new_verify_factor.rb +2 -2
  586. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb +19 -11
  587. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit.rb +17 -9
  588. data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +22 -22
  589. data/lib/twilio-ruby/rest/verify/v2/service/verification_check.rb +8 -8
  590. data/lib/twilio-ruby/rest/verify/v2/service/webhook.rb +40 -32
  591. data/lib/twilio-ruby/rest/verify/v2/service.rb +91 -83
  592. data/lib/twilio-ruby/rest/verify/v2/template.rb +13 -5
  593. data/lib/twilio-ruby/rest/verify/v2/verification_attempt.rb +13 -5
  594. data/lib/twilio-ruby/rest/verify/v2/verification_attempts_summary.rb +14 -14
  595. data/lib/twilio-ruby/rest/verify/v2.rb +4 -0
  596. data/lib/twilio-ruby/rest/video/v1/composition.rb +22 -14
  597. data/lib/twilio-ruby/rest/video/v1/composition_hook.rb +43 -35
  598. data/lib/twilio-ruby/rest/video/v1/composition_settings.rb +14 -14
  599. data/lib/twilio-ruby/rest/video/v1/recording.rb +13 -5
  600. data/lib/twilio-ruby/rest/video/v1/recording_settings.rb +14 -14
  601. data/lib/twilio-ruby/rest/video/v1/room/participant/anonymize.rb +2 -2
  602. data/lib/twilio-ruby/rest/video/v1/room/participant/published_track.rb +13 -5
  603. data/lib/twilio-ruby/rest/video/v1/room/participant/subscribe_rules.rb +3 -3
  604. data/lib/twilio-ruby/rest/video/v1/room/participant/subscribed_track.rb +13 -5
  605. data/lib/twilio-ruby/rest/video/v1/room/participant.rb +15 -7
  606. data/lib/twilio-ruby/rest/video/v1/room/recording_rules.rb +3 -3
  607. data/lib/twilio-ruby/rest/video/v1/room/room_recording.rb +13 -5
  608. data/lib/twilio-ruby/rest/video/v1/room/transcriptions.rb +18 -10
  609. data/lib/twilio-ruby/rest/video/v1/room.rb +32 -24
  610. data/lib/twilio-ruby/rest/video/v1.rb +4 -0
  611. data/lib/twilio-ruby/rest/voice/v1/archived_call.rb +2 -2
  612. data/lib/twilio-ruby/rest/voice/v1/byoc_trunk.rb +43 -35
  613. data/lib/twilio-ruby/rest/voice/v1/connection_policy/connection_policy_target.rb +28 -20
  614. data/lib/twilio-ruby/rest/voice/v1/connection_policy.rb +16 -8
  615. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/bulk_country_update.rb +3 -3
  616. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country/highrisk_special_prefix.rb +13 -5
  617. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country.rb +13 -5
  618. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/settings.rb +4 -4
  619. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions.rb +2 -2
  620. data/lib/twilio-ruby/rest/voice/v1/ip_record.rb +18 -10
  621. data/lib/twilio-ruby/rest/voice/v1/source_ip_mapping.rb +17 -9
  622. data/lib/twilio-ruby/rest/voice/v1.rb +10 -0
  623. data/lib/twilio-ruby/rest/voice/v3/transcription.rb +514 -0
  624. data/lib/twilio-ruby/rest/voice/v3.rb +50 -0
  625. data/lib/twilio-ruby/rest/voice_base.rb +6 -1
  626. data/lib/twilio-ruby/rest/wireless/v1/command.rb +20 -12
  627. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +29 -21
  628. data/lib/twilio-ruby/rest/wireless/v1/sim/data_session.rb +13 -5
  629. data/lib/twilio-ruby/rest/wireless/v1/sim/usage_record.rb +13 -5
  630. data/lib/twilio-ruby/rest/wireless/v1/sim.rb +49 -41
  631. data/lib/twilio-ruby/rest/wireless/v1/usage_record.rb +13 -5
  632. data/lib/twilio-ruby/rest/wireless/v1.rb +3 -0
  633. data/lib/twilio-ruby/twiml/voice_response.rb +12 -8
  634. data/lib/twilio-ruby/version.rb +1 -1
  635. data/twilio-ruby.gemspec +1 -1
  636. metadata +46 -4
@@ -0,0 +1,784 @@
1
+ ##
2
+ # This code was generated by
3
+ # ___ _ _ _ _ _ _ ____ ____ ____ _ ____ ____ _ _ ____ ____ ____ ___ __ __
4
+ # | | | | | | | | | __ | | |__| | __ | __ |___ |\ | |___ |__/ |__| | | | |__/
5
+ # | |_|_| | |___ | |__| |__| | | | |__] |___ | \| |___ | \ | | | |__| | \
6
+ #
7
+ # Twilio Conversational Intelligence API
8
+ # The Conversational Intelligence API includes resources to create and manage intelligence configurations, define and run language operators, and retrieve processed conversations and operator results. * Use the Configurations resource to create and manage intelligence configurations and define rules that control how and when language operators analyze and transform conversations. * Use the Operators resource to create custom language operators or retrieve Twilio-author and custom operators. * Use the Conversations resource to retrieve conversations processed with an intelligence configuration, and the OperatorResults resource to retrieve language operator results for those conversations.
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 Intelligence < IntelligenceBase
19
+ class V3 < Version
20
+ class OperatorList < ListResource
21
+
22
+ class LanguageOperator
23
+ # @param [id]: [String] The unique identifier for the Language Operator. Assigned by Twilio (TTID).
24
+ # @param [display_name]: [String] Display name of the Language Operator describing its purpose.
25
+ # @param [description]: [String] Description of the Language Operator further explaining its purpose.
26
+ # @param [version]: [String] Numeric Operator version. Automatically incremented with each update on the resource, used to ensure integrity when updating the Operator.
27
+ # @param [author]: ["OperatorInstance.OperatorAuthor"]
28
+ # @param [prompt]: [String] The natural language instructions used by the operator to analyze the conversation. Within the prompt, users can reference parameters using the `{{parameters.[param_name]}}` syntax. Parameter values are provided to the Operator by the Intelligence Configuration Rule at runtime. **Note**: Prompts will only be exposed for Custom Operators (`author` = `SELF`). Twilio-authored Operators (`author` = `TWILIO`) will have their prompts omitted from the API.
29
+ # @param [output_format]: [OperatorOutputFormat]
30
+ # @param [output_schema]: [Hash] Required for `JSON` output only. this will be set to a JSON Schema object describing the properties & data types of the response. Please see https://platform.openai.com/docs/guides/structured-outputs#supported-schemas Will include the following keywords: - `type` : Must be set to `object` - `properties`: An object containing the property names and their data types you would like the LLM to return Additional details on JSON output formatting: - The root level `type` of a JSON schema must be set to `object` - The following property data types are supported : `string`, `number`, `boolean`, `integer`, `object`, `array`, `anyOf` - Definitions with `$defs` / `$ref` are supported - Max 100 object properties and 10 levels of nesting are supported - Max 1000 enum values across all enum properties are supported - Notable JSON Schema keywords not supported include: - For `strings`: `minLength`, `maxLength` - For `objects`: `patternProperties`, `unevaluatedProperties`, `propertyNames`, `minProperties`, `maxProperties` - For `arrays`: `unevaluatedItems`, `contains`, `minContains`, `maxContains`, `uniqueItems` - Structured Operator Results will be returned in the same order as the ordering of keys in the schema - In the event an Operator execution request is refused for safety reasons the Operator Result API response will include a new field called `refusal` to indicate that the LLM refused to fulfill the request - Twilio will automatically set `additionalProperties` to false and specify all provided fields as required (constraints of Structured Outputs). You don't need to pass these fields as part of your JSON schema. Twilio will automatically overwrite any user-provided values for these fields.
31
+ # @param [training_examples]: [Array<OperatorList.OperatorTrainingExample>] An array of example input/output pairs used to illustrate the intended behavior of the Language Operator. These examples help guide the model's understanding of expected input–output relationships and improve consistency during evaluation and testing. **Note**: Training examples will only be exposed for Custom Operators (`author` = `SELF`). Twilio-authored Operators (`author` = `TWILIO`) will have their training examples omitted from the API.
32
+ # @param [context]: [OperatorList.OperatorContext]
33
+ # @param [parameters]: [Hash<String, OperatorParameter>] Defines the schema of the parameters that are provided when running the operator, including required and optional values that determine the operator's behavior. The values of the parameters themselves are passed in by the attached Intelligence Configuration.
34
+ attr_accessor :id, :display_name, :description, :version, :author, :prompt, :output_format, :output_schema, :training_examples, :context, :parameters
35
+ def initialize(payload)
36
+ @id = payload["id"]
37
+ @display_name = payload["display_name"]
38
+ @description = payload["description"]
39
+ @version = payload["version"]
40
+ @author = payload["author"]
41
+ @prompt = payload["prompt"]
42
+ @output_format = payload["output_format"]
43
+ @output_schema = payload["output_schema"]
44
+ @training_examples = payload["training_examples"]
45
+ @context = payload["context"]
46
+ @parameters = payload["parameters"]
47
+ end
48
+ def to_json(options = {})
49
+ {
50
+ "id": @id,
51
+ "displayName": @display_name,
52
+ "description": @description,
53
+ "version": @version,
54
+ "author": @author,
55
+ "prompt": @prompt,
56
+ "outputFormat": @output_format,
57
+ "outputSchema": @output_schema,
58
+ "trainingExamples": @training_examples,
59
+ "context": @context,
60
+ "parameters": @parameters,
61
+ }.to_json(options)
62
+ end
63
+ end
64
+
65
+ class OperatorContextKnowledge
66
+ # @param [enabled]: [Boolean] Set to true to allow access to Knowledge Sources at runtime.
67
+ attr_accessor :enabled
68
+ def initialize(payload)
69
+ @enabled = payload["enabled"]
70
+ end
71
+ def to_json(options = {})
72
+ {
73
+ "enabled": @enabled,
74
+ }.to_json(options)
75
+ end
76
+ end
77
+
78
+ class OperatorContextMemory
79
+ # @param [enabled]: [Boolean] Set to true to allow access to Memory at runtime.
80
+ attr_accessor :enabled
81
+ def initialize(payload)
82
+ @enabled = payload["enabled"]
83
+ end
84
+ def to_json(options = {})
85
+ {
86
+ "enabled": @enabled,
87
+ }.to_json(options)
88
+ end
89
+ end
90
+
91
+
92
+ ##
93
+ # Initialize the OperatorList
94
+ # @param [Version] version Version that contains the resource
95
+ # @return [OperatorList] OperatorList
96
+ def initialize(version)
97
+
98
+ apiV1Version = ApiV1Version.new version.domain, version
99
+ super(apiV1Version)
100
+ # Path Solution
101
+ @solution = { }
102
+ @uri = "/ControlPlane/Operators"
103
+
104
+ end
105
+ ##
106
+ # Create the OperatorInstance
107
+ # @param [LanguageOperator] language_operator Create Language Operator request
108
+ # @return [OperatorInstance] Created OperatorInstance
109
+ def create(language_operator: nil
110
+ )
111
+
112
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
113
+ headers['Content-Type'] = 'application/json'
114
+
115
+
116
+
117
+
118
+ payload = @version.create('POST', @uri, headers: headers, data: language_operator.to_json)
119
+ OperatorInstance.new(
120
+ @version,
121
+ payload,
122
+ )
123
+ end
124
+
125
+ ##
126
+ # Create the OperatorInstanceMetadata
127
+ # @param [LanguageOperator] language_operator Create Language Operator request
128
+ # @return [OperatorInstance] Created OperatorInstance
129
+ def create_with_metadata(language_operator: nil
130
+ )
131
+
132
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
133
+ headers['Content-Type'] = 'application/json'
134
+
135
+
136
+
137
+
138
+ response = @version.create_with_metadata('POST', @uri, headers: headers, data: language_operator.to_json)
139
+ operator_instance = OperatorInstance.new(
140
+ @version,
141
+ response.body,
142
+ )
143
+ OperatorInstanceMetadata.new(
144
+ @version,
145
+ operator_instance,
146
+ response.headers,
147
+ response.status_code
148
+ )
149
+ end
150
+
151
+
152
+ ##
153
+ # Lists OperatorInstance records from the API as a list.
154
+ # Unlike stream(), this operation is eager and will load `limit` records into
155
+ # memory before returning.
156
+ # @param [String] page_token Token for pagination
157
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
158
+ # guarantees to never return more than limit. Default is no limit
159
+ # @param [Integer] page_size Number of records to fetch per request, when
160
+ # not set will use the default value of 50 records. If no page_size is defined
161
+ # but a limit is defined, stream() will attempt to read the limit with the most
162
+ # efficient page size, i.e. min(limit, 1000)
163
+ # @return [Array] Array of up to limit results
164
+ def list(page_token: :unset, limit: nil, page_size: nil)
165
+ self.stream(
166
+ page_token: page_token,
167
+ limit: limit,
168
+ page_size: page_size
169
+ ).entries
170
+ end
171
+
172
+ ##
173
+ # Streams Instance records from the API as an Enumerable.
174
+ # This operation lazily loads records as efficiently as possible until the limit
175
+ # is reached.
176
+ # @param [String] page_token Token for pagination
177
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
178
+ # guarantees to never return more than limit. Default is no limit
179
+ # @param [Integer] page_size Number of records to fetch per request, when
180
+ # not set will use the default value of 50 records. If no page_size is defined
181
+ # but a limit is defined, stream() will attempt to read the limit with the most
182
+ # efficient page size, i.e. min(limit, 1000)
183
+ # @return [Enumerable] Enumerable that will yield up to limit results
184
+ def stream(page_token: :unset, limit: nil, page_size: nil)
185
+ limits = @version.read_limits(limit, page_size)
186
+
187
+ page = self.page(
188
+ page_token: page_token,
189
+ page_size: limits[:page_size], )
190
+
191
+ return [].each if page.nil?
192
+
193
+ result = @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
194
+ return [].each if result.nil?
195
+ result
196
+ end
197
+
198
+ ##
199
+ # Lists OperatorPageMetadata records from the API as a list.
200
+ # @param [String] page_token Token for pagination
201
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
202
+ # guarantees to never return more than limit. Default is no limit
203
+ # @param [Integer] page_size Number of records to fetch per request, when
204
+ # not set will use the default value of 50 records. If no page_size is defined
205
+ # but a limit is defined, stream() will attempt to read the limit with the most
206
+ # efficient page size, i.e. min(limit, 1000)
207
+ # @return [Array] Array of up to limit results
208
+ def list_with_metadata(page_token: :unset, limit: nil, page_size: nil)
209
+ limits = @version.read_limits(limit, page_size)
210
+ params = Twilio::Values.of({
211
+ 'pageToken' => page_token,
212
+
213
+ 'PageSize' => limits[:page_size],
214
+ });
215
+ headers = Twilio::Values.of({})
216
+
217
+ response = @version.page('GET', @uri, params: params, headers: headers)
218
+
219
+ OperatorPageMetadata.new(@version, response, @solution, limits[:limit])
220
+ end
221
+
222
+ ##
223
+ # When passed a block, yields OperatorInstance records from the API.
224
+ # This operation lazily loads records as efficiently as possible until the limit
225
+ # is reached.
226
+ def each
227
+ limits = @version.read_limits
228
+
229
+ page = self.page(page_size: limits[:page_size], )
230
+
231
+ return [].each if page.nil?
232
+
233
+ result = @version.stream(page,
234
+ limit: limits[:limit],
235
+ page_limit: limits[:page_limit])
236
+ return [].each if result.nil?
237
+ result.each {|x| yield x}
238
+ end
239
+
240
+ ##
241
+ # Retrieve a single page of OperatorInstance records from the API.
242
+ # Request is executed immediately.
243
+ # @param [String] page_token Token for pagination
244
+
245
+ # @return [Page] Page of OperatorInstance
246
+ def page(page_token: :unset, page_size: :unset)
247
+ params = Twilio::Values.of({
248
+ 'pageToken' => page_token,
249
+ 'PageSize' => page_size,
250
+ })
251
+ headers = Twilio::Values.of({})
252
+
253
+
254
+
255
+ response = @version.page('GET', @uri, params: params, headers: headers)
256
+
257
+ OperatorPage.new(@version, response, @solution)
258
+ end
259
+
260
+ ##
261
+ # Retrieve a single page of OperatorInstance records from the API.
262
+ # Request is executed immediately.
263
+ # @param [String] target_url API-generated URL for the requested results page
264
+ # @return [Page] Page of OperatorInstance
265
+ def get_page(target_url)
266
+ response = @version.domain.request(
267
+ 'GET',
268
+ target_url
269
+ )
270
+ OperatorPage.new(@version, response, @solution)
271
+ end
272
+
273
+
274
+
275
+ # Provide a user friendly representation
276
+ def to_s
277
+ '#<Twilio.Intelligence.V3.OperatorList>'
278
+ end
279
+ end
280
+
281
+
282
+ class OperatorContext < InstanceContext
283
+ ##
284
+ # Initialize the OperatorContext
285
+ # @param [Version] version Version that contains the resource
286
+ # @param [String] id The unique identifier (TTID) of the Language Operator.
287
+ # @return [OperatorContext] OperatorContext
288
+ def initialize(version, id)
289
+
290
+ apiV1Version = ApiV1Version.new version.domain, version
291
+ super(apiV1Version)
292
+
293
+ # Path Solution
294
+ @solution = { id: id, }
295
+ @uri = "/ControlPlane/Operators/#{@solution[:id]}"
296
+
297
+
298
+ end
299
+ ##
300
+ # Delete the OperatorInstance
301
+ # @return [Boolean] True if delete succeeds, false otherwise
302
+ def delete
303
+
304
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
305
+
306
+
307
+
308
+ response = @version.delete_with_metadata('DELETE', @uri, headers: headers)
309
+ OperatorInstance.new(
310
+ @version,
311
+ response.body,
312
+ id: @solution[:id],
313
+ )
314
+
315
+ end
316
+
317
+ ##
318
+ # Delete the OperatorInstanceMetadata
319
+ # @return [Boolean] True if delete succeeds, false otherwise
320
+ def delete_with_metadata
321
+
322
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
323
+
324
+
325
+
326
+ response = @version.delete_with_metadata('DELETE', @uri, headers: headers)
327
+ operator_instance = OperatorInstance.new(
328
+ @version,
329
+ response.body,
330
+ account_sid: @solution[:account_sid],
331
+ sid: @solution[:sid],
332
+ )
333
+ OperatorInstanceMetadata.new(@version, operator_instance, response.headers, response.status_code)
334
+ end
335
+
336
+ ##
337
+ # Fetch the OperatorInstance
338
+ # @return [OperatorInstance] Fetched OperatorInstance
339
+ def fetch
340
+
341
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
342
+
343
+
344
+
345
+
346
+
347
+ payload = @version.fetch('GET', @uri, headers: headers)
348
+ OperatorInstance.new(
349
+ @version,
350
+ payload,
351
+ id: @solution[:id],
352
+ )
353
+ end
354
+
355
+ ##
356
+ # Fetch the OperatorInstanceMetadata
357
+ # @return [OperatorInstance] Fetched OperatorInstance
358
+ def fetch_with_metadata
359
+
360
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
361
+
362
+
363
+
364
+
365
+
366
+ response = @version.fetch_with_metadata('GET', @uri, headers: headers)
367
+ operator_instance = OperatorInstance.new(
368
+ @version,
369
+ response.body,
370
+ id: @solution[:id],
371
+ )
372
+ OperatorInstanceMetadata.new(
373
+ @version,
374
+ operator_instance,
375
+ response.headers,
376
+ response.status_code
377
+ )
378
+ end
379
+
380
+ ##
381
+ # Update the OperatorInstance
382
+ # @param [String] if_match Current ETag/version required for conditional update
383
+ # @param [LanguageOperator] language_operator Full replacement of a Language Operator configuration
384
+ # @return [OperatorInstance] Updated OperatorInstance
385
+ def update(
386
+ if_match: :unset,
387
+ language_operator: nil
388
+ )
389
+
390
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', 'If-Match' => if_match, })
391
+ headers['Content-Type'] = 'application/json'
392
+
393
+
394
+
395
+
396
+ payload = @version.update('PUT', @uri, headers: headers, data: language_operator.to_json)
397
+ OperatorInstance.new(
398
+ @version,
399
+ payload,
400
+ id: @solution[:id],
401
+ )
402
+ end
403
+
404
+ ##
405
+ # Update the OperatorInstanceMetadata
406
+ # @param [String] if_match Current ETag/version required for conditional update
407
+ # @param [LanguageOperator] language_operator Full replacement of a Language Operator configuration
408
+ # @return [OperatorInstance] Updated OperatorInstance
409
+ def update_with_metadata(
410
+ if_match: :unset,
411
+ language_operator: nil
412
+ )
413
+
414
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', 'If-Match' => if_match, })
415
+ headers['Content-Type'] = 'application/json'
416
+
417
+
418
+
419
+
420
+ response = @version.update_with_metadata('PUT', @uri, headers: headers, data: language_operator.to_json)
421
+ operator_instance = OperatorInstance.new(
422
+ @version,
423
+ response.body,
424
+ id: @solution[:id],
425
+ )
426
+ OperatorInstanceMetadata.new(
427
+ @version,
428
+ operator_instance,
429
+ response.headers,
430
+ response.status_code
431
+ )
432
+ end
433
+
434
+
435
+ ##
436
+ # Provide a user friendly representation
437
+ def to_s
438
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
439
+ "#<Twilio.Intelligence.V3.OperatorContext #{context}>"
440
+ end
441
+
442
+ ##
443
+ # Provide a detailed, user friendly representation
444
+ def inspect
445
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
446
+ "#<Twilio.Intelligence.V3.OperatorContext #{context}>"
447
+ end
448
+ end
449
+
450
+ class OperatorInstanceMetadata < InstanceResourceMetadata
451
+ ##
452
+ # Initializes a new OperatorInstanceMetadata.
453
+ # @param [Version] version Version that contains the resource
454
+ # @param [}OperatorInstance] operator_instance The instance associated with the metadata.
455
+ # @param [Hash] headers Header object with response headers.
456
+ # @param [Integer] status_code The HTTP status code of the response.
457
+ # @return [OperatorInstanceMetadata] The initialized instance with metadata.
458
+ def initialize(version, operator_instance, headers, status_code)
459
+ super(version, headers, status_code)
460
+ @operator_instance = operator_instance
461
+ end
462
+
463
+ def operator
464
+ @operator_instance
465
+ end
466
+
467
+ def headers
468
+ @headers
469
+ end
470
+
471
+ def status_code
472
+ @status_code
473
+ end
474
+
475
+ def to_s
476
+ "<Twilio.Api.V2010.OperatorInstanceMetadata status=#{@status_code}>"
477
+ end
478
+ end
479
+
480
+ class OperatorListResponse < InstanceListResource
481
+ # @param [Array<OperatorInstance>] instance
482
+ # @param [Hash{String => Object}] headers
483
+ # @param [Integer] status_code
484
+ def initialize(version, payload, key)
485
+ @operator_instance = payload.body[key].map do |data|
486
+ OperatorInstance.new(version, data)
487
+ end
488
+ @headers = payload.headers
489
+ @status_code = payload.status_code
490
+ end
491
+
492
+ def operator_instance
493
+ @instance
494
+ end
495
+ end
496
+
497
+ class OperatorPage < TokenPage
498
+ ##
499
+ # Initialize the OperatorPage
500
+ # @param [Version] version Version that contains the resource
501
+ # @param [Response] response Response from the API
502
+ # @param [Hash] solution Path solution for the resource
503
+ # @return [OperatorPage] OperatorPage
504
+ def initialize(version, response, solution)
505
+
506
+ apiV1Version = ApiV1Version.new version.domain, version
507
+ super(apiV1Version, response)
508
+
509
+ # Path Solution
510
+ @solution = solution
511
+ end
512
+
513
+ ##
514
+ # Build an instance of OperatorInstance
515
+ # @param [Hash] payload Payload response from the API
516
+ # @return [OperatorInstance] OperatorInstance
517
+ def get_instance(payload)
518
+ OperatorInstance.new(@version, payload)
519
+ end
520
+
521
+ ##
522
+ # Provide a user friendly representation
523
+ def to_s
524
+ '<Twilio.Intelligence.V3.OperatorPage>'
525
+ end
526
+ end
527
+
528
+ class OperatorPageMetadata < PageMetadata
529
+ attr_reader :operator_page
530
+
531
+ def initialize(version, response, solution, limit)
532
+ super(version, response)
533
+ @operator_page = []
534
+ @limit = limit
535
+ key = get_key(response.body)
536
+ records = 0
537
+ while( limit != :unset && records < limit )
538
+ @operator_page << OperatorListResponse.new(version, @payload, key, limit - records)
539
+ @payload = self.next_page
540
+ break unless @payload
541
+ records += (@payload.body[key] || []).size
542
+ end
543
+ # Path Solution
544
+ @solution = solution
545
+ end
546
+
547
+ def each
548
+ @operator_page.each do |record|
549
+ yield record
550
+ end
551
+ end
552
+
553
+ def to_s
554
+ '<Twilio::REST::Intelligence::V3PageMetadata>';
555
+ end
556
+ end
557
+ class OperatorListResponse < InstanceListResource
558
+
559
+ # @param [Array<OperatorInstance>] instance
560
+ # @param [Hash{String => Object}] headers
561
+ # @param [Integer] status_code
562
+ def initialize(version, payload, key, limit = :unset)
563
+ data_list = payload.body[key] || []
564
+ if limit != :unset
565
+ data_list = data_list[0, limit]
566
+ end
567
+ @operator = data_list.map do |data|
568
+ OperatorInstance.new(version, data)
569
+ end
570
+ @headers = payload.headers
571
+ @status_code = payload.status_code
572
+ end
573
+
574
+ def operator
575
+ @operator
576
+ end
577
+
578
+ def headers
579
+ @headers
580
+ end
581
+
582
+ def status_code
583
+ @status_code
584
+ end
585
+ end
586
+
587
+ class OperatorInstance < InstanceResource
588
+ ##
589
+ # Initialize the OperatorInstance
590
+ # @param [Version] version Version that contains the resource
591
+ # @param [Hash] payload payload that contains response from Twilio
592
+ # @param [String] account_sid The SID of the
593
+ # {Account}[https://www.twilio.com/docs/iam/api/account] that created this Operator
594
+ # resource.
595
+ # @param [String] sid The SID of the Call resource to fetch.
596
+ # @return [OperatorInstance] OperatorInstance
597
+ def initialize(version, payload , id: nil)
598
+
599
+ apiV1Version = ApiV1Version.new version.domain, version
600
+ super(apiV1Version)
601
+
602
+ # Marshaled Properties
603
+ @properties = {
604
+ 'id' => payload['id'],
605
+ 'display_name' => payload['display_name'],
606
+ 'description' => payload['description'],
607
+ 'version' => payload['version'] == nil ? payload['version'] : payload['version'].to_i,
608
+ 'author' => payload['author'],
609
+ 'prompt' => payload['prompt'],
610
+ 'output_format' => payload['output_format'],
611
+ 'output_schema' => payload['output_schema'],
612
+ 'training_examples' => payload['training_examples'],
613
+ 'context' => payload['context'],
614
+ 'parameters' => payload['parameters'],
615
+ 'code' => payload['code'],
616
+ 'message' => payload['message'],
617
+ 'http_status_code' => payload['http_status_code'],
618
+ 'user_error' => payload['user_error'],
619
+ 'params' => payload['params'],
620
+ }
621
+
622
+ # Context
623
+ @instance_context = nil
624
+ @params = { 'id' => id || @properties['id'] , }
625
+ end
626
+
627
+ ##
628
+ # Generate an instance context for the instance, the context is capable of
629
+ # performing various actions. All instance actions are proxied to the context
630
+ # @return [OperatorContext] CallContext for this CallInstance
631
+ def context
632
+ unless @instance_context
633
+ @instance_context = OperatorContext.new(@version , @params['id'])
634
+ end
635
+ @instance_context
636
+ end
637
+
638
+ ##
639
+ # @return [String] The unique identifier for the Language Operator. Assigned by Twilio (TTID).
640
+ def id
641
+ @properties['id']
642
+ end
643
+
644
+ ##
645
+ # @return [String] Display name of the Language Operator describing its purpose.
646
+ def display_name
647
+ @properties['display_name']
648
+ end
649
+
650
+ ##
651
+ # @return [String] Description of the Language Operator further explaining its purpose.
652
+ def description
653
+ @properties['description']
654
+ end
655
+
656
+ ##
657
+ # @return [String] Numeric Operator version. Automatically incremented with each update on the resource, used to ensure integrity when updating the Operator.
658
+ def version
659
+ @properties['version']
660
+ end
661
+
662
+ ##
663
+ # @return [OperatorAuthor]
664
+ def author
665
+ @properties['author']
666
+ end
667
+
668
+ ##
669
+ # @return [String] The natural language instructions used by the operator to analyze the conversation. Within the prompt, users can reference parameters using the `{{parameters.[param_name]}}` syntax. Parameter values are provided to the Operator by the Intelligence Configuration Rule at runtime. **Note**: Prompts will only be exposed for Custom Operators (`author` = `SELF`). Twilio-authored Operators (`author` = `TWILIO`) will have their prompts omitted from the API.
670
+ def prompt
671
+ @properties['prompt']
672
+ end
673
+
674
+ ##
675
+ # @return [OperatorOutputFormat]
676
+ def output_format
677
+ @properties['output_format']
678
+ end
679
+
680
+ ##
681
+ # @return [Hash] Required for `JSON` output only. this will be set to a JSON Schema object describing the properties & data types of the response. Please see https://platform.openai.com/docs/guides/structured-outputs#supported-schemas Will include the following keywords: - `type` : Must be set to `object` - `properties`: An object containing the property names and their data types you would like the LLM to return Additional details on JSON output formatting: - The root level `type` of a JSON schema must be set to `object` - The following property data types are supported : `string`, `number`, `boolean`, `integer`, `object`, `array`, `anyOf` - Definitions with `$defs` / `$ref` are supported - Max 100 object properties and 10 levels of nesting are supported - Max 1000 enum values across all enum properties are supported - Notable JSON Schema keywords not supported include: - For `strings`: `minLength`, `maxLength` - For `objects`: `patternProperties`, `unevaluatedProperties`, `propertyNames`, `minProperties`, `maxProperties` - For `arrays`: `unevaluatedItems`, `contains`, `minContains`, `maxContains`, `uniqueItems` - Structured Operator Results will be returned in the same order as the ordering of keys in the schema - In the event an Operator execution request is refused for safety reasons the Operator Result API response will include a new field called `refusal` to indicate that the LLM refused to fulfill the request - Twilio will automatically set `additionalProperties` to false and specify all provided fields as required (constraints of Structured Outputs). You don't need to pass these fields as part of your JSON schema. Twilio will automatically overwrite any user-provided values for these fields.
682
+ def output_schema
683
+ @properties['output_schema']
684
+ end
685
+
686
+ ##
687
+ # @return [Array<OperatorTrainingExample>] An array of example input/output pairs used to illustrate the intended behavior of the Language Operator. These examples help guide the model's understanding of expected input–output relationships and improve consistency during evaluation and testing. **Note**: Training examples will only be exposed for Custom Operators (`author` = `SELF`). Twilio-authored Operators (`author` = `TWILIO`) will have their training examples omitted from the API.
688
+ def training_examples
689
+ @properties['training_examples']
690
+ end
691
+
692
+ ##
693
+ # @return [OperatorContext]
694
+ def context
695
+ @properties['context']
696
+ end
697
+
698
+ ##
699
+ # @return [Hash<String, OperatorParameter>] Defines the schema of the parameters that are provided when running the operator, including required and optional values that determine the operator's behavior. The values of the parameters themselves are passed in by the attached Intelligence Configuration.
700
+ def parameters
701
+ @properties['parameters']
702
+ end
703
+
704
+ ##
705
+ # @return [String] Twilio-specific error code
706
+ def code
707
+ @properties['code']
708
+ end
709
+
710
+ ##
711
+ # @return [String] A human readable error message
712
+ def message
713
+ @properties['message']
714
+ end
715
+
716
+ ##
717
+ # @return [String] HTTP response status code
718
+ def http_status_code
719
+ @properties['http_status_code']
720
+ end
721
+
722
+ ##
723
+ # @return [Boolean] Whether the error is a user error (true) or a system error (false)
724
+ def user_error
725
+ @properties['user_error']
726
+ end
727
+
728
+ ##
729
+ # @return [Hash<String, String>] A map of parameters related to the error, for example, a `params.twilioErrorCodeUrl` might hold a URL or link to additional information
730
+ def params
731
+ @properties['params']
732
+ end
733
+
734
+ ##
735
+ # Delete the OperatorInstance
736
+ # @return [Boolean] True if delete succeeds, false otherwise
737
+ def delete
738
+
739
+ context.delete
740
+ end
741
+
742
+ ##
743
+ # Fetch the OperatorInstance
744
+ # @return [OperatorInstance] Fetched OperatorInstance
745
+ def fetch
746
+
747
+ context.fetch
748
+ end
749
+
750
+ ##
751
+ # Update the OperatorInstance
752
+ # @param [String] if_match Current ETag/version required for conditional update
753
+ # @param [LanguageOperator] language_operator Full replacement of a Language Operator configuration
754
+ # @return [OperatorInstance] Updated OperatorInstance
755
+ def update(
756
+ if_match: :unset,
757
+ language_operator: nil
758
+ )
759
+
760
+ context.update(
761
+ if_match: if_match,
762
+ language_operator: language_operator,
763
+ )
764
+ end
765
+
766
+ ##
767
+ # Provide a user friendly representation
768
+ def to_s
769
+ values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
770
+ "<Twilio.Intelligence.V3.OperatorInstance #{values}>"
771
+ end
772
+
773
+ ##
774
+ # Provide a detailed, user friendly representation
775
+ def inspect
776
+ values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
777
+ "<Twilio.Intelligence.V3.OperatorInstance #{values}>"
778
+ end
779
+ end
780
+
781
+ end
782
+ end
783
+ end
784
+ end