twilio-ruby 7.3.6 → 7.4.0

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 (532) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/test-and-deploy.yml +8 -0
  3. data/.rubocop.yml +1 -0
  4. data/CHANGES.md +22 -0
  5. data/Makefile +1 -1
  6. data/README.md +7 -2
  7. data/cluster/cluster_oauth_spec.rb +19 -0
  8. data/cluster/cluster_orgs_spec.rb +40 -0
  9. data/{cluster_spec.rb → cluster/cluster_spec.rb} +0 -2
  10. data/examples/public_oauth.rb +13 -0
  11. data/lib/twilio-ruby/auth_strategy/auth_strategy.rb +19 -0
  12. data/lib/twilio-ruby/auth_strategy/no_auth_strategy.rb +17 -0
  13. data/lib/twilio-ruby/auth_strategy/token_auth_strategy.rb +39 -0
  14. data/lib/twilio-ruby/base/client_base.rb +8 -1
  15. data/lib/twilio-ruby/credential/auth_type.rb +17 -0
  16. data/lib/twilio-ruby/credential/client_credential_provider.rb +28 -0
  17. data/lib/twilio-ruby/credential/credential_provider.rb +11 -0
  18. data/lib/twilio-ruby/credential/orgs_credential_provider.rb +30 -0
  19. data/lib/twilio-ruby/framework/rest/domain.rb +0 -1
  20. data/lib/twilio-ruby/framework/rest/page.rb +1 -0
  21. data/lib/twilio-ruby/http/client_token_manager.rb +28 -0
  22. data/lib/twilio-ruby/http/http_client.rb +9 -0
  23. data/lib/twilio-ruby/http/org_token_manager.rb +28 -0
  24. data/lib/twilio-ruby/rest/accounts/v1/auth_token_promotion.rb +4 -0
  25. data/lib/twilio-ruby/rest/accounts/v1/bulk_consents.rb +4 -0
  26. data/lib/twilio-ruby/rest/accounts/v1/bulk_contacts.rb +4 -0
  27. data/lib/twilio-ruby/rest/accounts/v1/credential/aws.rb +18 -1
  28. data/lib/twilio-ruby/rest/accounts/v1/credential/public_key.rb +18 -1
  29. data/lib/twilio-ruby/rest/accounts/v1/safelist.rb +10 -0
  30. data/lib/twilio-ruby/rest/accounts/v1/secondary_auth_token.rb +6 -0
  31. data/lib/twilio-ruby/rest/api/v2010/account/address/dependent_phone_number.rb +4 -1
  32. data/lib/twilio-ruby/rest/api/v2010/account/address.rb +18 -1
  33. data/lib/twilio-ruby/rest/api/v2010/account/application.rb +18 -1
  34. data/lib/twilio-ruby/rest/api/v2010/account/authorized_connect_app.rb +8 -1
  35. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/local.rb +4 -1
  36. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/machine_to_machine.rb +4 -1
  37. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/mobile.rb +4 -1
  38. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/national.rb +4 -1
  39. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/shared_cost.rb +4 -1
  40. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/toll_free.rb +4 -1
  41. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/voip.rb +4 -1
  42. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country.rb +8 -1
  43. data/lib/twilio-ruby/rest/api/v2010/account/balance.rb +4 -0
  44. data/lib/twilio-ruby/rest/api/v2010/account/call/event.rb +4 -1
  45. data/lib/twilio-ruby/rest/api/v2010/account/call/notification.rb +8 -1
  46. data/lib/twilio-ruby/rest/api/v2010/account/call/payment.rb +8 -0
  47. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +18 -1
  48. data/lib/twilio-ruby/rest/api/v2010/account/call/siprec.rb +8 -0
  49. data/lib/twilio-ruby/rest/api/v2010/account/call/stream.rb +8 -0
  50. data/lib/twilio-ruby/rest/api/v2010/account/call/transcription.rb +12 -1
  51. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message.rb +4 -0
  52. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message_subscription.rb +6 -0
  53. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +18 -1
  54. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +18 -1
  55. data/lib/twilio-ruby/rest/api/v2010/account/conference/recording.rb +14 -1
  56. data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +12 -1
  57. data/lib/twilio-ruby/rest/api/v2010/account/connect_app.rb +14 -1
  58. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension.rb +8 -1
  59. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on.rb +14 -1
  60. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +8 -1
  61. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +8 -1
  62. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +8 -1
  63. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +18 -1
  64. data/lib/twilio-ruby/rest/api/v2010/account/key.rb +14 -1
  65. data/lib/twilio-ruby/rest/api/v2010/account/message/feedback.rb +4 -0
  66. data/lib/twilio-ruby/rest/api/v2010/account/message/media.rb +10 -1
  67. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +18 -1
  68. data/lib/twilio-ruby/rest/api/v2010/account/new_key.rb +4 -0
  69. data/lib/twilio-ruby/rest/api/v2010/account/new_signing_key.rb +4 -0
  70. data/lib/twilio-ruby/rest/api/v2010/account/notification.rb +8 -1
  71. data/lib/twilio-ruby/rest/api/v2010/account/outgoing_caller_id.rb +14 -1
  72. data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +12 -1
  73. data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +18 -1
  74. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload/data.rb +4 -0
  75. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload.rb +10 -1
  76. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result.rb +10 -1
  77. data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +10 -1
  78. data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +10 -1
  79. data/lib/twilio-ruby/rest/api/v2010/account/short_code.rb +12 -1
  80. data/lib/twilio-ruby/rest/api/v2010/account/signing_key.rb +14 -1
  81. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list/credential.rb +18 -1
  82. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list.rb +18 -1
  83. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls/auth_calls_credential_list_mapping.rb +14 -1
  84. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls/auth_calls_ip_access_control_list_mapping.rb +14 -1
  85. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_registrations/auth_registrations_credential_list_mapping.rb +14 -1
  86. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb +14 -1
  87. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/ip_access_control_list_mapping.rb +14 -1
  88. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +18 -1
  89. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +18 -1
  90. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb +18 -1
  91. data/lib/twilio-ruby/rest/api/v2010/account/token.rb +4 -0
  92. data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +10 -1
  93. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +4 -1
  94. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +4 -1
  95. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +4 -1
  96. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +4 -1
  97. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +4 -1
  98. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +4 -1
  99. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +4 -1
  100. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +4 -1
  101. data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +4 -1
  102. data/lib/twilio-ruby/rest/api/v2010/account/usage/trigger.rb +18 -1
  103. data/lib/twilio-ruby/rest/api/v2010/account/validation_request.rb +4 -0
  104. data/lib/twilio-ruby/rest/api/v2010/account.rb +16 -1
  105. data/lib/twilio-ruby/rest/assistants/v1/assistant/assistants_knowledge.rb +10 -1
  106. data/lib/twilio-ruby/rest/assistants/v1/assistant/assistants_tool.rb +10 -1
  107. data/lib/twilio-ruby/rest/assistants/v1/assistant/feedback.rb +13 -5
  108. data/lib/twilio-ruby/rest/assistants/v1/assistant/message.rb +10 -5
  109. data/lib/twilio-ruby/rest/assistants/v1/assistant.rb +50 -31
  110. data/lib/twilio-ruby/rest/assistants/v1/knowledge/chunk.rb +4 -1
  111. data/lib/twilio-ruby/rest/assistants/v1/knowledge/knowledge_status.rb +4 -0
  112. data/lib/twilio-ruby/rest/assistants/v1/knowledge.rb +52 -33
  113. data/lib/twilio-ruby/rest/assistants/v1/policy.rb +4 -1
  114. data/lib/twilio-ruby/rest/assistants/v1/session/message.rb +4 -1
  115. data/lib/twilio-ruby/rest/assistants/v1/session.rb +8 -1
  116. data/lib/twilio-ruby/rest/assistants/v1/tool.rb +58 -39
  117. data/lib/twilio-ruby/rest/bulkexports/v1/export/day.rb +8 -1
  118. data/lib/twilio-ruby/rest/bulkexports/v1/export/export_custom_job.rb +8 -1
  119. data/lib/twilio-ruby/rest/bulkexports/v1/export/job.rb +6 -0
  120. data/lib/twilio-ruby/rest/bulkexports/v1/export.rb +4 -0
  121. data/lib/twilio-ruby/rest/bulkexports/v1/export_configuration.rb +8 -0
  122. data/lib/twilio-ruby/rest/chat/v1/credential.rb +18 -1
  123. data/lib/twilio-ruby/rest/chat/v1/service/channel/invite.rb +14 -1
  124. data/lib/twilio-ruby/rest/chat/v1/service/channel/member.rb +18 -1
  125. data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +18 -1
  126. data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +18 -1
  127. data/lib/twilio-ruby/rest/chat/v1/service/role.rb +18 -1
  128. data/lib/twilio-ruby/rest/chat/v1/service/user/user_channel.rb +4 -1
  129. data/lib/twilio-ruby/rest/chat/v1/service/user.rb +18 -1
  130. data/lib/twilio-ruby/rest/chat/v1/service.rb +18 -1
  131. data/lib/twilio-ruby/rest/chat/v2/credential.rb +18 -1
  132. data/lib/twilio-ruby/rest/chat/v2/service/binding.rb +10 -1
  133. data/lib/twilio-ruby/rest/chat/v2/service/channel/invite.rb +14 -1
  134. data/lib/twilio-ruby/rest/chat/v2/service/channel/member.rb +18 -1
  135. data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +18 -1
  136. data/lib/twilio-ruby/rest/chat/v2/service/channel/webhook.rb +18 -1
  137. data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +18 -1
  138. data/lib/twilio-ruby/rest/chat/v2/service/role.rb +18 -1
  139. data/lib/twilio-ruby/rest/chat/v2/service/user/user_binding.rb +10 -1
  140. data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +14 -1
  141. data/lib/twilio-ruby/rest/chat/v2/service/user.rb +18 -1
  142. data/lib/twilio-ruby/rest/chat/v2/service.rb +18 -1
  143. data/lib/twilio-ruby/rest/chat/v3/channel.rb +4 -0
  144. data/lib/twilio-ruby/rest/client.rb +5 -0
  145. data/lib/twilio-ruby/rest/content/v1/content/approval_create.rb +7 -2
  146. data/lib/twilio-ruby/rest/content/v1/content/approval_fetch.rb +4 -0
  147. data/lib/twilio-ruby/rest/content/v1/content.rb +115 -101
  148. data/lib/twilio-ruby/rest/content/v1/content_and_approvals.rb +4 -1
  149. data/lib/twilio-ruby/rest/content/v1/legacy_content.rb +4 -1
  150. data/lib/twilio-ruby/rest/content/v2/content.rb +4 -1
  151. data/lib/twilio-ruby/rest/content/v2/content_and_approvals.rb +4 -1
  152. data/lib/twilio-ruby/rest/conversations/v1/address_configuration.rb +18 -1
  153. data/lib/twilio-ruby/rest/conversations/v1/configuration/webhook.rb +8 -0
  154. data/lib/twilio-ruby/rest/conversations/v1/configuration.rb +8 -0
  155. data/lib/twilio-ruby/rest/conversations/v1/conversation/message/delivery_receipt.rb +8 -1
  156. data/lib/twilio-ruby/rest/conversations/v1/conversation/message.rb +18 -1
  157. data/lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb +18 -1
  158. data/lib/twilio-ruby/rest/conversations/v1/conversation/webhook.rb +18 -1
  159. data/lib/twilio-ruby/rest/conversations/v1/conversation.rb +18 -1
  160. data/lib/twilio-ruby/rest/conversations/v1/conversation_with_participants.rb +4 -0
  161. data/lib/twilio-ruby/rest/conversations/v1/credential.rb +18 -1
  162. data/lib/twilio-ruby/rest/conversations/v1/participant_conversation.rb +4 -1
  163. data/lib/twilio-ruby/rest/conversations/v1/role.rb +18 -1
  164. data/lib/twilio-ruby/rest/conversations/v1/service/binding.rb +10 -1
  165. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb +8 -0
  166. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb +8 -0
  167. data/lib/twilio-ruby/rest/conversations/v1/service/configuration.rb +8 -0
  168. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message/delivery_receipt.rb +8 -1
  169. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message.rb +18 -1
  170. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/participant.rb +18 -1
  171. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/webhook.rb +18 -1
  172. data/lib/twilio-ruby/rest/conversations/v1/service/conversation.rb +18 -1
  173. data/lib/twilio-ruby/rest/conversations/v1/service/conversation_with_participants.rb +4 -0
  174. data/lib/twilio-ruby/rest/conversations/v1/service/participant_conversation.rb +4 -1
  175. data/lib/twilio-ruby/rest/conversations/v1/service/role.rb +18 -1
  176. data/lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb +14 -1
  177. data/lib/twilio-ruby/rest/conversations/v1/service/user.rb +18 -1
  178. data/lib/twilio-ruby/rest/conversations/v1/service.rb +14 -1
  179. data/lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb +14 -1
  180. data/lib/twilio-ruby/rest/conversations/v1/user.rb +18 -1
  181. data/lib/twilio-ruby/rest/events/v1/event_type.rb +8 -1
  182. data/lib/twilio-ruby/rest/events/v1/schema/schema_version.rb +8 -1
  183. data/lib/twilio-ruby/rest/events/v1/schema.rb +4 -0
  184. data/lib/twilio-ruby/rest/events/v1/sink/sink_test.rb +4 -0
  185. data/lib/twilio-ruby/rest/events/v1/sink/sink_validate.rb +4 -0
  186. data/lib/twilio-ruby/rest/events/v1/sink.rb +18 -1
  187. data/lib/twilio-ruby/rest/events/v1/subscription/subscribed_event.rb +18 -1
  188. data/lib/twilio-ruby/rest/events/v1/subscription.rb +18 -1
  189. data/lib/twilio-ruby/rest/flex_api/v1/assessments.rb +12 -1
  190. data/lib/twilio-ruby/rest/flex_api/v1/channel.rb +14 -1
  191. data/lib/twilio-ruby/rest/flex_api/v1/configuration.rb +8 -0
  192. data/lib/twilio-ruby/rest/flex_api/v1/flex_flow.rb +18 -1
  193. data/lib/twilio-ruby/rest/flex_api/v1/insights_assessments_comment.rb +8 -1
  194. data/lib/twilio-ruby/rest/flex_api/v1/insights_conversations.rb +4 -1
  195. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires.rb +18 -1
  196. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_category.rb +14 -1
  197. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_question.rb +14 -1
  198. data/lib/twilio-ruby/rest/flex_api/v1/insights_segments.rb +4 -1
  199. data/lib/twilio-ruby/rest/flex_api/v1/insights_session.rb +4 -0
  200. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_answer_sets.rb +4 -0
  201. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_comment.rb +4 -0
  202. data/lib/twilio-ruby/rest/flex_api/v1/insights_user_roles.rb +4 -0
  203. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_invite.rb +8 -1
  204. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_participant.rb +12 -1
  205. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb +12 -1
  206. data/lib/twilio-ruby/rest/flex_api/v1/interaction.rb +8 -0
  207. data/lib/twilio-ruby/rest/flex_api/v1/plugin/plugin_versions.rb +12 -1
  208. data/lib/twilio-ruby/rest/flex_api/v1/plugin.rb +16 -1
  209. data/lib/twilio-ruby/rest/flex_api/v1/plugin_archive.rb +4 -0
  210. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration/configured_plugin.rb +8 -1
  211. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration.rb +12 -1
  212. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration_archive.rb +4 -0
  213. data/lib/twilio-ruby/rest/flex_api/v1/plugin_release.rb +12 -1
  214. data/lib/twilio-ruby/rest/flex_api/v1/plugin_version_archive.rb +4 -0
  215. data/lib/twilio-ruby/rest/flex_api/v1/provisioning_status.rb +4 -0
  216. data/lib/twilio-ruby/rest/flex_api/v1/web_channel.rb +18 -1
  217. data/lib/twilio-ruby/rest/flex_api/v2/flex_user.rb +8 -0
  218. data/lib/twilio-ruby/rest/flex_api/v2/web_channels.rb +4 -0
  219. data/lib/twilio-ruby/rest/frontline_api/v1/user.rb +8 -0
  220. data/lib/twilio-ruby/rest/iam/v1/api_key.rb +10 -0
  221. data/lib/twilio-ruby/rest/iam/v1/get_api_keys.rb +4 -1
  222. data/lib/twilio-ruby/rest/iam/v1/{key.rb → new_api_key.rb} +24 -20
  223. data/lib/twilio-ruby/rest/iam/v1.rb +4 -4
  224. data/lib/twilio-ruby/rest/insights/v1/call/annotation.rb +8 -0
  225. data/lib/twilio-ruby/rest/insights/v1/call/call_summary.rb +4 -0
  226. data/lib/twilio-ruby/rest/insights/v1/call/event.rb +4 -1
  227. data/lib/twilio-ruby/rest/insights/v1/call/metric.rb +4 -1
  228. data/lib/twilio-ruby/rest/insights/v1/call.rb +4 -0
  229. data/lib/twilio-ruby/rest/insights/v1/call_summaries.rb +4 -1
  230. data/lib/twilio-ruby/rest/insights/v1/conference/conference_participant.rb +8 -1
  231. data/lib/twilio-ruby/rest/insights/v1/conference.rb +8 -1
  232. data/lib/twilio-ruby/rest/insights/v1/room/participant.rb +8 -1
  233. data/lib/twilio-ruby/rest/insights/v1/room.rb +8 -1
  234. data/lib/twilio-ruby/rest/insights/v1/setting.rb +8 -0
  235. data/lib/twilio-ruby/rest/intelligence/v2/custom_operator.rb +18 -1
  236. data/lib/twilio-ruby/rest/intelligence/v2/operator.rb +8 -1
  237. data/lib/twilio-ruby/rest/intelligence/v2/operator_attachment.rb +6 -0
  238. data/lib/twilio-ruby/rest/intelligence/v2/operator_attachments.rb +4 -0
  239. data/lib/twilio-ruby/rest/intelligence/v2/operator_type.rb +8 -1
  240. data/lib/twilio-ruby/rest/intelligence/v2/prebuilt_operator.rb +8 -1
  241. data/lib/twilio-ruby/rest/intelligence/v2/service.rb +18 -1
  242. data/lib/twilio-ruby/rest/intelligence/v2/transcript/media.rb +4 -0
  243. data/lib/twilio-ruby/rest/intelligence/v2/transcript/operator_result.rb +8 -1
  244. data/lib/twilio-ruby/rest/intelligence/v2/transcript/sentence.rb +4 -1
  245. data/lib/twilio-ruby/rest/intelligence/v2/transcript.rb +14 -1
  246. data/lib/twilio-ruby/rest/ip_messaging/v1/credential.rb +18 -1
  247. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/invite.rb +14 -1
  248. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb +18 -1
  249. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +18 -1
  250. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +18 -1
  251. data/lib/twilio-ruby/rest/ip_messaging/v1/service/role.rb +18 -1
  252. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user/user_channel.rb +4 -1
  253. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +18 -1
  254. data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +18 -1
  255. data/lib/twilio-ruby/rest/ip_messaging/v2/credential.rb +18 -1
  256. data/lib/twilio-ruby/rest/ip_messaging/v2/service/binding.rb +10 -1
  257. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/invite.rb +14 -1
  258. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb +18 -1
  259. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +18 -1
  260. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/webhook.rb +18 -1
  261. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +18 -1
  262. data/lib/twilio-ruby/rest/ip_messaging/v2/service/role.rb +18 -1
  263. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_binding.rb +10 -1
  264. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_channel.rb +14 -1
  265. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +18 -1
  266. data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +18 -1
  267. data/lib/twilio-ruby/rest/lookups/v1/phone_number.rb +4 -0
  268. data/lib/twilio-ruby/rest/lookups/v2/phone_number.rb +4 -0
  269. data/lib/twilio-ruby/rest/marketplace/v1/available_add_on/available_add_on_extension.rb +8 -1
  270. data/lib/twilio-ruby/rest/marketplace/v1/available_add_on.rb +8 -1
  271. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on/installed_add_on_extension.rb +12 -1
  272. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on/installed_add_on_usage.rb +7 -2
  273. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on.rb +18 -1
  274. data/lib/twilio-ruby/rest/marketplace/v1/module_data_management.rb +8 -0
  275. data/lib/twilio-ruby/rest/marketplace/v1/referral_conversion.rb +6 -1
  276. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_registration_otp.rb +4 -0
  277. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_vetting.rb +12 -1
  278. data/lib/twilio-ruby/rest/messaging/v1/brand_registration.rb +16 -1
  279. data/lib/twilio-ruby/rest/messaging/v1/deactivations.rb +4 -0
  280. data/lib/twilio-ruby/rest/messaging/v1/domain_certs.rb +10 -0
  281. data/lib/twilio-ruby/rest/messaging/v1/domain_config.rb +8 -0
  282. data/lib/twilio-ruby/rest/messaging/v1/domain_config_messaging_service.rb +4 -0
  283. data/lib/twilio-ruby/rest/messaging/v1/external_campaign.rb +4 -0
  284. data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service.rb +6 -0
  285. data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service_domain_association.rb +4 -0
  286. data/lib/twilio-ruby/rest/messaging/v1/request_managed_cert.rb +4 -0
  287. data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +14 -1
  288. data/lib/twilio-ruby/rest/messaging/v1/service/channel_sender.rb +14 -1
  289. data/lib/twilio-ruby/rest/messaging/v1/service/phone_number.rb +14 -1
  290. data/lib/twilio-ruby/rest/messaging/v1/service/short_code.rb +14 -1
  291. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person.rb +18 -1
  292. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person_usecase.rb +4 -0
  293. data/lib/twilio-ruby/rest/messaging/v1/service.rb +18 -1
  294. data/lib/twilio-ruby/rest/messaging/v1/tollfree_verification.rb +18 -1
  295. data/lib/twilio-ruby/rest/messaging/v1/usecase.rb +4 -0
  296. data/lib/twilio-ruby/rest/microvisor/v1/account_config.rb +18 -1
  297. data/lib/twilio-ruby/rest/microvisor/v1/account_secret.rb +18 -1
  298. data/lib/twilio-ruby/rest/microvisor/v1/app/app_manifest.rb +4 -0
  299. data/lib/twilio-ruby/rest/microvisor/v1/app.rb +10 -1
  300. data/lib/twilio-ruby/rest/microvisor/v1/device/device_config.rb +18 -1
  301. data/lib/twilio-ruby/rest/microvisor/v1/device/device_secret.rb +18 -1
  302. data/lib/twilio-ruby/rest/microvisor/v1/device.rb +12 -1
  303. data/lib/twilio-ruby/rest/monitor/v1/alert.rb +8 -1
  304. data/lib/twilio-ruby/rest/monitor/v1/event.rb +8 -1
  305. data/lib/twilio-ruby/rest/notify/v1/credential.rb +18 -1
  306. data/lib/twilio-ruby/rest/notify/v1/service/binding.rb +14 -1
  307. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +4 -0
  308. data/lib/twilio-ruby/rest/notify/v1/service.rb +18 -1
  309. data/lib/twilio-ruby/rest/numbers/v1/bulk_eligibility.rb +8 -0
  310. data/lib/twilio-ruby/rest/numbers/v1/eligibility.rb +4 -0
  311. data/lib/twilio-ruby/rest/numbers/v1/porting_port_in.rb +10 -0
  312. data/lib/twilio-ruby/rest/numbers/v1/porting_port_in_phone_number.rb +6 -0
  313. data/lib/twilio-ruby/rest/numbers/v1/porting_portability.rb +4 -0
  314. data/lib/twilio-ruby/rest/numbers/v1/porting_webhook_configuration.rb +4 -0
  315. data/lib/twilio-ruby/rest/numbers/v1/porting_webhook_configuration_delete.rb +2 -0
  316. data/lib/twilio-ruby/rest/numbers/v1/signing_request_configuration.rb +8 -1
  317. data/lib/twilio-ruby/rest/numbers/v1/webhook.rb +4 -0
  318. data/lib/twilio-ruby/rest/numbers/v2/authorization_document/dependent_hosted_number_order.rb +4 -1
  319. data/lib/twilio-ruby/rest/numbers/v2/authorization_document.rb +14 -1
  320. data/lib/twilio-ruby/rest/numbers/v2/bulk_hosted_number_order.rb +8 -0
  321. data/lib/twilio-ruby/rest/numbers/v2/bundle_clone.rb +4 -0
  322. data/lib/twilio-ruby/rest/numbers/v2/hosted_number_order.rb +108 -2
  323. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/bundle_copy.rb +8 -1
  324. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/evaluation.rb +12 -1
  325. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/item_assignment.rb +14 -1
  326. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/replace_items.rb +4 -0
  327. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle.rb +18 -1
  328. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user.rb +18 -1
  329. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user_type.rb +8 -1
  330. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/regulation.rb +8 -1
  331. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document.rb +18 -1
  332. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document_type.rb +8 -1
  333. data/lib/twilio-ruby/rest/oauth/v1/authorize.rb +4 -0
  334. data/lib/twilio-ruby/rest/oauth/v1/token.rb +4 -0
  335. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document/dependent_hosted_number_order.rb +4 -1
  336. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document.rb +16 -1
  337. data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +18 -1
  338. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on/available_add_on_extension.rb +8 -1
  339. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on.rb +8 -1
  340. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on/installed_add_on_extension.rb +12 -1
  341. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on.rb +18 -1
  342. data/lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb +14 -1
  343. data/lib/twilio-ruby/rest/preview/sync/service/document.rb +19 -2
  344. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_item.rb +18 -1
  345. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_permission.rb +14 -1
  346. data/lib/twilio-ruby/rest/preview/sync/service/sync_list.rb +16 -3
  347. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_item.rb +18 -1
  348. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_permission.rb +14 -1
  349. data/lib/twilio-ruby/rest/preview/sync/service/sync_map.rb +16 -3
  350. data/lib/twilio-ruby/rest/preview/sync/service.rb +20 -3
  351. data/lib/twilio-ruby/rest/preview/wireless/command.rb +12 -1
  352. data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +18 -1
  353. data/lib/twilio-ruby/rest/preview/wireless/sim/usage.rb +4 -0
  354. data/lib/twilio-ruby/rest/preview/wireless/sim.rb +12 -1
  355. data/lib/twilio-ruby/rest/preview_iam/v1/authorize.rb +148 -0
  356. data/lib/twilio-ruby/rest/preview_iam/v1/token.rb +186 -0
  357. data/lib/twilio-ruby/rest/preview_iam/v1.rb +46 -0
  358. data/lib/twilio-ruby/rest/preview_iam/versionless/organization/account.rb +309 -0
  359. data/lib/twilio-ruby/rest/preview_iam/versionless/organization/role_assignment.rb +375 -0
  360. data/lib/twilio-ruby/rest/preview_iam/versionless/organization/user.rb +530 -0
  361. data/lib/twilio-ruby/rest/preview_iam/versionless/organization.rb +277 -0
  362. data/lib/twilio-ruby/rest/preview_iam/versionless.rb +49 -0
  363. data/lib/twilio-ruby/rest/preview_iam.rb +9 -0
  364. data/lib/twilio-ruby/rest/preview_iam_base.rb +38 -0
  365. data/lib/twilio-ruby/rest/pricing/v1/messaging/country.rb +8 -1
  366. data/lib/twilio-ruby/rest/pricing/v1/phone_number/country.rb +8 -1
  367. data/lib/twilio-ruby/rest/pricing/v1/voice/country.rb +8 -1
  368. data/lib/twilio-ruby/rest/pricing/v1/voice/number.rb +4 -0
  369. data/lib/twilio-ruby/rest/pricing/v2/country.rb +8 -1
  370. data/lib/twilio-ruby/rest/pricing/v2/number.rb +4 -0
  371. data/lib/twilio-ruby/rest/pricing/v2/voice/country.rb +8 -1
  372. data/lib/twilio-ruby/rest/pricing/v2/voice/number.rb +4 -0
  373. data/lib/twilio-ruby/rest/proxy/v1/service/phone_number.rb +18 -1
  374. data/lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb +10 -1
  375. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant/message_interaction.rb +12 -1
  376. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb +14 -1
  377. data/lib/twilio-ruby/rest/proxy/v1/service/session.rb +18 -1
  378. data/lib/twilio-ruby/rest/proxy/v1/service/short_code.rb +18 -1
  379. data/lib/twilio-ruby/rest/proxy/v1/service.rb +18 -1
  380. data/lib/twilio-ruby/rest/routes/v2/phone_number.rb +8 -0
  381. data/lib/twilio-ruby/rest/routes/v2/sip_domain.rb +8 -0
  382. data/lib/twilio-ruby/rest/routes/v2/trunk.rb +8 -0
  383. data/lib/twilio-ruby/rest/serverless/v1/service/asset/asset_version.rb +8 -1
  384. data/lib/twilio-ruby/rest/serverless/v1/service/asset.rb +18 -1
  385. data/lib/twilio-ruby/rest/serverless/v1/service/build/build_status.rb +4 -0
  386. data/lib/twilio-ruby/rest/serverless/v1/service/build.rb +14 -1
  387. data/lib/twilio-ruby/rest/serverless/v1/service/environment/deployment.rb +12 -1
  388. data/lib/twilio-ruby/rest/serverless/v1/service/environment/log.rb +8 -1
  389. data/lib/twilio-ruby/rest/serverless/v1/service/environment/variable.rb +18 -1
  390. data/lib/twilio-ruby/rest/serverless/v1/service/environment.rb +14 -1
  391. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version/function_version_content.rb +4 -0
  392. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version.rb +8 -1
  393. data/lib/twilio-ruby/rest/serverless/v1/service/function.rb +18 -1
  394. data/lib/twilio-ruby/rest/serverless/v1/service.rb +18 -1
  395. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/engagement_context.rb +4 -0
  396. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step/step_context.rb +4 -0
  397. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb +8 -1
  398. data/lib/twilio-ruby/rest/studio/v1/flow/engagement.rb +14 -1
  399. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_context.rb +4 -0
  400. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step/execution_step_context.rb +4 -0
  401. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step.rb +8 -1
  402. data/lib/twilio-ruby/rest/studio/v1/flow/execution.rb +18 -1
  403. data/lib/twilio-ruby/rest/studio/v1/flow.rb +10 -1
  404. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_context.rb +4 -0
  405. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step/execution_step_context.rb +4 -0
  406. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step.rb +8 -1
  407. data/lib/twilio-ruby/rest/studio/v2/flow/execution.rb +18 -1
  408. data/lib/twilio-ruby/rest/studio/v2/flow/flow_revision.rb +8 -1
  409. data/lib/twilio-ruby/rest/studio/v2/flow/flow_test_user.rb +8 -0
  410. data/lib/twilio-ruby/rest/studio/v2/flow.rb +18 -1
  411. data/lib/twilio-ruby/rest/studio/v2/flow_validate.rb +4 -0
  412. data/lib/twilio-ruby/rest/supersim/v1/esim_profile.rb +12 -1
  413. data/lib/twilio-ruby/rest/supersim/v1/fleet.rb +16 -1
  414. data/lib/twilio-ruby/rest/supersim/v1/ip_command.rb +12 -1
  415. data/lib/twilio-ruby/rest/supersim/v1/network.rb +8 -1
  416. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile/network_access_profile_network.rb +14 -1
  417. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile.rb +16 -1
  418. data/lib/twilio-ruby/rest/supersim/v1/settings_update.rb +4 -1
  419. data/lib/twilio-ruby/rest/supersim/v1/sim/billing_period.rb +4 -1
  420. data/lib/twilio-ruby/rest/supersim/v1/sim/sim_ip_address.rb +4 -1
  421. data/lib/twilio-ruby/rest/supersim/v1/sim.rb +16 -1
  422. data/lib/twilio-ruby/rest/supersim/v1/sms_command.rb +12 -1
  423. data/lib/twilio-ruby/rest/supersim/v1/usage_record.rb +4 -1
  424. data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +14 -1
  425. data/lib/twilio-ruby/rest/sync/v1/service/document.rb +19 -2
  426. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +18 -1
  427. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +14 -1
  428. data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +20 -3
  429. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +18 -1
  430. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +14 -1
  431. data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +20 -3
  432. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream/stream_message.rb +4 -0
  433. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream.rb +19 -2
  434. data/lib/twilio-ruby/rest/sync/v1/service.rb +21 -4
  435. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/activity.rb +18 -1
  436. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +8 -1
  437. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +12 -1
  438. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +18 -1
  439. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_channel.rb +18 -1
  440. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_bulk_real_time_statistics.rb +4 -0
  441. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics.rb +4 -0
  442. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics.rb +4 -0
  443. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_statistics.rb +4 -0
  444. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queues_statistics.rb +4 -1
  445. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +18 -1
  446. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +12 -1
  447. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_channel.rb +12 -1
  448. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_statistics.rb +4 -0
  449. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_cumulative_statistics.rb +4 -0
  450. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_real_time_statistics.rb +4 -0
  451. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_statistics.rb +4 -0
  452. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +18 -1
  453. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics.rb +4 -0
  454. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_real_time_statistics.rb +4 -0
  455. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_statistics.rb +4 -0
  456. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +18 -1
  457. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_cumulative_statistics.rb +4 -0
  458. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_real_time_statistics.rb +4 -0
  459. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_statistics.rb +4 -0
  460. data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +18 -1
  461. data/lib/twilio-ruby/rest/trunking/v1/trunk/credential_list.rb +14 -1
  462. data/lib/twilio-ruby/rest/trunking/v1/trunk/ip_access_control_list.rb +14 -1
  463. data/lib/twilio-ruby/rest/trunking/v1/trunk/origination_url.rb +18 -1
  464. data/lib/twilio-ruby/rest/trunking/v1/trunk/phone_number.rb +14 -1
  465. data/lib/twilio-ruby/rest/trunking/v1/trunk/recording.rb +8 -0
  466. data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +18 -1
  467. data/lib/twilio-ruby/rest/trusthub/v1/compliance_inquiries.rb +8 -0
  468. data/lib/twilio-ruby/rest/trusthub/v1/compliance_registration_inquiries.rb +8 -0
  469. data/lib/twilio-ruby/rest/trusthub/v1/compliance_tollfree_inquiries.rb +4 -0
  470. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_channel_endpoint_assignment.rb +14 -1
  471. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_entity_assignments.rb +14 -1
  472. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_evaluations.rb +12 -1
  473. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles.rb +18 -1
  474. data/lib/twilio-ruby/rest/trusthub/v1/end_user.rb +18 -1
  475. data/lib/twilio-ruby/rest/trusthub/v1/end_user_type.rb +8 -1
  476. data/lib/twilio-ruby/rest/trusthub/v1/policies.rb +8 -1
  477. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document.rb +18 -1
  478. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document_type.rb +8 -1
  479. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_channel_endpoint_assignment.rb +14 -1
  480. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_entity_assignments.rb +14 -1
  481. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_evaluations.rb +12 -1
  482. data/lib/twilio-ruby/rest/trusthub/v1/trust_products.rb +18 -1
  483. data/lib/twilio-ruby/rest/verify/v2/form.rb +4 -0
  484. data/lib/twilio-ruby/rest/verify/v2/safelist.rb +10 -0
  485. data/lib/twilio-ruby/rest/verify/v2/service/access_token.rb +8 -0
  486. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge/notification.rb +4 -0
  487. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb +16 -1
  488. data/lib/twilio-ruby/rest/verify/v2/service/entity/factor.rb +14 -1
  489. data/lib/twilio-ruby/rest/verify/v2/service/entity/new_factor.rb +4 -0
  490. data/lib/twilio-ruby/rest/verify/v2/service/entity.rb +14 -1
  491. data/lib/twilio-ruby/rest/verify/v2/service/messaging_configuration.rb +18 -1
  492. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb +18 -1
  493. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit.rb +18 -1
  494. data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +12 -0
  495. data/lib/twilio-ruby/rest/verify/v2/service/verification_check.rb +4 -0
  496. data/lib/twilio-ruby/rest/verify/v2/service/webhook.rb +18 -1
  497. data/lib/twilio-ruby/rest/verify/v2/service.rb +18 -1
  498. data/lib/twilio-ruby/rest/verify/v2/template.rb +4 -1
  499. data/lib/twilio-ruby/rest/verify/v2/verification_attempt.rb +8 -1
  500. data/lib/twilio-ruby/rest/verify/v2/verification_attempts_summary.rb +4 -0
  501. data/lib/twilio-ruby/rest/video/v1/composition.rb +14 -1
  502. data/lib/twilio-ruby/rest/video/v1/composition_hook.rb +18 -1
  503. data/lib/twilio-ruby/rest/video/v1/composition_settings.rb +8 -0
  504. data/lib/twilio-ruby/rest/video/v1/recording.rb +10 -1
  505. data/lib/twilio-ruby/rest/video/v1/recording_settings.rb +8 -0
  506. data/lib/twilio-ruby/rest/video/v1/room/participant/anonymize.rb +4 -0
  507. data/lib/twilio-ruby/rest/video/v1/room/participant/published_track.rb +8 -1
  508. data/lib/twilio-ruby/rest/video/v1/room/participant/subscribe_rules.rb +8 -0
  509. data/lib/twilio-ruby/rest/video/v1/room/participant/subscribed_track.rb +8 -1
  510. data/lib/twilio-ruby/rest/video/v1/room/participant.rb +12 -1
  511. data/lib/twilio-ruby/rest/video/v1/room/recording_rules.rb +8 -0
  512. data/lib/twilio-ruby/rest/video/v1/room/room_recording.rb +10 -1
  513. data/lib/twilio-ruby/rest/video/v1/room.rb +16 -1
  514. data/lib/twilio-ruby/rest/voice/v1/archived_call.rb +2 -0
  515. data/lib/twilio-ruby/rest/voice/v1/byoc_trunk.rb +18 -1
  516. data/lib/twilio-ruby/rest/voice/v1/connection_policy/connection_policy_target.rb +18 -1
  517. data/lib/twilio-ruby/rest/voice/v1/connection_policy.rb +18 -1
  518. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/bulk_country_update.rb +4 -0
  519. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country/highrisk_special_prefix.rb +4 -1
  520. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country.rb +8 -1
  521. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/settings.rb +8 -0
  522. data/lib/twilio-ruby/rest/voice/v1/ip_record.rb +18 -1
  523. data/lib/twilio-ruby/rest/voice/v1/source_ip_mapping.rb +18 -1
  524. data/lib/twilio-ruby/rest/wireless/v1/command.rb +14 -1
  525. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +18 -1
  526. data/lib/twilio-ruby/rest/wireless/v1/sim/data_session.rb +4 -1
  527. data/lib/twilio-ruby/rest/wireless/v1/sim/usage_record.rb +4 -1
  528. data/lib/twilio-ruby/rest/wireless/v1/sim.rb +14 -1
  529. data/lib/twilio-ruby/rest/wireless/v1/usage_record.rb +4 -1
  530. data/lib/twilio-ruby/twiml/voice_response.rb +136 -6
  531. data/lib/twilio-ruby/version.rb +1 -1
  532. metadata +26 -4
@@ -0,0 +1,309 @@
1
+ ##
2
+ # This code was generated by
3
+ # ___ _ _ _ _ _ _ ____ ____ ____ _ ____ ____ _ _ ____ ____ ____ ___ __ __
4
+ # | | | | | | | | | __ | | |__| | __ | __ |___ |\ | |___ |__/ |__| | | | |__/
5
+ # | |_|_| | |___ | |__| |__| | | | |__] |___ | \| |___ | \ | | | |__| | \
6
+ #
7
+ # Organization Public API
8
+ # No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
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 PreviewIam < PreviewIamBase
19
+ class Versionless < Version
20
+ class OrganizationContext < InstanceContext
21
+
22
+ class AccountList < ListResource
23
+
24
+ ##
25
+ # Initialize the AccountList
26
+ # @param [Version] version Version that contains the resource
27
+ # @return [AccountList] AccountList
28
+ def initialize(version, organization_sid: nil)
29
+ super(version)
30
+ # Path Solution
31
+ @solution = { organization_sid: organization_sid }
32
+ @uri = "/#{@solution[:organization_sid]}/Accounts"
33
+
34
+ end
35
+
36
+ ##
37
+ # Lists AccountInstance records from the API as a list.
38
+ # Unlike stream(), this operation is eager and will load `limit` records into
39
+ # memory before returning.
40
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
41
+ # guarantees to never return more than limit. Default is no limit
42
+ # @param [Integer] page_size Number of records to fetch per request, when
43
+ # not set will use the default value of 50 records. If no page_size is defined
44
+ # but a limit is defined, stream() will attempt to read the limit with the most
45
+ # efficient page size, i.e. min(limit, 1000)
46
+ # @return [Array] Array of up to limit results
47
+ def list(limit: nil, page_size: nil)
48
+ self.stream(
49
+ limit: limit,
50
+ page_size: page_size
51
+ ).entries
52
+ end
53
+
54
+ ##
55
+ # Streams Instance records from the API as an Enumerable.
56
+ # This operation lazily loads records as efficiently as possible until the limit
57
+ # is reached.
58
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
59
+ # guarantees to never return more than limit. Default is no limit
60
+ # @param [Integer] page_size Number of records to fetch per request, when
61
+ # not set will use the default value of 50 records. If no page_size is defined
62
+ # but a limit is defined, stream() will attempt to read the limit with the most
63
+ # efficient page size, i.e. min(limit, 1000)
64
+ # @return [Enumerable] Enumerable that will yield up to limit results
65
+ def stream(limit: nil, page_size: nil)
66
+ limits = @version.read_limits(limit, page_size)
67
+
68
+ page = self.page(
69
+ page_size: limits[:page_size], )
70
+
71
+ @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
72
+ end
73
+
74
+ ##
75
+ # When passed a block, yields AccountInstance records from the API.
76
+ # This operation lazily loads records as efficiently as possible until the limit
77
+ # is reached.
78
+ def each
79
+ limits = @version.read_limits
80
+
81
+ page = self.page(page_size: limits[:page_size], )
82
+
83
+ @version.stream(page,
84
+ limit: limits[:limit],
85
+ page_limit: limits[:page_limit]).each {|x| yield x}
86
+ end
87
+
88
+ ##
89
+ # Retrieve a single page of AccountInstance records from the API.
90
+ # Request is executed immediately.
91
+ # @param [String] page_token PageToken provided by the API
92
+ # @param [Integer] page_number Page Number, this value is simply for client state
93
+ # @param [Integer] page_size Number of records to return, defaults to 50
94
+ # @return [Page] Page of AccountInstance
95
+ def page(page_token: :unset, page_number: :unset, page_size: :unset)
96
+ params = Twilio::Values.of({
97
+ 'PageToken' => page_token,
98
+ 'Page' => page_number,
99
+ 'PageSize' => page_size,
100
+ })
101
+ headers = Twilio::Values.of({})
102
+
103
+
104
+
105
+ response = @version.page('GET', @uri, params: params, headers: headers)
106
+
107
+ AccountPage.new(@version, response, @solution)
108
+ end
109
+
110
+ ##
111
+ # Retrieve a single page of AccountInstance records from the API.
112
+ # Request is executed immediately.
113
+ # @param [String] target_url API-generated URL for the requested results page
114
+ # @return [Page] Page of AccountInstance
115
+ def get_page(target_url)
116
+ response = @version.domain.request(
117
+ 'GET',
118
+ target_url
119
+ )
120
+ AccountPage.new(@version, response, @solution)
121
+ end
122
+
123
+
124
+
125
+ # Provide a user friendly representation
126
+ def to_s
127
+ '#<Twilio.PreviewIam.Versionless.AccountList>'
128
+ end
129
+ end
130
+
131
+
132
+ class AccountContext < InstanceContext
133
+ ##
134
+ # Initialize the AccountContext
135
+ # @param [Version] version Version that contains the resource
136
+ # @param [String] organization_sid
137
+ # @param [String] account_sid
138
+ # @return [AccountContext] AccountContext
139
+ def initialize(version, organization_sid, account_sid)
140
+ super(version)
141
+
142
+ # Path Solution
143
+ @solution = { organization_sid: organization_sid, account_sid: account_sid, }
144
+ @uri = "/#{@solution[:organization_sid]}/Accounts/#{@solution[:account_sid]}"
145
+
146
+
147
+ end
148
+ ##
149
+ # Fetch the AccountInstance
150
+ # @return [AccountInstance] Fetched AccountInstance
151
+ def fetch
152
+
153
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
154
+
155
+
156
+
157
+
158
+
159
+ payload = @version.fetch('GET', @uri, headers: headers)
160
+ AccountInstance.new(
161
+ @version,
162
+ payload,
163
+ organization_sid: @solution[:organization_sid],
164
+ account_sid: @solution[:account_sid],
165
+ )
166
+ end
167
+
168
+
169
+ ##
170
+ # Provide a user friendly representation
171
+ def to_s
172
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
173
+ "#<Twilio.PreviewIam.Versionless.AccountContext #{context}>"
174
+ end
175
+
176
+ ##
177
+ # Provide a detailed, user friendly representation
178
+ def inspect
179
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
180
+ "#<Twilio.PreviewIam.Versionless.AccountContext #{context}>"
181
+ end
182
+ end
183
+
184
+ class AccountPage < Page
185
+ ##
186
+ # Initialize the AccountPage
187
+ # @param [Version] version Version that contains the resource
188
+ # @param [Response] response Response from the API
189
+ # @param [Hash] solution Path solution for the resource
190
+ # @return [AccountPage] AccountPage
191
+ def initialize(version, response, solution)
192
+ super(version, response)
193
+
194
+ # Path Solution
195
+ @solution = solution
196
+ end
197
+
198
+ ##
199
+ # Build an instance of AccountInstance
200
+ # @param [Hash] payload Payload response from the API
201
+ # @return [AccountInstance] AccountInstance
202
+ def get_instance(payload)
203
+ AccountInstance.new(@version, payload, organization_sid: @solution[:organization_sid])
204
+ end
205
+
206
+ ##
207
+ # Provide a user friendly representation
208
+ def to_s
209
+ '<Twilio.PreviewIam.Versionless.AccountPage>'
210
+ end
211
+ end
212
+ class AccountInstance < InstanceResource
213
+ ##
214
+ # Initialize the AccountInstance
215
+ # @param [Version] version Version that contains the resource
216
+ # @param [Hash] payload payload that contains response from Twilio
217
+ # @param [String] account_sid The SID of the
218
+ # {Account}[https://www.twilio.com/docs/iam/api/account] that created this Account
219
+ # resource.
220
+ # @param [String] sid The SID of the Call resource to fetch.
221
+ # @return [AccountInstance] AccountInstance
222
+ def initialize(version, payload , organization_sid: nil, account_sid: nil)
223
+ super(version)
224
+
225
+ # Marshaled Properties
226
+ @properties = {
227
+ 'account_sid' => payload['account_sid'],
228
+ 'friendly_name' => payload['friendly_name'],
229
+ 'status' => payload['status'],
230
+ 'owner_sid' => payload['owner_sid'],
231
+ 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
232
+ }
233
+
234
+ # Context
235
+ @instance_context = nil
236
+ @params = { 'organization_sid' => organization_sid || @properties['organization_sid'] ,'account_sid' => account_sid , }
237
+ end
238
+
239
+ ##
240
+ # Generate an instance context for the instance, the context is capable of
241
+ # performing various actions. All instance actions are proxied to the context
242
+ # @return [AccountContext] CallContext for this CallInstance
243
+ def context
244
+ unless @instance_context
245
+ @instance_context = AccountContext.new(@version , @params['organization_sid'], @params['account_sid'])
246
+ end
247
+ @instance_context
248
+ end
249
+
250
+ ##
251
+ # @return [String] Twilio account sid
252
+ def account_sid
253
+ @properties['account_sid']
254
+ end
255
+
256
+ ##
257
+ # @return [String] Account friendly name
258
+ def friendly_name
259
+ @properties['friendly_name']
260
+ end
261
+
262
+ ##
263
+ # @return [String] Account status
264
+ def status
265
+ @properties['status']
266
+ end
267
+
268
+ ##
269
+ # @return [String] Twilio account sid
270
+ def owner_sid
271
+ @properties['owner_sid']
272
+ end
273
+
274
+ ##
275
+ # @return [Time] The date and time when the account was created in the system
276
+ def date_created
277
+ @properties['date_created']
278
+ end
279
+
280
+ ##
281
+ # Fetch the AccountInstance
282
+ # @return [AccountInstance] Fetched AccountInstance
283
+ def fetch
284
+
285
+ context.fetch
286
+ end
287
+
288
+ ##
289
+ # Provide a user friendly representation
290
+ def to_s
291
+ values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
292
+ "<Twilio.PreviewIam.Versionless.AccountInstance #{values}>"
293
+ end
294
+
295
+ ##
296
+ # Provide a detailed, user friendly representation
297
+ def inspect
298
+ values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
299
+ "<Twilio.PreviewIam.Versionless.AccountInstance #{values}>"
300
+ end
301
+ end
302
+
303
+ end
304
+ end
305
+ end
306
+ end
307
+ end
308
+
309
+
@@ -0,0 +1,375 @@
1
+ ##
2
+ # This code was generated by
3
+ # ___ _ _ _ _ _ _ ____ ____ ____ _ ____ ____ _ _ ____ ____ ____ ___ __ __
4
+ # | | | | | | | | | __ | | |__| | __ | __ |___ |\ | |___ |__/ |__| | | | |__/
5
+ # | |_|_| | |___ | |__| |__| | | | |__] |___ | \| |___ | \ | | | |__| | \
6
+ #
7
+ # Organization Public API
8
+ # No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
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 PreviewIam < PreviewIamBase
19
+ class Versionless < Version
20
+ class OrganizationContext < InstanceContext
21
+
22
+ class RoleAssignmentList < ListResource
23
+
24
+ class PublicApiCreateRoleAssignmentRequest
25
+ # @param [role_sid]: [String] Twilio Role Sid representing assigned role
26
+ # @param [scope]: [String] Twilio Sid representing scope of this assignment
27
+ # @param [identity]: [String] Twilio Sid representing identity of this assignment
28
+ attr_accessor :role_sid, :scope, :identity
29
+ def initialize(payload)
30
+ @role_sid = payload["role_sid"]
31
+ @scope = payload["scope"]
32
+ @identity = payload["identity"]
33
+ end
34
+ def to_json(options = {})
35
+ {
36
+ "role_sid": @role_sid,
37
+ "scope": @scope,
38
+ "identity": @identity,
39
+ }.to_json(options)
40
+ end
41
+ end
42
+
43
+
44
+ ##
45
+ # Initialize the RoleAssignmentList
46
+ # @param [Version] version Version that contains the resource
47
+ # @return [RoleAssignmentList] RoleAssignmentList
48
+ def initialize(version, organization_sid: nil)
49
+ super(version)
50
+ # Path Solution
51
+ @solution = { organization_sid: organization_sid }
52
+ @uri = "/#{@solution[:organization_sid]}/RoleAssignments"
53
+
54
+ end
55
+ ##
56
+ # Create the RoleAssignmentInstance
57
+ # @param [PublicApiCreateRoleAssignmentRequest] public_api_create_role_assignment_request
58
+ # @return [RoleAssignmentInstance] Created RoleAssignmentInstance
59
+ def create(public_api_create_role_assignment_request: nil
60
+ )
61
+
62
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
63
+ headers['Content-Type'] = 'application/json'
64
+
65
+
66
+
67
+ headers['Accept'] = '*/*'
68
+ payload = @version.create('POST', @uri, headers: headers, data: public_api_create_role_assignment_request.to_json)
69
+ RoleAssignmentInstance.new(
70
+ @version,
71
+ payload,
72
+ organization_sid: @solution[:organization_sid],
73
+ )
74
+ end
75
+
76
+
77
+ ##
78
+ # Lists RoleAssignmentInstance records from the API as a list.
79
+ # Unlike stream(), this operation is eager and will load `limit` records into
80
+ # memory before returning.
81
+ # @param [String] identity
82
+ # @param [String] scope
83
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
84
+ # guarantees to never return more than limit. Default is no limit
85
+ # @param [Integer] page_size Number of records to fetch per request, when
86
+ # not set will use the default value of 50 records. If no page_size is defined
87
+ # but a limit is defined, stream() will attempt to read the limit with the most
88
+ # efficient page size, i.e. min(limit, 1000)
89
+ # @return [Array] Array of up to limit results
90
+ def list(identity: :unset, scope: :unset, limit: nil, page_size: nil)
91
+ self.stream(
92
+ identity: identity,
93
+ scope: scope,
94
+ limit: limit,
95
+ page_size: page_size
96
+ ).entries
97
+ end
98
+
99
+ ##
100
+ # Streams Instance records from the API as an Enumerable.
101
+ # This operation lazily loads records as efficiently as possible until the limit
102
+ # is reached.
103
+ # @param [String] identity
104
+ # @param [String] scope
105
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
106
+ # guarantees to never return more than limit. Default is no limit
107
+ # @param [Integer] page_size Number of records to fetch per request, when
108
+ # not set will use the default value of 50 records. If no page_size is defined
109
+ # but a limit is defined, stream() will attempt to read the limit with the most
110
+ # efficient page size, i.e. min(limit, 1000)
111
+ # @return [Enumerable] Enumerable that will yield up to limit results
112
+ def stream(identity: :unset, scope: :unset, limit: nil, page_size: nil)
113
+ limits = @version.read_limits(limit, page_size)
114
+
115
+ page = self.page(
116
+ identity: identity,
117
+ scope: scope,
118
+ page_size: limits[:page_size], )
119
+
120
+ @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
121
+ end
122
+
123
+ ##
124
+ # When passed a block, yields RoleAssignmentInstance records from the API.
125
+ # This operation lazily loads records as efficiently as possible until the limit
126
+ # is reached.
127
+ def each
128
+ limits = @version.read_limits
129
+
130
+ page = self.page(page_size: limits[:page_size], )
131
+
132
+ @version.stream(page,
133
+ limit: limits[:limit],
134
+ page_limit: limits[:page_limit]).each {|x| yield x}
135
+ end
136
+
137
+ ##
138
+ # Retrieve a single page of RoleAssignmentInstance records from the API.
139
+ # Request is executed immediately.
140
+ # @param [String] identity
141
+ # @param [String] scope
142
+ # @param [String] page_token PageToken provided by the API
143
+ # @param [Integer] page_number Page Number, this value is simply for client state
144
+ # @param [Integer] page_size Number of records to return, defaults to 50
145
+ # @return [Page] Page of RoleAssignmentInstance
146
+ def page(identity: :unset, scope: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
147
+ params = Twilio::Values.of({
148
+ 'Identity' => identity,
149
+ 'Scope' => scope,
150
+ 'PageToken' => page_token,
151
+ 'Page' => page_number,
152
+ 'PageSize' => page_size,
153
+ })
154
+ headers = Twilio::Values.of({})
155
+
156
+
157
+
158
+ response = @version.page('GET', @uri, params: params, headers: headers)
159
+
160
+ RoleAssignmentPage.new(@version, response, @solution)
161
+ end
162
+
163
+ ##
164
+ # Retrieve a single page of RoleAssignmentInstance records from the API.
165
+ # Request is executed immediately.
166
+ # @param [String] target_url API-generated URL for the requested results page
167
+ # @return [Page] Page of RoleAssignmentInstance
168
+ def get_page(target_url)
169
+ response = @version.domain.request(
170
+ 'GET',
171
+ target_url
172
+ )
173
+ RoleAssignmentPage.new(@version, response, @solution)
174
+ end
175
+
176
+
177
+
178
+ # Provide a user friendly representation
179
+ def to_s
180
+ '#<Twilio.PreviewIam.Versionless.RoleAssignmentList>'
181
+ end
182
+ end
183
+
184
+
185
+ class RoleAssignmentContext < InstanceContext
186
+ ##
187
+ # Initialize the RoleAssignmentContext
188
+ # @param [Version] version Version that contains the resource
189
+ # @param [String] organization_sid
190
+ # @param [String] sid
191
+ # @return [RoleAssignmentContext] RoleAssignmentContext
192
+ def initialize(version, organization_sid, sid)
193
+ super(version)
194
+
195
+ # Path Solution
196
+ @solution = { organization_sid: organization_sid, sid: sid, }
197
+ @uri = "/#{@solution[:organization_sid]}/RoleAssignments/#{@solution[:sid]}"
198
+
199
+
200
+ end
201
+ ##
202
+ # Delete the RoleAssignmentInstance
203
+ # @return [Boolean] True if delete succeeds, false otherwise
204
+ def delete
205
+
206
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
207
+
208
+
209
+ headers['Accept'] = '*/*'
210
+ @version.delete('DELETE', @uri, headers: headers)
211
+ end
212
+
213
+
214
+ ##
215
+ # Provide a user friendly representation
216
+ def to_s
217
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
218
+ "#<Twilio.PreviewIam.Versionless.RoleAssignmentContext #{context}>"
219
+ end
220
+
221
+ ##
222
+ # Provide a detailed, user friendly representation
223
+ def inspect
224
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
225
+ "#<Twilio.PreviewIam.Versionless.RoleAssignmentContext #{context}>"
226
+ end
227
+ end
228
+
229
+ class RoleAssignmentPage < Page
230
+ ##
231
+ # Initialize the RoleAssignmentPage
232
+ # @param [Version] version Version that contains the resource
233
+ # @param [Response] response Response from the API
234
+ # @param [Hash] solution Path solution for the resource
235
+ # @return [RoleAssignmentPage] RoleAssignmentPage
236
+ def initialize(version, response, solution)
237
+ super(version, response)
238
+
239
+ # Path Solution
240
+ @solution = solution
241
+ end
242
+
243
+ ##
244
+ # Build an instance of RoleAssignmentInstance
245
+ # @param [Hash] payload Payload response from the API
246
+ # @return [RoleAssignmentInstance] RoleAssignmentInstance
247
+ def get_instance(payload)
248
+ RoleAssignmentInstance.new(@version, payload, organization_sid: @solution[:organization_sid])
249
+ end
250
+
251
+ ##
252
+ # Provide a user friendly representation
253
+ def to_s
254
+ '<Twilio.PreviewIam.Versionless.RoleAssignmentPage>'
255
+ end
256
+ end
257
+ class RoleAssignmentInstance < InstanceResource
258
+ ##
259
+ # Initialize the RoleAssignmentInstance
260
+ # @param [Version] version Version that contains the resource
261
+ # @param [Hash] payload payload that contains response from Twilio
262
+ # @param [String] account_sid The SID of the
263
+ # {Account}[https://www.twilio.com/docs/iam/api/account] that created this RoleAssignment
264
+ # resource.
265
+ # @param [String] sid The SID of the Call resource to fetch.
266
+ # @return [RoleAssignmentInstance] RoleAssignmentInstance
267
+ def initialize(version, payload , organization_sid: nil, sid: nil)
268
+ super(version)
269
+
270
+ # Marshaled Properties
271
+ @properties = {
272
+ 'sid' => payload['sid'],
273
+ 'role_sid' => payload['role_sid'],
274
+ 'scope' => payload['scope'],
275
+ 'identity' => payload['identity'],
276
+ 'code' => payload['code'],
277
+ 'message' => payload['message'],
278
+ 'more_info' => payload['more_info'],
279
+ 'status' => payload['status'],
280
+ }
281
+
282
+ # Context
283
+ @instance_context = nil
284
+ @params = { 'organization_sid' => organization_sid || @properties['organization_sid'] ,'sid' => sid || @properties['sid'] , }
285
+ end
286
+
287
+ ##
288
+ # Generate an instance context for the instance, the context is capable of
289
+ # performing various actions. All instance actions are proxied to the context
290
+ # @return [RoleAssignmentContext] CallContext for this CallInstance
291
+ def context
292
+ unless @instance_context
293
+ @instance_context = RoleAssignmentContext.new(@version , @params['organization_sid'], @params['sid'])
294
+ end
295
+ @instance_context
296
+ end
297
+
298
+ ##
299
+ # @return [String] Twilio Role Assignment Sid representing this role assignment
300
+ def sid
301
+ @properties['sid']
302
+ end
303
+
304
+ ##
305
+ # @return [String] Twilio Role Sid representing assigned role
306
+ def role_sid
307
+ @properties['role_sid']
308
+ end
309
+
310
+ ##
311
+ # @return [String] Twilio Sid representing identity of this assignment
312
+ def scope
313
+ @properties['scope']
314
+ end
315
+
316
+ ##
317
+ # @return [String] Twilio Sid representing scope of this assignment
318
+ def identity
319
+ @properties['identity']
320
+ end
321
+
322
+ ##
323
+ # @return [String] Twilio-specific error code
324
+ def code
325
+ @properties['code']
326
+ end
327
+
328
+ ##
329
+ # @return [String] Error message
330
+ def message
331
+ @properties['message']
332
+ end
333
+
334
+ ##
335
+ # @return [String] Link to Error Code References
336
+ def more_info
337
+ @properties['more_info']
338
+ end
339
+
340
+ ##
341
+ # @return [String] HTTP response status code
342
+ def status
343
+ @properties['status']
344
+ end
345
+
346
+ ##
347
+ # Delete the RoleAssignmentInstance
348
+ # @return [Boolean] True if delete succeeds, false otherwise
349
+ def delete
350
+
351
+ context.delete
352
+ end
353
+
354
+ ##
355
+ # Provide a user friendly representation
356
+ def to_s
357
+ values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
358
+ "<Twilio.PreviewIam.Versionless.RoleAssignmentInstance #{values}>"
359
+ end
360
+
361
+ ##
362
+ # Provide a detailed, user friendly representation
363
+ def inspect
364
+ values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
365
+ "<Twilio.PreviewIam.Versionless.RoleAssignmentInstance #{values}>"
366
+ end
367
+ end
368
+
369
+ end
370
+ end
371
+ end
372
+ end
373
+ end
374
+
375
+