twilio-ruby 7.4.4 → 7.10.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (590) hide show
  1. checksums.yaml +5 -5
  2. data/.dockerignore +1 -1
  3. data/.github/workflows/test-and-deploy.yml +4 -3
  4. data/.gitignore +1 -0
  5. data/CHANGES.md +529 -0
  6. data/Dockerfile +3 -2
  7. data/README.md +2 -2
  8. data/cluster/cluster_oauth_spec.rb +4 -4
  9. data/lib/twilio-ruby/framework/rest/api_v1_version.rb +22 -0
  10. data/lib/twilio-ruby/framework/rest/error.rb +27 -0
  11. data/lib/twilio-ruby/framework/rest/page_metadata.rb +83 -0
  12. data/lib/twilio-ruby/framework/rest/resource.rb +16 -0
  13. data/lib/twilio-ruby/framework/rest/token_page.rb +73 -0
  14. data/lib/twilio-ruby/framework/rest/version.rb +91 -4
  15. data/lib/twilio-ruby/http/client_token_manager.rb +5 -2
  16. data/lib/twilio-ruby/http/org_token_manager.rb +5 -2
  17. data/lib/twilio-ruby/rest/accounts/v1/auth_token_promotion.rb +135 -0
  18. data/lib/twilio-ruby/rest/accounts/v1/bulk_consents.rb +95 -1
  19. data/lib/twilio-ruby/rest/accounts/v1/bulk_contacts.rb +94 -0
  20. data/lib/twilio-ruby/rest/accounts/v1/credential/aws.rb +248 -1
  21. data/lib/twilio-ruby/rest/accounts/v1/credential/public_key.rb +248 -1
  22. data/lib/twilio-ruby/rest/accounts/v1/credential.rb +63 -0
  23. data/lib/twilio-ruby/rest/accounts/v1/messaging_geopermissions.rb +285 -0
  24. data/lib/twilio-ruby/rest/accounts/v1/safelist.rb +154 -4
  25. data/lib/twilio-ruby/rest/accounts/v1/secondary_auth_token.rb +155 -0
  26. data/lib/twilio-ruby/rest/accounts/v1.rb +6 -0
  27. data/lib/twilio-ruby/rest/api/v2010/account/address/dependent_phone_number.rb +86 -1
  28. data/lib/twilio-ruby/rest/api/v2010/account/address.rb +313 -4
  29. data/lib/twilio-ruby/rest/api/v2010/account/application.rb +337 -1
  30. data/lib/twilio-ruby/rest/api/v2010/account/authorized_connect_app.rb +160 -1
  31. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/local.rb +125 -4
  32. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/machine_to_machine.rb +125 -4
  33. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/mobile.rb +125 -4
  34. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/national.rb +125 -4
  35. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/shared_cost.rb +125 -4
  36. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/toll_free.rb +125 -4
  37. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/voip.rb +125 -4
  38. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country.rb +160 -1
  39. data/lib/twilio-ruby/rest/api/v2010/account/balance.rb +88 -0
  40. data/lib/twilio-ruby/rest/api/v2010/account/call/event.rb +86 -1
  41. data/lib/twilio-ruby/rest/api/v2010/account/call/notification.rb +169 -1
  42. data/lib/twilio-ruby/rest/api/v2010/account/call/payment.rb +245 -1
  43. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +272 -1
  44. data/lib/twilio-ruby/rest/api/v2010/account/call/siprec.rb +784 -0
  45. data/lib/twilio-ruby/rest/api/v2010/account/call/stream.rb +784 -0
  46. data/lib/twilio-ruby/rest/api/v2010/account/call/transcription.rb +237 -2
  47. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message.rb +99 -0
  48. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message_subscription.rb +170 -0
  49. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +416 -20
  50. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +446 -7
  51. data/lib/twilio-ruby/rest/api/v2010/account/conference/recording.rb +224 -1
  52. data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +216 -2
  53. data/lib/twilio-ruby/rest/api/v2010/account/connect_app.rb +234 -1
  54. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension.rb +162 -1
  55. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on.rb +214 -1
  56. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +192 -1
  57. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +192 -1
  58. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +192 -1
  59. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +395 -1
  60. data/lib/twilio-ruby/rest/api/v2010/account/key.rb +213 -1
  61. data/lib/twilio-ruby/rest/api/v2010/account/message/feedback.rb +96 -0
  62. data/lib/twilio-ruby/rest/api/v2010/account/message/media.rb +187 -1
  63. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +336 -7
  64. data/lib/twilio-ruby/rest/api/v2010/account/new_key.rb +95 -0
  65. data/lib/twilio-ruby/rest/api/v2010/account/new_signing_key.rb +95 -0
  66. data/lib/twilio-ruby/rest/api/v2010/account/notification.rb +168 -1
  67. data/lib/twilio-ruby/rest/api/v2010/account/outgoing_caller_id.rb +217 -1
  68. data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +198 -1
  69. data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +251 -1
  70. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload/data.rb +139 -0
  71. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload.rb +182 -1
  72. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result.rb +181 -1
  73. data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +181 -1
  74. data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +199 -2
  75. data/lib/twilio-ruby/rest/api/v2010/account/short_code.rb +212 -1
  76. data/lib/twilio-ruby/rest/api/v2010/account/signing_key.rb +213 -1
  77. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list/credential.rb +251 -1
  78. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list.rb +245 -1
  79. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls/auth_calls_credential_list_mapping.rb +214 -1
  80. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls/auth_calls_ip_access_control_list_mapping.rb +214 -1
  81. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls.rb +63 -0
  82. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_registrations/auth_registrations_credential_list_mapping.rb +214 -1
  83. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_registrations.rb +63 -0
  84. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types.rb +63 -0
  85. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb +214 -1
  86. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/ip_access_control_list_mapping.rb +214 -1
  87. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +317 -1
  88. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +260 -1
  89. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb +245 -1
  90. data/lib/twilio-ruby/rest/api/v2010/account/sip.rb +63 -0
  91. data/lib/twilio-ruby/rest/api/v2010/account/token.rb +95 -0
  92. data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +180 -1
  93. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +98 -5
  94. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +98 -5
  95. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +98 -5
  96. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +98 -5
  97. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +98 -5
  98. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +98 -5
  99. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +98 -5
  100. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +98 -5
  101. data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +98 -5
  102. data/lib/twilio-ruby/rest/api/v2010/account/usage/trigger.rb +280 -6
  103. data/lib/twilio-ruby/rest/api/v2010/account/usage.rb +63 -0
  104. data/lib/twilio-ruby/rest/api/v2010/account/validation_request.rb +110 -0
  105. data/lib/twilio-ruby/rest/api/v2010/account.rb +229 -1
  106. data/lib/twilio-ruby/rest/assistants/v1/assistant/assistants_knowledge.rb +180 -1
  107. data/lib/twilio-ruby/rest/assistants/v1/assistant/assistants_tool.rb +180 -1
  108. data/lib/twilio-ruby/rest/assistants/v1/assistant/feedback.rb +113 -1
  109. data/lib/twilio-ruby/rest/assistants/v1/assistant/message.rb +90 -0
  110. data/lib/twilio-ruby/rest/assistants/v1/assistant.rb +232 -1
  111. data/lib/twilio-ruby/rest/assistants/v1/knowledge/chunk.rb +86 -1
  112. data/lib/twilio-ruby/rest/assistants/v1/knowledge/knowledge_status.rb +136 -0
  113. data/lib/twilio-ruby/rest/assistants/v1/knowledge.rb +234 -1
  114. data/lib/twilio-ruby/rest/assistants/v1/policy.rb +90 -1
  115. data/lib/twilio-ruby/rest/assistants/v1/session/message.rb +86 -1
  116. data/lib/twilio-ruby/rest/assistants/v1/session.rb +159 -1
  117. data/lib/twilio-ruby/rest/assistants/v1/tool.rb +234 -1
  118. data/lib/twilio-ruby/rest/bulkexports/v1/export/day.rb +160 -1
  119. data/lib/twilio-ruby/rest/bulkexports/v1/export/export_custom_job.rb +134 -2
  120. data/lib/twilio-ruby/rest/bulkexports/v1/export/job.rb +157 -1
  121. data/lib/twilio-ruby/rest/bulkexports/v1/export.rb +136 -0
  122. data/lib/twilio-ruby/rest/bulkexports/v1/export_configuration.rb +174 -0
  123. data/lib/twilio-ruby/rest/chat/v1/credential.rb +275 -1
  124. data/lib/twilio-ruby/rest/chat/v1/service/channel/invite.rb +220 -1
  125. data/lib/twilio-ruby/rest/chat/v1/service/channel/member.rb +257 -1
  126. data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +259 -1
  127. data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +263 -1
  128. data/lib/twilio-ruby/rest/chat/v1/service/role.rb +251 -1
  129. data/lib/twilio-ruby/rest/chat/v1/service/user/user_channel.rb +86 -1
  130. data/lib/twilio-ruby/rest/chat/v1/service/user.rb +260 -1
  131. data/lib/twilio-ruby/rest/chat/v1/service.rb +401 -1
  132. data/lib/twilio-ruby/rest/chat/v2/credential.rb +275 -1
  133. data/lib/twilio-ruby/rest/chat/v2/service/binding.rb +186 -1
  134. data/lib/twilio-ruby/rest/chat/v2/service/channel/invite.rb +220 -1
  135. data/lib/twilio-ruby/rest/chat/v2/service/channel/member.rb +291 -1
  136. data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +290 -1
  137. data/lib/twilio-ruby/rest/chat/v2/service/channel/webhook.rb +281 -1
  138. data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +288 -1
  139. data/lib/twilio-ruby/rest/chat/v2/service/role.rb +251 -1
  140. data/lib/twilio-ruby/rest/chat/v2/service/user/user_binding.rb +184 -1
  141. data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +224 -1
  142. data/lib/twilio-ruby/rest/chat/v2/service/user.rb +264 -1
  143. data/lib/twilio-ruby/rest/chat/v2/service.rb +332 -1
  144. data/lib/twilio-ruby/rest/chat/v3/channel.rb +149 -0
  145. data/lib/twilio-ruby/rest/client.rb +5 -5
  146. data/lib/twilio-ruby/rest/content/v1/content/approval_create.rb +90 -0
  147. data/lib/twilio-ruby/rest/content/v1/content/approval_fetch.rb +136 -0
  148. data/lib/twilio-ruby/rest/content/v1/content.rb +962 -6
  149. data/lib/twilio-ruby/rest/content/v1/content_and_approvals.rb +86 -1
  150. data/lib/twilio-ruby/rest/content/v1/legacy_content.rb +86 -1
  151. data/lib/twilio-ruby/rest/content/v2/content.rb +107 -1
  152. data/lib/twilio-ruby/rest/content/v2/content_and_approvals.rb +107 -1
  153. data/lib/twilio-ruby/rest/conversations/v1/address_configuration.rb +301 -1
  154. data/lib/twilio-ruby/rest/conversations/v1/configuration/webhook.rb +178 -0
  155. data/lib/twilio-ruby/rest/conversations/v1/configuration.rb +175 -0
  156. data/lib/twilio-ruby/rest/conversations/v1/conversation/message/delivery_receipt.rb +161 -1
  157. data/lib/twilio-ruby/rest/conversations/v1/conversation/message.rb +293 -1
  158. data/lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb +297 -1
  159. data/lib/twilio-ruby/rest/conversations/v1/conversation/webhook.rb +275 -1
  160. data/lib/twilio-ruby/rest/conversations/v1/conversation.rb +315 -1
  161. data/lib/twilio-ruby/rest/conversations/v1/conversation_with_participants.rb +129 -0
  162. data/lib/twilio-ruby/rest/conversations/v1/credential.rb +278 -1
  163. data/lib/twilio-ruby/rest/conversations/v1/participant_conversation.rb +90 -1
  164. data/lib/twilio-ruby/rest/conversations/v1/role.rb +248 -1
  165. data/lib/twilio-ruby/rest/conversations/v1/service/binding.rb +189 -4
  166. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb +204 -0
  167. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb +177 -0
  168. data/lib/twilio-ruby/rest/conversations/v1/service/configuration.rb +177 -0
  169. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message/delivery_receipt.rb +162 -1
  170. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message.rb +296 -1
  171. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/participant.rb +300 -1
  172. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/webhook.rb +278 -1
  173. data/lib/twilio-ruby/rest/conversations/v1/service/conversation.rb +318 -1
  174. data/lib/twilio-ruby/rest/conversations/v1/service/conversation_with_participants.rb +130 -0
  175. data/lib/twilio-ruby/rest/conversations/v1/service/participant_conversation.rb +90 -1
  176. data/lib/twilio-ruby/rest/conversations/v1/service/role.rb +251 -1
  177. data/lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb +221 -1
  178. data/lib/twilio-ruby/rest/conversations/v1/service/user.rb +267 -1
  179. data/lib/twilio-ruby/rest/conversations/v1/service.rb +210 -1
  180. data/lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb +219 -1
  181. data/lib/twilio-ruby/rest/conversations/v1/user.rb +264 -1
  182. data/lib/twilio-ruby/rest/events/v1/event_type.rb +161 -1
  183. data/lib/twilio-ruby/rest/events/v1/schema/schema_version.rb +160 -1
  184. data/lib/twilio-ruby/rest/events/v1/schema.rb +136 -0
  185. data/lib/twilio-ruby/rest/events/v1/sink/sink_test.rb +88 -0
  186. data/lib/twilio-ruby/rest/events/v1/sink/sink_validate.rb +95 -0
  187. data/lib/twilio-ruby/rest/events/v1/sink.rb +252 -1
  188. data/lib/twilio-ruby/rest/events/v1/subscription/subscribed_event.rb +248 -1
  189. data/lib/twilio-ruby/rest/events/v1/subscription.rb +253 -26
  190. data/lib/twilio-ruby/rest/flex_api/v1/assessments.rb +241 -4
  191. data/lib/twilio-ruby/rest/flex_api/v1/channel.rb +237 -1
  192. data/lib/twilio-ruby/rest/flex_api/v1/configuration.rb +167 -0
  193. data/lib/twilio-ruby/rest/flex_api/v1/create_flex_instance.rb +382 -0
  194. data/lib/twilio-ruby/rest/flex_api/v1/flex_flow.rb +340 -1
  195. data/lib/twilio-ruby/rest/flex_api/v1/insights_assessments_comment.rb +143 -4
  196. data/lib/twilio-ruby/rest/flex_api/v1/insights_conversations.rb +90 -1
  197. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires.rb +274 -1
  198. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_category.rb +226 -1
  199. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_question.rb +253 -1
  200. data/lib/twilio-ruby/rest/flex_api/v1/insights_segments.rb +93 -1
  201. data/lib/twilio-ruby/rest/flex_api/v1/insights_session.rb +138 -0
  202. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_answer_sets.rb +90 -0
  203. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_comment.rb +90 -0
  204. data/lib/twilio-ruby/rest/flex_api/v1/insights_user_roles.rb +138 -0
  205. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_invite.rb +119 -1
  206. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_participant.rb +207 -1
  207. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_transfer.rb +547 -0
  208. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb +223 -1
  209. data/lib/twilio-ruby/rest/flex_api/v1/interaction.rb +258 -1
  210. data/lib/twilio-ruby/rest/flex_api/v1/plugin/plugin_versions.rb +214 -1
  211. data/lib/twilio-ruby/rest/flex_api/v1/plugin.rb +240 -1
  212. data/lib/twilio-ruby/rest/flex_api/v1/plugin_archive.rb +139 -0
  213. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration/configured_plugin.rb +165 -1
  214. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration.rb +203 -1
  215. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration_archive.rb +139 -0
  216. data/lib/twilio-ruby/rest/flex_api/v1/plugin_release.rb +197 -1
  217. data/lib/twilio-ruby/rest/flex_api/v1/plugin_version_archive.rb +140 -0
  218. data/lib/twilio-ruby/rest/flex_api/v1/provisioning_status.rb +135 -0
  219. data/lib/twilio-ruby/rest/flex_api/v1/web_channel.rb +260 -1
  220. data/lib/twilio-ruby/rest/flex_api/v1.rb +6 -0
  221. data/lib/twilio-ruby/rest/flex_api/v2/flex_user.rb +176 -39
  222. data/lib/twilio-ruby/rest/flex_api/v2/web_channels.rb +111 -0
  223. data/lib/twilio-ruby/rest/flex_api_base.rb +1 -6
  224. data/lib/twilio-ruby/rest/frontline_api/v1/user.rb +177 -0
  225. data/lib/twilio-ruby/rest/iam/v1/api_key.rb +191 -0
  226. data/lib/twilio-ruby/rest/iam/v1/get_api_keys.rb +95 -1
  227. data/lib/twilio-ruby/rest/iam/v1/new_api_key.rb +103 -0
  228. data/lib/twilio-ruby/rest/iam/v1/o_auth_app.rb +646 -0
  229. data/lib/twilio-ruby/rest/iam/v1/token.rb +301 -0
  230. data/lib/twilio-ruby/rest/iam/v1.rb +21 -0
  231. data/lib/twilio-ruby/rest/iam_base.rb +1 -6
  232. data/lib/twilio-ruby/rest/insights/v1/call/annotation.rb +186 -0
  233. data/lib/twilio-ruby/rest/insights/v1/call/call_summary.rb +142 -0
  234. data/lib/twilio-ruby/rest/insights/v1/call/event.rb +88 -1
  235. data/lib/twilio-ruby/rest/insights/v1/call/metric.rb +90 -1
  236. data/lib/twilio-ruby/rest/insights/v1/call.rb +136 -0
  237. data/lib/twilio-ruby/rest/insights/v1/call_summaries.rb +184 -3
  238. data/lib/twilio-ruby/rest/insights/v1/conference/conference_participant.rb +175 -1
  239. data/lib/twilio-ruby/rest/insights/v1/conference.rb +179 -1
  240. data/lib/twilio-ruby/rest/insights/v1/room/participant.rb +160 -1
  241. data/lib/twilio-ruby/rest/insights/v1/room.rb +171 -1
  242. data/lib/twilio-ruby/rest/insights/v1/setting.rb +178 -0
  243. data/lib/twilio-ruby/rest/insights/v2/inbound.rb +570 -0
  244. data/lib/twilio-ruby/rest/insights/v2/outbound.rb +641 -0
  245. data/lib/twilio-ruby/rest/insights/v2/report.rb +940 -0
  246. data/lib/twilio-ruby/rest/insights/v2.rb +79 -0
  247. data/lib/twilio-ruby/rest/insights_base.rb +6 -1
  248. data/lib/twilio-ruby/rest/intelligence/v2/custom_operator.rb +257 -1
  249. data/lib/twilio-ruby/rest/intelligence/v2/operator.rb +163 -1
  250. data/lib/twilio-ruby/rest/intelligence/v2/operator_attachment.rb +157 -0
  251. data/lib/twilio-ruby/rest/intelligence/v2/operator_attachments.rb +136 -0
  252. data/lib/twilio-ruby/rest/intelligence/v2/operator_type.rb +169 -3
  253. data/lib/twilio-ruby/rest/intelligence/v2/prebuilt_operator.rb +163 -1
  254. data/lib/twilio-ruby/rest/intelligence/v2/service.rb +312 -2
  255. data/lib/twilio-ruby/rest/intelligence/v2/transcript/encrypted_operator_results.rb +359 -0
  256. data/lib/twilio-ruby/rest/intelligence/v2/transcript/encrypted_sentences.rb +359 -0
  257. data/lib/twilio-ruby/rest/intelligence/v2/transcript/media.rb +142 -0
  258. data/lib/twilio-ruby/rest/intelligence/v2/transcript/operator_result.rb +168 -1
  259. data/lib/twilio-ruby/rest/intelligence/v2/transcript/sentence.rb +93 -4
  260. data/lib/twilio-ruby/rest/intelligence/v2/transcript.rb +278 -1
  261. data/lib/twilio-ruby/rest/ip_messaging/v1/credential.rb +275 -1
  262. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/invite.rb +220 -1
  263. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb +257 -1
  264. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +259 -1
  265. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +263 -1
  266. data/lib/twilio-ruby/rest/ip_messaging/v1/service/role.rb +251 -1
  267. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user/user_channel.rb +86 -1
  268. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +260 -1
  269. data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +401 -1
  270. data/lib/twilio-ruby/rest/ip_messaging/v2/credential.rb +275 -1
  271. data/lib/twilio-ruby/rest/ip_messaging/v2/service/binding.rb +186 -1
  272. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/invite.rb +220 -1
  273. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb +291 -1
  274. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +290 -1
  275. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/webhook.rb +281 -1
  276. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +288 -1
  277. data/lib/twilio-ruby/rest/ip_messaging/v2/service/role.rb +251 -1
  278. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_binding.rb +184 -1
  279. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_channel.rb +221 -1
  280. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +264 -1
  281. data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +332 -1
  282. data/lib/twilio-ruby/rest/{microvisor/v1/app.rb → knowledge/v1/knowledge/chunk.rb} +129 -173
  283. data/lib/twilio-ruby/rest/knowledge/v1/knowledge/knowledge_status.rb +349 -0
  284. data/lib/twilio-ruby/rest/knowledge/v1/knowledge.rb +856 -0
  285. data/lib/twilio-ruby/rest/{preview/sync.rb → knowledge/v1.rb} +16 -16
  286. data/lib/twilio-ruby/rest/knowledge.rb +6 -0
  287. data/lib/twilio-ruby/rest/{microvisor_base.rb → knowledge_base.rb} +6 -6
  288. data/lib/twilio-ruby/rest/lookups/v1/phone_number.rb +153 -2
  289. data/lib/twilio-ruby/rest/lookups/v2/bucket.rb +500 -0
  290. data/lib/twilio-ruby/rest/lookups/v2/lookup_override.rb +603 -0
  291. data/lib/twilio-ruby/rest/lookups/v2/phone_number.rb +197 -13
  292. data/lib/twilio-ruby/rest/lookups/v2/query.rb +351 -0
  293. data/lib/twilio-ruby/rest/lookups/v2/rate_limit.rb +229 -0
  294. data/lib/twilio-ruby/rest/lookups/v2.rb +86 -0
  295. data/lib/twilio-ruby/rest/marketplace/v1/available_add_on/available_add_on_extension.rb +160 -1
  296. data/lib/twilio-ruby/rest/marketplace/v1/available_add_on.rb +159 -1
  297. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on/installed_add_on_extension.rb +193 -1
  298. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on/installed_add_on_usage.rb +90 -0
  299. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on.rb +254 -1
  300. data/lib/twilio-ruby/rest/marketplace/v1/module_data.rb +121 -0
  301. data/lib/twilio-ruby/rest/marketplace/v1/module_data_management.rb +186 -0
  302. data/lib/twilio-ruby/rest/marketplace/v1/referral_conversion.rb +89 -0
  303. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_registration_otp.rb +88 -0
  304. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_vetting.rb +197 -1
  305. data/lib/twilio-ruby/rest/messaging/v1/brand_registration.rb +245 -1
  306. data/lib/twilio-ruby/rest/messaging/v1/deactivations.rb +141 -0
  307. data/lib/twilio-ruby/rest/messaging/v1/domain_certs.rb +188 -0
  308. data/lib/twilio-ruby/rest/messaging/v1/domain_config.rb +177 -0
  309. data/lib/twilio-ruby/rest/messaging/v1/domain_config_messaging_service.rb +136 -0
  310. data/lib/twilio-ruby/rest/messaging/v1/domain_validate_dn.rb +344 -0
  311. data/lib/twilio-ruby/rest/messaging/v1/external_campaign.rb +100 -0
  312. data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service.rb +157 -0
  313. data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service_domain_association.rb +136 -0
  314. data/lib/twilio-ruby/rest/messaging/v1/request_managed_cert.rb +136 -0
  315. data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +212 -1
  316. data/lib/twilio-ruby/rest/messaging/v1/service/channel_sender.rb +212 -1
  317. data/lib/twilio-ruby/rest/messaging/v1/service/destination_alpha_sender.rb +225 -3
  318. data/lib/twilio-ruby/rest/messaging/v1/service/phone_number.rb +212 -1
  319. data/lib/twilio-ruby/rest/messaging/v1/service/short_code.rb +212 -1
  320. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person.rb +393 -12
  321. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person_usecase.rb +94 -0
  322. data/lib/twilio-ruby/rest/messaging/v1/service.rb +336 -5
  323. data/lib/twilio-ruby/rest/messaging/v1/tollfree_verification.rb +717 -10
  324. data/lib/twilio-ruby/rest/messaging/v1/usecase.rb +87 -0
  325. data/lib/twilio-ruby/rest/messaging/v1.rb +15 -0
  326. data/lib/twilio-ruby/rest/messaging/v2/channels_sender.rb +1002 -0
  327. data/lib/twilio-ruby/rest/messaging/v2/domain_certs.rb +386 -0
  328. data/lib/twilio-ruby/rest/messaging/v2/typing_indicator.rb +237 -0
  329. data/lib/twilio-ruby/rest/messaging/v2.rb +70 -0
  330. data/lib/twilio-ruby/rest/messaging_base.rb +6 -1
  331. data/lib/twilio-ruby/rest/monitor/v1/alert.rb +165 -1
  332. data/lib/twilio-ruby/rest/monitor/v1/event.rb +172 -2
  333. data/lib/twilio-ruby/rest/notify/v1/credential.rb +275 -1
  334. data/lib/twilio-ruby/rest/notify/v1/service/binding.rb +240 -1
  335. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +146 -0
  336. data/lib/twilio-ruby/rest/notify/v1/service.rb +322 -1
  337. data/lib/twilio-ruby/rest/numbers/v1/bulk_eligibility.rb +162 -0
  338. data/lib/twilio-ruby/rest/numbers/v1/eligibility.rb +89 -0
  339. data/lib/twilio-ruby/rest/numbers/v1/embedded_session.rb +251 -0
  340. data/lib/twilio-ruby/rest/numbers/v1/porting_all_port_in.rb +367 -0
  341. data/lib/twilio-ruby/rest/numbers/v1/porting_port_in.rb +320 -8
  342. data/lib/twilio-ruby/rest/numbers/v1/porting_port_in_phone_number.rb +157 -0
  343. data/lib/twilio-ruby/rest/numbers/v1/porting_portability.rb +145 -0
  344. data/lib/twilio-ruby/rest/numbers/v1/porting_webhook_configuration.rb +89 -0
  345. data/lib/twilio-ruby/rest/numbers/v1/porting_webhook_configuration_delete.rb +131 -0
  346. data/lib/twilio-ruby/rest/numbers/v1/sender_id_registration.rb +333 -0
  347. data/lib/twilio-ruby/rest/numbers/v1/signing_request_configuration.rb +116 -1
  348. data/lib/twilio-ruby/rest/numbers/v1/{porting_webhook_configuration_fetch.rb → webhook.rb} +107 -20
  349. data/lib/twilio-ruby/rest/numbers/v1.rb +22 -4
  350. data/lib/twilio-ruby/rest/numbers/v2/application.rb +707 -0
  351. data/lib/twilio-ruby/rest/numbers/v2/authorization_document/dependent_hosted_number_order.rb +94 -1
  352. data/lib/twilio-ruby/rest/numbers/v2/authorization_document.rb +229 -1
  353. data/lib/twilio-ruby/rest/numbers/v2/bulk_hosted_number_order.rb +168 -0
  354. data/lib/twilio-ruby/rest/numbers/v2/bundle_clone.rb +149 -0
  355. data/lib/twilio-ruby/rest/numbers/v2/hosted_number_order.rb +303 -1
  356. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/bundle_copy.rb +118 -1
  357. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/evaluation.rb +185 -1
  358. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/item_assignment.rb +212 -1
  359. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/replace_items.rb +95 -0
  360. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle.rb +312 -3
  361. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user.rb +251 -1
  362. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user_type.rb +159 -1
  363. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/regulation.rb +173 -1
  364. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document.rb +251 -1
  365. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document_type.rb +159 -1
  366. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance.rb +63 -0
  367. data/lib/twilio-ruby/rest/numbers/v2.rb +15 -0
  368. data/lib/twilio-ruby/rest/numbers/v3/hosted_number_order.rb +484 -0
  369. data/lib/twilio-ruby/rest/numbers/v3.rb +40 -0
  370. data/lib/twilio-ruby/rest/numbers_base.rb +5 -0
  371. data/lib/twilio-ruby/rest/oauth/v1/authorize.rb +105 -0
  372. data/lib/twilio-ruby/rest/oauth/v1/token.rb +115 -0
  373. data/lib/twilio-ruby/rest/oauth/v2/authorize.rb +253 -0
  374. data/lib/twilio-ruby/rest/oauth/v2/token.rb +311 -0
  375. data/lib/twilio-ruby/rest/oauth/v2.rb +46 -0
  376. data/lib/twilio-ruby/rest/oauth_base.rb +6 -1
  377. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document/dependent_hosted_number_order.rb +96 -1
  378. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document.rb +259 -1
  379. data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +327 -1
  380. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on/available_add_on_extension.rb +160 -1
  381. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on.rb +159 -1
  382. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on/installed_add_on_extension.rb +193 -1
  383. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on.rb +254 -1
  384. data/lib/twilio-ruby/rest/preview/wireless/command.rb +216 -1
  385. data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +272 -1
  386. data/lib/twilio-ruby/rest/preview/wireless/sim/usage.rb +145 -0
  387. data/lib/twilio-ruby/rest/preview/wireless/sim.rb +246 -1
  388. data/lib/twilio-ruby/rest/preview_base.rb +0 -5
  389. data/lib/twilio-ruby/rest/preview_iam/v1/authorize.rb +105 -0
  390. data/lib/twilio-ruby/rest/preview_iam/v1/token.rb +115 -0
  391. data/lib/twilio-ruby/rest/preview_iam/versionless/organization/account.rb +160 -1
  392. data/lib/twilio-ruby/rest/preview_iam/versionless/organization/role_assignment.rb +185 -1
  393. data/lib/twilio-ruby/rest/preview_iam/versionless/organization/user.rb +436 -1
  394. data/lib/twilio-ruby/rest/preview_iam/versionless/organization.rb +136 -0
  395. data/lib/twilio-ruby/rest/pricing/v1/messaging/country.rb +159 -1
  396. data/lib/twilio-ruby/rest/pricing/v1/messaging.rb +63 -0
  397. data/lib/twilio-ruby/rest/pricing/v1/phone_number/country.rb +159 -1
  398. data/lib/twilio-ruby/rest/pricing/v1/phone_number.rb +63 -0
  399. data/lib/twilio-ruby/rest/pricing/v1/voice/country.rb +159 -1
  400. data/lib/twilio-ruby/rest/pricing/v1/voice/number.rb +136 -0
  401. data/lib/twilio-ruby/rest/pricing/v1/voice.rb +63 -0
  402. data/lib/twilio-ruby/rest/pricing/v2/country.rb +159 -1
  403. data/lib/twilio-ruby/rest/pricing/v2/number.rb +142 -0
  404. data/lib/twilio-ruby/rest/pricing/v2/voice/country.rb +159 -1
  405. data/lib/twilio-ruby/rest/pricing/v2/voice/number.rb +142 -0
  406. data/lib/twilio-ruby/rest/pricing/v2/voice.rb +63 -0
  407. data/lib/twilio-ruby/rest/proxy/v1/service/phone_number.rb +251 -1
  408. data/lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb +181 -1
  409. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant/message_interaction.rb +199 -1
  410. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb +223 -1
  411. data/lib/twilio-ruby/rest/proxy/v1/service/session.rb +266 -1
  412. data/lib/twilio-ruby/rest/proxy/v1/service.rb +284 -28
  413. data/lib/twilio-ruby/rest/routes/v2/phone_number.rb +171 -0
  414. data/lib/twilio-ruby/rest/routes/v2/sip_domain.rb +171 -0
  415. data/lib/twilio-ruby/rest/routes/v2/trunk.rb +171 -0
  416. data/lib/twilio-ruby/rest/serverless/v1/service/asset/asset_version.rb +161 -1
  417. data/lib/twilio-ruby/rest/serverless/v1/service/asset.rb +245 -1
  418. data/lib/twilio-ruby/rest/serverless/v1/service/build/build_status.rb +137 -0
  419. data/lib/twilio-ruby/rest/serverless/v1/service/build.rb +221 -1
  420. data/lib/twilio-ruby/rest/serverless/v1/service/environment/deployment.rb +197 -1
  421. data/lib/twilio-ruby/rest/serverless/v1/service/environment/log.rb +168 -2
  422. data/lib/twilio-ruby/rest/serverless/v1/service/environment/variable.rb +254 -1
  423. data/lib/twilio-ruby/rest/serverless/v1/service/environment.rb +215 -1
  424. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version/function_version_content.rb +138 -0
  425. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version.rb +161 -1
  426. data/lib/twilio-ruby/rest/serverless/v1/service/function.rb +245 -1
  427. data/lib/twilio-ruby/rest/serverless/v1/service.rb +257 -1
  428. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/engagement_context.rb +137 -0
  429. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step/step_context.rb +138 -0
  430. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb +175 -1
  431. data/lib/twilio-ruby/rest/studio/v1/flow/engagement.rb +218 -1
  432. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_context.rb +137 -0
  433. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step/execution_step_context.rb +138 -0
  434. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step.rb +175 -1
  435. data/lib/twilio-ruby/rest/studio/v1/flow/execution.rb +255 -1
  436. data/lib/twilio-ruby/rest/studio/v1/flow.rb +179 -1
  437. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_context.rb +137 -0
  438. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step/execution_step_context.rb +138 -0
  439. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step.rb +175 -1
  440. data/lib/twilio-ruby/rest/studio/v2/flow/execution.rb +269 -1
  441. data/lib/twilio-ruby/rest/studio/v2/flow/flow_revision.rb +167 -1
  442. data/lib/twilio-ruby/rest/studio/v2/flow/flow_test_user.rb +168 -0
  443. data/lib/twilio-ruby/rest/studio/v2/flow.rb +267 -1
  444. data/lib/twilio-ruby/rest/studio/v2/flow_validate.rb +103 -0
  445. data/lib/twilio-ruby/rest/supersim/v1/esim_profile.rb +205 -1
  446. data/lib/twilio-ruby/rest/supersim/v1/fleet.rb +266 -1
  447. data/lib/twilio-ruby/rest/supersim/v1/ip_command.rb +213 -1
  448. data/lib/twilio-ruby/rest/supersim/v1/network.rb +165 -1
  449. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile/network_access_profile_network.rb +212 -1
  450. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile.rb +225 -1
  451. data/lib/twilio-ruby/rest/supersim/v1/settings_update.rb +90 -1
  452. data/lib/twilio-ruby/rest/supersim/v1/sim/billing_period.rb +86 -1
  453. data/lib/twilio-ruby/rest/supersim/v1/sim/sim_ip_address.rb +86 -1
  454. data/lib/twilio-ruby/rest/supersim/v1/sim.rb +246 -1
  455. data/lib/twilio-ruby/rest/supersim/v1/sms_command.rb +205 -1
  456. data/lib/twilio-ruby/rest/supersim/v1/usage_record.rb +102 -1
  457. data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +221 -1
  458. data/lib/twilio-ruby/rest/sync/v1/service/document.rb +256 -1
  459. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +277 -1
  460. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +221 -1
  461. data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +254 -1
  462. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +280 -1
  463. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +221 -1
  464. data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +254 -1
  465. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream/stream_message.rb +96 -0
  466. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream.rb +248 -1
  467. data/lib/twilio-ruby/rest/sync/v1/service.rb +278 -1
  468. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/activity.rb +252 -1
  469. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +182 -1
  470. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +362 -3
  471. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +311 -2
  472. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_channel.rb +254 -1
  473. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_bulk_real_time_statistics.rb +90 -0
  474. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics.rb +155 -0
  475. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics.rb +143 -0
  476. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_statistics.rb +155 -0
  477. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queues_statistics.rb +98 -1
  478. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +283 -1
  479. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +354 -3
  480. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_channel.rb +198 -1
  481. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_statistics.rb +152 -0
  482. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_cumulative_statistics.rb +151 -0
  483. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_real_time_statistics.rb +142 -0
  484. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_statistics.rb +160 -0
  485. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +281 -1
  486. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics.rb +155 -0
  487. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_real_time_statistics.rb +143 -0
  488. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_statistics.rb +155 -0
  489. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +274 -1
  490. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_cumulative_statistics.rb +154 -0
  491. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_real_time_statistics.rb +142 -0
  492. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_statistics.rb +154 -0
  493. data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +277 -1
  494. data/lib/twilio-ruby/rest/trunking/v1/trunk/credential_list.rb +212 -1
  495. data/lib/twilio-ruby/rest/trunking/v1/trunk/ip_access_control_list.rb +212 -1
  496. data/lib/twilio-ruby/rest/trunking/v1/trunk/origination_url.rb +269 -1
  497. data/lib/twilio-ruby/rest/trunking/v1/trunk/phone_number.rb +213 -2
  498. data/lib/twilio-ruby/rest/trunking/v1/trunk/recording.rb +171 -0
  499. data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +291 -1
  500. data/lib/twilio-ruby/rest/trusthub/v1/compliance_inquiries.rb +187 -4
  501. data/lib/twilio-ruby/rest/trusthub/v1/compliance_registration_inquiries.rb +291 -0
  502. data/lib/twilio-ruby/rest/trusthub/v1/compliance_tollfree_inquiries.rb +251 -1
  503. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_channel_endpoint_assignment.rb +219 -1
  504. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_entity_assignments.rb +214 -1
  505. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_evaluations.rb +192 -1
  506. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles.rb +266 -1
  507. data/lib/twilio-ruby/rest/trusthub/v1/end_user.rb +251 -1
  508. data/lib/twilio-ruby/rest/trusthub/v1/end_user_type.rb +159 -1
  509. data/lib/twilio-ruby/rest/trusthub/v1/policies.rb +159 -1
  510. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document.rb +251 -1
  511. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document_type.rb +159 -1
  512. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_channel_endpoint_assignment.rb +219 -1
  513. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_entity_assignments.rb +214 -1
  514. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_evaluations.rb +192 -1
  515. data/lib/twilio-ruby/rest/trusthub/v1/trust_products.rb +266 -1
  516. data/lib/twilio-ruby/rest/verify/v2/form.rb +136 -0
  517. data/lib/twilio-ruby/rest/verify/v2/safelist.rb +187 -0
  518. data/lib/twilio-ruby/rest/verify/v2/service/access_token.rb +178 -0
  519. data/lib/twilio-ruby/rest/verify/v2/service/approve_challenge.rb +402 -0
  520. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge/notification.rb +97 -0
  521. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb +252 -1
  522. data/lib/twilio-ruby/rest/verify/v2/service/entity/factor.rb +239 -1
  523. data/lib/twilio-ruby/rest/verify/v2/service/entity/new_factor.rb +142 -0
  524. data/lib/twilio-ruby/rest/verify/v2/service/entity.rb +212 -1
  525. data/lib/twilio-ruby/rest/verify/v2/service/messaging_configuration.rb +248 -1
  526. data/lib/twilio-ruby/rest/verify/v2/service/new_challenge.rb +478 -0
  527. data/lib/twilio-ruby/rest/verify/v2/service/new_factor.rb +387 -0
  528. data/lib/twilio-ruby/rest/verify/v2/service/new_verify_factor.rb +357 -0
  529. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb +254 -1
  530. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit.rb +248 -1
  531. data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +254 -1
  532. data/lib/twilio-ruby/rest/verify/v2/service/verification_check.rb +110 -0
  533. data/lib/twilio-ruby/rest/verify/v2/service/webhook.rb +269 -1
  534. data/lib/twilio-ruby/rest/verify/v2/service.rb +529 -2
  535. data/lib/twilio-ruby/rest/verify/v2/template.rb +88 -1
  536. data/lib/twilio-ruby/rest/verify/v2/verification_attempt.rb +178 -4
  537. data/lib/twilio-ruby/rest/verify/v2/verification_attempts_summary.rb +159 -3
  538. data/lib/twilio-ruby/rest/video/v1/composition.rb +242 -1
  539. data/lib/twilio-ruby/rest/video/v1/composition_hook.rb +304 -1
  540. data/lib/twilio-ruby/rest/video/v1/composition_settings.rb +181 -0
  541. data/lib/twilio-ruby/rest/video/v1/recording.rb +192 -1
  542. data/lib/twilio-ruby/rest/video/v1/recording_settings.rb +181 -0
  543. data/lib/twilio-ruby/rest/video/v1/room/participant/anonymize.rb +137 -0
  544. data/lib/twilio-ruby/rest/video/v1/room/participant/published_track.rb +161 -1
  545. data/lib/twilio-ruby/rest/video/v1/room/participant/subscribe_rules.rb +122 -0
  546. data/lib/twilio-ruby/rest/video/v1/room/participant/subscribed_track.rb +161 -1
  547. data/lib/twilio-ruby/rest/video/v1/room/participant.rb +201 -1
  548. data/lib/twilio-ruby/rest/video/v1/room/recording_rules.rb +120 -0
  549. data/lib/twilio-ruby/rest/video/v1/room/room_recording.rb +188 -1
  550. data/lib/twilio-ruby/rest/video/v1/room/transcriptions.rb +657 -0
  551. data/lib/twilio-ruby/rest/video/v1/room.rb +311 -1
  552. data/lib/twilio-ruby/rest/voice/v1/archived_call.rb +131 -0
  553. data/lib/twilio-ruby/rest/voice/v1/byoc_trunk.rb +296 -1
  554. data/lib/twilio-ruby/rest/voice/v1/connection_policy/connection_policy_target.rb +269 -1
  555. data/lib/twilio-ruby/rest/voice/v1/connection_policy.rb +242 -1
  556. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/bulk_country_update.rb +94 -0
  557. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country/highrisk_special_prefix.rb +86 -1
  558. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country.rb +171 -1
  559. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/settings.rb +166 -0
  560. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions.rb +63 -0
  561. data/lib/twilio-ruby/rest/voice/v1/ip_record.rb +248 -1
  562. data/lib/twilio-ruby/rest/voice/v1/source_ip_mapping.rb +245 -1
  563. data/lib/twilio-ruby/rest/wireless/v1/command.rb +236 -1
  564. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +282 -2
  565. data/lib/twilio-ruby/rest/wireless/v1/sim/data_session.rb +86 -1
  566. data/lib/twilio-ruby/rest/wireless/v1/sim/usage_record.rb +92 -1
  567. data/lib/twilio-ruby/rest/wireless/v1/sim.rb +272 -1
  568. data/lib/twilio-ruby/rest/wireless/v1/usage_record.rb +92 -1
  569. data/lib/twilio-ruby/twiml/voice_response.rb +183 -18
  570. data/lib/twilio-ruby/version.rb +1 -1
  571. data/twilio-ruby.gemspec +1 -3
  572. metadata +50 -61
  573. data/lib/twilio-ruby/rest/microvisor/v1/account_config.rb +0 -382
  574. data/lib/twilio-ruby/rest/microvisor/v1/account_secret.rb +0 -375
  575. data/lib/twilio-ruby/rest/microvisor/v1/app/app_manifest.rb +0 -213
  576. data/lib/twilio-ruby/rest/microvisor/v1/device/device_config.rb +0 -398
  577. data/lib/twilio-ruby/rest/microvisor/v1/device/device_secret.rb +0 -391
  578. data/lib/twilio-ruby/rest/microvisor/v1/device.rb +0 -441
  579. data/lib/twilio-ruby/rest/microvisor/v1.rb +0 -94
  580. data/lib/twilio-ruby/rest/microvisor.rb +0 -24
  581. data/lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb +0 -407
  582. data/lib/twilio-ruby/rest/preview/sync/service/document.rb +0 -472
  583. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_item.rb +0 -467
  584. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_permission.rb +0 -407
  585. data/lib/twilio-ruby/rest/preview/sync/service/sync_list.rb +0 -444
  586. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_item.rb +0 -470
  587. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_permission.rb +0 -407
  588. data/lib/twilio-ruby/rest/preview/sync/service/sync_map.rb +0 -444
  589. data/lib/twilio-ruby/rest/preview/sync/service.rb +0 -529
  590. data/lib/twilio-ruby/rest/proxy/v1/service/short_code.rb +0 -430
@@ -0,0 +1,1002 @@
1
+ ##
2
+ # This code was generated by
3
+ # ___ _ _ _ _ _ _ ____ ____ ____ _ ____ ____ _ _ ____ ____ ____ ___ __ __
4
+ # | | | | | | | | | __ | | |__| | __ | __ |___ |\ | |___ |__/ |__| | | | |__/
5
+ # | |_|_| | |___ | |__| |__| | | | |__] |___ | \| |___ | \ | | | |__| | \
6
+ #
7
+ # Twilio - Messaging
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 Messaging < MessagingBase
19
+ class V2 < Version
20
+ class ChannelsSenderList < ListResource
21
+
22
+ class MessagingV2ChannelsSenderProfile
23
+ # @param [name]: [String] The name of the sender. Required for WhatsApp senders and must follow [Meta's display name guidelines](https://www.facebook.com/business/help/757569725593362).
24
+ # @param [about]: [String] The profile about text for the sender.
25
+ # @param [address]: [String] The address of the sender.
26
+ # @param [description]: [String] The description of the sender.
27
+ # @param [logo_url]: [String] The logo URL of the sender.
28
+ # @param [banner_url]: [String] The banner URL of the sender.
29
+ # @param [privacy_url]: [String] The privacy URL of the sender. Must be a publicly accessible HTTP or HTTPS URI associated with the sender.
30
+ # @param [terms_of_service_url]: [String] The terms of service URL of the sender.
31
+ # @param [accent_color]: [String] The color theme of the sender. Must be in hex format and have at least a 4:5:1 contrast ratio against white.
32
+ # @param [vertical]: [String] The vertical of the sender. Allowed values are: - `Alcohol` - `Automotive` - `Beauty, Spa and Salon` - `Clothing and Apparel` - `Education` - `Entertainment` - `Event Planning and Service` - `Finance and Banking` - `Food and Grocery` - `Hotel and Lodging` - `Matrimony Service` - `Medical and Health` - `Non-profit` - `Online Gambling` - `OTC Drugs` - `Other` - `Physical Gambling` - `Professional Services` - `Public Service` - `Restaurant` - `Shopping and Retail` - `Travel and Transportation`
33
+ # @param [websites]: [Hash] The websites of the sender.
34
+ # @param [emails]: [Hash] The emails of the sender.
35
+ # @param [phone_numbers]: [Hash] The phone numbers of the sender.
36
+ attr_accessor :name, :about, :address, :description, :logo_url, :banner_url, :privacy_url, :terms_of_service_url, :accent_color, :vertical, :websites, :emails, :phone_numbers
37
+ def initialize(payload)
38
+ @name = payload["name"]
39
+ @about = payload["about"]
40
+ @address = payload["address"]
41
+ @description = payload["description"]
42
+ @logo_url = payload["logo_url"]
43
+ @banner_url = payload["banner_url"]
44
+ @privacy_url = payload["privacy_url"]
45
+ @terms_of_service_url = payload["terms_of_service_url"]
46
+ @accent_color = payload["accent_color"]
47
+ @vertical = payload["vertical"]
48
+ @websites = payload["websites"]
49
+ @emails = payload["emails"]
50
+ @phone_numbers = payload["phone_numbers"]
51
+ end
52
+ def to_json(options = {})
53
+ {
54
+ "name": @name,
55
+ "about": @about,
56
+ "address": @address,
57
+ "description": @description,
58
+ "logo_url": @logo_url,
59
+ "banner_url": @banner_url,
60
+ "privacy_url": @privacy_url,
61
+ "terms_of_service_url": @terms_of_service_url,
62
+ "accent_color": @accent_color,
63
+ "vertical": @vertical,
64
+ "websites": @websites,
65
+ "emails": @emails,
66
+ "phone_numbers": @phone_numbers,
67
+ }.to_json(options)
68
+ end
69
+ end
70
+
71
+ class MessagingV2ChannelsSenderProfileGenericResponseEmails
72
+ # @param [email]: [String]
73
+ # @param [label]: [String]
74
+ attr_accessor :email, :label
75
+ def initialize(payload)
76
+ @email = payload["email"]
77
+ @label = payload["label"]
78
+ end
79
+ def to_json(options = {})
80
+ {
81
+ "email": @email,
82
+ "label": @label,
83
+ }.to_json(options)
84
+ end
85
+ end
86
+
87
+ class MessagingV2ChannelsSenderProfileGenericResponsePhoneNumbers
88
+ # @param [phone_number]: [String]
89
+ # @param [label]: [String]
90
+ attr_accessor :phone_number, :label
91
+ def initialize(payload)
92
+ @phone_number = payload["phone_number"]
93
+ @label = payload["label"]
94
+ end
95
+ def to_json(options = {})
96
+ {
97
+ "phone_number": @phone_number,
98
+ "label": @label,
99
+ }.to_json(options)
100
+ end
101
+ end
102
+
103
+ class MessagingV2ChannelsSenderProfileGenericResponseWebsites
104
+ # @param [website]: [String]
105
+ # @param [label]: [String]
106
+ attr_accessor :website, :label
107
+ def initialize(payload)
108
+ @website = payload["website"]
109
+ @label = payload["label"]
110
+ end
111
+ def to_json(options = {})
112
+ {
113
+ "website": @website,
114
+ "label": @label,
115
+ }.to_json(options)
116
+ end
117
+ end
118
+
119
+ class MessagingV2ChannelsSenderRequestsCreate
120
+ # @param [sender_id]: [String] The ID of the sender in `whatsapp:<E.164_PHONE_NUMBER>` format.
121
+ # @param [configuration]: [ChannelsSenderList.MessagingV2ChannelsSenderConfiguration]
122
+ # @param [webhook]: [ChannelsSenderList.MessagingV2ChannelsSenderWebhook]
123
+ # @param [profile]: [ChannelsSenderList.MessagingV2ChannelsSenderProfile]
124
+ attr_accessor :sender_id, :configuration, :webhook, :profile
125
+ def initialize(payload)
126
+ @sender_id = payload["sender_id"]
127
+ @configuration = payload["configuration"]
128
+ @webhook = payload["webhook"]
129
+ @profile = payload["profile"]
130
+ end
131
+ def to_json(options = {})
132
+ {
133
+ "sender_id": @sender_id,
134
+ "configuration": @configuration,
135
+ "webhook": @webhook,
136
+ "profile": @profile,
137
+ }.to_json(options)
138
+ end
139
+ end
140
+
141
+ class MessagingV2ChannelsSenderRequestsUpdate
142
+ # @param [configuration]: [ChannelsSenderList.MessagingV2ChannelsSenderConfiguration]
143
+ # @param [webhook]: [ChannelsSenderList.MessagingV2ChannelsSenderWebhook]
144
+ # @param [profile]: [ChannelsSenderList.MessagingV2ChannelsSenderProfile]
145
+ attr_accessor :configuration, :webhook, :profile
146
+ def initialize(payload)
147
+ @configuration = payload["configuration"]
148
+ @webhook = payload["webhook"]
149
+ @profile = payload["profile"]
150
+ end
151
+ def to_json(options = {})
152
+ {
153
+ "configuration": @configuration,
154
+ "webhook": @webhook,
155
+ "profile": @profile,
156
+ }.to_json(options)
157
+ end
158
+ end
159
+
160
+ class MessagingV2RcsCarrier
161
+ # @param [name]: [String] The name of the carrier. For example, `Verizon` or `AT&T` for US.
162
+ # @param [status]: [MessagingV2RcsCarrierStatus]
163
+ attr_accessor :name, :status
164
+ def initialize(payload)
165
+ @name = payload["name"]
166
+ @status = payload["status"]
167
+ end
168
+ def to_json(options = {})
169
+ {
170
+ "name": @name,
171
+ "status": @status,
172
+ }.to_json(options)
173
+ end
174
+ end
175
+
176
+ class MessagingV2RcsComplianceCountryResponse
177
+ # @param [country]: [String] The ISO 3166-1 alpha-2 country code.
178
+ # @param [registration_sid]: [String] The default compliance registration SID (e.g., from CR-Google) that applies to all countries unless overridden in the `countries` array.
179
+ # @param [status]: [MessagingV2RcsCountryStatus]
180
+ # @param [carriers]: [Array<MessagingV2RcsCarrier>]
181
+ attr_accessor :country, :registration_sid, :status, :carriers
182
+ def initialize(payload)
183
+ @country = payload["country"]
184
+ @registration_sid = payload["registration_sid"]
185
+ @status = payload["status"]
186
+ @carriers = payload["carriers"]
187
+ end
188
+ def to_json(options = {})
189
+ {
190
+ "country": @country,
191
+ "registration_sid": @registration_sid,
192
+ "status": @status,
193
+ "carriers": @carriers,
194
+ }.to_json(options)
195
+ end
196
+ end
197
+
198
+
199
+ class MessagingV2ChannelsSenderProfile
200
+ # @param [name]: [String] The name of the sender. Required for WhatsApp senders and must follow [Meta's display name guidelines](https://www.facebook.com/business/help/757569725593362).
201
+ # @param [about]: [String] The profile about text for the sender.
202
+ # @param [address]: [String] The address of the sender.
203
+ # @param [description]: [String] The description of the sender.
204
+ # @param [logo_url]: [String] The logo URL of the sender.
205
+ # @param [banner_url]: [String] The banner URL of the sender.
206
+ # @param [privacy_url]: [String] The privacy URL of the sender. Must be a publicly accessible HTTP or HTTPS URI associated with the sender.
207
+ # @param [terms_of_service_url]: [String] The terms of service URL of the sender.
208
+ # @param [accent_color]: [String] The color theme of the sender. Must be in hex format and have at least a 4:5:1 contrast ratio against white.
209
+ # @param [vertical]: [String] The vertical of the sender. Allowed values are: - `Alcohol` - `Automotive` - `Beauty, Spa and Salon` - `Clothing and Apparel` - `Education` - `Entertainment` - `Event Planning and Service` - `Finance and Banking` - `Food and Grocery` - `Hotel and Lodging` - `Matrimony Service` - `Medical and Health` - `Non-profit` - `Online Gambling` - `OTC Drugs` - `Other` - `Physical Gambling` - `Professional Services` - `Public Service` - `Restaurant` - `Shopping and Retail` - `Travel and Transportation`
210
+ # @param [websites]: [Hash] The websites of the sender.
211
+ # @param [emails]: [Hash] The emails of the sender.
212
+ # @param [phone_numbers]: [Hash] The phone numbers of the sender.
213
+ attr_accessor :name, :about, :address, :description, :logo_url, :banner_url, :privacy_url, :terms_of_service_url, :accent_color, :vertical, :websites, :emails, :phone_numbers
214
+ def initialize(payload)
215
+ @name = payload["name"]
216
+ @about = payload["about"]
217
+ @address = payload["address"]
218
+ @description = payload["description"]
219
+ @logo_url = payload["logo_url"]
220
+ @banner_url = payload["banner_url"]
221
+ @privacy_url = payload["privacy_url"]
222
+ @terms_of_service_url = payload["terms_of_service_url"]
223
+ @accent_color = payload["accent_color"]
224
+ @vertical = payload["vertical"]
225
+ @websites = payload["websites"]
226
+ @emails = payload["emails"]
227
+ @phone_numbers = payload["phone_numbers"]
228
+ end
229
+ def to_json(options = {})
230
+ {
231
+ "name": @name,
232
+ "about": @about,
233
+ "address": @address,
234
+ "description": @description,
235
+ "logo_url": @logo_url,
236
+ "banner_url": @banner_url,
237
+ "privacy_url": @privacy_url,
238
+ "terms_of_service_url": @terms_of_service_url,
239
+ "accent_color": @accent_color,
240
+ "vertical": @vertical,
241
+ "websites": @websites,
242
+ "emails": @emails,
243
+ "phone_numbers": @phone_numbers,
244
+ }.to_json(options)
245
+ end
246
+ end
247
+
248
+ class MessagingV2ChannelsSenderProfileGenericResponseEmails
249
+ # @param [email]: [String]
250
+ # @param [label]: [String]
251
+ attr_accessor :email, :label
252
+ def initialize(payload)
253
+ @email = payload["email"]
254
+ @label = payload["label"]
255
+ end
256
+ def to_json(options = {})
257
+ {
258
+ "email": @email,
259
+ "label": @label,
260
+ }.to_json(options)
261
+ end
262
+ end
263
+
264
+ class MessagingV2ChannelsSenderProfileGenericResponsePhoneNumbers
265
+ # @param [phone_number]: [String]
266
+ # @param [label]: [String]
267
+ attr_accessor :phone_number, :label
268
+ def initialize(payload)
269
+ @phone_number = payload["phone_number"]
270
+ @label = payload["label"]
271
+ end
272
+ def to_json(options = {})
273
+ {
274
+ "phone_number": @phone_number,
275
+ "label": @label,
276
+ }.to_json(options)
277
+ end
278
+ end
279
+
280
+ class MessagingV2ChannelsSenderProfileGenericResponseWebsites
281
+ # @param [website]: [String]
282
+ # @param [label]: [String]
283
+ attr_accessor :website, :label
284
+ def initialize(payload)
285
+ @website = payload["website"]
286
+ @label = payload["label"]
287
+ end
288
+ def to_json(options = {})
289
+ {
290
+ "website": @website,
291
+ "label": @label,
292
+ }.to_json(options)
293
+ end
294
+ end
295
+
296
+ class MessagingV2ChannelsSenderRequestsCreate
297
+ # @param [sender_id]: [String] The ID of the sender in `whatsapp:<E.164_PHONE_NUMBER>` format.
298
+ # @param [configuration]: [ChannelsSenderList.MessagingV2ChannelsSenderConfiguration]
299
+ # @param [webhook]: [ChannelsSenderList.MessagingV2ChannelsSenderWebhook]
300
+ # @param [profile]: [ChannelsSenderList.MessagingV2ChannelsSenderProfile]
301
+ attr_accessor :sender_id, :configuration, :webhook, :profile
302
+ def initialize(payload)
303
+ @sender_id = payload["sender_id"]
304
+ @configuration = payload["configuration"]
305
+ @webhook = payload["webhook"]
306
+ @profile = payload["profile"]
307
+ end
308
+ def to_json(options = {})
309
+ {
310
+ "sender_id": @sender_id,
311
+ "configuration": @configuration,
312
+ "webhook": @webhook,
313
+ "profile": @profile,
314
+ }.to_json(options)
315
+ end
316
+ end
317
+
318
+ class MessagingV2ChannelsSenderRequestsUpdate
319
+ # @param [configuration]: [ChannelsSenderList.MessagingV2ChannelsSenderConfiguration]
320
+ # @param [webhook]: [ChannelsSenderList.MessagingV2ChannelsSenderWebhook]
321
+ # @param [profile]: [ChannelsSenderList.MessagingV2ChannelsSenderProfile]
322
+ attr_accessor :configuration, :webhook, :profile
323
+ def initialize(payload)
324
+ @configuration = payload["configuration"]
325
+ @webhook = payload["webhook"]
326
+ @profile = payload["profile"]
327
+ end
328
+ def to_json(options = {})
329
+ {
330
+ "configuration": @configuration,
331
+ "webhook": @webhook,
332
+ "profile": @profile,
333
+ }.to_json(options)
334
+ end
335
+ end
336
+
337
+ class MessagingV2RcsCarrier
338
+ # @param [name]: [String] The name of the carrier. For example, `Verizon` or `AT&T` for US.
339
+ # @param [status]: [MessagingV2RcsCarrierStatus]
340
+ attr_accessor :name, :status
341
+ def initialize(payload)
342
+ @name = payload["name"]
343
+ @status = payload["status"]
344
+ end
345
+ def to_json(options = {})
346
+ {
347
+ "name": @name,
348
+ "status": @status,
349
+ }.to_json(options)
350
+ end
351
+ end
352
+
353
+ class MessagingV2RcsComplianceCountryResponse
354
+ # @param [country]: [String] The ISO 3166-1 alpha-2 country code.
355
+ # @param [registration_sid]: [String] The default compliance registration SID (e.g., from CR-Google) that applies to all countries unless overridden in the `countries` array.
356
+ # @param [status]: [MessagingV2RcsCountryStatus]
357
+ # @param [carriers]: [Array<MessagingV2RcsCarrier>]
358
+ attr_accessor :country, :registration_sid, :status, :carriers
359
+ def initialize(payload)
360
+ @country = payload["country"]
361
+ @registration_sid = payload["registration_sid"]
362
+ @status = payload["status"]
363
+ @carriers = payload["carriers"]
364
+ end
365
+ def to_json(options = {})
366
+ {
367
+ "country": @country,
368
+ "registration_sid": @registration_sid,
369
+ "status": @status,
370
+ "carriers": @carriers,
371
+ }.to_json(options)
372
+ end
373
+ end
374
+
375
+
376
+ ##
377
+ # Initialize the ChannelsSenderList
378
+ # @param [Version] version Version that contains the resource
379
+ # @return [ChannelsSenderList] ChannelsSenderList
380
+ def initialize(version)
381
+ super(version)
382
+
383
+ # Path Solution
384
+ @solution = { }
385
+ @uri = "/Channels/Senders"
386
+
387
+ end
388
+ ##
389
+ # Create the ChannelsSenderInstance
390
+ # @param [MessagingV2ChannelsSenderRequestsCreate] messaging_v2_channels_sender_requests_create
391
+ # @return [ChannelsSenderInstance] Created ChannelsSenderInstance
392
+ def create(messaging_v2_channels_sender_requests_create: nil
393
+ )
394
+
395
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
396
+ headers['Content-Type'] = 'application/json'
397
+
398
+
399
+
400
+
401
+ payload = @version.create('POST', @uri, headers: headers, data: messaging_v2_channels_sender_requests_create.to_json)
402
+ ChannelsSenderInstance.new(
403
+ @version,
404
+ payload,
405
+ )
406
+ end
407
+
408
+ ##
409
+ # Create the ChannelsSenderInstanceMetadata
410
+ # @param [MessagingV2ChannelsSenderRequestsCreate] messaging_v2_channels_sender_requests_create
411
+ # @return [ChannelsSenderInstance] Created ChannelsSenderInstance
412
+ def create_with_metadata(messaging_v2_channels_sender_requests_create: nil
413
+ )
414
+
415
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
416
+ headers['Content-Type'] = 'application/json'
417
+
418
+
419
+
420
+
421
+ response = @version.create_with_metadata('POST', @uri, headers: headers, data: messaging_v2_channels_sender_requests_create.to_json)
422
+ channels_sender_instance = ChannelsSenderInstance.new(
423
+ @version,
424
+ response.body,
425
+ )
426
+ ChannelsSenderInstanceMetadata.new(
427
+ @version,
428
+ channels_sender_instance,
429
+ response.headers,
430
+ response.status_code
431
+ )
432
+ end
433
+
434
+
435
+ ##
436
+ # Lists ChannelsSenderInstance records from the API as a list.
437
+ # Unlike stream(), this operation is eager and will load `limit` records into
438
+ # memory before returning.
439
+ # @param [String] channel
440
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
441
+ # guarantees to never return more than limit. Default is no limit
442
+ # @param [Integer] page_size Number of records to fetch per request, when
443
+ # not set will use the default value of 50 records. If no page_size is defined
444
+ # but a limit is defined, stream() will attempt to read the limit with the most
445
+ # efficient page size, i.e. min(limit, 1000)
446
+ # @return [Array] Array of up to limit results
447
+ def list(channel: nil, limit: nil, page_size: nil)
448
+ self.stream(
449
+ channel: channel,
450
+ limit: limit,
451
+ page_size: page_size
452
+ ).entries
453
+ end
454
+
455
+ ##
456
+ # Streams Instance records from the API as an Enumerable.
457
+ # This operation lazily loads records as efficiently as possible until the limit
458
+ # is reached.
459
+ # @param [String] channel
460
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
461
+ # guarantees to never return more than limit. Default is no limit
462
+ # @param [Integer] page_size Number of records to fetch per request, when
463
+ # not set will use the default value of 50 records. If no page_size is defined
464
+ # but a limit is defined, stream() will attempt to read the limit with the most
465
+ # efficient page size, i.e. min(limit, 1000)
466
+ # @return [Enumerable] Enumerable that will yield up to limit results
467
+ def stream(channel: nil, limit: nil, page_size: nil)
468
+ limits = @version.read_limits(limit, page_size)
469
+
470
+ page = self.page(
471
+ channel: channel,
472
+ page_size: limits[:page_size], )
473
+
474
+ @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
475
+ end
476
+
477
+ ##
478
+ # Lists ChannelsSenderPageMetadata records from the API as a list.
479
+ # @param [String] channel
480
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
481
+ # guarantees to never return more than limit. Default is no limit
482
+ # @param [Integer] page_size Number of records to fetch per request, when
483
+ # not set will use the default value of 50 records. If no page_size is defined
484
+ # but a limit is defined, stream() will attempt to read the limit with the most
485
+ # efficient page size, i.e. min(limit, 1000)
486
+ # @return [Array] Array of up to limit results
487
+ def list_with_metadata(channel: nil, limit: nil, page_size: nil)
488
+ limits = @version.read_limits(limit, page_size)
489
+ params = Twilio::Values.of({
490
+ 'Channel' => channel,
491
+
492
+ 'PageSize' => limits[:page_size],
493
+ });
494
+ headers = Twilio::Values.of({})
495
+
496
+ response = @version.page('GET', @uri, params: params, headers: headers)
497
+
498
+ ChannelsSenderPageMetadata.new(@version, response, @solution, limits[:limit])
499
+ end
500
+
501
+ ##
502
+ # When passed a block, yields ChannelsSenderInstance records from the API.
503
+ # This operation lazily loads records as efficiently as possible until the limit
504
+ # is reached.
505
+ def each
506
+ limits = @version.read_limits
507
+
508
+ page = self.page(page_size: limits[:page_size], )
509
+
510
+ @version.stream(page,
511
+ limit: limits[:limit],
512
+ page_limit: limits[:page_limit]).each {|x| yield x}
513
+ end
514
+
515
+ ##
516
+ # Retrieve a single page of ChannelsSenderInstance records from the API.
517
+ # Request is executed immediately.
518
+ # @param [String] channel
519
+ # @param [String] page_token PageToken provided by the API
520
+ # @param [Integer] page_number Page Number, this value is simply for client state
521
+ # @param [Integer] page_size Number of records to return, defaults to 50
522
+ # @return [Page] Page of ChannelsSenderInstance
523
+ def page(channel: nil, page_token: :unset, page_number: :unset,page_size: :unset)
524
+ params = Twilio::Values.of({
525
+ 'Channel' => channel,
526
+ 'PageToken' => page_token,
527
+ 'Page' => page_number,
528
+ 'PageSize' => page_size,
529
+ })
530
+ headers = Twilio::Values.of({})
531
+
532
+
533
+
534
+ response = @version.page('GET', @uri, params: params, headers: headers)
535
+
536
+ ChannelsSenderPage.new(@version, response, @solution)
537
+ end
538
+
539
+ ##
540
+ # Retrieve a single page of ChannelsSenderInstance records from the API.
541
+ # Request is executed immediately.
542
+ # @param [String] target_url API-generated URL for the requested results page
543
+ # @return [Page] Page of ChannelsSenderInstance
544
+ def get_page(target_url)
545
+ response = @version.domain.request(
546
+ 'GET',
547
+ target_url
548
+ )
549
+ ChannelsSenderPage.new(@version, response, @solution)
550
+ end
551
+
552
+
553
+
554
+ # Provide a user friendly representation
555
+ def to_s
556
+ '#<Twilio.Messaging.V2.ChannelsSenderList>'
557
+ end
558
+ end
559
+
560
+
561
+ class ChannelsSenderContext < InstanceContext
562
+ ##
563
+ # Initialize the ChannelsSenderContext
564
+ # @param [Version] version Version that contains the resource
565
+ # @param [String] sid The SID of the sender.
566
+ # @return [ChannelsSenderContext] ChannelsSenderContext
567
+ def initialize(version, sid)
568
+ super(version)
569
+
570
+
571
+ # Path Solution
572
+ @solution = { sid: sid, }
573
+ @uri = "/Channels/Senders/#{@solution[:sid]}"
574
+
575
+
576
+ end
577
+ ##
578
+ # Delete the ChannelsSenderInstance
579
+ # @return [Boolean] True if delete succeeds, false otherwise
580
+ def delete
581
+
582
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
583
+
584
+
585
+
586
+
587
+ @version.delete('DELETE', @uri, headers: headers)
588
+ end
589
+
590
+ ##
591
+ # Delete the ChannelsSenderInstanceMetadata
592
+ # @return [Boolean] True if delete succeeds, false otherwise
593
+ def delete_with_metadata
594
+
595
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
596
+
597
+
598
+
599
+ response = @version.delete_with_metadata('DELETE', @uri, headers: headers)
600
+ channelsSender_instance = ChannelsSenderInstance.new(
601
+ @version,
602
+ response.body,
603
+ account_sid: @solution[:account_sid],
604
+ sid: @solution[:sid],
605
+ )
606
+ ChannelsSenderInstanceMetadata.new(@version, channelsSender_instance, response.headers, response.status_code)
607
+ end
608
+
609
+ ##
610
+ # Fetch the ChannelsSenderInstance
611
+ # @return [ChannelsSenderInstance] Fetched ChannelsSenderInstance
612
+ def fetch
613
+
614
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
615
+
616
+
617
+
618
+
619
+
620
+ payload = @version.fetch('GET', @uri, headers: headers)
621
+ ChannelsSenderInstance.new(
622
+ @version,
623
+ payload,
624
+ sid: @solution[:sid],
625
+ )
626
+ end
627
+
628
+ ##
629
+ # Fetch the ChannelsSenderInstanceMetadata
630
+ # @return [ChannelsSenderInstance] Fetched ChannelsSenderInstance
631
+ def fetch_with_metadata
632
+
633
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
634
+
635
+
636
+
637
+
638
+
639
+ response = @version.fetch_with_metadata('GET', @uri, headers: headers)
640
+ channels_sender_instance = ChannelsSenderInstance.new(
641
+ @version,
642
+ response.body,
643
+ sid: @solution[:sid],
644
+ )
645
+ ChannelsSenderInstanceMetadata.new(
646
+ @version,
647
+ channels_sender_instance,
648
+ response.headers,
649
+ response.status_code
650
+ )
651
+ end
652
+
653
+ ##
654
+ # Update the ChannelsSenderInstance
655
+ # @param [MessagingV2ChannelsSenderRequestsUpdate] messaging_v2_channels_sender_requests_update
656
+ # @return [ChannelsSenderInstance] Updated ChannelsSenderInstance
657
+ def update(messaging_v2_channels_sender_requests_update: :unset
658
+ )
659
+
660
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
661
+ headers['Content-Type'] = 'application/json'
662
+
663
+
664
+
665
+
666
+ payload = @version.update('POST', @uri, headers: headers, data: messaging_v2_channels_sender_requests_update.to_json)
667
+ ChannelsSenderInstance.new(
668
+ @version,
669
+ payload,
670
+ sid: @solution[:sid],
671
+ )
672
+ end
673
+
674
+ ##
675
+ # Update the ChannelsSenderInstanceMetadata
676
+ # @param [MessagingV2ChannelsSenderRequestsUpdate] messaging_v2_channels_sender_requests_update
677
+ # @return [ChannelsSenderInstance] Updated ChannelsSenderInstance
678
+ def update_with_metadata(messaging_v2_channels_sender_requests_update: :unset
679
+ )
680
+
681
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
682
+ headers['Content-Type'] = 'application/json'
683
+
684
+
685
+
686
+
687
+ response = @version.update_with_metadata('POST', @uri, headers: headers, data: messaging_v2_channels_sender_requests_update.to_json)
688
+ channels_sender_instance = ChannelsSenderInstance.new(
689
+ @version,
690
+ response.body,
691
+ sid: @solution[:sid],
692
+ )
693
+ ChannelsSenderInstanceMetadata.new(
694
+ @version,
695
+ channels_sender_instance,
696
+ response.headers,
697
+ response.status_code
698
+ )
699
+ end
700
+
701
+
702
+ ##
703
+ # Provide a user friendly representation
704
+ def to_s
705
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
706
+ "#<Twilio.Messaging.V2.ChannelsSenderContext #{context}>"
707
+ end
708
+
709
+ ##
710
+ # Provide a detailed, user friendly representation
711
+ def inspect
712
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
713
+ "#<Twilio.Messaging.V2.ChannelsSenderContext #{context}>"
714
+ end
715
+ end
716
+
717
+ class ChannelsSenderInstanceMetadata < InstanceResourceMetadata
718
+ ##
719
+ # Initializes a new ChannelsSenderInstanceMetadata.
720
+ # @param [Version] version Version that contains the resource
721
+ # @param [}ChannelsSenderInstance] channels_sender_instance The instance associated with the metadata.
722
+ # @param [Hash] headers Header object with response headers.
723
+ # @param [Integer] status_code The HTTP status code of the response.
724
+ # @return [ChannelsSenderInstanceMetadata] The initialized instance with metadata.
725
+ def initialize(version, channels_sender_instance, headers, status_code)
726
+ super(version, headers, status_code)
727
+ @channels_sender_instance = channels_sender_instance
728
+ end
729
+
730
+ def channels_sender
731
+ @channels_sender_instance
732
+ end
733
+
734
+ def headers
735
+ @headers
736
+ end
737
+
738
+ def status_code
739
+ @status_code
740
+ end
741
+
742
+ def to_s
743
+ "<Twilio.Api.V2010.ChannelsSenderInstanceMetadata status=#{@status_code}>"
744
+ end
745
+ end
746
+
747
+ class ChannelsSenderListResponse < InstanceListResource
748
+ # @param [Array<ChannelsSenderInstance>] instance
749
+ # @param [Hash{String => Object}] headers
750
+ # @param [Integer] status_code
751
+ def initialize(version, payload, key)
752
+ @channels_sender_instance = payload.body[key].map do |data|
753
+ ChannelsSenderInstance.new(version, data)
754
+ end
755
+ @headers = payload.headers
756
+ @status_code = payload.status_code
757
+ end
758
+
759
+ def channels_sender_instance
760
+ @instance
761
+ end
762
+ end
763
+
764
+ class ChannelsSenderPage < Page
765
+ ##
766
+ # Initialize the ChannelsSenderPage
767
+ # @param [Version] version Version that contains the resource
768
+ # @param [Response] response Response from the API
769
+ # @param [Hash] solution Path solution for the resource
770
+ # @return [ChannelsSenderPage] ChannelsSenderPage
771
+ def initialize(version, response, solution)
772
+ super(version, response)
773
+
774
+
775
+ # Path Solution
776
+ @solution = solution
777
+ end
778
+
779
+ ##
780
+ # Build an instance of ChannelsSenderInstance
781
+ # @param [Hash] payload Payload response from the API
782
+ # @return [ChannelsSenderInstance] ChannelsSenderInstance
783
+ def get_instance(payload)
784
+ ChannelsSenderInstance.new(@version, payload)
785
+ end
786
+
787
+ ##
788
+ # Provide a user friendly representation
789
+ def to_s
790
+ '<Twilio.Messaging.V2.ChannelsSenderPage>'
791
+ end
792
+ end
793
+
794
+ class ChannelsSenderPageMetadata < PageMetadata
795
+ attr_reader :channels_sender_page
796
+
797
+ def initialize(version, response, solution, limit)
798
+ super(version, response)
799
+ @channels_sender_page = []
800
+ @limit = limit
801
+ key = get_key(response.body)
802
+ records = 0
803
+ while( limit != :unset && records < limit )
804
+ @channels_sender_page << ChannelsSenderListResponse.new(version, @payload, key, limit - records)
805
+ @payload = self.next_page
806
+ break unless @payload
807
+ records += @payload.body[key].size
808
+ end
809
+ # Path Solution
810
+ @solution = solution
811
+ end
812
+
813
+ def each
814
+ @channels_sender_page.each do |record|
815
+ yield record
816
+ end
817
+ end
818
+
819
+ def to_s
820
+ '<Twilio::REST::Messaging::V2PageMetadata>';
821
+ end
822
+ end
823
+ class ChannelsSenderListResponse < InstanceListResource
824
+
825
+ # @param [Array<ChannelsSenderInstance>] instance
826
+ # @param [Hash{String => Object}] headers
827
+ # @param [Integer] status_code
828
+ def initialize(version, payload, key, limit = :unset)
829
+ data_list = payload.body[key]
830
+ if limit != :unset
831
+ data_list = data_list[0, limit]
832
+ end
833
+ @channels_sender = data_list.map do |data|
834
+ ChannelsSenderInstance.new(version, data)
835
+ end
836
+ @headers = payload.headers
837
+ @status_code = payload.status_code
838
+ end
839
+
840
+ def channels_sender
841
+ @channels_sender
842
+ end
843
+
844
+ def headers
845
+ @headers
846
+ end
847
+
848
+ def status_code
849
+ @status_code
850
+ end
851
+ end
852
+
853
+ class ChannelsSenderInstance < InstanceResource
854
+ ##
855
+ # Initialize the ChannelsSenderInstance
856
+ # @param [Version] version Version that contains the resource
857
+ # @param [Hash] payload payload that contains response from Twilio
858
+ # @param [String] account_sid The SID of the
859
+ # {Account}[https://www.twilio.com/docs/iam/api/account] that created this ChannelsSender
860
+ # resource.
861
+ # @param [String] sid The SID of the Call resource to fetch.
862
+ # @return [ChannelsSenderInstance] ChannelsSenderInstance
863
+ def initialize(version, payload , sid: nil)
864
+ super(version)
865
+
866
+
867
+ # Marshaled Properties
868
+ @properties = {
869
+ 'sid' => payload['sid'],
870
+ 'status' => payload['status'],
871
+ 'sender_id' => payload['sender_id'],
872
+ 'configuration' => payload['configuration'],
873
+ 'webhook' => payload['webhook'],
874
+ 'profile' => payload['profile'],
875
+ 'properties' => payload['properties'],
876
+ 'offline_reasons' => payload['offline_reasons'],
877
+ 'compliance' => payload['compliance'],
878
+ 'url' => payload['url'],
879
+ }
880
+
881
+ # Context
882
+ @instance_context = nil
883
+ @params = { 'sid' => sid || @properties['sid'] , }
884
+ end
885
+
886
+ ##
887
+ # Generate an instance context for the instance, the context is capable of
888
+ # performing various actions. All instance actions are proxied to the context
889
+ # @return [ChannelsSenderContext] CallContext for this CallInstance
890
+ def context
891
+ unless @instance_context
892
+ @instance_context = ChannelsSenderContext.new(@version , @params['sid'])
893
+ end
894
+ @instance_context
895
+ end
896
+
897
+ ##
898
+ # @return [String] The SID of the sender.
899
+ def sid
900
+ @properties['sid']
901
+ end
902
+
903
+ ##
904
+ # @return [Status]
905
+ def status
906
+ @properties['status']
907
+ end
908
+
909
+ ##
910
+ # @return [String] The ID of the sender in `whatsapp:<E.164_PHONE_NUMBER>` format.
911
+ def sender_id
912
+ @properties['sender_id']
913
+ end
914
+
915
+ ##
916
+ # @return [MessagingV2ChannelsSenderConfiguration]
917
+ def configuration
918
+ @properties['configuration']
919
+ end
920
+
921
+ ##
922
+ # @return [MessagingV2ChannelsSenderWebhook]
923
+ def webhook
924
+ @properties['webhook']
925
+ end
926
+
927
+ ##
928
+ # @return [MessagingV2ChannelsSenderProfileGenericResponse]
929
+ def profile
930
+ @properties['profile']
931
+ end
932
+
933
+ ##
934
+ # @return [MessagingV2ChannelsSenderProperties]
935
+ def properties
936
+ @properties['properties']
937
+ end
938
+
939
+ ##
940
+ # @return [Array<MessagingV2ChannelsSenderOfflineReasonsItems>] The reasons why the sender is offline.
941
+ def offline_reasons
942
+ @properties['offline_reasons']
943
+ end
944
+
945
+ ##
946
+ # @return [MessagingV2RcsComplianceResponse]
947
+ def compliance
948
+ @properties['compliance']
949
+ end
950
+
951
+ ##
952
+ # @return [String] The URL of the resource.
953
+ def url
954
+ @properties['url']
955
+ end
956
+
957
+ ##
958
+ # Delete the ChannelsSenderInstance
959
+ # @return [Boolean] True if delete succeeds, false otherwise
960
+ def delete
961
+
962
+ context.delete
963
+ end
964
+
965
+ ##
966
+ # Fetch the ChannelsSenderInstance
967
+ # @return [ChannelsSenderInstance] Fetched ChannelsSenderInstance
968
+ def fetch
969
+
970
+ context.fetch
971
+ end
972
+
973
+ ##
974
+ # Update the ChannelsSenderInstance
975
+ # @param [MessagingV2ChannelsSenderRequestsUpdate] messaging_v2_channels_sender_requests_update
976
+ # @return [ChannelsSenderInstance] Updated ChannelsSenderInstance
977
+ def update(messaging_v2_channels_sender_requests_update: :unset
978
+ )
979
+
980
+ context.update(
981
+ )
982
+ end
983
+
984
+ ##
985
+ # Provide a user friendly representation
986
+ def to_s
987
+ values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
988
+ "<Twilio.Messaging.V2.ChannelsSenderInstance #{values}>"
989
+ end
990
+
991
+ ##
992
+ # Provide a detailed, user friendly representation
993
+ def inspect
994
+ values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
995
+ "<Twilio.Messaging.V2.ChannelsSenderInstance #{values}>"
996
+ end
997
+ end
998
+
999
+ end
1000
+ end
1001
+ end
1002
+ end