twilio-ruby 7.9.1 → 7.10.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/CHANGES.md +81 -0
  3. data/README.md +2 -2
  4. data/lib/twilio-ruby/framework/rest/page_metadata.rb +83 -0
  5. data/lib/twilio-ruby/framework/rest/resource.rb +16 -0
  6. data/lib/twilio-ruby/framework/rest/version.rb +70 -1
  7. data/lib/twilio-ruby/rest/accounts/v1/auth_token_promotion.rb +135 -0
  8. data/lib/twilio-ruby/rest/accounts/v1/bulk_consents.rb +94 -0
  9. data/lib/twilio-ruby/rest/accounts/v1/bulk_contacts.rb +94 -0
  10. data/lib/twilio-ruby/rest/accounts/v1/credential/aws.rb +248 -1
  11. data/lib/twilio-ruby/rest/accounts/v1/credential/public_key.rb +248 -1
  12. data/lib/twilio-ruby/rest/accounts/v1/credential.rb +63 -0
  13. data/lib/twilio-ruby/rest/accounts/v1/messaging_geopermissions.rb +124 -0
  14. data/lib/twilio-ruby/rest/accounts/v1/safelist.rb +150 -0
  15. data/lib/twilio-ruby/rest/accounts/v1/secondary_auth_token.rb +155 -0
  16. data/lib/twilio-ruby/rest/api/v2010/account/address/dependent_phone_number.rb +86 -1
  17. data/lib/twilio-ruby/rest/api/v2010/account/address.rb +304 -1
  18. data/lib/twilio-ruby/rest/api/v2010/account/application.rb +337 -1
  19. data/lib/twilio-ruby/rest/api/v2010/account/authorized_connect_app.rb +160 -1
  20. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/local.rb +122 -1
  21. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/machine_to_machine.rb +122 -1
  22. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/mobile.rb +122 -1
  23. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/national.rb +122 -1
  24. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/shared_cost.rb +122 -1
  25. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/toll_free.rb +122 -1
  26. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/voip.rb +122 -1
  27. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country.rb +160 -1
  28. data/lib/twilio-ruby/rest/api/v2010/account/balance.rb +88 -0
  29. data/lib/twilio-ruby/rest/api/v2010/account/call/event.rb +86 -1
  30. data/lib/twilio-ruby/rest/api/v2010/account/call/notification.rb +169 -1
  31. data/lib/twilio-ruby/rest/api/v2010/account/call/payment.rb +232 -0
  32. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +272 -1
  33. data/lib/twilio-ruby/rest/api/v2010/account/call/siprec.rb +784 -0
  34. data/lib/twilio-ruby/rest/api/v2010/account/call/stream.rb +784 -0
  35. data/lib/twilio-ruby/rest/api/v2010/account/call/transcription.rb +225 -2
  36. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message.rb +99 -0
  37. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message_subscription.rb +170 -0
  38. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +394 -1
  39. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +434 -1
  40. data/lib/twilio-ruby/rest/api/v2010/account/conference/recording.rb +224 -1
  41. data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +215 -1
  42. data/lib/twilio-ruby/rest/api/v2010/account/connect_app.rb +234 -1
  43. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension.rb +162 -1
  44. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on.rb +214 -1
  45. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +192 -1
  46. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +192 -1
  47. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +192 -1
  48. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +388 -1
  49. data/lib/twilio-ruby/rest/api/v2010/account/key.rb +213 -1
  50. data/lib/twilio-ruby/rest/api/v2010/account/message/feedback.rb +96 -0
  51. data/lib/twilio-ruby/rest/api/v2010/account/message/media.rb +187 -1
  52. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +327 -1
  53. data/lib/twilio-ruby/rest/api/v2010/account/new_key.rb +95 -0
  54. data/lib/twilio-ruby/rest/api/v2010/account/new_signing_key.rb +95 -0
  55. data/lib/twilio-ruby/rest/api/v2010/account/notification.rb +168 -1
  56. data/lib/twilio-ruby/rest/api/v2010/account/outgoing_caller_id.rb +217 -1
  57. data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +198 -1
  58. data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +251 -1
  59. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload/data.rb +139 -0
  60. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload.rb +182 -1
  61. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result.rb +181 -1
  62. data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +181 -1
  63. data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +198 -1
  64. data/lib/twilio-ruby/rest/api/v2010/account/short_code.rb +212 -1
  65. data/lib/twilio-ruby/rest/api/v2010/account/signing_key.rb +213 -1
  66. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list/credential.rb +251 -1
  67. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list.rb +245 -1
  68. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls/auth_calls_credential_list_mapping.rb +214 -1
  69. 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
  70. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls.rb +63 -0
  71. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_registrations/auth_registrations_credential_list_mapping.rb +214 -1
  72. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_registrations.rb +63 -0
  73. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types.rb +63 -0
  74. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb +214 -1
  75. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/ip_access_control_list_mapping.rb +214 -1
  76. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +317 -1
  77. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +260 -1
  78. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb +245 -1
  79. data/lib/twilio-ruby/rest/api/v2010/account/sip.rb +63 -0
  80. data/lib/twilio-ruby/rest/api/v2010/account/token.rb +95 -0
  81. data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +180 -1
  82. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +94 -1
  83. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +94 -1
  84. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +94 -1
  85. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +94 -1
  86. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +94 -1
  87. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +94 -1
  88. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +94 -1
  89. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +94 -1
  90. data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +94 -1
  91. data/lib/twilio-ruby/rest/api/v2010/account/usage/trigger.rb +275 -1
  92. data/lib/twilio-ruby/rest/api/v2010/account/usage.rb +63 -0
  93. data/lib/twilio-ruby/rest/api/v2010/account/validation_request.rb +110 -0
  94. data/lib/twilio-ruby/rest/api/v2010/account.rb +229 -1
  95. data/lib/twilio-ruby/rest/assistants/v1/assistant/assistants_knowledge.rb +180 -1
  96. data/lib/twilio-ruby/rest/assistants/v1/assistant/assistants_tool.rb +180 -1
  97. data/lib/twilio-ruby/rest/assistants/v1/assistant/feedback.rb +113 -1
  98. data/lib/twilio-ruby/rest/assistants/v1/assistant/message.rb +90 -0
  99. data/lib/twilio-ruby/rest/assistants/v1/assistant.rb +232 -1
  100. data/lib/twilio-ruby/rest/assistants/v1/knowledge/chunk.rb +86 -1
  101. data/lib/twilio-ruby/rest/assistants/v1/knowledge/knowledge_status.rb +136 -0
  102. data/lib/twilio-ruby/rest/assistants/v1/knowledge.rb +234 -1
  103. data/lib/twilio-ruby/rest/assistants/v1/policy.rb +90 -1
  104. data/lib/twilio-ruby/rest/assistants/v1/session/message.rb +86 -1
  105. data/lib/twilio-ruby/rest/assistants/v1/session.rb +159 -1
  106. data/lib/twilio-ruby/rest/assistants/v1/tool.rb +234 -1
  107. data/lib/twilio-ruby/rest/bulkexports/v1/export/day.rb +160 -1
  108. data/lib/twilio-ruby/rest/bulkexports/v1/export/export_custom_job.rb +133 -1
  109. data/lib/twilio-ruby/rest/bulkexports/v1/export/job.rb +156 -0
  110. data/lib/twilio-ruby/rest/bulkexports/v1/export.rb +136 -0
  111. data/lib/twilio-ruby/rest/bulkexports/v1/export_configuration.rb +174 -0
  112. data/lib/twilio-ruby/rest/chat/v1/credential.rb +275 -1
  113. data/lib/twilio-ruby/rest/chat/v1/service/channel/invite.rb +220 -1
  114. data/lib/twilio-ruby/rest/chat/v1/service/channel/member.rb +257 -1
  115. data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +259 -1
  116. data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +263 -1
  117. data/lib/twilio-ruby/rest/chat/v1/service/role.rb +251 -1
  118. data/lib/twilio-ruby/rest/chat/v1/service/user/user_channel.rb +86 -1
  119. data/lib/twilio-ruby/rest/chat/v1/service/user.rb +260 -1
  120. data/lib/twilio-ruby/rest/chat/v1/service.rb +401 -1
  121. data/lib/twilio-ruby/rest/chat/v2/credential.rb +275 -1
  122. data/lib/twilio-ruby/rest/chat/v2/service/binding.rb +186 -1
  123. data/lib/twilio-ruby/rest/chat/v2/service/channel/invite.rb +220 -1
  124. data/lib/twilio-ruby/rest/chat/v2/service/channel/member.rb +291 -1
  125. data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +290 -1
  126. data/lib/twilio-ruby/rest/chat/v2/service/channel/webhook.rb +281 -1
  127. data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +288 -1
  128. data/lib/twilio-ruby/rest/chat/v2/service/role.rb +251 -1
  129. data/lib/twilio-ruby/rest/chat/v2/service/user/user_binding.rb +184 -1
  130. data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +224 -1
  131. data/lib/twilio-ruby/rest/chat/v2/service/user.rb +264 -1
  132. data/lib/twilio-ruby/rest/chat/v2/service.rb +332 -1
  133. data/lib/twilio-ruby/rest/chat/v3/channel.rb +149 -0
  134. data/lib/twilio-ruby/rest/content/v1/content/approval_create.rb +90 -0
  135. data/lib/twilio-ruby/rest/content/v1/content/approval_fetch.rb +136 -0
  136. data/lib/twilio-ruby/rest/content/v1/content.rb +232 -1
  137. data/lib/twilio-ruby/rest/content/v1/content_and_approvals.rb +86 -1
  138. data/lib/twilio-ruby/rest/content/v1/legacy_content.rb +86 -1
  139. data/lib/twilio-ruby/rest/content/v2/content.rb +107 -1
  140. data/lib/twilio-ruby/rest/content/v2/content_and_approvals.rb +107 -1
  141. data/lib/twilio-ruby/rest/conversations/v1/address_configuration.rb +301 -1
  142. data/lib/twilio-ruby/rest/conversations/v1/configuration/webhook.rb +178 -0
  143. data/lib/twilio-ruby/rest/conversations/v1/configuration.rb +175 -0
  144. data/lib/twilio-ruby/rest/conversations/v1/conversation/message/delivery_receipt.rb +161 -1
  145. data/lib/twilio-ruby/rest/conversations/v1/conversation/message.rb +293 -1
  146. data/lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb +297 -1
  147. data/lib/twilio-ruby/rest/conversations/v1/conversation/webhook.rb +275 -1
  148. data/lib/twilio-ruby/rest/conversations/v1/conversation.rb +315 -1
  149. data/lib/twilio-ruby/rest/conversations/v1/conversation_with_participants.rb +129 -0
  150. data/lib/twilio-ruby/rest/conversations/v1/credential.rb +278 -1
  151. data/lib/twilio-ruby/rest/conversations/v1/participant_conversation.rb +90 -1
  152. data/lib/twilio-ruby/rest/conversations/v1/role.rb +248 -1
  153. data/lib/twilio-ruby/rest/conversations/v1/service/binding.rb +186 -1
  154. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb +204 -0
  155. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb +177 -0
  156. data/lib/twilio-ruby/rest/conversations/v1/service/configuration.rb +177 -0
  157. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message/delivery_receipt.rb +162 -1
  158. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message.rb +296 -1
  159. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/participant.rb +300 -1
  160. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/webhook.rb +278 -1
  161. data/lib/twilio-ruby/rest/conversations/v1/service/conversation.rb +318 -1
  162. data/lib/twilio-ruby/rest/conversations/v1/service/conversation_with_participants.rb +130 -0
  163. data/lib/twilio-ruby/rest/conversations/v1/service/participant_conversation.rb +90 -1
  164. data/lib/twilio-ruby/rest/conversations/v1/service/role.rb +251 -1
  165. data/lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb +221 -1
  166. data/lib/twilio-ruby/rest/conversations/v1/service/user.rb +267 -1
  167. data/lib/twilio-ruby/rest/conversations/v1/service.rb +210 -1
  168. data/lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb +219 -1
  169. data/lib/twilio-ruby/rest/conversations/v1/user.rb +264 -1
  170. data/lib/twilio-ruby/rest/events/v1/event_type.rb +161 -1
  171. data/lib/twilio-ruby/rest/events/v1/schema/schema_version.rb +160 -1
  172. data/lib/twilio-ruby/rest/events/v1/schema.rb +136 -0
  173. data/lib/twilio-ruby/rest/events/v1/sink/sink_test.rb +88 -0
  174. data/lib/twilio-ruby/rest/events/v1/sink/sink_validate.rb +95 -0
  175. data/lib/twilio-ruby/rest/events/v1/sink.rb +252 -1
  176. data/lib/twilio-ruby/rest/events/v1/subscription/subscribed_event.rb +248 -1
  177. data/lib/twilio-ruby/rest/events/v1/subscription.rb +250 -1
  178. data/lib/twilio-ruby/rest/flex_api/v1/assessments.rb +238 -1
  179. data/lib/twilio-ruby/rest/flex_api/v1/channel.rb +237 -1
  180. data/lib/twilio-ruby/rest/flex_api/v1/configuration.rb +167 -0
  181. data/lib/twilio-ruby/rest/flex_api/v1/flex_flow.rb +340 -1
  182. data/lib/twilio-ruby/rest/flex_api/v1/insights_assessments_comment.rb +140 -1
  183. data/lib/twilio-ruby/rest/flex_api/v1/insights_conversations.rb +90 -1
  184. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires.rb +274 -1
  185. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_category.rb +226 -1
  186. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_question.rb +253 -1
  187. data/lib/twilio-ruby/rest/flex_api/v1/insights_segments.rb +93 -1
  188. data/lib/twilio-ruby/rest/flex_api/v1/insights_session.rb +138 -0
  189. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_answer_sets.rb +90 -0
  190. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_comment.rb +90 -0
  191. data/lib/twilio-ruby/rest/flex_api/v1/insights_user_roles.rb +138 -0
  192. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_invite.rb +119 -1
  193. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_participant.rb +207 -1
  194. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_transfer.rb +195 -0
  195. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb +196 -1
  196. data/lib/twilio-ruby/rest/flex_api/v1/interaction.rb +208 -0
  197. data/lib/twilio-ruby/rest/flex_api/v1/plugin/plugin_versions.rb +214 -1
  198. data/lib/twilio-ruby/rest/flex_api/v1/plugin.rb +240 -1
  199. data/lib/twilio-ruby/rest/flex_api/v1/plugin_archive.rb +139 -0
  200. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration/configured_plugin.rb +165 -1
  201. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration.rb +203 -1
  202. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration_archive.rb +139 -0
  203. data/lib/twilio-ruby/rest/flex_api/v1/plugin_release.rb +197 -1
  204. data/lib/twilio-ruby/rest/flex_api/v1/plugin_version_archive.rb +140 -0
  205. data/lib/twilio-ruby/rest/flex_api/v1/provisioning_status.rb +135 -0
  206. data/lib/twilio-ruby/rest/flex_api/v1/web_channel.rb +260 -1
  207. data/lib/twilio-ruby/rest/flex_api/v2/flex_user.rb +176 -0
  208. data/lib/twilio-ruby/rest/flex_api/v2/web_channels.rb +108 -0
  209. data/lib/twilio-ruby/rest/frontline_api/v1/user.rb +177 -0
  210. data/lib/twilio-ruby/rest/iam/v1/api_key.rb +191 -0
  211. data/lib/twilio-ruby/rest/iam/v1/get_api_keys.rb +88 -1
  212. data/lib/twilio-ruby/rest/iam/v1/new_api_key.rb +103 -0
  213. data/lib/twilio-ruby/rest/iam/v1/o_auth_app.rb +184 -0
  214. data/lib/twilio-ruby/rest/iam/v1/token.rb +115 -0
  215. data/lib/twilio-ruby/rest/insights/v1/call/annotation.rb +186 -0
  216. data/lib/twilio-ruby/rest/insights/v1/call/call_summary.rb +142 -0
  217. data/lib/twilio-ruby/rest/insights/v1/call/event.rb +88 -1
  218. data/lib/twilio-ruby/rest/insights/v1/call/metric.rb +90 -1
  219. data/lib/twilio-ruby/rest/insights/v1/call.rb +136 -0
  220. data/lib/twilio-ruby/rest/insights/v1/call_summaries.rb +158 -1
  221. data/lib/twilio-ruby/rest/insights/v1/conference/conference_participant.rb +175 -1
  222. data/lib/twilio-ruby/rest/insights/v1/conference.rb +179 -1
  223. data/lib/twilio-ruby/rest/insights/v1/room/participant.rb +160 -1
  224. data/lib/twilio-ruby/rest/insights/v1/room.rb +171 -1
  225. data/lib/twilio-ruby/rest/insights/v1/setting.rb +178 -0
  226. data/lib/twilio-ruby/rest/intelligence/v2/custom_operator.rb +257 -1
  227. data/lib/twilio-ruby/rest/intelligence/v2/operator.rb +163 -1
  228. data/lib/twilio-ruby/rest/intelligence/v2/operator_attachment.rb +157 -0
  229. data/lib/twilio-ruby/rest/intelligence/v2/operator_attachments.rb +136 -0
  230. data/lib/twilio-ruby/rest/intelligence/v2/operator_type.rb +159 -1
  231. data/lib/twilio-ruby/rest/intelligence/v2/prebuilt_operator.rb +163 -1
  232. data/lib/twilio-ruby/rest/intelligence/v2/service.rb +295 -1
  233. data/lib/twilio-ruby/rest/intelligence/v2/transcript/encrypted_operator_results.rb +142 -0
  234. data/lib/twilio-ruby/rest/intelligence/v2/transcript/encrypted_sentences.rb +142 -0
  235. data/lib/twilio-ruby/rest/intelligence/v2/transcript/media.rb +142 -0
  236. data/lib/twilio-ruby/rest/intelligence/v2/transcript/operator_result.rb +168 -1
  237. data/lib/twilio-ruby/rest/intelligence/v2/transcript/sentence.rb +90 -1
  238. data/lib/twilio-ruby/rest/intelligence/v2/transcript.rb +235 -1
  239. data/lib/twilio-ruby/rest/ip_messaging/v1/credential.rb +275 -1
  240. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/invite.rb +220 -1
  241. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb +257 -1
  242. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +259 -1
  243. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +263 -1
  244. data/lib/twilio-ruby/rest/ip_messaging/v1/service/role.rb +251 -1
  245. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user/user_channel.rb +86 -1
  246. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +260 -1
  247. data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +401 -1
  248. data/lib/twilio-ruby/rest/ip_messaging/v2/credential.rb +275 -1
  249. data/lib/twilio-ruby/rest/ip_messaging/v2/service/binding.rb +186 -1
  250. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/invite.rb +220 -1
  251. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb +291 -1
  252. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +290 -1
  253. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/webhook.rb +281 -1
  254. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +288 -1
  255. data/lib/twilio-ruby/rest/ip_messaging/v2/service/role.rb +251 -1
  256. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_binding.rb +184 -1
  257. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_channel.rb +221 -1
  258. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +264 -1
  259. data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +332 -1
  260. data/lib/twilio-ruby/rest/knowledge/v1/knowledge/chunk.rb +86 -1
  261. data/lib/twilio-ruby/rest/knowledge/v1/knowledge/knowledge_status.rb +136 -0
  262. data/lib/twilio-ruby/rest/knowledge/v1/knowledge.rb +234 -1
  263. data/lib/twilio-ruby/rest/lookups/v1/phone_number.rb +151 -0
  264. data/lib/twilio-ruby/rest/lookups/v2/bucket.rb +185 -0
  265. data/lib/twilio-ruby/rest/lookups/v2/lookup_override.rb +213 -0
  266. data/lib/twilio-ruby/rest/lookups/v2/phone_number.rb +184 -0
  267. data/lib/twilio-ruby/rest/lookups/v2/query.rb +89 -0
  268. data/lib/twilio-ruby/rest/lookups/v2/rate_limit.rb +93 -0
  269. data/lib/twilio-ruby/rest/marketplace/v1/available_add_on/available_add_on_extension.rb +160 -1
  270. data/lib/twilio-ruby/rest/marketplace/v1/available_add_on.rb +159 -1
  271. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on/installed_add_on_extension.rb +193 -1
  272. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on/installed_add_on_usage.rb +90 -0
  273. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on.rb +254 -1
  274. data/lib/twilio-ruby/rest/marketplace/v1/module_data.rb +121 -0
  275. data/lib/twilio-ruby/rest/marketplace/v1/module_data_management.rb +186 -0
  276. data/lib/twilio-ruby/rest/marketplace/v1/referral_conversion.rb +89 -0
  277. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_registration_otp.rb +88 -0
  278. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_vetting.rb +197 -1
  279. data/lib/twilio-ruby/rest/messaging/v1/brand_registration.rb +227 -1
  280. data/lib/twilio-ruby/rest/messaging/v1/deactivations.rb +141 -0
  281. data/lib/twilio-ruby/rest/messaging/v1/domain_certs.rb +188 -0
  282. data/lib/twilio-ruby/rest/messaging/v1/domain_config.rb +177 -0
  283. data/lib/twilio-ruby/rest/messaging/v1/domain_config_messaging_service.rb +136 -0
  284. data/lib/twilio-ruby/rest/messaging/v1/domain_validate_dn.rb +136 -0
  285. data/lib/twilio-ruby/rest/messaging/v1/external_campaign.rb +100 -0
  286. data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service.rb +157 -0
  287. data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service_domain_association.rb +136 -0
  288. data/lib/twilio-ruby/rest/messaging/v1/request_managed_cert.rb +136 -0
  289. data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +212 -1
  290. data/lib/twilio-ruby/rest/messaging/v1/service/channel_sender.rb +212 -1
  291. data/lib/twilio-ruby/rest/messaging/v1/service/destination_alpha_sender.rb +217 -1
  292. data/lib/twilio-ruby/rest/messaging/v1/service/phone_number.rb +212 -1
  293. data/lib/twilio-ruby/rest/messaging/v1/service/short_code.rb +212 -1
  294. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person.rb +308 -1
  295. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person_usecase.rb +94 -0
  296. data/lib/twilio-ruby/rest/messaging/v1/service.rb +332 -1
  297. data/lib/twilio-ruby/rest/messaging/v1/tollfree_verification.rb +463 -1
  298. data/lib/twilio-ruby/rest/messaging/v1/usecase.rb +87 -0
  299. data/lib/twilio-ruby/rest/messaging/v2/channels_sender.rb +234 -1
  300. data/lib/twilio-ruby/rest/messaging/v2/domain_certs.rb +136 -0
  301. data/lib/twilio-ruby/rest/messaging/v2/typing_indicator.rb +97 -0
  302. data/lib/twilio-ruby/rest/monitor/v1/alert.rb +165 -1
  303. data/lib/twilio-ruby/rest/monitor/v1/event.rb +171 -1
  304. data/lib/twilio-ruby/rest/notify/v1/credential.rb +275 -1
  305. data/lib/twilio-ruby/rest/notify/v1/service/binding.rb +240 -1
  306. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +146 -0
  307. data/lib/twilio-ruby/rest/notify/v1/service.rb +322 -1
  308. data/lib/twilio-ruby/rest/numbers/v1/bulk_eligibility.rb +162 -0
  309. data/lib/twilio-ruby/rest/numbers/v1/eligibility.rb +89 -0
  310. data/lib/twilio-ruby/rest/numbers/v1/porting_all_port_in.rb +98 -1
  311. data/lib/twilio-ruby/rest/numbers/v1/porting_port_in.rb +182 -0
  312. data/lib/twilio-ruby/rest/numbers/v1/porting_port_in_phone_number.rb +157 -0
  313. data/lib/twilio-ruby/rest/numbers/v1/porting_portability.rb +145 -0
  314. data/lib/twilio-ruby/rest/numbers/v1/porting_webhook_configuration.rb +89 -0
  315. data/lib/twilio-ruby/rest/numbers/v1/porting_webhook_configuration_delete.rb +131 -0
  316. data/lib/twilio-ruby/rest/numbers/v1/signing_request_configuration.rb +116 -1
  317. data/lib/twilio-ruby/rest/numbers/v1/webhook.rb +87 -0
  318. data/lib/twilio-ruby/rest/numbers/v2/application.rb +185 -1
  319. data/lib/twilio-ruby/rest/numbers/v2/authorization_document/dependent_hosted_number_order.rb +94 -1
  320. data/lib/twilio-ruby/rest/numbers/v2/authorization_document.rb +229 -1
  321. data/lib/twilio-ruby/rest/numbers/v2/bulk_hosted_number_order.rb +168 -0
  322. data/lib/twilio-ruby/rest/numbers/v2/bundle_clone.rb +149 -0
  323. data/lib/twilio-ruby/rest/numbers/v2/hosted_number_order.rb +303 -1
  324. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/bundle_copy.rb +118 -1
  325. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/evaluation.rb +185 -1
  326. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/item_assignment.rb +212 -1
  327. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/replace_items.rb +95 -0
  328. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle.rb +294 -1
  329. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user.rb +251 -1
  330. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user_type.rb +159 -1
  331. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/regulation.rb +173 -1
  332. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document.rb +251 -1
  333. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document_type.rb +159 -1
  334. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance.rb +63 -0
  335. data/lib/twilio-ruby/rest/numbers/v3/hosted_number_order.rb +142 -0
  336. data/lib/twilio-ruby/rest/oauth/v1/authorize.rb +105 -0
  337. data/lib/twilio-ruby/rest/oauth/v1/token.rb +115 -0
  338. data/lib/twilio-ruby/rest/oauth/v2/token.rb +120 -0
  339. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document/dependent_hosted_number_order.rb +96 -1
  340. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document.rb +259 -1
  341. data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +327 -1
  342. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on/available_add_on_extension.rb +160 -1
  343. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on.rb +159 -1
  344. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on/installed_add_on_extension.rb +193 -1
  345. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on.rb +254 -1
  346. data/lib/twilio-ruby/rest/preview/wireless/command.rb +216 -1
  347. data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +272 -1
  348. data/lib/twilio-ruby/rest/preview/wireless/sim/usage.rb +145 -0
  349. data/lib/twilio-ruby/rest/preview/wireless/sim.rb +246 -1
  350. data/lib/twilio-ruby/rest/preview_iam/v1/authorize.rb +105 -0
  351. data/lib/twilio-ruby/rest/preview_iam/v1/token.rb +115 -0
  352. data/lib/twilio-ruby/rest/preview_iam/versionless/organization/account.rb +160 -1
  353. data/lib/twilio-ruby/rest/preview_iam/versionless/organization/role_assignment.rb +185 -1
  354. data/lib/twilio-ruby/rest/preview_iam/versionless/organization/user.rb +239 -1
  355. data/lib/twilio-ruby/rest/preview_iam/versionless/organization.rb +136 -0
  356. data/lib/twilio-ruby/rest/pricing/v1/messaging/country.rb +159 -1
  357. data/lib/twilio-ruby/rest/pricing/v1/messaging.rb +63 -0
  358. data/lib/twilio-ruby/rest/pricing/v1/phone_number/country.rb +159 -1
  359. data/lib/twilio-ruby/rest/pricing/v1/phone_number.rb +63 -0
  360. data/lib/twilio-ruby/rest/pricing/v1/voice/country.rb +159 -1
  361. data/lib/twilio-ruby/rest/pricing/v1/voice/number.rb +136 -0
  362. data/lib/twilio-ruby/rest/pricing/v1/voice.rb +63 -0
  363. data/lib/twilio-ruby/rest/pricing/v2/country.rb +159 -1
  364. data/lib/twilio-ruby/rest/pricing/v2/number.rb +142 -0
  365. data/lib/twilio-ruby/rest/pricing/v2/voice/country.rb +159 -1
  366. data/lib/twilio-ruby/rest/pricing/v2/voice/number.rb +142 -0
  367. data/lib/twilio-ruby/rest/pricing/v2/voice.rb +63 -0
  368. data/lib/twilio-ruby/rest/proxy/v1/service/phone_number.rb +251 -1
  369. data/lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb +181 -1
  370. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant/message_interaction.rb +199 -1
  371. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb +223 -1
  372. data/lib/twilio-ruby/rest/proxy/v1/service/session.rb +266 -1
  373. data/lib/twilio-ruby/rest/proxy/v1/service.rb +284 -1
  374. data/lib/twilio-ruby/rest/routes/v2/phone_number.rb +171 -0
  375. data/lib/twilio-ruby/rest/routes/v2/sip_domain.rb +171 -0
  376. data/lib/twilio-ruby/rest/routes/v2/trunk.rb +171 -0
  377. data/lib/twilio-ruby/rest/serverless/v1/service/asset/asset_version.rb +161 -1
  378. data/lib/twilio-ruby/rest/serverless/v1/service/asset.rb +245 -1
  379. data/lib/twilio-ruby/rest/serverless/v1/service/build/build_status.rb +137 -0
  380. data/lib/twilio-ruby/rest/serverless/v1/service/build.rb +221 -1
  381. data/lib/twilio-ruby/rest/serverless/v1/service/environment/deployment.rb +197 -1
  382. data/lib/twilio-ruby/rest/serverless/v1/service/environment/log.rb +167 -1
  383. data/lib/twilio-ruby/rest/serverless/v1/service/environment/variable.rb +254 -1
  384. data/lib/twilio-ruby/rest/serverless/v1/service/environment.rb +215 -1
  385. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version/function_version_content.rb +138 -0
  386. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version.rb +161 -1
  387. data/lib/twilio-ruby/rest/serverless/v1/service/function.rb +245 -1
  388. data/lib/twilio-ruby/rest/serverless/v1/service.rb +257 -1
  389. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/engagement_context.rb +137 -0
  390. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step/step_context.rb +138 -0
  391. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb +161 -1
  392. data/lib/twilio-ruby/rest/studio/v1/flow/engagement.rb +218 -1
  393. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_context.rb +137 -0
  394. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step/execution_step_context.rb +138 -0
  395. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step.rb +161 -1
  396. data/lib/twilio-ruby/rest/studio/v1/flow/execution.rb +255 -1
  397. data/lib/twilio-ruby/rest/studio/v1/flow.rb +179 -1
  398. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_context.rb +137 -0
  399. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step/execution_step_context.rb +138 -0
  400. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step.rb +161 -1
  401. data/lib/twilio-ruby/rest/studio/v2/flow/execution.rb +255 -1
  402. data/lib/twilio-ruby/rest/studio/v2/flow/flow_revision.rb +160 -1
  403. data/lib/twilio-ruby/rest/studio/v2/flow/flow_test_user.rb +168 -0
  404. data/lib/twilio-ruby/rest/studio/v2/flow.rb +260 -1
  405. data/lib/twilio-ruby/rest/studio/v2/flow_validate.rb +103 -0
  406. data/lib/twilio-ruby/rest/supersim/v1/esim_profile.rb +205 -1
  407. data/lib/twilio-ruby/rest/supersim/v1/fleet.rb +266 -1
  408. data/lib/twilio-ruby/rest/supersim/v1/ip_command.rb +213 -1
  409. data/lib/twilio-ruby/rest/supersim/v1/network.rb +165 -1
  410. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile/network_access_profile_network.rb +212 -1
  411. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile.rb +225 -1
  412. data/lib/twilio-ruby/rest/supersim/v1/settings_update.rb +90 -1
  413. data/lib/twilio-ruby/rest/supersim/v1/sim/billing_period.rb +86 -1
  414. data/lib/twilio-ruby/rest/supersim/v1/sim/sim_ip_address.rb +86 -1
  415. data/lib/twilio-ruby/rest/supersim/v1/sim.rb +246 -1
  416. data/lib/twilio-ruby/rest/supersim/v1/sms_command.rb +205 -1
  417. data/lib/twilio-ruby/rest/supersim/v1/usage_record.rb +102 -1
  418. data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +221 -1
  419. data/lib/twilio-ruby/rest/sync/v1/service/document.rb +256 -1
  420. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +277 -1
  421. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +221 -1
  422. data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +254 -1
  423. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +280 -1
  424. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +221 -1
  425. data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +254 -1
  426. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream/stream_message.rb +96 -0
  427. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream.rb +248 -1
  428. data/lib/twilio-ruby/rest/sync/v1/service.rb +278 -1
  429. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/activity.rb +252 -1
  430. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +182 -1
  431. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +360 -1
  432. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +310 -1
  433. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_channel.rb +254 -1
  434. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_bulk_real_time_statistics.rb +90 -0
  435. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics.rb +155 -0
  436. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics.rb +143 -0
  437. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_statistics.rb +155 -0
  438. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queues_statistics.rb +98 -1
  439. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +283 -1
  440. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +352 -1
  441. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_channel.rb +198 -1
  442. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_statistics.rb +152 -0
  443. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_cumulative_statistics.rb +151 -0
  444. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_real_time_statistics.rb +142 -0
  445. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_statistics.rb +160 -0
  446. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +281 -1
  447. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics.rb +155 -0
  448. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_real_time_statistics.rb +143 -0
  449. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_statistics.rb +155 -0
  450. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +274 -1
  451. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_cumulative_statistics.rb +154 -0
  452. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_real_time_statistics.rb +142 -0
  453. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_statistics.rb +154 -0
  454. data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +277 -1
  455. data/lib/twilio-ruby/rest/trunking/v1/trunk/credential_list.rb +212 -1
  456. data/lib/twilio-ruby/rest/trunking/v1/trunk/ip_access_control_list.rb +212 -1
  457. data/lib/twilio-ruby/rest/trunking/v1/trunk/origination_url.rb +269 -1
  458. data/lib/twilio-ruby/rest/trunking/v1/trunk/phone_number.rb +212 -1
  459. data/lib/twilio-ruby/rest/trunking/v1/trunk/recording.rb +171 -0
  460. data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +284 -1
  461. data/lib/twilio-ruby/rest/trusthub/v1/compliance_inquiries.rb +183 -0
  462. data/lib/twilio-ruby/rest/trusthub/v1/compliance_registration_inquiries.rb +291 -0
  463. data/lib/twilio-ruby/rest/trusthub/v1/compliance_tollfree_inquiries.rb +212 -1
  464. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_channel_endpoint_assignment.rb +219 -1
  465. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_entity_assignments.rb +214 -1
  466. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_evaluations.rb +192 -1
  467. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles.rb +266 -1
  468. data/lib/twilio-ruby/rest/trusthub/v1/end_user.rb +251 -1
  469. data/lib/twilio-ruby/rest/trusthub/v1/end_user_type.rb +159 -1
  470. data/lib/twilio-ruby/rest/trusthub/v1/policies.rb +159 -1
  471. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document.rb +251 -1
  472. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document_type.rb +159 -1
  473. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_channel_endpoint_assignment.rb +219 -1
  474. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_entity_assignments.rb +214 -1
  475. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_evaluations.rb +192 -1
  476. data/lib/twilio-ruby/rest/trusthub/v1/trust_products.rb +266 -1
  477. data/lib/twilio-ruby/rest/verify/v2/form.rb +136 -0
  478. data/lib/twilio-ruby/rest/verify/v2/safelist.rb +187 -0
  479. data/lib/twilio-ruby/rest/verify/v2/service/access_token.rb +178 -0
  480. data/lib/twilio-ruby/rest/verify/v2/service/approve_challenge.rb +90 -0
  481. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge/notification.rb +97 -0
  482. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb +252 -1
  483. data/lib/twilio-ruby/rest/verify/v2/service/entity/factor.rb +239 -1
  484. data/lib/twilio-ruby/rest/verify/v2/service/entity/new_factor.rb +135 -0
  485. data/lib/twilio-ruby/rest/verify/v2/service/entity.rb +212 -1
  486. data/lib/twilio-ruby/rest/verify/v2/service/messaging_configuration.rb +248 -1
  487. data/lib/twilio-ruby/rest/verify/v2/service/new_challenge.rb +138 -0
  488. data/lib/twilio-ruby/rest/verify/v2/service/new_factor.rb +90 -0
  489. data/lib/twilio-ruby/rest/verify/v2/service/new_verify_factor.rb +90 -0
  490. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb +254 -1
  491. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit.rb +248 -1
  492. data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +253 -0
  493. data/lib/twilio-ruby/rest/verify/v2/service/verification_check.rb +110 -0
  494. data/lib/twilio-ruby/rest/verify/v2/service/webhook.rb +269 -1
  495. data/lib/twilio-ruby/rest/verify/v2/service.rb +392 -1
  496. data/lib/twilio-ruby/rest/verify/v2/template.rb +88 -1
  497. data/lib/twilio-ruby/rest/verify/v2/verification_attempt.rb +175 -1
  498. data/lib/twilio-ruby/rest/verify/v2/verification_attempts_summary.rb +156 -0
  499. data/lib/twilio-ruby/rest/video/v1/composition.rb +242 -1
  500. data/lib/twilio-ruby/rest/video/v1/composition_hook.rb +304 -1
  501. data/lib/twilio-ruby/rest/video/v1/composition_settings.rb +181 -0
  502. data/lib/twilio-ruby/rest/video/v1/recording.rb +192 -1
  503. data/lib/twilio-ruby/rest/video/v1/recording_settings.rb +181 -0
  504. data/lib/twilio-ruby/rest/video/v1/room/participant/anonymize.rb +137 -0
  505. data/lib/twilio-ruby/rest/video/v1/room/participant/published_track.rb +161 -1
  506. data/lib/twilio-ruby/rest/video/v1/room/participant/subscribe_rules.rb +122 -0
  507. data/lib/twilio-ruby/rest/video/v1/room/participant/subscribed_track.rb +161 -1
  508. data/lib/twilio-ruby/rest/video/v1/room/participant.rb +201 -1
  509. data/lib/twilio-ruby/rest/video/v1/room/recording_rules.rb +120 -0
  510. data/lib/twilio-ruby/rest/video/v1/room/room_recording.rb +188 -1
  511. data/lib/twilio-ruby/rest/video/v1/room/transcriptions.rb +232 -1
  512. data/lib/twilio-ruby/rest/video/v1/room.rb +278 -1
  513. data/lib/twilio-ruby/rest/voice/v1/archived_call.rb +131 -0
  514. data/lib/twilio-ruby/rest/voice/v1/byoc_trunk.rb +296 -1
  515. data/lib/twilio-ruby/rest/voice/v1/connection_policy/connection_policy_target.rb +269 -1
  516. data/lib/twilio-ruby/rest/voice/v1/connection_policy.rb +242 -1
  517. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/bulk_country_update.rb +94 -0
  518. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country/highrisk_special_prefix.rb +86 -1
  519. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country.rb +171 -1
  520. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/settings.rb +166 -0
  521. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions.rb +63 -0
  522. data/lib/twilio-ruby/rest/voice/v1/ip_record.rb +248 -1
  523. data/lib/twilio-ruby/rest/voice/v1/source_ip_mapping.rb +245 -1
  524. data/lib/twilio-ruby/rest/wireless/v1/command.rb +236 -1
  525. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +278 -1
  526. data/lib/twilio-ruby/rest/wireless/v1/sim/data_session.rb +86 -1
  527. data/lib/twilio-ruby/rest/wireless/v1/sim/usage_record.rb +92 -1
  528. data/lib/twilio-ruby/rest/wireless/v1/sim.rb +272 -1
  529. data/lib/twilio-ruby/rest/wireless/v1/usage_record.rb +92 -1
  530. data/lib/twilio-ruby/twiml/voice_response.rb +71 -4
  531. data/lib/twilio-ruby/version.rb +1 -1
  532. metadata +3 -2
@@ -25,6 +25,7 @@ module Twilio
25
25
  # @return [RatePlanList] RatePlanList
26
26
  def initialize(version)
27
27
  super(version)
28
+
28
29
  # Path Solution
29
30
  @solution = { }
30
31
  @uri = "/RatePlans"
@@ -88,6 +89,70 @@ module Twilio
88
89
  )
89
90
  end
90
91
 
92
+ ##
93
+ # Create the RatePlanInstanceMetadata
94
+ # @param [String] unique_name An application-defined string that uniquely identifies the resource. It can be used in place of the resource's `sid` in the URL to address the resource.
95
+ # @param [String] friendly_name A descriptive string that you create to describe the resource. It does not have to be unique.
96
+ # @param [Boolean] data_enabled Whether SIMs can use GPRS/3G/4G/LTE data connectivity.
97
+ # @param [String] data_limit The total data usage (download and upload combined) in Megabytes that the Network allows during one month on the home network (T-Mobile USA). The metering period begins the day of activation and ends on the same day in the following month. Can be up to 2TB and the default value is `1000`.
98
+ # @param [String] data_metering The model used to meter data usage. Can be: `payg` and `quota-1`, `quota-10`, and `quota-50`. Learn more about the available [data metering models](https://www.twilio.com/docs/iot/wireless/api/rateplan-resource#payg-vs-quota-data-plans).
99
+ # @param [Boolean] messaging_enabled Whether SIMs can make, send, and receive SMS using [Commands](https://www.twilio.com/docs/iot/wireless/api/command-resource).
100
+ # @param [Boolean] voice_enabled Deprecated.
101
+ # @param [Boolean] national_roaming_enabled Whether SIMs can roam on networks other than the home network (T-Mobile USA) in the United States. See [national roaming](https://www.twilio.com/docs/iot/wireless/api/rateplan-resource#national-roaming).
102
+ # @param [Array[String]] international_roaming The list of services that SIMs capable of using GPRS/3G/4G/LTE data connectivity can use outside of the United States. Can contain: `data` and `messaging`.
103
+ # @param [String] national_roaming_data_limit The total data usage (download and upload combined) in Megabytes that the Network allows during one month on non-home networks in the United States. The metering period begins the day of activation and ends on the same day in the following month. Can be up to 2TB. See [national roaming](https://www.twilio.com/docs/iot/wireless/api/rateplan-resource#national-roaming) for more info.
104
+ # @param [String] international_roaming_data_limit The total data usage (download and upload combined) in Megabytes that the Network allows during one month when roaming outside the United States. Can be up to 2TB.
105
+ # @param [DataLimitStrategy] data_limit_strategy
106
+ # @return [RatePlanInstance] Created RatePlanInstance
107
+ def create_with_metadata(
108
+ unique_name: :unset,
109
+ friendly_name: :unset,
110
+ data_enabled: :unset,
111
+ data_limit: :unset,
112
+ data_metering: :unset,
113
+ messaging_enabled: :unset,
114
+ voice_enabled: :unset,
115
+ national_roaming_enabled: :unset,
116
+ international_roaming: :unset,
117
+ national_roaming_data_limit: :unset,
118
+ international_roaming_data_limit: :unset,
119
+ data_limit_strategy: :unset
120
+ )
121
+
122
+ data = Twilio::Values.of({
123
+ 'UniqueName' => unique_name,
124
+ 'FriendlyName' => friendly_name,
125
+ 'DataEnabled' => data_enabled,
126
+ 'DataLimit' => data_limit,
127
+ 'DataMetering' => data_metering,
128
+ 'MessagingEnabled' => messaging_enabled,
129
+ 'VoiceEnabled' => voice_enabled,
130
+ 'NationalRoamingEnabled' => national_roaming_enabled,
131
+ 'InternationalRoaming' => Twilio.serialize_list(international_roaming) { |e| e },
132
+ 'NationalRoamingDataLimit' => national_roaming_data_limit,
133
+ 'InternationalRoamingDataLimit' => international_roaming_data_limit,
134
+ 'DataLimitStrategy' => data_limit_strategy,
135
+ })
136
+
137
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
138
+
139
+
140
+
141
+
142
+
143
+ response = @version.create_with_metadata('POST', @uri, data: data, headers: headers)
144
+ rate_plan_instance = RatePlanInstance.new(
145
+ @version,
146
+ response.body,
147
+ )
148
+ RatePlanInstanceMetadata.new(
149
+ @version,
150
+ rate_plan_instance,
151
+ response.headers,
152
+ response.status_code
153
+ )
154
+ end
155
+
91
156
 
92
157
  ##
93
158
  # Lists RatePlanInstance records from the API as a list.
@@ -127,6 +192,28 @@ module Twilio
127
192
  @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
128
193
  end
129
194
 
195
+ ##
196
+ # Lists RatePlanPageMetadata records from the API as a list.
197
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
198
+ # guarantees to never return more than limit. Default is no limit
199
+ # @param [Integer] page_size Number of records to fetch per request, when
200
+ # not set will use the default value of 50 records. If no page_size is defined
201
+ # but a limit is defined, stream() will attempt to read the limit with the most
202
+ # efficient page size, i.e. min(limit, 1000)
203
+ # @return [Array] Array of up to limit results
204
+ def list_with_metadata(limit: nil, page_size: nil)
205
+ limits = @version.read_limits(limit, page_size)
206
+ params = Twilio::Values.of({
207
+
208
+ 'PageSize' => limits[:page_size],
209
+ });
210
+ headers = Twilio::Values.of({})
211
+
212
+ response = @version.page('GET', @uri, params: params, headers: headers)
213
+
214
+ RatePlanPageMetadata.new(@version, response, @solution, limits[:limit])
215
+ end
216
+
130
217
  ##
131
218
  # When passed a block, yields RatePlanInstance records from the API.
132
219
  # This operation lazily loads records as efficiently as possible until the limit
@@ -148,7 +235,7 @@ module Twilio
148
235
  # @param [Integer] page_number Page Number, this value is simply for client state
149
236
  # @param [Integer] page_size Number of records to return, defaults to 50
150
237
  # @return [Page] Page of RatePlanInstance
151
- def page(page_token: :unset, page_number: :unset, page_size: :unset)
238
+ def page(page_token: :unset, page_number: :unset,page_size: :unset)
152
239
  params = Twilio::Values.of({
153
240
  'PageToken' => page_token,
154
241
  'Page' => page_number,
@@ -193,6 +280,7 @@ module Twilio
193
280
  # @return [RatePlanContext] RatePlanContext
194
281
  def initialize(version, sid)
195
282
  super(version)
283
+
196
284
 
197
285
  # Path Solution
198
286
  @solution = { sid: sid, }
@@ -209,9 +297,29 @@ module Twilio
209
297
 
210
298
 
211
299
 
300
+
212
301
  @version.delete('DELETE', @uri, headers: headers)
213
302
  end
214
303
 
304
+ ##
305
+ # Delete the RatePlanInstanceMetadata
306
+ # @return [Boolean] True if delete succeeds, false otherwise
307
+ def delete_with_metadata
308
+
309
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
310
+
311
+
312
+
313
+ response = @version.delete_with_metadata('DELETE', @uri, headers: headers)
314
+ ratePlan_instance = RatePlanInstance.new(
315
+ @version,
316
+ response.body,
317
+ account_sid: @solution[:account_sid],
318
+ sid: @solution[:sid],
319
+ )
320
+ RatePlanInstanceMetadata.new(@version, ratePlan_instance, response.headers, response.status_code)
321
+ end
322
+
215
323
  ##
216
324
  # Fetch the RatePlanInstance
217
325
  # @return [RatePlanInstance] Fetched RatePlanInstance
@@ -231,6 +339,31 @@ module Twilio
231
339
  )
232
340
  end
233
341
 
342
+ ##
343
+ # Fetch the RatePlanInstanceMetadata
344
+ # @return [RatePlanInstance] Fetched RatePlanInstance
345
+ def fetch_with_metadata
346
+
347
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
348
+
349
+
350
+
351
+
352
+
353
+ response = @version.fetch_with_metadata('GET', @uri, headers: headers)
354
+ rate_plan_instance = RatePlanInstance.new(
355
+ @version,
356
+ response.body,
357
+ sid: @solution[:sid],
358
+ )
359
+ RatePlanInstanceMetadata.new(
360
+ @version,
361
+ rate_plan_instance,
362
+ response.headers,
363
+ response.status_code
364
+ )
365
+ end
366
+
234
367
  ##
235
368
  # Update the RatePlanInstance
236
369
  # @param [String] unique_name An application-defined string that uniquely identifies the resource. It can be used in place of the resource's `sid` in the URL to address the resource.
@@ -260,6 +393,41 @@ module Twilio
260
393
  )
261
394
  end
262
395
 
396
+ ##
397
+ # Update the RatePlanInstanceMetadata
398
+ # @param [String] unique_name An application-defined string that uniquely identifies the resource. It can be used in place of the resource's `sid` in the URL to address the resource.
399
+ # @param [String] friendly_name A descriptive string that you create to describe the resource. It does not have to be unique.
400
+ # @return [RatePlanInstance] Updated RatePlanInstance
401
+ def update_with_metadata(
402
+ unique_name: :unset,
403
+ friendly_name: :unset
404
+ )
405
+
406
+ data = Twilio::Values.of({
407
+ 'UniqueName' => unique_name,
408
+ 'FriendlyName' => friendly_name,
409
+ })
410
+
411
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
412
+
413
+
414
+
415
+
416
+
417
+ response = @version.update_with_metadata('POST', @uri, data: data, headers: headers)
418
+ rate_plan_instance = RatePlanInstance.new(
419
+ @version,
420
+ response.body,
421
+ sid: @solution[:sid],
422
+ )
423
+ RatePlanInstanceMetadata.new(
424
+ @version,
425
+ rate_plan_instance,
426
+ response.headers,
427
+ response.status_code
428
+ )
429
+ end
430
+
263
431
 
264
432
  ##
265
433
  # Provide a user friendly representation
@@ -276,6 +444,53 @@ module Twilio
276
444
  end
277
445
  end
278
446
 
447
+ class RatePlanInstanceMetadata < InstanceResourceMetadata
448
+ ##
449
+ # Initializes a new RatePlanInstanceMetadata.
450
+ # @param [Version] version Version that contains the resource
451
+ # @param [}RatePlanInstance] rate_plan_instance The instance associated with the metadata.
452
+ # @param [Hash] headers Header object with response headers.
453
+ # @param [Integer] status_code The HTTP status code of the response.
454
+ # @return [RatePlanInstanceMetadata] The initialized instance with metadata.
455
+ def initialize(version, rate_plan_instance, headers, status_code)
456
+ super(version, headers, status_code)
457
+ @rate_plan_instance = rate_plan_instance
458
+ end
459
+
460
+ def rate_plan
461
+ @rate_plan_instance
462
+ end
463
+
464
+ def headers
465
+ @headers
466
+ end
467
+
468
+ def status_code
469
+ @status_code
470
+ end
471
+
472
+ def to_s
473
+ "<Twilio.Api.V2010.RatePlanInstanceMetadata status=#{@status_code}>"
474
+ end
475
+ end
476
+
477
+ class RatePlanListResponse < InstanceListResource
478
+ # @param [Array<RatePlanInstance>] instance
479
+ # @param [Hash{String => Object}] headers
480
+ # @param [Integer] status_code
481
+ def initialize(version, payload, key)
482
+ @rate_plan_instance = payload.body[key].map do |data|
483
+ RatePlanInstance.new(version, data)
484
+ end
485
+ @headers = payload.headers
486
+ @status_code = payload.status_code
487
+ end
488
+
489
+ def rate_plan_instance
490
+ @instance
491
+ end
492
+ end
493
+
279
494
  class RatePlanPage < Page
280
495
  ##
281
496
  # Initialize the RatePlanPage
@@ -285,6 +500,7 @@ module Twilio
285
500
  # @return [RatePlanPage] RatePlanPage
286
501
  def initialize(version, response, solution)
287
502
  super(version, response)
503
+
288
504
 
289
505
  # Path Solution
290
506
  @solution = solution
@@ -304,6 +520,66 @@ module Twilio
304
520
  '<Twilio.Wireless.V1.RatePlanPage>'
305
521
  end
306
522
  end
523
+
524
+ class RatePlanPageMetadata < PageMetadata
525
+ attr_reader :rate_plan_page
526
+
527
+ def initialize(version, response, solution, limit)
528
+ super(version, response)
529
+ @rate_plan_page = []
530
+ @limit = limit
531
+ key = get_key(response.body)
532
+ records = 0
533
+ while( limit != :unset && records < limit )
534
+ @rate_plan_page << RatePlanListResponse.new(version, @payload, key, limit - records)
535
+ @payload = self.next_page
536
+ break unless @payload
537
+ records += @payload.body[key].size
538
+ end
539
+ # Path Solution
540
+ @solution = solution
541
+ end
542
+
543
+ def each
544
+ @rate_plan_page.each do |record|
545
+ yield record
546
+ end
547
+ end
548
+
549
+ def to_s
550
+ '<Twilio::REST::Wireless::V1PageMetadata>';
551
+ end
552
+ end
553
+ class RatePlanListResponse < InstanceListResource
554
+
555
+ # @param [Array<RatePlanInstance>] instance
556
+ # @param [Hash{String => Object}] headers
557
+ # @param [Integer] status_code
558
+ def initialize(version, payload, key, limit = :unset)
559
+ data_list = payload.body[key]
560
+ if limit != :unset
561
+ data_list = data_list[0, limit]
562
+ end
563
+ @rate_plan = data_list.map do |data|
564
+ RatePlanInstance.new(version, data)
565
+ end
566
+ @headers = payload.headers
567
+ @status_code = payload.status_code
568
+ end
569
+
570
+ def rate_plan
571
+ @rate_plan
572
+ end
573
+
574
+ def headers
575
+ @headers
576
+ end
577
+
578
+ def status_code
579
+ @status_code
580
+ end
581
+ end
582
+
307
583
  class RatePlanInstance < InstanceResource
308
584
  ##
309
585
  # Initialize the RatePlanInstance
@@ -317,6 +593,7 @@ module Twilio
317
593
  def initialize(version, payload , sid: nil)
318
594
  super(version)
319
595
 
596
+
320
597
  # Marshaled Properties
321
598
  @properties = {
322
599
  'sid' => payload['sid'],
@@ -27,6 +27,7 @@ module Twilio
27
27
  # @return [DataSessionList] DataSessionList
28
28
  def initialize(version, sim_sid: nil)
29
29
  super(version)
30
+
30
31
  # Path Solution
31
32
  @solution = { sim_sid: sim_sid }
32
33
  @uri = "/Sims/#{@solution[:sim_sid]}/DataSessions"
@@ -71,6 +72,28 @@ module Twilio
71
72
  @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
72
73
  end
73
74
 
75
+ ##
76
+ # Lists DataSessionPageMetadata records from the API as a list.
77
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
78
+ # guarantees to never return more than limit. Default is no limit
79
+ # @param [Integer] page_size Number of records to fetch per request, when
80
+ # not set will use the default value of 50 records. If no page_size is defined
81
+ # but a limit is defined, stream() will attempt to read the limit with the most
82
+ # efficient page size, i.e. min(limit, 1000)
83
+ # @return [Array] Array of up to limit results
84
+ def list_with_metadata(limit: nil, page_size: nil)
85
+ limits = @version.read_limits(limit, page_size)
86
+ params = Twilio::Values.of({
87
+
88
+ 'PageSize' => limits[:page_size],
89
+ });
90
+ headers = Twilio::Values.of({})
91
+
92
+ response = @version.page('GET', @uri, params: params, headers: headers)
93
+
94
+ DataSessionPageMetadata.new(@version, response, @solution, limits[:limit])
95
+ end
96
+
74
97
  ##
75
98
  # When passed a block, yields DataSessionInstance records from the API.
76
99
  # This operation lazily loads records as efficiently as possible until the limit
@@ -92,7 +115,7 @@ module Twilio
92
115
  # @param [Integer] page_number Page Number, this value is simply for client state
93
116
  # @param [Integer] page_size Number of records to return, defaults to 50
94
117
  # @return [Page] Page of DataSessionInstance
95
- def page(page_token: :unset, page_number: :unset, page_size: :unset)
118
+ def page(page_token: :unset, page_number: :unset,page_size: :unset)
96
119
  params = Twilio::Values.of({
97
120
  'PageToken' => page_token,
98
121
  'Page' => page_number,
@@ -137,6 +160,7 @@ module Twilio
137
160
  # @return [DataSessionPage] DataSessionPage
138
161
  def initialize(version, response, solution)
139
162
  super(version, response)
163
+
140
164
 
141
165
  # Path Solution
142
166
  @solution = solution
@@ -156,6 +180,66 @@ module Twilio
156
180
  '<Twilio.Wireless.V1.DataSessionPage>'
157
181
  end
158
182
  end
183
+
184
+ class DataSessionPageMetadata < PageMetadata
185
+ attr_reader :data_session_page
186
+
187
+ def initialize(version, response, solution, limit)
188
+ super(version, response)
189
+ @data_session_page = []
190
+ @limit = limit
191
+ key = get_key(response.body)
192
+ records = 0
193
+ while( limit != :unset && records < limit )
194
+ @data_session_page << DataSessionListResponse.new(version, @payload, key, limit - records)
195
+ @payload = self.next_page
196
+ break unless @payload
197
+ records += @payload.body[key].size
198
+ end
199
+ # Path Solution
200
+ @solution = solution
201
+ end
202
+
203
+ def each
204
+ @data_session_page.each do |record|
205
+ yield record
206
+ end
207
+ end
208
+
209
+ def to_s
210
+ '<Twilio::REST::Wireless::V1PageMetadata>';
211
+ end
212
+ end
213
+ class DataSessionListResponse < InstanceListResource
214
+
215
+ # @param [Array<DataSessionInstance>] instance
216
+ # @param [Hash{String => Object}] headers
217
+ # @param [Integer] status_code
218
+ def initialize(version, payload, key, limit = :unset)
219
+ data_list = payload.body[key]
220
+ if limit != :unset
221
+ data_list = data_list[0, limit]
222
+ end
223
+ @data_session = data_list.map do |data|
224
+ DataSessionInstance.new(version, data)
225
+ end
226
+ @headers = payload.headers
227
+ @status_code = payload.status_code
228
+ end
229
+
230
+ def data_session
231
+ @data_session
232
+ end
233
+
234
+ def headers
235
+ @headers
236
+ end
237
+
238
+ def status_code
239
+ @status_code
240
+ end
241
+ end
242
+
159
243
  class DataSessionInstance < InstanceResource
160
244
  ##
161
245
  # Initialize the DataSessionInstance
@@ -169,6 +253,7 @@ module Twilio
169
253
  def initialize(version, payload , sim_sid: nil)
170
254
  super(version)
171
255
 
256
+
172
257
  # Marshaled Properties
173
258
  @properties = {
174
259
  'sid' => payload['sid'],
@@ -27,6 +27,7 @@ module Twilio
27
27
  # @return [UsageRecordList] UsageRecordList
28
28
  def initialize(version, sim_sid: nil)
29
29
  super(version)
30
+
30
31
  # Path Solution
31
32
  @solution = { sim_sid: sim_sid }
32
33
  @uri = "/Sims/#{@solution[:sim_sid]}/UsageRecords"
@@ -83,6 +84,34 @@ module Twilio
83
84
  @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
84
85
  end
85
86
 
87
+ ##
88
+ # Lists UsageRecordPageMetadata records from the API as a list.
89
+ # @param [Time] end_ Only include usage that occurred on or before this date, specified in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html). The default is the current time.
90
+ # @param [Time] start Only include usage that has occurred on or after this date, specified in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html). The default is one month before the `end` parameter value.
91
+ # @param [Granularity] granularity How to summarize the usage by time. Can be: `daily`, `hourly`, or `all`. The default is `all`. A value of `all` returns one Usage Record that describes the usage for the entire period.
92
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
93
+ # guarantees to never return more than limit. Default is no limit
94
+ # @param [Integer] page_size Number of records to fetch per request, when
95
+ # not set will use the default value of 50 records. If no page_size is defined
96
+ # but a limit is defined, stream() will attempt to read the limit with the most
97
+ # efficient page size, i.e. min(limit, 1000)
98
+ # @return [Array] Array of up to limit results
99
+ def list_with_metadata(end_: :unset, start: :unset, granularity: :unset, limit: nil, page_size: nil)
100
+ limits = @version.read_limits(limit, page_size)
101
+ params = Twilio::Values.of({
102
+ 'End' => Twilio.serialize_iso8601_datetime(end_),
103
+ 'Start' => Twilio.serialize_iso8601_datetime(start),
104
+ 'Granularity' => granularity,
105
+
106
+ 'PageSize' => limits[:page_size],
107
+ });
108
+ headers = Twilio::Values.of({})
109
+
110
+ response = @version.page('GET', @uri, params: params, headers: headers)
111
+
112
+ UsageRecordPageMetadata.new(@version, response, @solution, limits[:limit])
113
+ end
114
+
86
115
  ##
87
116
  # When passed a block, yields UsageRecordInstance records from the API.
88
117
  # This operation lazily loads records as efficiently as possible until the limit
@@ -107,7 +136,7 @@ module Twilio
107
136
  # @param [Integer] page_number Page Number, this value is simply for client state
108
137
  # @param [Integer] page_size Number of records to return, defaults to 50
109
138
  # @return [Page] Page of UsageRecordInstance
110
- def page(end_: :unset, start: :unset, granularity: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
139
+ def page(end_: :unset, start: :unset, granularity: :unset, page_token: :unset, page_number: :unset,page_size: :unset)
111
140
  params = Twilio::Values.of({
112
141
  'End' => Twilio.serialize_iso8601_datetime(end_),
113
142
  'Start' => Twilio.serialize_iso8601_datetime(start),
@@ -155,6 +184,7 @@ module Twilio
155
184
  # @return [UsageRecordPage] UsageRecordPage
156
185
  def initialize(version, response, solution)
157
186
  super(version, response)
187
+
158
188
 
159
189
  # Path Solution
160
190
  @solution = solution
@@ -174,6 +204,66 @@ module Twilio
174
204
  '<Twilio.Wireless.V1.UsageRecordPage>'
175
205
  end
176
206
  end
207
+
208
+ class UsageRecordPageMetadata < PageMetadata
209
+ attr_reader :usage_record_page
210
+
211
+ def initialize(version, response, solution, limit)
212
+ super(version, response)
213
+ @usage_record_page = []
214
+ @limit = limit
215
+ key = get_key(response.body)
216
+ records = 0
217
+ while( limit != :unset && records < limit )
218
+ @usage_record_page << UsageRecordListResponse.new(version, @payload, key, limit - records)
219
+ @payload = self.next_page
220
+ break unless @payload
221
+ records += @payload.body[key].size
222
+ end
223
+ # Path Solution
224
+ @solution = solution
225
+ end
226
+
227
+ def each
228
+ @usage_record_page.each do |record|
229
+ yield record
230
+ end
231
+ end
232
+
233
+ def to_s
234
+ '<Twilio::REST::Wireless::V1PageMetadata>';
235
+ end
236
+ end
237
+ class UsageRecordListResponse < InstanceListResource
238
+
239
+ # @param [Array<UsageRecordInstance>] instance
240
+ # @param [Hash{String => Object}] headers
241
+ # @param [Integer] status_code
242
+ def initialize(version, payload, key, limit = :unset)
243
+ data_list = payload.body[key]
244
+ if limit != :unset
245
+ data_list = data_list[0, limit]
246
+ end
247
+ @usage_record = data_list.map do |data|
248
+ UsageRecordInstance.new(version, data)
249
+ end
250
+ @headers = payload.headers
251
+ @status_code = payload.status_code
252
+ end
253
+
254
+ def usage_record
255
+ @usage_record
256
+ end
257
+
258
+ def headers
259
+ @headers
260
+ end
261
+
262
+ def status_code
263
+ @status_code
264
+ end
265
+ end
266
+
177
267
  class UsageRecordInstance < InstanceResource
178
268
  ##
179
269
  # Initialize the UsageRecordInstance
@@ -187,6 +277,7 @@ module Twilio
187
277
  def initialize(version, payload , sim_sid: nil)
188
278
  super(version)
189
279
 
280
+
190
281
  # Marshaled Properties
191
282
  @properties = {
192
283
  'sim_sid' => payload['sim_sid'],