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,466 @@
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 ServiceContext < InstanceContext
14
+ class UserContext < InstanceContext
15
+ class UserConversationList < ListResource
16
+ ##
17
+ # Initialize the UserConversationList
18
+ # @param [Version] version Version that contains the resource
19
+ # @param [String] chat_service_sid The unique ID of the {Conversation
20
+ # Service}[https://www.twilio.com/docs/conversations/api/service-resource] this
21
+ # conversation belongs to.
22
+ # @param [String] user_sid The unique string that identifies the {User
23
+ # resource}[https://www.twilio.com/docs/conversations/api/user-resource].
24
+ # @return [UserConversationList] UserConversationList
25
+ def initialize(version, chat_service_sid: nil, user_sid: nil)
26
+ super(version)
27
+
28
+ # Path Solution
29
+ @solution = {chat_service_sid: chat_service_sid, user_sid: user_sid}
30
+ @uri = "/Services/#{@solution[:chat_service_sid]}/Users/#{@solution[:user_sid]}/Conversations"
31
+ end
32
+
33
+ ##
34
+ # Lists UserConversationInstance records from the API as a list.
35
+ # Unlike stream(), this operation is eager and will load `limit` records into
36
+ # memory before returning.
37
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
38
+ # guarantees to never return more than limit. Default is no limit
39
+ # @param [Integer] page_size Number of records to fetch per request, when
40
+ # not set will use the default value of 50 records. If no page_size is defined
41
+ # but a limit is defined, stream() will attempt to read the limit with the most
42
+ # efficient page size, i.e. min(limit, 1000)
43
+ # @return [Array] Array of up to limit results
44
+ def list(limit: nil, page_size: nil)
45
+ self.stream(limit: limit, page_size: page_size).entries
46
+ end
47
+
48
+ ##
49
+ # Streams UserConversationInstance records from the API as an Enumerable.
50
+ # This operation lazily loads records as efficiently as possible until the limit
51
+ # is reached.
52
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
53
+ # guarantees to never return more than limit. Default is no limit.
54
+ # @param [Integer] page_size Number of records to fetch per request, when
55
+ # not set will use the default value of 50 records. If no page_size is defined
56
+ # but a limit is defined, stream() will attempt to read the limit with the most
57
+ # efficient page size, i.e. min(limit, 1000)
58
+ # @return [Enumerable] Enumerable that will yield up to limit results
59
+ def stream(limit: nil, page_size: nil)
60
+ limits = @version.read_limits(limit, page_size)
61
+
62
+ page = self.page(page_size: limits[:page_size], )
63
+
64
+ @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
65
+ end
66
+
67
+ ##
68
+ # When passed a block, yields UserConversationInstance records from the API.
69
+ # This operation lazily loads records as efficiently as possible until the limit
70
+ # is reached.
71
+ def each
72
+ limits = @version.read_limits
73
+
74
+ page = self.page(page_size: limits[:page_size], )
75
+
76
+ @version.stream(page,
77
+ limit: limits[:limit],
78
+ page_limit: limits[:page_limit]).each {|x| yield x}
79
+ end
80
+
81
+ ##
82
+ # Retrieve a single page of UserConversationInstance records from the API.
83
+ # Request is executed immediately.
84
+ # @param [String] page_token PageToken provided by the API
85
+ # @param [Integer] page_number Page Number, this value is simply for client state
86
+ # @param [Integer] page_size Number of records to return, defaults to 50
87
+ # @return [Page] Page of UserConversationInstance
88
+ def page(page_token: :unset, page_number: :unset, page_size: :unset)
89
+ params = Twilio::Values.of({
90
+ 'PageToken' => page_token,
91
+ 'Page' => page_number,
92
+ 'PageSize' => page_size,
93
+ })
94
+
95
+ response = @version.page('GET', @uri, params: params)
96
+
97
+ UserConversationPage.new(@version, response, @solution)
98
+ end
99
+
100
+ ##
101
+ # Retrieve a single page of UserConversationInstance records from the API.
102
+ # Request is executed immediately.
103
+ # @param [String] target_url API-generated URL for the requested results page
104
+ # @return [Page] Page of UserConversationInstance
105
+ def get_page(target_url)
106
+ response = @version.domain.request(
107
+ 'GET',
108
+ target_url
109
+ )
110
+ UserConversationPage.new(@version, response, @solution)
111
+ end
112
+
113
+ ##
114
+ # Provide a user friendly representation
115
+ def to_s
116
+ '#<Twilio.Conversations.V1.UserConversationList>'
117
+ end
118
+ end
119
+
120
+ class UserConversationPage < Page
121
+ ##
122
+ # Initialize the UserConversationPage
123
+ # @param [Version] version Version that contains the resource
124
+ # @param [Response] response Response from the API
125
+ # @param [Hash] solution Path solution for the resource
126
+ # @return [UserConversationPage] UserConversationPage
127
+ def initialize(version, response, solution)
128
+ super(version, response)
129
+
130
+ # Path Solution
131
+ @solution = solution
132
+ end
133
+
134
+ ##
135
+ # Build an instance of UserConversationInstance
136
+ # @param [Hash] payload Payload response from the API
137
+ # @return [UserConversationInstance] UserConversationInstance
138
+ def get_instance(payload)
139
+ UserConversationInstance.new(
140
+ @version,
141
+ payload,
142
+ chat_service_sid: @solution[:chat_service_sid],
143
+ user_sid: @solution[:user_sid],
144
+ )
145
+ end
146
+
147
+ ##
148
+ # Provide a user friendly representation
149
+ def to_s
150
+ '<Twilio.Conversations.V1.UserConversationPage>'
151
+ end
152
+ end
153
+
154
+ class UserConversationContext < InstanceContext
155
+ ##
156
+ # Initialize the UserConversationContext
157
+ # @param [Version] version Version that contains the resource
158
+ # @param [String] chat_service_sid The SID of the {Conversation
159
+ # Service}[https://www.twilio.com/docs/conversations/api/service-resource] the
160
+ # Conversation resource is associated with.
161
+ # @param [String] user_sid The unique SID identifier of the {User
162
+ # resource}[https://www.twilio.com/docs/conversations/api/user-resource]. This
163
+ # value can be either the `sid` or the `identity` of the User resource.
164
+ # @param [String] conversation_sid The unique SID identifier of the Conversation.
165
+ # This value can be either the `sid` or the `unique_name` of the {Conversation
166
+ # resource}[https://www.twilio.com/docs/conversations/api/conversation-resource].
167
+ # @return [UserConversationContext] UserConversationContext
168
+ def initialize(version, chat_service_sid, user_sid, conversation_sid)
169
+ super(version)
170
+
171
+ # Path Solution
172
+ @solution = {
173
+ chat_service_sid: chat_service_sid,
174
+ user_sid: user_sid,
175
+ conversation_sid: conversation_sid,
176
+ }
177
+ @uri = "/Services/#{@solution[:chat_service_sid]}/Users/#{@solution[:user_sid]}/Conversations/#{@solution[:conversation_sid]}"
178
+ end
179
+
180
+ ##
181
+ # Update the UserConversationInstance
182
+ # @param [user_conversation.NotificationLevel] notification_level The Notification
183
+ # Level of this User Conversation. One of `default` or `muted`.
184
+ # @param [Time] last_read_timestamp The date of the last message read in
185
+ # conversation by the user, given in ISO 8601 format.
186
+ # @param [String] last_read_message_index The index of the last Message in the
187
+ # Conversation that the Participant has read.
188
+ # @return [UserConversationInstance] Updated UserConversationInstance
189
+ def update(notification_level: :unset, last_read_timestamp: :unset, last_read_message_index: :unset)
190
+ data = Twilio::Values.of({
191
+ 'NotificationLevel' => notification_level,
192
+ 'LastReadTimestamp' => Twilio.serialize_iso8601_datetime(last_read_timestamp),
193
+ 'LastReadMessageIndex' => last_read_message_index,
194
+ })
195
+
196
+ payload = @version.update('POST', @uri, data: data)
197
+
198
+ UserConversationInstance.new(
199
+ @version,
200
+ payload,
201
+ chat_service_sid: @solution[:chat_service_sid],
202
+ user_sid: @solution[:user_sid],
203
+ conversation_sid: @solution[:conversation_sid],
204
+ )
205
+ end
206
+
207
+ ##
208
+ # Delete the UserConversationInstance
209
+ # @return [Boolean] true if delete succeeds, false otherwise
210
+ def delete
211
+ @version.delete('DELETE', @uri)
212
+ end
213
+
214
+ ##
215
+ # Fetch the UserConversationInstance
216
+ # @return [UserConversationInstance] Fetched UserConversationInstance
217
+ def fetch
218
+ payload = @version.fetch('GET', @uri)
219
+
220
+ UserConversationInstance.new(
221
+ @version,
222
+ payload,
223
+ chat_service_sid: @solution[:chat_service_sid],
224
+ user_sid: @solution[:user_sid],
225
+ conversation_sid: @solution[:conversation_sid],
226
+ )
227
+ end
228
+
229
+ ##
230
+ # Provide a user friendly representation
231
+ def to_s
232
+ context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
233
+ "#<Twilio.Conversations.V1.UserConversationContext #{context}>"
234
+ end
235
+
236
+ ##
237
+ # Provide a detailed, user friendly representation
238
+ def inspect
239
+ context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
240
+ "#<Twilio.Conversations.V1.UserConversationContext #{context}>"
241
+ end
242
+ end
243
+
244
+ class UserConversationInstance < InstanceResource
245
+ ##
246
+ # Initialize the UserConversationInstance
247
+ # @param [Version] version Version that contains the resource
248
+ # @param [Hash] payload payload that contains response from Twilio
249
+ # @param [String] chat_service_sid The unique ID of the {Conversation
250
+ # Service}[https://www.twilio.com/docs/conversations/api/service-resource] this
251
+ # conversation belongs to.
252
+ # @param [String] user_sid The unique string that identifies the {User
253
+ # resource}[https://www.twilio.com/docs/conversations/api/user-resource].
254
+ # @param [String] conversation_sid The unique SID identifier of the Conversation.
255
+ # This value can be either the `sid` or the `unique_name` of the {Conversation
256
+ # resource}[https://www.twilio.com/docs/conversations/api/conversation-resource].
257
+ # @return [UserConversationInstance] UserConversationInstance
258
+ def initialize(version, payload, chat_service_sid: nil, user_sid: nil, conversation_sid: nil)
259
+ super(version)
260
+
261
+ # Marshaled Properties
262
+ @properties = {
263
+ 'account_sid' => payload['account_sid'],
264
+ 'chat_service_sid' => payload['chat_service_sid'],
265
+ 'conversation_sid' => payload['conversation_sid'],
266
+ 'unread_messages_count' => payload['unread_messages_count'] == nil ? payload['unread_messages_count'] : payload['unread_messages_count'].to_i,
267
+ 'last_read_message_index' => payload['last_read_message_index'] == nil ? payload['last_read_message_index'] : payload['last_read_message_index'].to_i,
268
+ 'participant_sid' => payload['participant_sid'],
269
+ 'user_sid' => payload['user_sid'],
270
+ 'friendly_name' => payload['friendly_name'],
271
+ 'conversation_state' => payload['conversation_state'],
272
+ 'timers' => payload['timers'],
273
+ 'attributes' => payload['attributes'],
274
+ 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
275
+ 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
276
+ 'created_by' => payload['created_by'],
277
+ 'notification_level' => payload['notification_level'],
278
+ 'unique_name' => payload['unique_name'],
279
+ 'url' => payload['url'],
280
+ 'links' => payload['links'],
281
+ }
282
+
283
+ # Context
284
+ @instance_context = nil
285
+ @params = {
286
+ 'chat_service_sid' => chat_service_sid,
287
+ 'user_sid' => user_sid,
288
+ 'conversation_sid' => conversation_sid || @properties['conversation_sid'],
289
+ }
290
+ end
291
+
292
+ ##
293
+ # Generate an instance context for the instance, the context is capable of
294
+ # performing various actions. All instance actions are proxied to the context
295
+ # @return [UserConversationContext] UserConversationContext for this UserConversationInstance
296
+ def context
297
+ unless @instance_context
298
+ @instance_context = UserConversationContext.new(
299
+ @version,
300
+ @params['chat_service_sid'],
301
+ @params['user_sid'],
302
+ @params['conversation_sid'],
303
+ )
304
+ end
305
+ @instance_context
306
+ end
307
+
308
+ ##
309
+ # @return [String] The unique ID of the Account responsible for this conversation.
310
+ def account_sid
311
+ @properties['account_sid']
312
+ end
313
+
314
+ ##
315
+ # @return [String] The unique ID of the Conversation Service this conversation belongs to.
316
+ def chat_service_sid
317
+ @properties['chat_service_sid']
318
+ end
319
+
320
+ ##
321
+ # @return [String] The unique ID of the Conversation for this User Conversation.
322
+ def conversation_sid
323
+ @properties['conversation_sid']
324
+ end
325
+
326
+ ##
327
+ # @return [String] The number of unread Messages in the Conversation.
328
+ def unread_messages_count
329
+ @properties['unread_messages_count']
330
+ end
331
+
332
+ ##
333
+ # @return [String] The index of the last read Message .
334
+ def last_read_message_index
335
+ @properties['last_read_message_index']
336
+ end
337
+
338
+ ##
339
+ # @return [String] Participant Sid.
340
+ def participant_sid
341
+ @properties['participant_sid']
342
+ end
343
+
344
+ ##
345
+ # @return [String] The unique ID for the User.
346
+ def user_sid
347
+ @properties['user_sid']
348
+ end
349
+
350
+ ##
351
+ # @return [String] The human-readable name of this conversation.
352
+ def friendly_name
353
+ @properties['friendly_name']
354
+ end
355
+
356
+ ##
357
+ # @return [user_conversation.State] The current state of this User Conversation
358
+ def conversation_state
359
+ @properties['conversation_state']
360
+ end
361
+
362
+ ##
363
+ # @return [Hash] Timer date values for this conversation.
364
+ def timers
365
+ @properties['timers']
366
+ end
367
+
368
+ ##
369
+ # @return [String] An optional string metadata field you can use to store any data you wish.
370
+ def attributes
371
+ @properties['attributes']
372
+ end
373
+
374
+ ##
375
+ # @return [Time] The date that this conversation was created.
376
+ def date_created
377
+ @properties['date_created']
378
+ end
379
+
380
+ ##
381
+ # @return [Time] The date that this conversation was last updated.
382
+ def date_updated
383
+ @properties['date_updated']
384
+ end
385
+
386
+ ##
387
+ # @return [String] Creator of this conversation.
388
+ def created_by
389
+ @properties['created_by']
390
+ end
391
+
392
+ ##
393
+ # @return [user_conversation.NotificationLevel] The Notification Level of this User Conversation.
394
+ def notification_level
395
+ @properties['notification_level']
396
+ end
397
+
398
+ ##
399
+ # @return [String] An application-defined string that uniquely identifies the Conversation resource.
400
+ def unique_name
401
+ @properties['unique_name']
402
+ end
403
+
404
+ ##
405
+ # @return [String] The url
406
+ def url
407
+ @properties['url']
408
+ end
409
+
410
+ ##
411
+ # @return [String] Absolute URLs to access the participant and conversation of this user conversation.
412
+ def links
413
+ @properties['links']
414
+ end
415
+
416
+ ##
417
+ # Update the UserConversationInstance
418
+ # @param [user_conversation.NotificationLevel] notification_level The Notification
419
+ # Level of this User Conversation. One of `default` or `muted`.
420
+ # @param [Time] last_read_timestamp The date of the last message read in
421
+ # conversation by the user, given in ISO 8601 format.
422
+ # @param [String] last_read_message_index The index of the last Message in the
423
+ # Conversation that the Participant has read.
424
+ # @return [UserConversationInstance] Updated UserConversationInstance
425
+ def update(notification_level: :unset, last_read_timestamp: :unset, last_read_message_index: :unset)
426
+ context.update(
427
+ notification_level: notification_level,
428
+ last_read_timestamp: last_read_timestamp,
429
+ last_read_message_index: last_read_message_index,
430
+ )
431
+ end
432
+
433
+ ##
434
+ # Delete the UserConversationInstance
435
+ # @return [Boolean] true if delete succeeds, false otherwise
436
+ def delete
437
+ context.delete
438
+ end
439
+
440
+ ##
441
+ # Fetch the UserConversationInstance
442
+ # @return [UserConversationInstance] Fetched UserConversationInstance
443
+ def fetch
444
+ context.fetch
445
+ end
446
+
447
+ ##
448
+ # Provide a user friendly representation
449
+ def to_s
450
+ values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
451
+ "<Twilio.Conversations.V1.UserConversationInstance #{values}>"
452
+ end
453
+
454
+ ##
455
+ # Provide a detailed, user friendly representation
456
+ def inspect
457
+ values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
458
+ "<Twilio.Conversations.V1.UserConversationInstance #{values}>"
459
+ end
460
+ end
461
+ end
462
+ end
463
+ end
464
+ end
465
+ end
466
+ end
@@ -189,6 +189,9 @@ module Twilio
189
189
  # Path Solution
190
190
  @solution = {chat_service_sid: chat_service_sid, sid: sid, }
191
191
  @uri = "/Services/#{@solution[:chat_service_sid]}/Users/#{@solution[:sid]}"
192
+
193
+ # Dependents
194
+ @user_conversations = nil
192
195
  end
193
196
 
194
197
  ##
@@ -246,6 +249,33 @@ module Twilio
246
249
  )
247
250
  end
248
251
 
252
+ ##
253
+ # Access the user_conversations
254
+ # @return [UserConversationList]
255
+ # @return [UserConversationContext] if conversation_sid was passed.
256
+ def user_conversations(conversation_sid=:unset)
257
+ raise ArgumentError, 'conversation_sid cannot be nil' if conversation_sid.nil?
258
+
259
+ if conversation_sid != :unset
260
+ return UserConversationContext.new(
261
+ @version,
262
+ @solution[:chat_service_sid],
263
+ @solution[:sid],
264
+ conversation_sid,
265
+ )
266
+ end
267
+
268
+ unless @user_conversations
269
+ @user_conversations = UserConversationList.new(
270
+ @version,
271
+ chat_service_sid: @solution[:chat_service_sid],
272
+ user_sid: @solution[:sid],
273
+ )
274
+ end
275
+
276
+ @user_conversations
277
+ end
278
+
249
279
  ##
250
280
  # Provide a user friendly representation
251
281
  def to_s
@@ -289,6 +319,7 @@ module Twilio
289
319
  'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
290
320
  'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
291
321
  'url' => payload['url'],
322
+ 'links' => payload['links'],
292
323
  }
293
324
 
294
325
  # Context
@@ -379,6 +410,12 @@ module Twilio
379
410
  @properties['url']
380
411
  end
381
412
 
413
+ ##
414
+ # @return [String] The links
415
+ def links
416
+ @properties['links']
417
+ end
418
+
382
419
  ##
383
420
  # Update the UserInstance
384
421
  # @param [String] friendly_name The string that you assigned to describe the
@@ -416,6 +453,13 @@ module Twilio
416
453
  context.fetch
417
454
  end
418
455
 
456
+ ##
457
+ # Access the user_conversations
458
+ # @return [user_conversations] user_conversations
459
+ def user_conversations
460
+ context.user_conversations
461
+ end
462
+
419
463
  ##
420
464
  # Provide a user friendly representation
421
465
  def to_s
@@ -172,6 +172,7 @@ module Twilio
172
172
  @users = nil
173
173
  @roles = nil
174
174
  @configuration = nil
175
+ @participant_conversations = nil
175
176
  end
176
177
 
177
178
  ##
@@ -270,6 +271,21 @@ module Twilio
270
271
  ConfigurationContext.new(@version, @solution[:sid], )
271
272
  end
272
273
 
274
+ ##
275
+ # Access the participant_conversations
276
+ # @return [ParticipantConversationList]
277
+ # @return [ParticipantConversationContext]
278
+ def participant_conversations
279
+ unless @participant_conversations
280
+ @participant_conversations = ParticipantConversationList.new(
281
+ @version,
282
+ chat_service_sid: @solution[:sid],
283
+ )
284
+ end
285
+
286
+ @participant_conversations
287
+ end
288
+
273
289
  ##
274
290
  # Provide a user friendly representation
275
291
  def to_s
@@ -414,6 +430,13 @@ module Twilio
414
430
  context.configuration
415
431
  end
416
432
 
433
+ ##
434
+ # Access the participant_conversations
435
+ # @return [participant_conversations] participant_conversations
436
+ def participant_conversations
437
+ context.participant_conversations
438
+ end
439
+
417
440
  ##
418
441
  # Provide a user friendly representation
419
442
  def to_s