twilio-ruby 5.46.1 → 5.77.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 (787) hide show
  1. checksums.yaml +5 -5
  2. data/.github/workflows/pr-lint.yml +21 -0
  3. data/.github/workflows/test-and-deploy.yml +129 -0
  4. data/.gitignore +5 -1
  5. data/.rubocop.yml +1 -1
  6. data/.rubocop_todo.yml +91 -28
  7. data/CHANGES.md +1053 -0
  8. data/CONTRIBUTING.md +1 -7
  9. data/Gemfile +1 -0
  10. data/LICENSE +1 -1
  11. data/Makefile +12 -11
  12. data/PULL_REQUEST_TEMPLATE.md +1 -1
  13. data/README.md +137 -42
  14. data/advanced-examples/custom-http-client.md +170 -0
  15. data/examples/examples.rb +1 -1
  16. data/lib/rack/twilio_webhook_authentication.rb +25 -1
  17. data/lib/twilio-ruby/http/http_client.rb +20 -4
  18. data/lib/twilio-ruby/http.rb +5 -0
  19. data/lib/twilio-ruby/jwt/access_token.rb +13 -0
  20. data/lib/twilio-ruby/rest/api/v2010/account/address.rb +19 -3
  21. data/lib/twilio-ruby/rest/api/v2010/account/application.rb +22 -3
  22. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/local.rb +2 -2
  23. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/machine_to_machine.rb +2 -2
  24. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/mobile.rb +2 -2
  25. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/national.rb +2 -2
  26. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/shared_cost.rb +2 -2
  27. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/toll_free.rb +2 -2
  28. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/voip.rb +2 -2
  29. data/lib/twilio-ruby/rest/api/v2010/account/call/event.rb +4 -4
  30. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb +28 -28
  31. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb +10 -10
  32. data/lib/twilio-ruby/rest/api/v2010/account/call/payment.rb +8 -8
  33. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +2 -2
  34. data/lib/twilio-ruby/rest/api/v2010/account/call/siprec.rb +674 -0
  35. data/lib/twilio-ruby/rest/api/v2010/account/call/stream.rb +674 -0
  36. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message.rb +160 -0
  37. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message_subscription.rb +251 -0
  38. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +130 -11
  39. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +67 -24
  40. data/lib/twilio-ruby/rest/api/v2010/account/conference/recording.rb +2 -2
  41. data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +5 -5
  42. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +11 -4
  43. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +11 -4
  44. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +11 -4
  45. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +17 -10
  46. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +34 -5
  47. data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +2 -2
  48. data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +6 -6
  49. data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +1 -1
  50. data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +35 -8
  51. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb +11 -11
  52. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/ip_access_control_list_mapping.rb +11 -11
  53. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +5 -5
  54. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb +3 -3
  55. data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +1 -1
  56. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +1 -1
  57. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +1 -1
  58. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +1 -1
  59. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +1 -1
  60. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +1 -1
  61. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +1 -1
  62. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +1 -1
  63. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +1 -1
  64. data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +1 -1
  65. data/lib/twilio-ruby/rest/api/v2010.rb +5 -4
  66. data/lib/twilio-ruby/rest/api.rb +1 -1
  67. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_statistics.rb +2 -2
  68. data/lib/twilio-ruby/rest/autopilot/v1.rb +5 -4
  69. data/lib/twilio-ruby/rest/bulkexports/v1/export/day.rb +1 -9
  70. data/lib/twilio-ruby/rest/bulkexports/v1/export/export_custom_job.rb +15 -7
  71. data/lib/twilio-ruby/rest/bulkexports/v1/export/job.rb +15 -9
  72. data/lib/twilio-ruby/rest/bulkexports/v1/export.rb +0 -8
  73. data/lib/twilio-ruby/rest/bulkexports/v1/export_configuration.rb +0 -8
  74. data/lib/twilio-ruby/rest/bulkexports/v1.rb +10 -8
  75. data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +1 -1
  76. data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +2 -2
  77. data/lib/twilio-ruby/rest/chat/v1/service/user.rb +1 -1
  78. data/lib/twilio-ruby/rest/chat/v1/service.rb +2 -2
  79. data/lib/twilio-ruby/rest/chat/v1.rb +10 -8
  80. data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +1 -1
  81. data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +2 -2
  82. data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +10 -4
  83. data/lib/twilio-ruby/rest/chat/v2/service/user.rb +1 -1
  84. data/lib/twilio-ruby/rest/chat/v2/service.rb +4 -4
  85. data/lib/twilio-ruby/rest/chat/v2.rb +10 -8
  86. data/lib/twilio-ruby/rest/chat/v3/channel.rb +275 -0
  87. data/lib/twilio-ruby/rest/chat/v3.rb +48 -0
  88. data/lib/twilio-ruby/rest/chat.rb +16 -0
  89. data/lib/twilio-ruby/rest/client.rb +57 -13
  90. data/lib/twilio-ruby/rest/content/v1/content/approval_fetch.rb +195 -0
  91. data/lib/twilio-ruby/rest/content/v1/content.rb +346 -0
  92. data/lib/twilio-ruby/rest/content/v1/content_and_approvals.rb +240 -0
  93. data/lib/twilio-ruby/rest/content/v1/legacy_content.rb +254 -0
  94. data/lib/twilio-ruby/rest/content/v1.rb +59 -0
  95. data/lib/twilio-ruby/rest/content.rb +59 -0
  96. data/lib/twilio-ruby/rest/conversations/v1/address_configuration.rb +454 -0
  97. data/lib/twilio-ruby/rest/conversations/v1/conversation/message/delivery_receipt.rb +1 -1
  98. data/lib/twilio-ruby/rest/conversations/v1/conversation/message.rb +29 -7
  99. data/lib/twilio-ruby/rest/conversations/v1/conversation.rb +50 -5
  100. data/lib/twilio-ruby/rest/conversations/v1/participant_conversation.rb +312 -0
  101. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb +18 -2
  102. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb +269 -0
  103. data/lib/twilio-ruby/rest/conversations/v1/service/configuration.rb +8 -0
  104. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message/delivery_receipt.rb +1 -1
  105. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message.rb +29 -7
  106. data/lib/twilio-ruby/rest/conversations/v1/service/conversation.rb +50 -5
  107. data/lib/twilio-ruby/rest/conversations/v1/service/participant_conversation.rb +324 -0
  108. data/lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb +466 -0
  109. data/lib/twilio-ruby/rest/conversations/v1/service/user.rb +44 -0
  110. data/lib/twilio-ruby/rest/conversations/v1/service.rb +23 -0
  111. data/lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb +442 -0
  112. data/lib/twilio-ruby/rest/conversations/v1/user.rb +35 -0
  113. data/lib/twilio-ruby/rest/conversations/v1.rb +49 -20
  114. data/lib/twilio-ruby/rest/conversations.rb +15 -0
  115. data/lib/twilio-ruby/rest/events/v1/event_type.rb +16 -9
  116. data/lib/twilio-ruby/rest/events/v1/schema/{schema_version.rb → version.rb} +42 -42
  117. data/lib/twilio-ruby/rest/events/v1/schema.rb +16 -16
  118. data/lib/twilio-ruby/rest/events/v1/sink/sink_test.rb +3 -3
  119. data/lib/twilio-ruby/rest/events/v1/sink/sink_validate.rb +3 -3
  120. data/lib/twilio-ruby/rest/events/v1/sink.rb +47 -10
  121. data/lib/twilio-ruby/rest/events/v1/subscription/subscribed_event.rb +139 -9
  122. data/lib/twilio-ruby/rest/events/v1/subscription.rb +15 -8
  123. data/lib/twilio-ruby/rest/events/v1.rb +20 -16
  124. data/lib/twilio-ruby/rest/flex_api/v1/assessments.rb +397 -0
  125. data/lib/twilio-ruby/rest/flex_api/v1/configuration.rb +56 -0
  126. data/lib/twilio-ruby/rest/flex_api/v1/flex_flow.rb +55 -34
  127. data/lib/twilio-ruby/rest/flex_api/v1/insights_assessments_comment.rb +314 -0
  128. data/lib/twilio-ruby/rest/flex_api/v1/insights_conversations.rb +216 -0
  129. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires.rb +394 -0
  130. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_category.rb +313 -0
  131. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_question.rb +390 -0
  132. data/lib/twilio-ruby/rest/flex_api/v1/insights_segments.rb +413 -0
  133. data/lib/twilio-ruby/rest/{preview/trusted_comms/brands_information.rb → flex_api/v1/insights_session.rb} +58 -55
  134. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_answersets.rb +144 -0
  135. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_comment.rb +130 -0
  136. data/lib/twilio-ruby/rest/{preview/trusted_comms/cps.rb → flex_api/v1/insights_user_roles.rb} +42 -54
  137. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_invite.rb +236 -0
  138. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_participant.rb +330 -0
  139. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb +405 -0
  140. data/lib/twilio-ruby/rest/{preview/trusted_comms/branded_channel.rb → flex_api/v1/interaction.rb} +76 -68
  141. data/lib/twilio-ruby/rest/flex_api/v1.rb +153 -12
  142. data/lib/twilio-ruby/rest/flex_api/v2/web_channels.rb +133 -0
  143. data/lib/twilio-ruby/rest/flex_api/v2.rb +35 -0
  144. data/lib/twilio-ruby/rest/flex_api.rb +98 -0
  145. data/lib/twilio-ruby/rest/frontline_api/v1/user.rb +258 -0
  146. data/lib/twilio-ruby/rest/frontline_api/v1.rb +45 -0
  147. data/lib/twilio-ruby/rest/{fax.rb → frontline_api.rb} +11 -11
  148. data/lib/twilio-ruby/rest/insights/v1/call/annotation.rb +322 -0
  149. data/lib/twilio-ruby/rest/insights/v1/call/summary.rb +14 -0
  150. data/lib/twilio-ruby/rest/insights/v1/call.rb +16 -8
  151. data/lib/twilio-ruby/rest/insights/v1/call_summaries.rb +447 -0
  152. data/lib/twilio-ruby/rest/insights/v1/conference/conference_participant.rb +474 -0
  153. data/lib/twilio-ruby/rest/insights/v1/conference.rb +512 -0
  154. data/lib/twilio-ruby/rest/insights/v1/room/participant.rb +23 -23
  155. data/lib/twilio-ruby/rest/insights/v1/room.rb +58 -46
  156. data/lib/twilio-ruby/rest/insights/v1/setting.rb +215 -0
  157. data/lib/twilio-ruby/rest/insights/v1.rb +41 -9
  158. data/lib/twilio-ruby/rest/insights.rb +21 -1
  159. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +1 -1
  160. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +2 -2
  161. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +1 -1
  162. data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +2 -2
  163. data/lib/twilio-ruby/rest/ip_messaging/v1.rb +10 -8
  164. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +1 -1
  165. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +2 -2
  166. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +1 -1
  167. data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +4 -4
  168. data/lib/twilio-ruby/rest/ip_messaging/v2.rb +10 -8
  169. data/lib/twilio-ruby/rest/lookups/v1.rb +5 -4
  170. data/lib/twilio-ruby/rest/lookups/v2/phone_number.rb +343 -0
  171. data/lib/twilio-ruby/rest/lookups/v2.rb +45 -0
  172. data/lib/twilio-ruby/rest/lookups.rb +7 -0
  173. data/lib/twilio-ruby/rest/media/v1/media_processor.rb +397 -0
  174. data/lib/twilio-ruby/rest/media/v1/media_recording.rb +399 -0
  175. data/lib/twilio-ruby/rest/media/v1/player_streamer/playback_grant.rb +221 -0
  176. data/lib/twilio-ruby/rest/media/v1/player_streamer.rb +403 -0
  177. data/lib/twilio-ruby/rest/media/v1.rb +76 -0
  178. data/lib/twilio-ruby/rest/media.rb +65 -0
  179. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_registration_otp.rb +134 -0
  180. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_vetting.rb +353 -0
  181. data/lib/twilio-ruby/rest/messaging/v1/brand_registration.rb +476 -0
  182. data/lib/twilio-ruby/rest/messaging/v1/domain_cert.rb +257 -0
  183. data/lib/twilio-ruby/rest/messaging/v1/domain_config.rb +242 -0
  184. data/lib/twilio-ruby/rest/messaging/v1/domain_config_messaging_service.rb +226 -0
  185. data/lib/twilio-ruby/rest/messaging/v1/external_campaign.rb +150 -0
  186. data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service.rb +218 -0
  187. data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +2 -2
  188. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person.rb +528 -0
  189. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person_usecase.rb +129 -0
  190. data/lib/twilio-ruby/rest/messaging/v1/service.rb +145 -27
  191. data/lib/twilio-ruby/rest/messaging/v1/tollfree_verification.rb +723 -0
  192. data/lib/twilio-ruby/rest/messaging/v1/usecase.rb +111 -0
  193. data/lib/twilio-ruby/rest/messaging/v1.rb +126 -4
  194. data/lib/twilio-ruby/rest/messaging.rb +64 -0
  195. data/lib/twilio-ruby/rest/microvisor/v1/account_config.rb +317 -0
  196. data/lib/twilio-ruby/rest/microvisor/v1/account_secret.rb +310 -0
  197. data/lib/twilio-ruby/rest/microvisor/v1/app/app_manifest.rb +192 -0
  198. data/lib/twilio-ruby/rest/microvisor/v1/app.rb +330 -0
  199. data/lib/twilio-ruby/rest/microvisor/v1/device/device_config.rb +342 -0
  200. data/lib/twilio-ruby/rest/{preview/bulk_exports/export/day.rb → microvisor/v1/device/device_secret.rb} +125 -84
  201. data/lib/twilio-ruby/rest/microvisor/v1/device.rb +393 -0
  202. data/lib/twilio-ruby/rest/microvisor/v1.rb +92 -0
  203. data/lib/twilio-ruby/rest/microvisor.rb +70 -0
  204. data/lib/twilio-ruby/rest/monitor/v1.rb +10 -8
  205. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +1 -1
  206. data/lib/twilio-ruby/rest/notify/v1.rb +10 -8
  207. data/lib/twilio-ruby/rest/numbers/v1/eligibility.rb +111 -0
  208. data/lib/twilio-ruby/rest/numbers/v1.rb +35 -0
  209. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/bundle_copy.rb +268 -0
  210. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/replace_items.rb +188 -0
  211. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle.rb +128 -26
  212. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document.rb +7 -0
  213. data/lib/twilio-ruby/rest/numbers.rb +13 -0
  214. data/lib/twilio-ruby/rest/oauth/v1/device_code.rb +153 -0
  215. data/lib/twilio-ruby/rest/oauth/v1/oauth.rb +162 -0
  216. data/lib/twilio-ruby/rest/oauth/v1/openid_discovery.rb +242 -0
  217. data/lib/twilio-ruby/rest/oauth/v1/token.rb +157 -0
  218. data/lib/twilio-ruby/rest/oauth/v1/user_info.rb +193 -0
  219. data/lib/twilio-ruby/rest/oauth/v1.rb +63 -0
  220. data/lib/twilio-ruby/rest/oauth.rb +68 -0
  221. data/lib/twilio-ruby/rest/preview/deployed_devices.rb +5 -4
  222. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document/dependent_hosted_number_order.rb +2 -2
  223. data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +2 -2
  224. data/lib/twilio-ruby/rest/preview/hosted_numbers.rb +10 -8
  225. data/lib/twilio-ruby/rest/preview/marketplace.rb +10 -8
  226. data/lib/twilio-ruby/rest/preview/sync/service/document.rb +4 -8
  227. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_item.rb +1 -1
  228. data/lib/twilio-ruby/rest/preview/sync.rb +5 -4
  229. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_statistics.rb +2 -2
  230. data/lib/twilio-ruby/rest/preview/understand.rb +5 -4
  231. data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +1 -1
  232. data/lib/twilio-ruby/rest/preview/wireless.rb +15 -12
  233. data/lib/twilio-ruby/rest/preview.rb +0 -58
  234. data/lib/twilio-ruby/rest/pricing/v2/country.rb +280 -0
  235. data/lib/twilio-ruby/rest/pricing/v2/number.rb +225 -0
  236. data/lib/twilio-ruby/rest/pricing/v2.rb +37 -0
  237. data/lib/twilio-ruby/rest/pricing.rb +19 -0
  238. data/lib/twilio-ruby/rest/proxy/v1/service/phone_number.rb +1 -1
  239. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb +2 -15
  240. data/lib/twilio-ruby/rest/proxy/v1/service/session.rb +5 -46
  241. data/lib/twilio-ruby/rest/proxy/v1/service.rb +1 -1
  242. data/lib/twilio-ruby/rest/proxy/v1.rb +5 -4
  243. data/lib/twilio-ruby/rest/routes/v2/phone_number.rb +235 -0
  244. data/lib/twilio-ruby/rest/routes/v2/sip_domain.rb +231 -0
  245. data/lib/twilio-ruby/rest/routes/v2/trunk.rb +235 -0
  246. data/lib/twilio-ruby/rest/routes/v2.rb +76 -0
  247. data/lib/twilio-ruby/rest/routes.rb +62 -0
  248. data/lib/twilio-ruby/rest/serverless/v1/service/build.rb +11 -1
  249. data/lib/twilio-ruby/rest/serverless/v1/service/environment.rb +1 -1
  250. data/lib/twilio-ruby/rest/serverless/v1/service.rb +7 -0
  251. data/lib/twilio-ruby/rest/serverless/v1.rb +5 -4
  252. data/lib/twilio-ruby/rest/studio/v1/flow/execution.rb +1 -1
  253. data/lib/twilio-ruby/rest/studio/v1/flow.rb +1 -1
  254. data/lib/twilio-ruby/rest/studio/v1.rb +5 -4
  255. data/lib/twilio-ruby/rest/studio/v2/flow/execution.rb +1 -1
  256. data/lib/twilio-ruby/rest/studio/v2/flow/flow_revision.rb +1 -1
  257. data/lib/twilio-ruby/rest/studio/v2/flow.rb +1 -1
  258. data/lib/twilio-ruby/rest/studio/v2.rb +5 -4
  259. data/lib/twilio-ruby/rest/supersim/v1/esim_profile.rb +392 -0
  260. data/lib/twilio-ruby/rest/supersim/v1/fleet.rb +95 -44
  261. data/lib/twilio-ruby/rest/supersim/v1/ip_command.rb +419 -0
  262. data/lib/twilio-ruby/rest/supersim/v1/settings_update.rb +247 -0
  263. data/lib/twilio-ruby/rest/supersim/v1/sim/billing_period.rb +231 -0
  264. data/lib/twilio-ruby/rest/supersim/v1/sim/sim_ip_address.rb +195 -0
  265. data/lib/twilio-ruby/rest/supersim/v1/sim.rb +65 -0
  266. data/lib/twilio-ruby/rest/supersim/v1/{command.rb → sms_command.rb} +81 -78
  267. data/lib/twilio-ruby/rest/supersim/v1/usage_record.rb +26 -12
  268. data/lib/twilio-ruby/rest/supersim/v1.rb +69 -25
  269. data/lib/twilio-ruby/rest/supersim.rb +30 -6
  270. data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +0 -8
  271. data/lib/twilio-ruby/rest/sync/v1/service/document.rb +13 -32
  272. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +39 -46
  273. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +0 -8
  274. data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +9 -23
  275. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +38 -47
  276. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +0 -8
  277. data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +9 -23
  278. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream/stream_message.rb +0 -6
  279. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream.rb +9 -23
  280. data/lib/twilio-ruby/rest/sync/v1/service.rb +1 -9
  281. data/lib/twilio-ruby/rest/sync/v1.rb +5 -4
  282. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/activity.rb +7 -0
  283. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +1 -1
  284. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +25 -8
  285. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +34 -10
  286. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics.rb +18 -14
  287. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics.rb +5 -5
  288. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +10 -4
  289. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +7 -3
  290. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_channel.rb +3 -3
  291. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_cumulative_statistics.rb +6 -6
  292. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_real_time_statistics.rb +1 -1
  293. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +32 -14
  294. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics.rb +17 -15
  295. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_real_time_statistics.rb +2 -2
  296. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +1 -1
  297. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_cumulative_statistics.rb +17 -15
  298. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_real_time_statistics.rb +3 -3
  299. data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +45 -30
  300. data/lib/twilio-ruby/rest/taskrouter/v1.rb +5 -4
  301. data/lib/twilio-ruby/rest/trunking/v1/trunk/origination_url.rb +2 -2
  302. data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +19 -3
  303. data/lib/twilio-ruby/rest/trunking/v1.rb +5 -4
  304. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_channel_endpoint_assignment.rb +359 -0
  305. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_entity_assignments.rb +330 -0
  306. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_evaluations.rb +328 -0
  307. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles.rb +523 -0
  308. data/lib/twilio-ruby/rest/trusthub/v1/end_user.rb +356 -0
  309. data/lib/twilio-ruby/rest/trusthub/v1/end_user_type.rb +271 -0
  310. data/lib/twilio-ruby/rest/trusthub/v1/policies.rb +262 -0
  311. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document.rb +369 -0
  312. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document_type.rb +271 -0
  313. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_channel_endpoint_assignment.rb +359 -0
  314. data/lib/twilio-ruby/rest/{fax/v1/fax/fax_media.rb → trusthub/v1/trust_products/trust_products_entity_assignments.rb} +101 -85
  315. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_evaluations.rb +328 -0
  316. data/lib/twilio-ruby/rest/trusthub/v1/trust_products.rb +523 -0
  317. data/lib/twilio-ruby/rest/trusthub/v1.rb +146 -0
  318. data/lib/twilio-ruby/rest/trusthub.rb +100 -0
  319. data/lib/twilio-ruby/rest/verify/v2/safelist.rb +215 -0
  320. data/lib/twilio-ruby/rest/verify/v2/service/access_token.rb +153 -16
  321. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge/notification.rb +199 -0
  322. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb +111 -28
  323. data/lib/twilio-ruby/rest/verify/v2/service/entity/factor.rb +68 -68
  324. data/lib/twilio-ruby/rest/verify/v2/service/entity/new_factor.rb +303 -0
  325. data/lib/twilio-ruby/rest/verify/v2/service/entity.rb +31 -11
  326. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb +2 -2
  327. data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +31 -8
  328. data/lib/twilio-ruby/rest/verify/v2/service/verification_check.rb +8 -1
  329. data/lib/twilio-ruby/rest/verify/v2/service/webhook.rb +24 -13
  330. data/lib/twilio-ruby/rest/verify/v2/service.rb +102 -15
  331. data/lib/twilio-ruby/rest/verify/v2/template.rb +213 -0
  332. data/lib/twilio-ruby/rest/verify/v2/verification_attempt.rb +397 -0
  333. data/lib/twilio-ruby/rest/verify/v2/verification_attempts_summary.rb +234 -0
  334. data/lib/twilio-ruby/rest/verify/v2.rb +58 -8
  335. data/lib/twilio-ruby/rest/verify.rb +29 -0
  336. data/lib/twilio-ruby/rest/video/v1/composition.rb +24 -11
  337. data/lib/twilio-ruby/rest/video/v1/composition_hook.rb +0 -8
  338. data/lib/twilio-ruby/rest/video/v1/recording.rb +23 -2
  339. data/lib/twilio-ruby/rest/video/v1/room/recording.rb +9 -2
  340. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_anonymize.rb +240 -0
  341. data/lib/twilio-ruby/rest/video/v1/room/room_participant.rb +16 -0
  342. data/lib/twilio-ruby/rest/video/v1/room/room_recording_rule.rb +0 -6
  343. data/lib/twilio-ruby/rest/video/v1/room.rb +66 -6
  344. data/lib/twilio-ruby/rest/video/v1.rb +20 -16
  345. data/lib/twilio-ruby/rest/voice/v1/archived_call.rb +184 -0
  346. data/lib/twilio-ruby/rest/voice/v1/connection_policy/connection_policy_target.rb +2 -2
  347. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/bulk_country_update.rb +1 -1
  348. data/lib/twilio-ruby/rest/voice/v1/ip_record.rb +1 -1
  349. data/lib/twilio-ruby/rest/voice/v1.rb +41 -16
  350. data/lib/twilio-ruby/rest/voice.rb +8 -0
  351. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +6 -6
  352. data/lib/twilio-ruby/rest/wireless/v1/sim/data_session.rb +2 -2
  353. data/lib/twilio-ruby/rest/wireless/v1/sim.rb +16 -26
  354. data/lib/twilio-ruby/rest/wireless/v1.rb +15 -12
  355. data/lib/twilio-ruby/rest.rb +13 -0
  356. data/lib/twilio-ruby/security/request_validator.rb +1 -1
  357. data/lib/twilio-ruby/twiml/voice_response.rb +919 -155
  358. data/lib/twilio-ruby/version.rb +1 -1
  359. data/lib/twilio-ruby.rb +6 -16
  360. data/sonar-project.properties +13 -0
  361. data/twilio-ruby.gemspec +3 -4
  362. metadata +144 -864
  363. data/.travis.yml +0 -45
  364. data/lib/twilio-ruby/rest/fax/v1/fax.rb +0 -536
  365. data/lib/twilio-ruby/rest/fax/v1.rb +0 -44
  366. data/lib/twilio-ruby/rest/preview/bulk_exports/export/export_custom_job.rb +0 -275
  367. data/lib/twilio-ruby/rest/preview/bulk_exports/export/job.rb +0 -249
  368. data/lib/twilio-ruby/rest/preview/bulk_exports/export.rb +0 -251
  369. data/lib/twilio-ruby/rest/preview/bulk_exports/export_configuration.rb +0 -234
  370. data/lib/twilio-ruby/rest/preview/bulk_exports.rb +0 -60
  371. data/lib/twilio-ruby/rest/preview/trusted_comms/branded_channel/channel.rb +0 -165
  372. data/lib/twilio-ruby/rest/preview/trusted_comms/current_call.rb +0 -277
  373. data/lib/twilio-ruby/rest/preview/trusted_comms.rb +0 -64
  374. data/spec/framework/request_spec.rb +0 -36
  375. data/spec/framework/serialize_spec.rb +0 -80
  376. data/spec/framework/version_spec.rb +0 -219
  377. data/spec/holodeck/holodeck.rb +0 -66
  378. data/spec/holodeck/hologram.rb +0 -4
  379. data/spec/http/http_client_spec.rb +0 -122
  380. data/spec/integration/accounts/v1/auth_token_promotion_spec.rb +0 -44
  381. data/spec/integration/accounts/v1/credential/aws_spec.rb +0 -222
  382. data/spec/integration/accounts/v1/credential/public_key_spec.rb +0 -222
  383. data/spec/integration/accounts/v1/credential_spec.rb +0 -12
  384. data/spec/integration/accounts/v1/secondary_auth_token_spec.rb +0 -69
  385. data/spec/integration/api/v2010/account/address/dependent_phone_number_spec.rb +0 -106
  386. data/spec/integration/api/v2010/account/address_spec.rb +0 -269
  387. data/spec/integration/api/v2010/account/application_spec.rb +0 -274
  388. data/spec/integration/api/v2010/account/authorized_connect_app_spec.rb +0 -137
  389. data/spec/integration/api/v2010/account/available_phone_number/local_spec.rb +0 -102
  390. data/spec/integration/api/v2010/account/available_phone_number/machine_to_machine_spec.rb +0 -102
  391. data/spec/integration/api/v2010/account/available_phone_number/mobile_spec.rb +0 -101
  392. data/spec/integration/api/v2010/account/available_phone_number/national_spec.rb +0 -102
  393. data/spec/integration/api/v2010/account/available_phone_number/shared_cost_spec.rb +0 -102
  394. data/spec/integration/api/v2010/account/available_phone_number/toll_free_spec.rb +0 -101
  395. data/spec/integration/api/v2010/account/available_phone_number/voip_spec.rb +0 -102
  396. data/spec/integration/api/v2010/account/available_phone_number_spec.rb +0 -128
  397. data/spec/integration/api/v2010/account/balance_spec.rb +0 -44
  398. data/spec/integration/api/v2010/account/call/event_spec.rb +0 -102
  399. data/spec/integration/api/v2010/account/call/feedback_spec.rb +0 -138
  400. data/spec/integration/api/v2010/account/call/feedback_summary_spec.rb +0 -149
  401. data/spec/integration/api/v2010/account/call/notification_spec.rb +0 -143
  402. data/spec/integration/api/v2010/account/call/payment_spec.rb +0 -135
  403. data/spec/integration/api/v2010/account/call/recording_spec.rb +0 -287
  404. data/spec/integration/api/v2010/account/call_spec.rb +0 -660
  405. data/spec/integration/api/v2010/account/conference/participant_spec.rb +0 -768
  406. data/spec/integration/api/v2010/account/conference/recording_spec.rb +0 -234
  407. data/spec/integration/api/v2010/account/conference_spec.rb +0 -458
  408. data/spec/integration/api/v2010/account/connect_app_spec.rb +0 -197
  409. data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension_spec.rb +0 -135
  410. data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on_spec.rb +0 -220
  411. data/spec/integration/api/v2010/account/incoming_phone_number/local_spec.rb +0 -189
  412. data/spec/integration/api/v2010/account/incoming_phone_number/mobile_spec.rb +0 -189
  413. data/spec/integration/api/v2010/account/incoming_phone_number/toll_free_spec.rb +0 -189
  414. data/spec/integration/api/v2010/account/incoming_phone_number_spec.rb +0 -370
  415. data/spec/integration/api/v2010/account/key_spec.rb +0 -176
  416. data/spec/integration/api/v2010/account/message/feedback_spec.rb +0 -49
  417. data/spec/integration/api/v2010/account/message/media_spec.rb +0 -161
  418. data/spec/integration/api/v2010/account/message_spec.rb +0 -507
  419. data/spec/integration/api/v2010/account/new_key_spec.rb +0 -46
  420. data/spec/integration/api/v2010/account/new_signing_key_spec.rb +0 -46
  421. data/spec/integration/api/v2010/account/notification_spec.rb +0 -138
  422. data/spec/integration/api/v2010/account/outgoing_caller_id_spec.rb +0 -185
  423. data/spec/integration/api/v2010/account/queue/member_spec.rb +0 -208
  424. data/spec/integration/api/v2010/account/queue_spec.rb +0 -244
  425. data/spec/integration/api/v2010/account/recording/add_on_result/payload_spec.rb +0 -174
  426. data/spec/integration/api/v2010/account/recording/add_on_result_spec.rb +0 -165
  427. data/spec/integration/api/v2010/account/recording/transcription_spec.rb +0 -173
  428. data/spec/integration/api/v2010/account/recording_spec.rb +0 -184
  429. data/spec/integration/api/v2010/account/short_code_spec.rb +0 -179
  430. data/spec/integration/api/v2010/account/signing_key_spec.rb +0 -176
  431. data/spec/integration/api/v2010/account/sip/credential_list/credential_spec.rb +0 -252
  432. data/spec/integration/api/v2010/account/sip/credential_list_spec.rb +0 -241
  433. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_credential_list_mapping_spec.rb +0 -217
  434. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_ip_access_control_list_mapping_spec.rb +0 -217
  435. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_calls_mapping_spec.rb +0 -12
  436. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping/auth_registrations_credential_list_mapping_spec.rb +0 -217
  437. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping_spec.rb +0 -12
  438. data/spec/integration/api/v2010/account/sip/domain/auth_types_spec.rb +0 -12
  439. data/spec/integration/api/v2010/account/sip/domain/credential_list_mapping_spec.rb +0 -207
  440. data/spec/integration/api/v2010/account/sip/domain/ip_access_control_list_mapping_spec.rb +0 -217
  441. data/spec/integration/api/v2010/account/sip/domain_spec.rb +0 -303
  442. data/spec/integration/api/v2010/account/sip/ip_access_control_list/ip_address_spec.rb +0 -254
  443. data/spec/integration/api/v2010/account/sip/ip_access_control_list_spec.rb +0 -251
  444. data/spec/integration/api/v2010/account/sip_spec.rb +0 -12
  445. data/spec/integration/api/v2010/account/token_spec.rb +0 -71
  446. data/spec/integration/api/v2010/account/transcription_spec.rb +0 -166
  447. data/spec/integration/api/v2010/account/usage/record/all_time_spec.rb +0 -113
  448. data/spec/integration/api/v2010/account/usage/record/daily_spec.rb +0 -113
  449. data/spec/integration/api/v2010/account/usage/record/last_month_spec.rb +0 -113
  450. data/spec/integration/api/v2010/account/usage/record/monthly_spec.rb +0 -113
  451. data/spec/integration/api/v2010/account/usage/record/this_month_spec.rb +0 -113
  452. data/spec/integration/api/v2010/account/usage/record/today_spec.rb +0 -113
  453. data/spec/integration/api/v2010/account/usage/record/yearly_spec.rb +0 -113
  454. data/spec/integration/api/v2010/account/usage/record/yesterday_spec.rb +0 -113
  455. data/spec/integration/api/v2010/account/usage/record_spec.rb +0 -110
  456. data/spec/integration/api/v2010/account/usage/trigger_spec.rb +0 -281
  457. data/spec/integration/api/v2010/account/usage_spec.rb +0 -12
  458. data/spec/integration/api/v2010/account/validation_request_spec.rb +0 -48
  459. data/spec/integration/api/v2010/account_spec.rb +0 -327
  460. data/spec/integration/autopilot/v1/assistant/defaults_spec.rb +0 -79
  461. data/spec/integration/autopilot/v1/assistant/dialogue_spec.rb +0 -46
  462. data/spec/integration/autopilot/v1/assistant/field_type/field_value_spec.rb +0 -207
  463. data/spec/integration/autopilot/v1/assistant/field_type_spec.rb +0 -242
  464. data/spec/integration/autopilot/v1/assistant/model_build_spec.rb +0 -236
  465. data/spec/integration/autopilot/v1/assistant/query_spec.rb +0 -290
  466. data/spec/integration/autopilot/v1/assistant/style_sheet_spec.rb +0 -79
  467. data/spec/integration/autopilot/v1/assistant/task/field_spec.rb +0 -204
  468. data/spec/integration/autopilot/v1/assistant/task/sample_spec.rb +0 -249
  469. data/spec/integration/autopilot/v1/assistant/task/task_actions_spec.rb +0 -85
  470. data/spec/integration/autopilot/v1/assistant/task/task_statistics_spec.rb +0 -49
  471. data/spec/integration/autopilot/v1/assistant/task_spec.rb +0 -258
  472. data/spec/integration/autopilot/v1/assistant/webhook_spec.rb +0 -242
  473. data/spec/integration/autopilot/v1/assistant_spec.rb +0 -277
  474. data/spec/integration/autopilot/v1/restore_assistant_spec.rb +0 -53
  475. data/spec/integration/bulkexports/v1/export/day_spec.rb +0 -115
  476. data/spec/integration/bulkexports/v1/export/export_custom_job_spec.rb +0 -129
  477. data/spec/integration/bulkexports/v1/export/job_spec.rb +0 -78
  478. data/spec/integration/bulkexports/v1/export_configuration_spec.rb +0 -77
  479. data/spec/integration/bulkexports/v1/export_spec.rb +0 -44
  480. data/spec/integration/chat/v1/credential_spec.rb +0 -219
  481. data/spec/integration/chat/v1/service/channel/invite_spec.rb +0 -207
  482. data/spec/integration/chat/v1/service/channel/member_spec.rb +0 -280
  483. data/spec/integration/chat/v1/service/channel/message_spec.rb +0 -290
  484. data/spec/integration/chat/v1/service/channel_spec.rb +0 -272
  485. data/spec/integration/chat/v1/service/role_spec.rb +0 -260
  486. data/spec/integration/chat/v1/service/user/user_channel_spec.rb +0 -93
  487. data/spec/integration/chat/v1/service/user_spec.rb +0 -262
  488. data/spec/integration/chat/v1/service_spec.rb +0 -295
  489. data/spec/integration/chat/v2/credential_spec.rb +0 -219
  490. data/spec/integration/chat/v2/service/binding_spec.rb +0 -174
  491. data/spec/integration/chat/v2/service/channel/invite_spec.rb +0 -207
  492. data/spec/integration/chat/v2/service/channel/member_spec.rb +0 -263
  493. data/spec/integration/chat/v2/service/channel/message_spec.rb +0 -406
  494. data/spec/integration/chat/v2/service/channel/webhook_spec.rb +0 -303
  495. data/spec/integration/chat/v2/service/channel_spec.rb +0 -282
  496. data/spec/integration/chat/v2/service/role_spec.rb +0 -260
  497. data/spec/integration/chat/v2/service/user/user_binding_spec.rb +0 -177
  498. data/spec/integration/chat/v2/service/user/user_channel_spec.rb +0 -247
  499. data/spec/integration/chat/v2/service/user_spec.rb +0 -270
  500. data/spec/integration/chat/v2/service_spec.rb +0 -350
  501. data/spec/integration/conversations/v1/configuration/webhook_spec.rb +0 -90
  502. data/spec/integration/conversations/v1/configuration_spec.rb +0 -87
  503. data/spec/integration/conversations/v1/conversation/message/delivery_receipt_spec.rb +0 -136
  504. data/spec/integration/conversations/v1/conversation/message_spec.rb +0 -409
  505. data/spec/integration/conversations/v1/conversation/participant_spec.rb +0 -402
  506. data/spec/integration/conversations/v1/conversation/webhook_spec.rb +0 -282
  507. data/spec/integration/conversations/v1/conversation_spec.rb +0 -278
  508. data/spec/integration/conversations/v1/credential_spec.rb +0 -219
  509. data/spec/integration/conversations/v1/role_spec.rb +0 -249
  510. data/spec/integration/conversations/v1/service/binding_spec.rb +0 -166
  511. data/spec/integration/conversations/v1/service/configuration/notification_spec.rb +0 -115
  512. data/spec/integration/conversations/v1/service/configuration_spec.rb +0 -89
  513. data/spec/integration/conversations/v1/service/conversation/message/delivery_receipt_spec.rb +0 -144
  514. data/spec/integration/conversations/v1/service/conversation/message_spec.rb +0 -429
  515. data/spec/integration/conversations/v1/service/conversation/participant_spec.rb +0 -427
  516. data/spec/integration/conversations/v1/service/conversation/webhook_spec.rb +0 -299
  517. data/spec/integration/conversations/v1/service/conversation_spec.rb +0 -289
  518. data/spec/integration/conversations/v1/service/role_spec.rb +0 -260
  519. data/spec/integration/conversations/v1/service/user_spec.rb +0 -241
  520. data/spec/integration/conversations/v1/service_spec.rb +0 -174
  521. data/spec/integration/conversations/v1/user_spec.rb +0 -231
  522. data/spec/integration/events/v1/event_type_spec.rb +0 -133
  523. data/spec/integration/events/v1/schema/schema_version_spec.rb +0 -126
  524. data/spec/integration/events/v1/schema_spec.rb +0 -46
  525. data/spec/integration/events/v1/sink/sink_test_spec.rb +0 -42
  526. data/spec/integration/events/v1/sink/sink_validate_spec.rb +0 -44
  527. data/spec/integration/events/v1/sink_spec.rb +0 -231
  528. data/spec/integration/events/v1/subscription/subscribed_event_spec.rb +0 -91
  529. data/spec/integration/events/v1/subscription_spec.rb +0 -292
  530. data/spec/integration/fax/v1/fax/fax_media_spec.rb +0 -125
  531. data/spec/integration/fax/v1/fax_spec.rb +0 -267
  532. data/spec/integration/flex_api/v1/channel_spec.rb +0 -188
  533. data/spec/integration/flex_api/v1/configuration_spec.rb +0 -554
  534. data/spec/integration/flex_api/v1/flex_flow_spec.rb +0 -259
  535. data/spec/integration/flex_api/v1/web_channel_spec.rb +0 -216
  536. data/spec/integration/insights/v1/call/event_spec.rb +0 -166
  537. data/spec/integration/insights/v1/call/metric_spec.rb +0 -154
  538. data/spec/integration/insights/v1/call/summary_spec.rb +0 -64
  539. data/spec/integration/insights/v1/call_spec.rb +0 -46
  540. data/spec/integration/insights/v1/room/participant_spec.rb +0 -147
  541. data/spec/integration/insights/v1/room_spec.rb +0 -164
  542. data/spec/integration/ip_messaging/v1/credential_spec.rb +0 -219
  543. data/spec/integration/ip_messaging/v1/service/channel/invite_spec.rb +0 -207
  544. data/spec/integration/ip_messaging/v1/service/channel/member_spec.rb +0 -280
  545. data/spec/integration/ip_messaging/v1/service/channel/message_spec.rb +0 -290
  546. data/spec/integration/ip_messaging/v1/service/channel_spec.rb +0 -272
  547. data/spec/integration/ip_messaging/v1/service/role_spec.rb +0 -260
  548. data/spec/integration/ip_messaging/v1/service/user/user_channel_spec.rb +0 -93
  549. data/spec/integration/ip_messaging/v1/service/user_spec.rb +0 -262
  550. data/spec/integration/ip_messaging/v1/service_spec.rb +0 -295
  551. data/spec/integration/ip_messaging/v2/credential_spec.rb +0 -219
  552. data/spec/integration/ip_messaging/v2/service/binding_spec.rb +0 -174
  553. data/spec/integration/ip_messaging/v2/service/channel/invite_spec.rb +0 -207
  554. data/spec/integration/ip_messaging/v2/service/channel/member_spec.rb +0 -263
  555. data/spec/integration/ip_messaging/v2/service/channel/message_spec.rb +0 -406
  556. data/spec/integration/ip_messaging/v2/service/channel/webhook_spec.rb +0 -303
  557. data/spec/integration/ip_messaging/v2/service/channel_spec.rb +0 -282
  558. data/spec/integration/ip_messaging/v2/service/role_spec.rb +0 -260
  559. data/spec/integration/ip_messaging/v2/service/user/user_binding_spec.rb +0 -177
  560. data/spec/integration/ip_messaging/v2/service/user/user_channel_spec.rb +0 -247
  561. data/spec/integration/ip_messaging/v2/service/user_spec.rb +0 -270
  562. data/spec/integration/ip_messaging/v2/service_spec.rb +0 -350
  563. data/spec/integration/lookups/v1/phone_number_spec.rb +0 -336
  564. data/spec/integration/messaging/v1/deactivation_spec.rb +0 -40
  565. data/spec/integration/messaging/v1/service/alpha_sender_spec.rb +0 -173
  566. data/spec/integration/messaging/v1/service/phone_number_spec.rb +0 -198
  567. data/spec/integration/messaging/v1/service/short_code_spec.rb +0 -176
  568. data/spec/integration/messaging/v1/service_spec.rb +0 -267
  569. data/spec/integration/monitor/v1/alert_spec.rb +0 -138
  570. data/spec/integration/monitor/v1/event_spec.rb +0 -148
  571. data/spec/integration/notify/v1/credential_spec.rb +0 -219
  572. data/spec/integration/notify/v1/service/binding_spec.rb +0 -222
  573. data/spec/integration/notify/v1/service/notification_spec.rb +0 -98
  574. data/spec/integration/notify/v1/service_spec.rb +0 -289
  575. data/spec/integration/numbers/v2/regulatory_compliance/bundle/evaluation_spec.rb +0 -620
  576. data/spec/integration/numbers/v2/regulatory_compliance/bundle/item_assignment_spec.rb +0 -195
  577. data/spec/integration/numbers/v2/regulatory_compliance/bundle_spec.rb +0 -258
  578. data/spec/integration/numbers/v2/regulatory_compliance/end_user_spec.rb +0 -238
  579. data/spec/integration/numbers/v2/regulatory_compliance/end_user_type_spec.rb +0 -141
  580. data/spec/integration/numbers/v2/regulatory_compliance/regulation_spec.rb +0 -181
  581. data/spec/integration/numbers/v2/regulatory_compliance/supporting_document_spec.rb +0 -250
  582. data/spec/integration/numbers/v2/regulatory_compliance/supporting_document_type_spec.rb +0 -131
  583. data/spec/integration/numbers/v2/regulatory_compliance_spec.rb +0 -12
  584. data/spec/integration/preview/bulk_exports/export/day_spec.rb +0 -115
  585. data/spec/integration/preview/bulk_exports/export/export_custom_job_spec.rb +0 -129
  586. data/spec/integration/preview/bulk_exports/export/job_spec.rb +0 -78
  587. data/spec/integration/preview/bulk_exports/export_configuration_spec.rb +0 -77
  588. data/spec/integration/preview/bulk_exports/export_spec.rb +0 -44
  589. data/spec/integration/preview/deployed_devices/fleet/certificate_spec.rb +0 -234
  590. data/spec/integration/preview/deployed_devices/fleet/deployment_spec.rb +0 -228
  591. data/spec/integration/preview/deployed_devices/fleet/device_spec.rb +0 -244
  592. data/spec/integration/preview/deployed_devices/fleet/key_spec.rb +0 -232
  593. data/spec/integration/preview/deployed_devices/fleet_spec.rb +0 -241
  594. data/spec/integration/preview/hosted_numbers/authorization_document/dependent_hosted_number_order_spec.rb +0 -110
  595. data/spec/integration/preview/hosted_numbers/authorization_document_spec.rb +0 -224
  596. data/spec/integration/preview/hosted_numbers/hosted_number_order_spec.rb +0 -389
  597. data/spec/integration/preview/marketplace/available_add_on/available_add_on_extension_spec.rb +0 -121
  598. data/spec/integration/preview/marketplace/available_add_on_spec.rb +0 -142
  599. data/spec/integration/preview/marketplace/installed_add_on/installed_add_on_extension_spec.rb +0 -162
  600. data/spec/integration/preview/marketplace/installed_add_on_spec.rb +0 -250
  601. data/spec/integration/preview/sync/service/document/document_permission_spec.rb +0 -201
  602. data/spec/integration/preview/sync/service/document_spec.rb +0 -254
  603. data/spec/integration/preview/sync/service/sync_list/sync_list_item_spec.rb +0 -255
  604. data/spec/integration/preview/sync/service/sync_list/sync_list_permission_spec.rb +0 -201
  605. data/spec/integration/preview/sync/service/sync_list_spec.rb +0 -205
  606. data/spec/integration/preview/sync/service/sync_map/sync_map_item_spec.rb +0 -255
  607. data/spec/integration/preview/sync/service/sync_map/sync_map_permission_spec.rb +0 -201
  608. data/spec/integration/preview/sync/service/sync_map_spec.rb +0 -205
  609. data/spec/integration/preview/sync/service_spec.rb +0 -241
  610. data/spec/integration/preview/trusted_comms/branded_channel/channel_spec.rb +0 -50
  611. data/spec/integration/preview/trusted_comms/branded_channel_spec.rb +0 -47
  612. data/spec/integration/preview/trusted_comms/brands_information_spec.rb +0 -45
  613. data/spec/integration/preview/trusted_comms/cps_spec.rb +0 -44
  614. data/spec/integration/preview/trusted_comms/current_call_spec.rb +0 -58
  615. data/spec/integration/preview/understand/assistant/assistant_fallback_actions_spec.rb +0 -79
  616. data/spec/integration/preview/understand/assistant/assistant_initiation_actions_spec.rb +0 -79
  617. data/spec/integration/preview/understand/assistant/dialogue_spec.rb +0 -46
  618. data/spec/integration/preview/understand/assistant/field_type/field_value_spec.rb +0 -207
  619. data/spec/integration/preview/understand/assistant/field_type_spec.rb +0 -242
  620. data/spec/integration/preview/understand/assistant/model_build_spec.rb +0 -236
  621. data/spec/integration/preview/understand/assistant/query_spec.rb +0 -302
  622. data/spec/integration/preview/understand/assistant/style_sheet_spec.rb +0 -79
  623. data/spec/integration/preview/understand/assistant/task/field_spec.rb +0 -204
  624. data/spec/integration/preview/understand/assistant/task/sample_spec.rb +0 -249
  625. data/spec/integration/preview/understand/assistant/task/task_actions_spec.rb +0 -85
  626. data/spec/integration/preview/understand/assistant/task/task_statistics_spec.rb +0 -49
  627. data/spec/integration/preview/understand/assistant/task_spec.rb +0 -258
  628. data/spec/integration/preview/understand/assistant_spec.rb +0 -269
  629. data/spec/integration/preview/wireless/command_spec.rb +0 -167
  630. data/spec/integration/preview/wireless/rate_plan_spec.rb +0 -257
  631. data/spec/integration/preview/wireless/sim/usage_spec.rb +0 -50
  632. data/spec/integration/preview/wireless/sim_spec.rb +0 -207
  633. data/spec/integration/pricing/v1/messaging/country_spec.rb +0 -137
  634. data/spec/integration/pricing/v1/messaging_spec.rb +0 -12
  635. data/spec/integration/pricing/v1/phone_number/country_spec.rb +0 -128
  636. data/spec/integration/pricing/v1/phone_number_spec.rb +0 -12
  637. data/spec/integration/pricing/v1/voice/country_spec.rb +0 -138
  638. data/spec/integration/pricing/v1/voice/number_spec.rb +0 -55
  639. data/spec/integration/pricing/v1/voice_spec.rb +0 -12
  640. data/spec/integration/pricing/v2/voice/country_spec.rb +0 -179
  641. data/spec/integration/pricing/v2/voice/number_spec.rb +0 -61
  642. data/spec/integration/pricing/v2/voice_spec.rb +0 -12
  643. data/spec/integration/proxy/v1/service/phone_number_spec.rb +0 -231
  644. data/spec/integration/proxy/v1/service/session/interaction_spec.rb +0 -133
  645. data/spec/integration/proxy/v1/service/session/participant/message_interaction_spec.rb +0 -163
  646. data/spec/integration/proxy/v1/service/session/participant_spec.rb +0 -240
  647. data/spec/integration/proxy/v1/service/session_spec.rb +0 -225
  648. data/spec/integration/proxy/v1/service/short_code_spec.rb +0 -225
  649. data/spec/integration/proxy/v1/service_spec.rb +0 -214
  650. data/spec/integration/serverless/v1/service/asset/asset_version_spec.rb +0 -93
  651. data/spec/integration/serverless/v1/service/asset_spec.rb +0 -202
  652. data/spec/integration/serverless/v1/service/build/build_status_spec.rb +0 -48
  653. data/spec/integration/serverless/v1/service/build_spec.rb +0 -214
  654. data/spec/integration/serverless/v1/service/environment/deployment_spec.rb +0 -133
  655. data/spec/integration/serverless/v1/service/environment/log_spec.rb +0 -97
  656. data/spec/integration/serverless/v1/service/environment/variable_spec.rb +0 -207
  657. data/spec/integration/serverless/v1/service/environment_spec.rb +0 -170
  658. data/spec/integration/serverless/v1/service/function/function_version/function_version_content_spec.rb +0 -51
  659. data/spec/integration/serverless/v1/service/function/function_version_spec.rb +0 -96
  660. data/spec/integration/serverless/v1/service/function_spec.rb +0 -202
  661. data/spec/integration/serverless/v1/service_spec.rb +0 -205
  662. data/spec/integration/studio/v1/flow/engagement/engagement_context_spec.rb +0 -50
  663. data/spec/integration/studio/v1/flow/engagement/step/step_context_spec.rb +0 -53
  664. data/spec/integration/studio/v1/flow/engagement/step_spec.rb +0 -99
  665. data/spec/integration/studio/v1/flow/engagement_spec.rb +0 -168
  666. data/spec/integration/studio/v1/flow/execution/execution_context_spec.rb +0 -50
  667. data/spec/integration/studio/v1/flow/execution/execution_step/execution_step_context_spec.rb +0 -53
  668. data/spec/integration/studio/v1/flow/execution/execution_step_spec.rb +0 -100
  669. data/spec/integration/studio/v1/flow/execution_spec.rb +0 -214
  670. data/spec/integration/studio/v1/flow_spec.rb +0 -114
  671. data/spec/integration/studio/v2/flow/execution/execution_context_spec.rb +0 -50
  672. data/spec/integration/studio/v2/flow/execution/execution_step/execution_step_context_spec.rb +0 -53
  673. data/spec/integration/studio/v2/flow/execution/execution_step_spec.rb +0 -100
  674. data/spec/integration/studio/v2/flow/execution_spec.rb +0 -211
  675. data/spec/integration/studio/v2/flow/flow_revision_spec.rb +0 -110
  676. data/spec/integration/studio/v2/flow/test_user_spec.rb +0 -85
  677. data/spec/integration/studio/v2/flow_spec.rb +0 -251
  678. data/spec/integration/studio/v2/flow_validate_spec.rb +0 -46
  679. data/spec/integration/supersim/v1/command_spec.rb +0 -184
  680. data/spec/integration/supersim/v1/fleet_spec.rb +0 -214
  681. data/spec/integration/supersim/v1/network_access_profile/network_access_profile_network_spec.rb +0 -176
  682. data/spec/integration/supersim/v1/network_access_profile_spec.rb +0 -219
  683. data/spec/integration/supersim/v1/network_spec.rb +0 -137
  684. data/spec/integration/supersim/v1/sim_spec.rb +0 -323
  685. data/spec/integration/supersim/v1/usage_record_spec.rb +0 -647
  686. data/spec/integration/sync/v1/service/document/document_permission_spec.rb +0 -201
  687. data/spec/integration/sync/v1/service/document_spec.rb +0 -256
  688. data/spec/integration/sync/v1/service/sync_list/sync_list_item_spec.rb +0 -257
  689. data/spec/integration/sync/v1/service/sync_list/sync_list_permission_spec.rb +0 -201
  690. data/spec/integration/sync/v1/service/sync_list_spec.rb +0 -252
  691. data/spec/integration/sync/v1/service/sync_map/sync_map_item_spec.rb +0 -257
  692. data/spec/integration/sync/v1/service/sync_map/sync_map_permission_spec.rb +0 -201
  693. data/spec/integration/sync/v1/service/sync_map_spec.rb +0 -252
  694. data/spec/integration/sync/v1/service/sync_stream/stream_message_spec.rb +0 -47
  695. data/spec/integration/sync/v1/service/sync_stream_spec.rb +0 -244
  696. data/spec/integration/sync/v1/service_spec.rb +0 -261
  697. data/spec/integration/taskrouter/v1/workspace/activity_spec.rb +0 -232
  698. data/spec/integration/taskrouter/v1/workspace/event_spec.rb +0 -163
  699. data/spec/integration/taskrouter/v1/workspace/task/reservation_spec.rb +0 -222
  700. data/spec/integration/taskrouter/v1/workspace/task_channel_spec.rb +0 -312
  701. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics_spec.rb +0 -101
  702. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics_spec.rb +0 -83
  703. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_statistics_spec.rb +0 -107
  704. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queues_statistics_spec.rb +0 -145
  705. data/spec/integration/taskrouter/v1/workspace/task_queue_spec.rb +0 -290
  706. data/spec/integration/taskrouter/v1/workspace/task_spec.rb +0 -325
  707. data/spec/integration/taskrouter/v1/workspace/worker/reservation_spec.rb +0 -191
  708. data/spec/integration/taskrouter/v1/workspace/worker/worker_channel_spec.rb +0 -185
  709. data/spec/integration/taskrouter/v1/workspace/worker/worker_statistics_spec.rb +0 -91
  710. data/spec/integration/taskrouter/v1/workspace/worker/workers_cumulative_statistics_spec.rb +0 -88
  711. data/spec/integration/taskrouter/v1/workspace/worker/workers_real_time_statistics_spec.rb +0 -69
  712. data/spec/integration/taskrouter/v1/workspace/worker/workers_statistics_spec.rb +0 -115
  713. data/spec/integration/taskrouter/v1/workspace/worker_spec.rb +0 -290
  714. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics_spec.rb +0 -96
  715. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_real_time_statistics_spec.rb +0 -57
  716. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_statistics_spec.rb +0 -70
  717. data/spec/integration/taskrouter/v1/workspace/workflow_spec.rb +0 -266
  718. data/spec/integration/taskrouter/v1/workspace/workspace_cumulative_statistics_spec.rb +0 -93
  719. data/spec/integration/taskrouter/v1/workspace/workspace_real_time_statistics_spec.rb +0 -72
  720. data/spec/integration/taskrouter/v1/workspace/workspace_statistics_spec.rb +0 -104
  721. data/spec/integration/taskrouter/v1/workspace_spec.rb +0 -291
  722. data/spec/integration/trunking/v1/trunk/credential_list_spec.rb +0 -189
  723. data/spec/integration/trunking/v1/trunk/ip_access_control_list_spec.rb +0 -189
  724. data/spec/integration/trunking/v1/trunk/origination_url_spec.rb +0 -248
  725. data/spec/integration/trunking/v1/trunk/phone_number_spec.rb +0 -264
  726. data/spec/integration/trunking/v1/trunk/recording_spec.rb +0 -75
  727. data/spec/integration/trunking/v1/trunk_spec.rb +0 -281
  728. data/spec/integration/verify/v2/form_spec.rb +0 -47
  729. data/spec/integration/verify/v2/service/access_token_spec.rb +0 -44
  730. data/spec/integration/verify/v2/service/entity/challenge_spec.rb +0 -288
  731. data/spec/integration/verify/v2/service/entity/factor_spec.rb +0 -277
  732. data/spec/integration/verify/v2/service/entity_spec.rb +0 -201
  733. data/spec/integration/verify/v2/service/messaging_configuration_spec.rb +0 -228
  734. data/spec/integration/verify/v2/service/rate_limit/bucket_spec.rb +0 -245
  735. data/spec/integration/verify/v2/service/rate_limit_spec.rb +0 -217
  736. data/spec/integration/verify/v2/service/verification_check_spec.rb +0 -80
  737. data/spec/integration/verify/v2/service/verification_spec.rb +0 -318
  738. data/spec/integration/verify/v2/service/webhook_spec.rb +0 -258
  739. data/spec/integration/verify/v2/service_spec.rb +0 -279
  740. data/spec/integration/video/v1/composition_hook_spec.rb +0 -407
  741. data/spec/integration/video/v1/composition_settings_spec.rb +0 -85
  742. data/spec/integration/video/v1/composition_spec.rb +0 -347
  743. data/spec/integration/video/v1/recording_settings_spec.rb +0 -85
  744. data/spec/integration/video/v1/recording_spec.rb +0 -176
  745. data/spec/integration/video/v1/room/recording_spec.rb +0 -185
  746. data/spec/integration/video/v1/room/room_participant/room_participant_published_track_spec.rb +0 -94
  747. data/spec/integration/video/v1/room/room_participant/room_participant_subscribe_rule_spec.rb +0 -103
  748. data/spec/integration/video/v1/room/room_participant/room_participant_subscribed_track_spec.rb +0 -95
  749. data/spec/integration/video/v1/room/room_participant_spec.rb +0 -187
  750. data/spec/integration/video/v1/room/room_recording_rule_spec.rb +0 -89
  751. data/spec/integration/video/v1/room_spec.rb +0 -301
  752. data/spec/integration/voice/v1/byoc_trunk_spec.rb +0 -245
  753. data/spec/integration/voice/v1/connection_policy/connection_policy_target_spec.rb +0 -242
  754. data/spec/integration/voice/v1/connection_policy_spec.rb +0 -221
  755. data/spec/integration/voice/v1/dialing_permissions/bulk_country_update_spec.rb +0 -45
  756. data/spec/integration/voice/v1/dialing_permissions/country/highrisk_special_prefix_spec.rb +0 -60
  757. data/spec/integration/voice/v1/dialing_permissions/country_spec.rb +0 -110
  758. data/spec/integration/voice/v1/dialing_permissions/settings_spec.rb +0 -75
  759. data/spec/integration/voice/v1/dialing_permissions_spec.rb +0 -12
  760. data/spec/integration/voice/v1/ip_record_spec.rb +0 -219
  761. data/spec/integration/voice/v1/source_ip_mapping_spec.rb +0 -216
  762. data/spec/integration/wireless/v1/command_spec.rb +0 -286
  763. data/spec/integration/wireless/v1/rate_plan_spec.rb +0 -277
  764. data/spec/integration/wireless/v1/sim/data_session_spec.rb +0 -88
  765. data/spec/integration/wireless/v1/sim/usage_record_spec.rb +0 -114
  766. data/spec/integration/wireless/v1/sim_spec.rb +0 -325
  767. data/spec/integration/wireless/v1/usage_record_spec.rb +0 -110
  768. data/spec/jwt/access_token_spec.rb +0 -159
  769. data/spec/jwt/client_capability_spec.rb +0 -104
  770. data/spec/jwt/task_router_spec.rb +0 -172
  771. data/spec/rack/twilio_webhook_authentication_spec.rb +0 -106
  772. data/spec/rest/client_spec.rb +0 -255
  773. data/spec/security/request_validator_spec.rb +0 -125
  774. data/spec/spec_helper.rb +0 -38
  775. data/spec/support/fakeweb.rb +0 -2
  776. data/spec/twilio_spec.rb +0 -17
  777. data/spec/twiml/messaging_response_spec.rb +0 -235
  778. data/spec/twiml/voice_response_spec.rb +0 -847
  779. data/spec/util/configuration_spec.rb +0 -33
  780. data/spec/util/url_encode_spec.rb +0 -12
  781. /data/lib/twilio-ruby/framework/{domain.rb → rest/domain.rb} +0 -0
  782. /data/lib/twilio-ruby/framework/{error.rb → rest/error.rb} +0 -0
  783. /data/lib/twilio-ruby/framework/{helper.rb → rest/helper.rb} +0 -0
  784. /data/lib/twilio-ruby/framework/{obsolete_client.rb → rest/obsolete_client.rb} +0 -0
  785. /data/lib/twilio-ruby/framework/{page.rb → rest/page.rb} +0 -0
  786. /data/lib/twilio-ruby/framework/{resource.rb → rest/resource.rb} +0 -0
  787. /data/lib/twilio-ruby/framework/{version.rb → rest/version.rb} +0 -0
@@ -0,0 +1,442 @@
1
+ ##
2
+ # This code was generated by
3
+ # \ / _ _ _| _ _
4
+ # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
+ # / /
6
+ #
7
+ # frozen_string_literal: true
8
+
9
+ module Twilio
10
+ module REST
11
+ class Conversations < Domain
12
+ class V1 < Version
13
+ class UserContext < InstanceContext
14
+ class UserConversationList < ListResource
15
+ ##
16
+ # Initialize the UserConversationList
17
+ # @param [Version] version Version that contains the resource
18
+ # @param [String] user_sid The unique string that identifies the {User
19
+ # resource}[https://www.twilio.com/docs/conversations/api/user-resource].
20
+ # @return [UserConversationList] UserConversationList
21
+ def initialize(version, user_sid: nil)
22
+ super(version)
23
+
24
+ # Path Solution
25
+ @solution = {user_sid: user_sid}
26
+ @uri = "/Users/#{@solution[:user_sid]}/Conversations"
27
+ end
28
+
29
+ ##
30
+ # Lists UserConversationInstance records from the API as a list.
31
+ # Unlike stream(), this operation is eager and will load `limit` records into
32
+ # memory before returning.
33
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
34
+ # guarantees to never return more than limit. Default is no limit
35
+ # @param [Integer] page_size Number of records to fetch per request, when
36
+ # not set will use the default value of 50 records. If no page_size is defined
37
+ # but a limit is defined, stream() will attempt to read the limit with the most
38
+ # efficient page size, i.e. min(limit, 1000)
39
+ # @return [Array] Array of up to limit results
40
+ def list(limit: nil, page_size: nil)
41
+ self.stream(limit: limit, page_size: page_size).entries
42
+ end
43
+
44
+ ##
45
+ # Streams UserConversationInstance records from the API as an Enumerable.
46
+ # This operation lazily loads records as efficiently as possible until the limit
47
+ # is reached.
48
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
49
+ # guarantees to never return more than limit. Default is no limit.
50
+ # @param [Integer] page_size Number of records to fetch per request, when
51
+ # not set will use the default value of 50 records. If no page_size is defined
52
+ # but a limit is defined, stream() will attempt to read the limit with the most
53
+ # efficient page size, i.e. min(limit, 1000)
54
+ # @return [Enumerable] Enumerable that will yield up to limit results
55
+ def stream(limit: nil, page_size: nil)
56
+ limits = @version.read_limits(limit, page_size)
57
+
58
+ page = self.page(page_size: limits[:page_size], )
59
+
60
+ @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
61
+ end
62
+
63
+ ##
64
+ # When passed a block, yields UserConversationInstance records from the API.
65
+ # This operation lazily loads records as efficiently as possible until the limit
66
+ # is reached.
67
+ def each
68
+ limits = @version.read_limits
69
+
70
+ page = self.page(page_size: limits[:page_size], )
71
+
72
+ @version.stream(page,
73
+ limit: limits[:limit],
74
+ page_limit: limits[:page_limit]).each {|x| yield x}
75
+ end
76
+
77
+ ##
78
+ # Retrieve a single page of UserConversationInstance records from the API.
79
+ # Request is executed immediately.
80
+ # @param [String] page_token PageToken provided by the API
81
+ # @param [Integer] page_number Page Number, this value is simply for client state
82
+ # @param [Integer] page_size Number of records to return, defaults to 50
83
+ # @return [Page] Page of UserConversationInstance
84
+ def page(page_token: :unset, page_number: :unset, page_size: :unset)
85
+ params = Twilio::Values.of({
86
+ 'PageToken' => page_token,
87
+ 'Page' => page_number,
88
+ 'PageSize' => page_size,
89
+ })
90
+
91
+ response = @version.page('GET', @uri, params: params)
92
+
93
+ UserConversationPage.new(@version, response, @solution)
94
+ end
95
+
96
+ ##
97
+ # Retrieve a single page of UserConversationInstance records from the API.
98
+ # Request is executed immediately.
99
+ # @param [String] target_url API-generated URL for the requested results page
100
+ # @return [Page] Page of UserConversationInstance
101
+ def get_page(target_url)
102
+ response = @version.domain.request(
103
+ 'GET',
104
+ target_url
105
+ )
106
+ UserConversationPage.new(@version, response, @solution)
107
+ end
108
+
109
+ ##
110
+ # Provide a user friendly representation
111
+ def to_s
112
+ '#<Twilio.Conversations.V1.UserConversationList>'
113
+ end
114
+ end
115
+
116
+ class UserConversationPage < Page
117
+ ##
118
+ # Initialize the UserConversationPage
119
+ # @param [Version] version Version that contains the resource
120
+ # @param [Response] response Response from the API
121
+ # @param [Hash] solution Path solution for the resource
122
+ # @return [UserConversationPage] UserConversationPage
123
+ def initialize(version, response, solution)
124
+ super(version, response)
125
+
126
+ # Path Solution
127
+ @solution = solution
128
+ end
129
+
130
+ ##
131
+ # Build an instance of UserConversationInstance
132
+ # @param [Hash] payload Payload response from the API
133
+ # @return [UserConversationInstance] UserConversationInstance
134
+ def get_instance(payload)
135
+ UserConversationInstance.new(@version, payload, user_sid: @solution[:user_sid], )
136
+ end
137
+
138
+ ##
139
+ # Provide a user friendly representation
140
+ def to_s
141
+ '<Twilio.Conversations.V1.UserConversationPage>'
142
+ end
143
+ end
144
+
145
+ class UserConversationContext < InstanceContext
146
+ ##
147
+ # Initialize the UserConversationContext
148
+ # @param [Version] version Version that contains the resource
149
+ # @param [String] user_sid The unique SID identifier of the {User
150
+ # resource}[https://www.twilio.com/docs/conversations/api/user-resource]. This
151
+ # value can be either the `sid` or the `identity` of the User resource.
152
+ # @param [String] conversation_sid The unique SID identifier of the Conversation.
153
+ # This value can be either the `sid` or the `unique_name` of the {Conversation
154
+ # resource}[https://www.twilio.com/docs/conversations/api/conversation-resource].
155
+ # @return [UserConversationContext] UserConversationContext
156
+ def initialize(version, user_sid, conversation_sid)
157
+ super(version)
158
+
159
+ # Path Solution
160
+ @solution = {user_sid: user_sid, conversation_sid: conversation_sid, }
161
+ @uri = "/Users/#{@solution[:user_sid]}/Conversations/#{@solution[:conversation_sid]}"
162
+ end
163
+
164
+ ##
165
+ # Update the UserConversationInstance
166
+ # @param [user_conversation.NotificationLevel] notification_level The Notification
167
+ # Level of this User Conversation. One of `default` or `muted`.
168
+ # @param [Time] last_read_timestamp The date of the last message read in
169
+ # conversation by the user, given in ISO 8601 format.
170
+ # @param [String] last_read_message_index The index of the last Message in the
171
+ # Conversation that the Participant has read.
172
+ # @return [UserConversationInstance] Updated UserConversationInstance
173
+ def update(notification_level: :unset, last_read_timestamp: :unset, last_read_message_index: :unset)
174
+ data = Twilio::Values.of({
175
+ 'NotificationLevel' => notification_level,
176
+ 'LastReadTimestamp' => Twilio.serialize_iso8601_datetime(last_read_timestamp),
177
+ 'LastReadMessageIndex' => last_read_message_index,
178
+ })
179
+
180
+ payload = @version.update('POST', @uri, data: data)
181
+
182
+ UserConversationInstance.new(
183
+ @version,
184
+ payload,
185
+ user_sid: @solution[:user_sid],
186
+ conversation_sid: @solution[:conversation_sid],
187
+ )
188
+ end
189
+
190
+ ##
191
+ # Delete the UserConversationInstance
192
+ # @return [Boolean] true if delete succeeds, false otherwise
193
+ def delete
194
+ @version.delete('DELETE', @uri)
195
+ end
196
+
197
+ ##
198
+ # Fetch the UserConversationInstance
199
+ # @return [UserConversationInstance] Fetched UserConversationInstance
200
+ def fetch
201
+ payload = @version.fetch('GET', @uri)
202
+
203
+ UserConversationInstance.new(
204
+ @version,
205
+ payload,
206
+ user_sid: @solution[:user_sid],
207
+ conversation_sid: @solution[:conversation_sid],
208
+ )
209
+ end
210
+
211
+ ##
212
+ # Provide a user friendly representation
213
+ def to_s
214
+ context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
215
+ "#<Twilio.Conversations.V1.UserConversationContext #{context}>"
216
+ end
217
+
218
+ ##
219
+ # Provide a detailed, user friendly representation
220
+ def inspect
221
+ context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
222
+ "#<Twilio.Conversations.V1.UserConversationContext #{context}>"
223
+ end
224
+ end
225
+
226
+ class UserConversationInstance < InstanceResource
227
+ ##
228
+ # Initialize the UserConversationInstance
229
+ # @param [Version] version Version that contains the resource
230
+ # @param [Hash] payload payload that contains response from Twilio
231
+ # @param [String] user_sid The unique string that identifies the {User
232
+ # resource}[https://www.twilio.com/docs/conversations/api/user-resource].
233
+ # @param [String] conversation_sid The unique SID identifier of the Conversation.
234
+ # This value can be either the `sid` or the `unique_name` of the {Conversation
235
+ # resource}[https://www.twilio.com/docs/conversations/api/conversation-resource].
236
+ # @return [UserConversationInstance] UserConversationInstance
237
+ def initialize(version, payload, user_sid: nil, conversation_sid: nil)
238
+ super(version)
239
+
240
+ # Marshaled Properties
241
+ @properties = {
242
+ 'account_sid' => payload['account_sid'],
243
+ 'chat_service_sid' => payload['chat_service_sid'],
244
+ 'conversation_sid' => payload['conversation_sid'],
245
+ 'unread_messages_count' => payload['unread_messages_count'] == nil ? payload['unread_messages_count'] : payload['unread_messages_count'].to_i,
246
+ 'last_read_message_index' => payload['last_read_message_index'] == nil ? payload['last_read_message_index'] : payload['last_read_message_index'].to_i,
247
+ 'participant_sid' => payload['participant_sid'],
248
+ 'user_sid' => payload['user_sid'],
249
+ 'friendly_name' => payload['friendly_name'],
250
+ 'conversation_state' => payload['conversation_state'],
251
+ 'timers' => payload['timers'],
252
+ 'attributes' => payload['attributes'],
253
+ 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
254
+ 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
255
+ 'created_by' => payload['created_by'],
256
+ 'notification_level' => payload['notification_level'],
257
+ 'unique_name' => payload['unique_name'],
258
+ 'url' => payload['url'],
259
+ 'links' => payload['links'],
260
+ }
261
+
262
+ # Context
263
+ @instance_context = nil
264
+ @params = {
265
+ 'user_sid' => user_sid,
266
+ 'conversation_sid' => conversation_sid || @properties['conversation_sid'],
267
+ }
268
+ end
269
+
270
+ ##
271
+ # Generate an instance context for the instance, the context is capable of
272
+ # performing various actions. All instance actions are proxied to the context
273
+ # @return [UserConversationContext] UserConversationContext for this UserConversationInstance
274
+ def context
275
+ unless @instance_context
276
+ @instance_context = UserConversationContext.new(
277
+ @version,
278
+ @params['user_sid'],
279
+ @params['conversation_sid'],
280
+ )
281
+ end
282
+ @instance_context
283
+ end
284
+
285
+ ##
286
+ # @return [String] The unique ID of the Account responsible for this conversation.
287
+ def account_sid
288
+ @properties['account_sid']
289
+ end
290
+
291
+ ##
292
+ # @return [String] The unique ID of the Conversation Service this conversation belongs to.
293
+ def chat_service_sid
294
+ @properties['chat_service_sid']
295
+ end
296
+
297
+ ##
298
+ # @return [String] The unique ID of the Conversation for this User Conversation.
299
+ def conversation_sid
300
+ @properties['conversation_sid']
301
+ end
302
+
303
+ ##
304
+ # @return [String] The number of unread Messages in the Conversation.
305
+ def unread_messages_count
306
+ @properties['unread_messages_count']
307
+ end
308
+
309
+ ##
310
+ # @return [String] The index of the last read Message .
311
+ def last_read_message_index
312
+ @properties['last_read_message_index']
313
+ end
314
+
315
+ ##
316
+ # @return [String] Participant Sid.
317
+ def participant_sid
318
+ @properties['participant_sid']
319
+ end
320
+
321
+ ##
322
+ # @return [String] The unique ID for the User.
323
+ def user_sid
324
+ @properties['user_sid']
325
+ end
326
+
327
+ ##
328
+ # @return [String] The human-readable name of this conversation.
329
+ def friendly_name
330
+ @properties['friendly_name']
331
+ end
332
+
333
+ ##
334
+ # @return [user_conversation.State] The current state of this User Conversation
335
+ def conversation_state
336
+ @properties['conversation_state']
337
+ end
338
+
339
+ ##
340
+ # @return [Hash] Timer date values for this conversation.
341
+ def timers
342
+ @properties['timers']
343
+ end
344
+
345
+ ##
346
+ # @return [String] An optional string metadata field you can use to store any data you wish.
347
+ def attributes
348
+ @properties['attributes']
349
+ end
350
+
351
+ ##
352
+ # @return [Time] The date that this conversation was created.
353
+ def date_created
354
+ @properties['date_created']
355
+ end
356
+
357
+ ##
358
+ # @return [Time] The date that this conversation was last updated.
359
+ def date_updated
360
+ @properties['date_updated']
361
+ end
362
+
363
+ ##
364
+ # @return [String] Creator of this conversation.
365
+ def created_by
366
+ @properties['created_by']
367
+ end
368
+
369
+ ##
370
+ # @return [user_conversation.NotificationLevel] The Notification Level of this User Conversation.
371
+ def notification_level
372
+ @properties['notification_level']
373
+ end
374
+
375
+ ##
376
+ # @return [String] An application-defined string that uniquely identifies the Conversation resource.
377
+ def unique_name
378
+ @properties['unique_name']
379
+ end
380
+
381
+ ##
382
+ # @return [String] The url
383
+ def url
384
+ @properties['url']
385
+ end
386
+
387
+ ##
388
+ # @return [String] Absolute URLs to access the participant and conversation of this user conversation.
389
+ def links
390
+ @properties['links']
391
+ end
392
+
393
+ ##
394
+ # Update the UserConversationInstance
395
+ # @param [user_conversation.NotificationLevel] notification_level The Notification
396
+ # Level of this User Conversation. One of `default` or `muted`.
397
+ # @param [Time] last_read_timestamp The date of the last message read in
398
+ # conversation by the user, given in ISO 8601 format.
399
+ # @param [String] last_read_message_index The index of the last Message in the
400
+ # Conversation that the Participant has read.
401
+ # @return [UserConversationInstance] Updated UserConversationInstance
402
+ def update(notification_level: :unset, last_read_timestamp: :unset, last_read_message_index: :unset)
403
+ context.update(
404
+ notification_level: notification_level,
405
+ last_read_timestamp: last_read_timestamp,
406
+ last_read_message_index: last_read_message_index,
407
+ )
408
+ end
409
+
410
+ ##
411
+ # Delete the UserConversationInstance
412
+ # @return [Boolean] true if delete succeeds, false otherwise
413
+ def delete
414
+ context.delete
415
+ end
416
+
417
+ ##
418
+ # Fetch the UserConversationInstance
419
+ # @return [UserConversationInstance] Fetched UserConversationInstance
420
+ def fetch
421
+ context.fetch
422
+ end
423
+
424
+ ##
425
+ # Provide a user friendly representation
426
+ def to_s
427
+ values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
428
+ "<Twilio.Conversations.V1.UserConversationInstance #{values}>"
429
+ end
430
+
431
+ ##
432
+ # Provide a detailed, user friendly representation
433
+ def inspect
434
+ values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
435
+ "<Twilio.Conversations.V1.UserConversationInstance #{values}>"
436
+ end
437
+ end
438
+ end
439
+ end
440
+ end
441
+ end
442
+ end
@@ -182,6 +182,9 @@ module Twilio
182
182
  # Path Solution
183
183
  @solution = {sid: sid, }
184
184
  @uri = "/Users/#{@solution[:sid]}"
185
+
186
+ # Dependents
187
+ @user_conversations = nil
185
188
  end
186
189
 
187
190
  ##
@@ -229,6 +232,24 @@ module Twilio
229
232
  UserInstance.new(@version, payload, sid: @solution[:sid], )
230
233
  end
231
234
 
235
+ ##
236
+ # Access the user_conversations
237
+ # @return [UserConversationList]
238
+ # @return [UserConversationContext] if conversation_sid was passed.
239
+ def user_conversations(conversation_sid=:unset)
240
+ raise ArgumentError, 'conversation_sid cannot be nil' if conversation_sid.nil?
241
+
242
+ if conversation_sid != :unset
243
+ return UserConversationContext.new(@version, @solution[:sid], conversation_sid, )
244
+ end
245
+
246
+ unless @user_conversations
247
+ @user_conversations = UserConversationList.new(@version, user_sid: @solution[:sid], )
248
+ end
249
+
250
+ @user_conversations
251
+ end
252
+
232
253
  ##
233
254
  # Provide a user friendly representation
234
255
  def to_s
@@ -269,6 +290,7 @@ module Twilio
269
290
  'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
270
291
  'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
271
292
  'url' => payload['url'],
293
+ 'links' => payload['links'],
272
294
  }
273
295
 
274
296
  # Context
@@ -359,6 +381,12 @@ module Twilio
359
381
  @properties['url']
360
382
  end
361
383
 
384
+ ##
385
+ # @return [String] The links
386
+ def links
387
+ @properties['links']
388
+ end
389
+
362
390
  ##
363
391
  # Update the UserInstance
364
392
  # @param [String] friendly_name The string that you assigned to describe the
@@ -396,6 +424,13 @@ module Twilio
396
424
  context.fetch
397
425
  end
398
426
 
427
+ ##
428
+ # Access the user_conversations
429
+ # @return [user_conversations] user_conversations
430
+ def user_conversations
431
+ context.user_conversations
432
+ end
433
+
399
434
  ##
400
435
  # Provide a user friendly representation
401
436
  def to_s
@@ -16,8 +16,10 @@ module Twilio
16
16
  super
17
17
  @version = 'v1'
18
18
  @configuration = nil
19
+ @address_configurations = nil
19
20
  @conversations = nil
20
21
  @credentials = nil
22
+ @participant_conversations = nil
21
23
  @roles = nil
22
24
  @services = nil
23
25
  @users = nil
@@ -29,6 +31,22 @@ module Twilio
29
31
  @configuration ||= ConfigurationContext.new self
30
32
  end
31
33
 
34
+ ##
35
+ # @param [String] sid The SID of the Address Configuration resource. This value
36
+ # can be either the `sid` or the `address` of the configuration
37
+ # @return [Twilio::REST::Conversations::V1::AddressConfigurationContext] if sid was passed.
38
+ # @return [Twilio::REST::Conversations::V1::AddressConfigurationList]
39
+ def address_configurations(sid=:unset)
40
+ if sid.nil?
41
+ raise ArgumentError, 'sid cannot be nil'
42
+ end
43
+ if sid == :unset
44
+ @address_configurations ||= AddressConfigurationList.new self
45
+ else
46
+ AddressConfigurationContext.new(self, sid)
47
+ end
48
+ end
49
+
32
50
  ##
33
51
  # @param [String] sid A 34 character string that uniquely identifies this
34
52
  # resource. Can also be the `unique_name` of the Conversation.
@@ -36,11 +54,12 @@ module Twilio
36
54
  # @return [Twilio::REST::Conversations::V1::ConversationList]
37
55
  def conversations(sid=:unset)
38
56
  if sid.nil?
39
- raise ArgumentError, 'sid cannot be nil'
40
- elsif sid == :unset
41
- @conversations ||= ConversationList.new self
57
+ raise ArgumentError, 'sid cannot be nil'
58
+ end
59
+ if sid == :unset
60
+ @conversations ||= ConversationList.new self
42
61
  else
43
- ConversationContext.new(self, sid)
62
+ ConversationContext.new(self, sid)
44
63
  end
45
64
  end
46
65
 
@@ -51,25 +70,33 @@ module Twilio
51
70
  # @return [Twilio::REST::Conversations::V1::CredentialList]
52
71
  def credentials(sid=:unset)
53
72
  if sid.nil?
54
- raise ArgumentError, 'sid cannot be nil'
55
- elsif sid == :unset
56
- @credentials ||= CredentialList.new self
73
+ raise ArgumentError, 'sid cannot be nil'
74
+ end
75
+ if sid == :unset
76
+ @credentials ||= CredentialList.new self
57
77
  else
58
- CredentialContext.new(self, sid)
78
+ CredentialContext.new(self, sid)
59
79
  end
60
80
  end
61
81
 
82
+ ##
83
+ # @return [Twilio::REST::Conversations::V1::ParticipantConversationContext]
84
+ def participant_conversations
85
+ @participant_conversations ||= ParticipantConversationList.new self
86
+ end
87
+
62
88
  ##
63
89
  # @param [String] sid The SID of the Role resource to fetch.
64
90
  # @return [Twilio::REST::Conversations::V1::RoleContext] if sid was passed.
65
91
  # @return [Twilio::REST::Conversations::V1::RoleList]
66
92
  def roles(sid=:unset)
67
93
  if sid.nil?
68
- raise ArgumentError, 'sid cannot be nil'
69
- elsif sid == :unset
70
- @roles ||= RoleList.new self
94
+ raise ArgumentError, 'sid cannot be nil'
95
+ end
96
+ if sid == :unset
97
+ @roles ||= RoleList.new self
71
98
  else
72
- RoleContext.new(self, sid)
99
+ RoleContext.new(self, sid)
73
100
  end
74
101
  end
75
102
 
@@ -80,11 +107,12 @@ module Twilio
80
107
  # @return [Twilio::REST::Conversations::V1::ServiceList]
81
108
  def services(sid=:unset)
82
109
  if sid.nil?
83
- raise ArgumentError, 'sid cannot be nil'
84
- elsif sid == :unset
85
- @services ||= ServiceList.new self
110
+ raise ArgumentError, 'sid cannot be nil'
111
+ end
112
+ if sid == :unset
113
+ @services ||= ServiceList.new self
86
114
  else
87
- ServiceContext.new(self, sid)
115
+ ServiceContext.new(self, sid)
88
116
  end
89
117
  end
90
118
 
@@ -95,11 +123,12 @@ module Twilio
95
123
  # @return [Twilio::REST::Conversations::V1::UserList]
96
124
  def users(sid=:unset)
97
125
  if sid.nil?
98
- raise ArgumentError, 'sid cannot be nil'
99
- elsif sid == :unset
100
- @users ||= UserList.new self
126
+ raise ArgumentError, 'sid cannot be nil'
127
+ end
128
+ if sid == :unset
129
+ @users ||= UserList.new self
101
130
  else
102
- UserContext.new(self, sid)
131
+ UserContext.new(self, sid)
103
132
  end
104
133
  end
105
134
 
@@ -34,6 +34,15 @@ module Twilio
34
34
  self.v1.configuration()
35
35
  end
36
36
 
37
+ ##
38
+ # @param [String] sid A 34 character string that uniquely identifies this
39
+ # resource.
40
+ # @return [Twilio::REST::Conversations::V1::AddressConfigurationInstance] if sid was passed.
41
+ # @return [Twilio::REST::Conversations::V1::AddressConfigurationList]
42
+ def address_configurations(sid=:unset)
43
+ self.v1.address_configurations(sid)
44
+ end
45
+
37
46
  ##
38
47
  # @param [String] sid A 34 character string that uniquely identifies this
39
48
  # resource.
@@ -52,6 +61,12 @@ module Twilio
52
61
  self.v1.credentials(sid)
53
62
  end
54
63
 
64
+ ##
65
+ # @return [Twilio::REST::Conversations::V1::ParticipantConversationInstance]
66
+ def participant_conversations
67
+ self.v1.participant_conversations()
68
+ end
69
+
55
70
  ##
56
71
  # @param [String] sid The unique string that we created to identify the Role
57
72
  # resource.