twilio-ruby 5.47.0 → 5.74.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 (763) 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 +920 -0
  8. data/Gemfile +1 -0
  9. data/LICENSE +1 -1
  10. data/Makefile +12 -11
  11. data/PULL_REQUEST_TEMPLATE.md +1 -1
  12. data/README.md +16 -8
  13. data/examples/examples.rb +1 -1
  14. data/lib/rack/twilio_webhook_authentication.rb +25 -1
  15. data/lib/twilio-ruby/framework/{domain.rb → rest/domain.rb} +0 -0
  16. data/lib/twilio-ruby/framework/{error.rb → rest/error.rb} +0 -0
  17. data/lib/twilio-ruby/framework/{helper.rb → rest/helper.rb} +0 -0
  18. data/lib/twilio-ruby/framework/{obsolete_client.rb → rest/obsolete_client.rb} +0 -0
  19. data/lib/twilio-ruby/framework/{page.rb → rest/page.rb} +0 -0
  20. data/lib/twilio-ruby/framework/{resource.rb → rest/resource.rb} +0 -0
  21. data/lib/twilio-ruby/framework/{version.rb → rest/version.rb} +0 -0
  22. data/lib/twilio-ruby/http/http_client.rb +20 -4
  23. data/lib/twilio-ruby/http.rb +5 -0
  24. data/lib/twilio-ruby/jwt/access_token.rb +13 -0
  25. data/lib/twilio-ruby/rest/api/v2010/account/address.rb +19 -3
  26. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/local.rb +2 -2
  27. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/machine_to_machine.rb +2 -2
  28. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/mobile.rb +2 -2
  29. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/national.rb +2 -2
  30. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/shared_cost.rb +2 -2
  31. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/toll_free.rb +2 -2
  32. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/voip.rb +2 -2
  33. data/lib/twilio-ruby/rest/api/v2010/account/call/event.rb +4 -4
  34. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb +28 -28
  35. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb +10 -10
  36. data/lib/twilio-ruby/rest/api/v2010/account/call/payment.rb +8 -8
  37. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +2 -2
  38. data/lib/twilio-ruby/rest/api/v2010/account/call/siprec.rb +674 -0
  39. data/lib/twilio-ruby/rest/api/v2010/account/call/stream.rb +674 -0
  40. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message.rb +160 -0
  41. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message_subscription.rb +251 -0
  42. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +130 -11
  43. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +67 -24
  44. data/lib/twilio-ruby/rest/api/v2010/account/conference/recording.rb +2 -2
  45. data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +4 -4
  46. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +11 -4
  47. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +11 -4
  48. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +11 -4
  49. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +17 -10
  50. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +34 -5
  51. data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +2 -2
  52. data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +3 -3
  53. data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +1 -1
  54. data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +35 -8
  55. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb +11 -11
  56. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/ip_access_control_list_mapping.rb +11 -11
  57. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +5 -5
  58. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb +3 -3
  59. data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +1 -1
  60. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +1 -1
  61. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +1 -1
  62. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +1 -1
  63. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +1 -1
  64. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +1 -1
  65. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +1 -1
  66. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +1 -1
  67. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +1 -1
  68. data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +1 -1
  69. data/lib/twilio-ruby/rest/api/v2010.rb +5 -4
  70. data/lib/twilio-ruby/rest/api.rb +1 -1
  71. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_statistics.rb +2 -2
  72. data/lib/twilio-ruby/rest/autopilot/v1.rb +5 -4
  73. data/lib/twilio-ruby/rest/bulkexports/v1/export/day.rb +1 -9
  74. data/lib/twilio-ruby/rest/bulkexports/v1/export/export_custom_job.rb +15 -7
  75. data/lib/twilio-ruby/rest/bulkexports/v1/export/job.rb +15 -9
  76. data/lib/twilio-ruby/rest/bulkexports/v1/export.rb +0 -8
  77. data/lib/twilio-ruby/rest/bulkexports/v1/export_configuration.rb +0 -8
  78. data/lib/twilio-ruby/rest/bulkexports/v1.rb +10 -8
  79. data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +1 -1
  80. data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +2 -2
  81. data/lib/twilio-ruby/rest/chat/v1/service/user.rb +1 -1
  82. data/lib/twilio-ruby/rest/chat/v1/service.rb +2 -2
  83. data/lib/twilio-ruby/rest/chat/v1.rb +10 -8
  84. data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +1 -1
  85. data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +2 -2
  86. data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +10 -4
  87. data/lib/twilio-ruby/rest/chat/v2/service/user.rb +1 -1
  88. data/lib/twilio-ruby/rest/chat/v2/service.rb +4 -4
  89. data/lib/twilio-ruby/rest/chat/v2.rb +10 -8
  90. data/lib/twilio-ruby/rest/chat/v3/channel.rb +275 -0
  91. data/lib/twilio-ruby/rest/chat/v3.rb +48 -0
  92. data/lib/twilio-ruby/rest/chat.rb +16 -0
  93. data/lib/twilio-ruby/rest/client.rb +57 -13
  94. data/lib/twilio-ruby/rest/content/v1/content/approval_fetch.rb +195 -0
  95. data/lib/twilio-ruby/rest/content/v1/content.rb +346 -0
  96. data/lib/twilio-ruby/rest/content/v1.rb +45 -0
  97. data/lib/twilio-ruby/rest/content.rb +47 -0
  98. data/lib/twilio-ruby/rest/conversations/v1/address_configuration.rb +454 -0
  99. data/lib/twilio-ruby/rest/conversations/v1/conversation/message/delivery_receipt.rb +1 -1
  100. data/lib/twilio-ruby/rest/conversations/v1/conversation/message.rb +13 -6
  101. data/lib/twilio-ruby/rest/conversations/v1/conversation.rb +7 -0
  102. data/lib/twilio-ruby/rest/conversations/v1/participant_conversation.rb +312 -0
  103. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb +18 -2
  104. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb +269 -0
  105. data/lib/twilio-ruby/rest/conversations/v1/service/configuration.rb +8 -0
  106. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message/delivery_receipt.rb +1 -1
  107. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message.rb +13 -6
  108. data/lib/twilio-ruby/rest/conversations/v1/service/conversation.rb +7 -0
  109. data/lib/twilio-ruby/rest/conversations/v1/service/participant_conversation.rb +324 -0
  110. data/lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb +466 -0
  111. data/lib/twilio-ruby/rest/conversations/v1/service/user.rb +44 -0
  112. data/lib/twilio-ruby/rest/conversations/v1/service.rb +23 -0
  113. data/lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb +442 -0
  114. data/lib/twilio-ruby/rest/conversations/v1/user.rb +35 -0
  115. data/lib/twilio-ruby/rest/conversations/v1.rb +49 -20
  116. data/lib/twilio-ruby/rest/conversations.rb +15 -0
  117. data/lib/twilio-ruby/rest/events/v1/event_type.rb +16 -9
  118. data/lib/twilio-ruby/rest/events/v1/schema/{schema_version.rb → version.rb} +42 -42
  119. data/lib/twilio-ruby/rest/events/v1/schema.rb +16 -16
  120. data/lib/twilio-ruby/rest/events/v1/sink/sink_test.rb +3 -3
  121. data/lib/twilio-ruby/rest/events/v1/sink/sink_validate.rb +3 -3
  122. data/lib/twilio-ruby/rest/events/v1/sink.rb +45 -9
  123. data/lib/twilio-ruby/rest/events/v1/subscription/subscribed_event.rb +139 -9
  124. data/lib/twilio-ruby/rest/events/v1/subscription.rb +14 -8
  125. data/lib/twilio-ruby/rest/events/v1.rb +20 -16
  126. data/lib/twilio-ruby/rest/flex_api/v1/assessments.rb +156 -0
  127. data/lib/twilio-ruby/rest/flex_api/v1/configuration.rb +42 -0
  128. data/lib/twilio-ruby/rest/flex_api/v1/flex_flow.rb +55 -34
  129. data/lib/twilio-ruby/rest/flex_api/v1/good_data.rb +190 -0
  130. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_invite.rb +236 -0
  131. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_participant.rb +330 -0
  132. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb +405 -0
  133. data/lib/twilio-ruby/rest/{preview/trusted_comms/branded_channel.rb → flex_api/v1/interaction.rb} +76 -68
  134. data/lib/twilio-ruby/rest/flex_api/v1/user_roles.rb +166 -0
  135. data/lib/twilio-ruby/rest/flex_api/v1.rb +52 -12
  136. data/lib/twilio-ruby/rest/flex_api/v2/web_channels.rb +133 -0
  137. data/lib/twilio-ruby/rest/flex_api/v2.rb +35 -0
  138. data/lib/twilio-ruby/rest/flex_api.rb +40 -0
  139. data/lib/twilio-ruby/rest/frontline_api/v1/user.rb +258 -0
  140. data/lib/twilio-ruby/rest/frontline_api/v1.rb +45 -0
  141. data/lib/twilio-ruby/rest/{fax.rb → frontline_api.rb} +11 -11
  142. data/lib/twilio-ruby/rest/insights/v1/call/annotation.rb +322 -0
  143. data/lib/twilio-ruby/rest/insights/v1/call/summary.rb +14 -0
  144. data/lib/twilio-ruby/rest/insights/v1/call.rb +16 -8
  145. data/lib/twilio-ruby/rest/insights/v1/call_summaries.rb +441 -0
  146. data/lib/twilio-ruby/rest/insights/v1/conference/conference_participant.rb +474 -0
  147. data/lib/twilio-ruby/rest/insights/v1/conference.rb +512 -0
  148. data/lib/twilio-ruby/rest/insights/v1/room/participant.rb +23 -23
  149. data/lib/twilio-ruby/rest/insights/v1/room.rb +58 -46
  150. data/lib/twilio-ruby/rest/insights/v1/setting.rb +215 -0
  151. data/lib/twilio-ruby/rest/insights/v1.rb +41 -9
  152. data/lib/twilio-ruby/rest/insights.rb +21 -1
  153. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +1 -1
  154. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +2 -2
  155. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +1 -1
  156. data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +2 -2
  157. data/lib/twilio-ruby/rest/ip_messaging/v1.rb +10 -8
  158. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +1 -1
  159. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +2 -2
  160. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +1 -1
  161. data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +4 -4
  162. data/lib/twilio-ruby/rest/ip_messaging/v2.rb +10 -8
  163. data/lib/twilio-ruby/rest/lookups/v1.rb +5 -4
  164. data/lib/twilio-ruby/rest/lookups/v2/phone_number.rb +336 -0
  165. data/lib/twilio-ruby/rest/lookups/v2.rb +45 -0
  166. data/lib/twilio-ruby/rest/lookups.rb +7 -0
  167. data/lib/twilio-ruby/rest/media/v1/media_processor.rb +397 -0
  168. data/lib/twilio-ruby/rest/media/v1/media_recording.rb +399 -0
  169. data/lib/twilio-ruby/rest/media/v1/player_streamer/playback_grant.rb +221 -0
  170. data/lib/twilio-ruby/rest/media/v1/player_streamer.rb +403 -0
  171. data/lib/twilio-ruby/rest/media/v1.rb +76 -0
  172. data/lib/twilio-ruby/rest/media.rb +65 -0
  173. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_vetting.rb +353 -0
  174. data/lib/twilio-ruby/rest/messaging/v1/brand_registration.rb +127 -2
  175. data/lib/twilio-ruby/rest/messaging/v1/domain_cert.rb +257 -0
  176. data/lib/twilio-ruby/rest/messaging/v1/domain_config.rb +267 -0
  177. data/lib/twilio-ruby/rest/messaging/v1/external_campaign.rb +150 -0
  178. data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +2 -2
  179. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person.rb +528 -0
  180. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person_usecase.rb +129 -0
  181. data/lib/twilio-ruby/rest/messaging/v1/service.rb +145 -27
  182. data/lib/twilio-ruby/rest/messaging/v1/tollfree_verification.rb +559 -0
  183. data/lib/twilio-ruby/rest/messaging/v1/usecase.rb +111 -0
  184. data/lib/twilio-ruby/rest/messaging/v1.rb +69 -25
  185. data/lib/twilio-ruby/rest/messaging.rb +35 -11
  186. data/lib/twilio-ruby/rest/microvisor/v1/app.rb +305 -0
  187. data/lib/twilio-ruby/rest/microvisor/v1/device.rb +339 -0
  188. data/lib/twilio-ruby/rest/microvisor/v1.rb +60 -0
  189. data/lib/twilio-ruby/rest/microvisor.rb +54 -0
  190. data/lib/twilio-ruby/rest/monitor/v1.rb +10 -8
  191. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +1 -1
  192. data/lib/twilio-ruby/rest/notify/v1.rb +10 -8
  193. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/bundle_copy.rb +268 -0
  194. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/replace_items.rb +188 -0
  195. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle.rb +128 -26
  196. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document.rb +7 -0
  197. data/lib/twilio-ruby/rest/oauth/v1/device_code.rb +153 -0
  198. data/lib/twilio-ruby/rest/oauth/v1/oauth.rb +162 -0
  199. data/lib/twilio-ruby/rest/oauth/v1/openid_discovery.rb +242 -0
  200. data/lib/twilio-ruby/rest/oauth/v1/token.rb +157 -0
  201. data/lib/twilio-ruby/rest/oauth/v1/user_info.rb +193 -0
  202. data/lib/twilio-ruby/rest/oauth/v1.rb +63 -0
  203. data/lib/twilio-ruby/rest/oauth.rb +68 -0
  204. data/lib/twilio-ruby/rest/preview/deployed_devices.rb +5 -4
  205. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document/dependent_hosted_number_order.rb +2 -2
  206. data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +2 -2
  207. data/lib/twilio-ruby/rest/preview/hosted_numbers.rb +10 -8
  208. data/lib/twilio-ruby/rest/preview/marketplace.rb +10 -8
  209. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_item.rb +1 -1
  210. data/lib/twilio-ruby/rest/preview/sync.rb +5 -4
  211. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_statistics.rb +2 -2
  212. data/lib/twilio-ruby/rest/preview/understand.rb +5 -4
  213. data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +1 -1
  214. data/lib/twilio-ruby/rest/preview/wireless.rb +15 -12
  215. data/lib/twilio-ruby/rest/preview.rb +0 -58
  216. data/lib/twilio-ruby/rest/pricing/v2/country.rb +280 -0
  217. data/lib/twilio-ruby/rest/pricing/v2/number.rb +225 -0
  218. data/lib/twilio-ruby/rest/pricing/v2.rb +37 -0
  219. data/lib/twilio-ruby/rest/pricing.rb +19 -0
  220. data/lib/twilio-ruby/rest/proxy/v1/service/phone_number.rb +1 -1
  221. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb +2 -15
  222. data/lib/twilio-ruby/rest/proxy/v1/service/session.rb +5 -46
  223. data/lib/twilio-ruby/rest/proxy/v1/service.rb +1 -1
  224. data/lib/twilio-ruby/rest/proxy/v1.rb +5 -4
  225. data/lib/twilio-ruby/rest/routes/v2/phone_number.rb +235 -0
  226. data/lib/twilio-ruby/rest/routes/v2/sip_domain.rb +231 -0
  227. data/lib/twilio-ruby/rest/routes/v2/trunk.rb +235 -0
  228. data/lib/twilio-ruby/rest/routes/v2.rb +76 -0
  229. data/lib/twilio-ruby/rest/routes.rb +62 -0
  230. data/lib/twilio-ruby/rest/serverless/v1/service/environment.rb +1 -1
  231. data/lib/twilio-ruby/rest/serverless/v1/service.rb +7 -0
  232. data/lib/twilio-ruby/rest/serverless/v1.rb +5 -4
  233. data/lib/twilio-ruby/rest/studio/v1/flow/execution.rb +1 -1
  234. data/lib/twilio-ruby/rest/studio/v1/flow.rb +1 -1
  235. data/lib/twilio-ruby/rest/studio/v1.rb +5 -4
  236. data/lib/twilio-ruby/rest/studio/v2/flow/execution.rb +1 -1
  237. data/lib/twilio-ruby/rest/studio/v2/flow/flow_revision.rb +1 -1
  238. data/lib/twilio-ruby/rest/studio/v2/flow.rb +1 -1
  239. data/lib/twilio-ruby/rest/studio/v2.rb +5 -4
  240. data/lib/twilio-ruby/rest/supersim/v1/esim_profile.rb +372 -0
  241. data/lib/twilio-ruby/rest/supersim/v1/fleet.rb +101 -50
  242. data/lib/twilio-ruby/rest/supersim/v1/ip_command.rb +416 -0
  243. data/lib/twilio-ruby/rest/supersim/v1/settings_update.rb +247 -0
  244. data/lib/twilio-ruby/rest/supersim/v1/sim/billing_period.rb +231 -0
  245. data/lib/twilio-ruby/rest/supersim/v1/sim/sim_ip_address.rb +195 -0
  246. data/lib/twilio-ruby/rest/supersim/v1/sim.rb +65 -0
  247. data/lib/twilio-ruby/rest/supersim/v1/{command.rb → sms_command.rb} +81 -78
  248. data/lib/twilio-ruby/rest/supersim/v1/usage_record.rb +26 -12
  249. data/lib/twilio-ruby/rest/supersim/v1.rb +69 -25
  250. data/lib/twilio-ruby/rest/supersim.rb +30 -6
  251. data/lib/twilio-ruby/rest/sync/v1/service/document.rb +9 -16
  252. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +23 -34
  253. data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +9 -15
  254. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +22 -35
  255. data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +9 -15
  256. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream.rb +9 -15
  257. data/lib/twilio-ruby/rest/sync/v1/service.rb +1 -1
  258. data/lib/twilio-ruby/rest/sync/v1.rb +5 -4
  259. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/activity.rb +7 -0
  260. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +1 -1
  261. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +25 -8
  262. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +34 -10
  263. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics.rb +18 -14
  264. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics.rb +5 -5
  265. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +10 -4
  266. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +7 -3
  267. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_channel.rb +3 -3
  268. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_cumulative_statistics.rb +6 -6
  269. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_real_time_statistics.rb +1 -1
  270. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +32 -14
  271. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics.rb +17 -15
  272. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_real_time_statistics.rb +2 -2
  273. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +1 -1
  274. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_cumulative_statistics.rb +17 -15
  275. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_real_time_statistics.rb +3 -3
  276. data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +45 -30
  277. data/lib/twilio-ruby/rest/taskrouter/v1.rb +5 -4
  278. data/lib/twilio-ruby/rest/trunking/v1/trunk/origination_url.rb +2 -2
  279. data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +19 -3
  280. data/lib/twilio-ruby/rest/trunking/v1.rb +5 -4
  281. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_channel_endpoint_assignment.rb +359 -0
  282. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_entity_assignments.rb +330 -0
  283. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_evaluations.rb +328 -0
  284. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles.rb +523 -0
  285. data/lib/twilio-ruby/rest/trusthub/v1/end_user.rb +356 -0
  286. data/lib/twilio-ruby/rest/trusthub/v1/end_user_type.rb +271 -0
  287. data/lib/twilio-ruby/rest/trusthub/v1/policies.rb +262 -0
  288. data/lib/twilio-ruby/rest/{messaging/v1/campaign.rb → trusthub/v1/supporting_document.rb} +125 -143
  289. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document_type.rb +271 -0
  290. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_channel_endpoint_assignment.rb +359 -0
  291. data/lib/twilio-ruby/rest/{fax/v1/fax/fax_media.rb → trusthub/v1/trust_products/trust_products_entity_assignments.rb} +101 -85
  292. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_evaluations.rb +328 -0
  293. data/lib/twilio-ruby/rest/trusthub/v1/trust_products.rb +523 -0
  294. data/lib/twilio-ruby/rest/trusthub/v1.rb +146 -0
  295. data/lib/twilio-ruby/rest/trusthub.rb +100 -0
  296. data/lib/twilio-ruby/rest/verify/v2/safelist.rb +215 -0
  297. data/lib/twilio-ruby/rest/verify/v2/service/access_token.rb +153 -16
  298. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge/notification.rb +199 -0
  299. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb +111 -28
  300. data/lib/twilio-ruby/rest/verify/v2/service/entity/factor.rb +68 -68
  301. data/lib/twilio-ruby/rest/verify/v2/service/entity/new_factor.rb +303 -0
  302. data/lib/twilio-ruby/rest/verify/v2/service/entity.rb +31 -11
  303. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb +2 -2
  304. data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +25 -8
  305. data/lib/twilio-ruby/rest/verify/v2/service/verification_check.rb +8 -1
  306. data/lib/twilio-ruby/rest/verify/v2/service/webhook.rb +24 -13
  307. data/lib/twilio-ruby/rest/verify/v2/service.rb +99 -12
  308. data/lib/twilio-ruby/rest/{messaging/v1/use_case.rb → verify/v2/template.rb} +66 -51
  309. data/lib/twilio-ruby/rest/verify/v2/verification_attempt.rb +397 -0
  310. data/lib/twilio-ruby/rest/verify/v2/verification_attempts_summary.rb +234 -0
  311. data/lib/twilio-ruby/rest/verify/v2.rb +58 -8
  312. data/lib/twilio-ruby/rest/verify.rb +29 -0
  313. data/lib/twilio-ruby/rest/video/v1/composition.rb +24 -11
  314. data/lib/twilio-ruby/rest/video/v1/composition_hook.rb +0 -8
  315. data/lib/twilio-ruby/rest/video/v1/recording.rb +23 -2
  316. data/lib/twilio-ruby/rest/video/v1/room/recording.rb +9 -2
  317. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_anonymize.rb +240 -0
  318. data/lib/twilio-ruby/rest/video/v1/room/room_participant.rb +16 -0
  319. data/lib/twilio-ruby/rest/video/v1/room/room_recording_rule.rb +0 -6
  320. data/lib/twilio-ruby/rest/video/v1/room.rb +66 -6
  321. data/lib/twilio-ruby/rest/video/v1.rb +20 -16
  322. data/lib/twilio-ruby/rest/voice/v1/archived_call.rb +184 -0
  323. data/lib/twilio-ruby/rest/voice/v1/connection_policy/connection_policy_target.rb +2 -2
  324. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/bulk_country_update.rb +1 -1
  325. data/lib/twilio-ruby/rest/voice/v1/ip_record.rb +1 -1
  326. data/lib/twilio-ruby/rest/voice/v1.rb +41 -16
  327. data/lib/twilio-ruby/rest/voice.rb +8 -0
  328. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +6 -6
  329. data/lib/twilio-ruby/rest/wireless/v1/sim/data_session.rb +2 -2
  330. data/lib/twilio-ruby/rest/wireless/v1/sim.rb +16 -26
  331. data/lib/twilio-ruby/rest/wireless/v1.rb +15 -12
  332. data/lib/twilio-ruby/rest.rb +13 -0
  333. data/lib/twilio-ruby/security/request_validator.rb +1 -1
  334. data/lib/twilio-ruby/twiml/voice_response.rb +789 -108
  335. data/lib/twilio-ruby/version.rb +1 -1
  336. data/lib/twilio-ruby.rb +6 -16
  337. data/sonar-project.properties +13 -0
  338. data/twilio-ruby.gemspec +2 -3
  339. metadata +118 -868
  340. data/.travis.yml +0 -45
  341. data/lib/twilio-ruby/rest/fax/v1/fax.rb +0 -536
  342. data/lib/twilio-ruby/rest/fax/v1.rb +0 -44
  343. data/lib/twilio-ruby/rest/preview/bulk_exports/export/day.rb +0 -294
  344. data/lib/twilio-ruby/rest/preview/bulk_exports/export/export_custom_job.rb +0 -275
  345. data/lib/twilio-ruby/rest/preview/bulk_exports/export/job.rb +0 -249
  346. data/lib/twilio-ruby/rest/preview/bulk_exports/export.rb +0 -251
  347. data/lib/twilio-ruby/rest/preview/bulk_exports/export_configuration.rb +0 -234
  348. data/lib/twilio-ruby/rest/preview/bulk_exports.rb +0 -60
  349. data/lib/twilio-ruby/rest/preview/trusted_comms/branded_channel/channel.rb +0 -165
  350. data/lib/twilio-ruby/rest/preview/trusted_comms/brands_information.rb +0 -195
  351. data/lib/twilio-ruby/rest/preview/trusted_comms/cps.rb +0 -186
  352. data/lib/twilio-ruby/rest/preview/trusted_comms/current_call.rb +0 -277
  353. data/lib/twilio-ruby/rest/preview/trusted_comms.rb +0 -64
  354. data/spec/framework/request_spec.rb +0 -36
  355. data/spec/framework/serialize_spec.rb +0 -80
  356. data/spec/framework/version_spec.rb +0 -219
  357. data/spec/holodeck/holodeck.rb +0 -66
  358. data/spec/holodeck/hologram.rb +0 -4
  359. data/spec/http/http_client_spec.rb +0 -122
  360. data/spec/integration/accounts/v1/auth_token_promotion_spec.rb +0 -44
  361. data/spec/integration/accounts/v1/credential/aws_spec.rb +0 -222
  362. data/spec/integration/accounts/v1/credential/public_key_spec.rb +0 -222
  363. data/spec/integration/accounts/v1/credential_spec.rb +0 -12
  364. data/spec/integration/accounts/v1/secondary_auth_token_spec.rb +0 -69
  365. data/spec/integration/api/v2010/account/address/dependent_phone_number_spec.rb +0 -106
  366. data/spec/integration/api/v2010/account/address_spec.rb +0 -269
  367. data/spec/integration/api/v2010/account/application_spec.rb +0 -274
  368. data/spec/integration/api/v2010/account/authorized_connect_app_spec.rb +0 -137
  369. data/spec/integration/api/v2010/account/available_phone_number/local_spec.rb +0 -102
  370. data/spec/integration/api/v2010/account/available_phone_number/machine_to_machine_spec.rb +0 -102
  371. data/spec/integration/api/v2010/account/available_phone_number/mobile_spec.rb +0 -101
  372. data/spec/integration/api/v2010/account/available_phone_number/national_spec.rb +0 -102
  373. data/spec/integration/api/v2010/account/available_phone_number/shared_cost_spec.rb +0 -102
  374. data/spec/integration/api/v2010/account/available_phone_number/toll_free_spec.rb +0 -101
  375. data/spec/integration/api/v2010/account/available_phone_number/voip_spec.rb +0 -102
  376. data/spec/integration/api/v2010/account/available_phone_number_spec.rb +0 -128
  377. data/spec/integration/api/v2010/account/balance_spec.rb +0 -44
  378. data/spec/integration/api/v2010/account/call/event_spec.rb +0 -102
  379. data/spec/integration/api/v2010/account/call/feedback_spec.rb +0 -138
  380. data/spec/integration/api/v2010/account/call/feedback_summary_spec.rb +0 -149
  381. data/spec/integration/api/v2010/account/call/notification_spec.rb +0 -143
  382. data/spec/integration/api/v2010/account/call/payment_spec.rb +0 -135
  383. data/spec/integration/api/v2010/account/call/recording_spec.rb +0 -287
  384. data/spec/integration/api/v2010/account/call_spec.rb +0 -660
  385. data/spec/integration/api/v2010/account/conference/participant_spec.rb +0 -768
  386. data/spec/integration/api/v2010/account/conference/recording_spec.rb +0 -234
  387. data/spec/integration/api/v2010/account/conference_spec.rb +0 -716
  388. data/spec/integration/api/v2010/account/connect_app_spec.rb +0 -197
  389. data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension_spec.rb +0 -135
  390. data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on_spec.rb +0 -220
  391. data/spec/integration/api/v2010/account/incoming_phone_number/local_spec.rb +0 -189
  392. data/spec/integration/api/v2010/account/incoming_phone_number/mobile_spec.rb +0 -189
  393. data/spec/integration/api/v2010/account/incoming_phone_number/toll_free_spec.rb +0 -189
  394. data/spec/integration/api/v2010/account/incoming_phone_number_spec.rb +0 -370
  395. data/spec/integration/api/v2010/account/key_spec.rb +0 -176
  396. data/spec/integration/api/v2010/account/message/feedback_spec.rb +0 -49
  397. data/spec/integration/api/v2010/account/message/media_spec.rb +0 -161
  398. data/spec/integration/api/v2010/account/message_spec.rb +0 -507
  399. data/spec/integration/api/v2010/account/new_key_spec.rb +0 -46
  400. data/spec/integration/api/v2010/account/new_signing_key_spec.rb +0 -46
  401. data/spec/integration/api/v2010/account/notification_spec.rb +0 -138
  402. data/spec/integration/api/v2010/account/outgoing_caller_id_spec.rb +0 -185
  403. data/spec/integration/api/v2010/account/queue/member_spec.rb +0 -208
  404. data/spec/integration/api/v2010/account/queue_spec.rb +0 -244
  405. data/spec/integration/api/v2010/account/recording/add_on_result/payload_spec.rb +0 -174
  406. data/spec/integration/api/v2010/account/recording/add_on_result_spec.rb +0 -165
  407. data/spec/integration/api/v2010/account/recording/transcription_spec.rb +0 -173
  408. data/spec/integration/api/v2010/account/recording_spec.rb +0 -184
  409. data/spec/integration/api/v2010/account/short_code_spec.rb +0 -179
  410. data/spec/integration/api/v2010/account/signing_key_spec.rb +0 -176
  411. data/spec/integration/api/v2010/account/sip/credential_list/credential_spec.rb +0 -252
  412. data/spec/integration/api/v2010/account/sip/credential_list_spec.rb +0 -241
  413. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_credential_list_mapping_spec.rb +0 -217
  414. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_ip_access_control_list_mapping_spec.rb +0 -217
  415. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_calls_mapping_spec.rb +0 -12
  416. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping/auth_registrations_credential_list_mapping_spec.rb +0 -217
  417. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping_spec.rb +0 -12
  418. data/spec/integration/api/v2010/account/sip/domain/auth_types_spec.rb +0 -12
  419. data/spec/integration/api/v2010/account/sip/domain/credential_list_mapping_spec.rb +0 -207
  420. data/spec/integration/api/v2010/account/sip/domain/ip_access_control_list_mapping_spec.rb +0 -217
  421. data/spec/integration/api/v2010/account/sip/domain_spec.rb +0 -303
  422. data/spec/integration/api/v2010/account/sip/ip_access_control_list/ip_address_spec.rb +0 -254
  423. data/spec/integration/api/v2010/account/sip/ip_access_control_list_spec.rb +0 -251
  424. data/spec/integration/api/v2010/account/sip_spec.rb +0 -12
  425. data/spec/integration/api/v2010/account/token_spec.rb +0 -71
  426. data/spec/integration/api/v2010/account/transcription_spec.rb +0 -166
  427. data/spec/integration/api/v2010/account/usage/record/all_time_spec.rb +0 -113
  428. data/spec/integration/api/v2010/account/usage/record/daily_spec.rb +0 -113
  429. data/spec/integration/api/v2010/account/usage/record/last_month_spec.rb +0 -113
  430. data/spec/integration/api/v2010/account/usage/record/monthly_spec.rb +0 -113
  431. data/spec/integration/api/v2010/account/usage/record/this_month_spec.rb +0 -113
  432. data/spec/integration/api/v2010/account/usage/record/today_spec.rb +0 -113
  433. data/spec/integration/api/v2010/account/usage/record/yearly_spec.rb +0 -113
  434. data/spec/integration/api/v2010/account/usage/record/yesterday_spec.rb +0 -113
  435. data/spec/integration/api/v2010/account/usage/record_spec.rb +0 -110
  436. data/spec/integration/api/v2010/account/usage/trigger_spec.rb +0 -281
  437. data/spec/integration/api/v2010/account/usage_spec.rb +0 -12
  438. data/spec/integration/api/v2010/account/validation_request_spec.rb +0 -48
  439. data/spec/integration/api/v2010/account_spec.rb +0 -327
  440. data/spec/integration/autopilot/v1/assistant/defaults_spec.rb +0 -79
  441. data/spec/integration/autopilot/v1/assistant/dialogue_spec.rb +0 -46
  442. data/spec/integration/autopilot/v1/assistant/field_type/field_value_spec.rb +0 -207
  443. data/spec/integration/autopilot/v1/assistant/field_type_spec.rb +0 -242
  444. data/spec/integration/autopilot/v1/assistant/model_build_spec.rb +0 -236
  445. data/spec/integration/autopilot/v1/assistant/query_spec.rb +0 -290
  446. data/spec/integration/autopilot/v1/assistant/style_sheet_spec.rb +0 -79
  447. data/spec/integration/autopilot/v1/assistant/task/field_spec.rb +0 -204
  448. data/spec/integration/autopilot/v1/assistant/task/sample_spec.rb +0 -249
  449. data/spec/integration/autopilot/v1/assistant/task/task_actions_spec.rb +0 -85
  450. data/spec/integration/autopilot/v1/assistant/task/task_statistics_spec.rb +0 -49
  451. data/spec/integration/autopilot/v1/assistant/task_spec.rb +0 -258
  452. data/spec/integration/autopilot/v1/assistant/webhook_spec.rb +0 -242
  453. data/spec/integration/autopilot/v1/assistant_spec.rb +0 -277
  454. data/spec/integration/autopilot/v1/restore_assistant_spec.rb +0 -53
  455. data/spec/integration/bulkexports/v1/export/day_spec.rb +0 -115
  456. data/spec/integration/bulkexports/v1/export/export_custom_job_spec.rb +0 -129
  457. data/spec/integration/bulkexports/v1/export/job_spec.rb +0 -78
  458. data/spec/integration/bulkexports/v1/export_configuration_spec.rb +0 -77
  459. data/spec/integration/bulkexports/v1/export_spec.rb +0 -44
  460. data/spec/integration/chat/v1/credential_spec.rb +0 -219
  461. data/spec/integration/chat/v1/service/channel/invite_spec.rb +0 -207
  462. data/spec/integration/chat/v1/service/channel/member_spec.rb +0 -280
  463. data/spec/integration/chat/v1/service/channel/message_spec.rb +0 -290
  464. data/spec/integration/chat/v1/service/channel_spec.rb +0 -272
  465. data/spec/integration/chat/v1/service/role_spec.rb +0 -260
  466. data/spec/integration/chat/v1/service/user/user_channel_spec.rb +0 -93
  467. data/spec/integration/chat/v1/service/user_spec.rb +0 -262
  468. data/spec/integration/chat/v1/service_spec.rb +0 -295
  469. data/spec/integration/chat/v2/credential_spec.rb +0 -219
  470. data/spec/integration/chat/v2/service/binding_spec.rb +0 -174
  471. data/spec/integration/chat/v2/service/channel/invite_spec.rb +0 -207
  472. data/spec/integration/chat/v2/service/channel/member_spec.rb +0 -263
  473. data/spec/integration/chat/v2/service/channel/message_spec.rb +0 -406
  474. data/spec/integration/chat/v2/service/channel/webhook_spec.rb +0 -303
  475. data/spec/integration/chat/v2/service/channel_spec.rb +0 -282
  476. data/spec/integration/chat/v2/service/role_spec.rb +0 -260
  477. data/spec/integration/chat/v2/service/user/user_binding_spec.rb +0 -177
  478. data/spec/integration/chat/v2/service/user/user_channel_spec.rb +0 -247
  479. data/spec/integration/chat/v2/service/user_spec.rb +0 -270
  480. data/spec/integration/chat/v2/service_spec.rb +0 -350
  481. data/spec/integration/conversations/v1/configuration/webhook_spec.rb +0 -90
  482. data/spec/integration/conversations/v1/configuration_spec.rb +0 -87
  483. data/spec/integration/conversations/v1/conversation/message/delivery_receipt_spec.rb +0 -136
  484. data/spec/integration/conversations/v1/conversation/message_spec.rb +0 -409
  485. data/spec/integration/conversations/v1/conversation/participant_spec.rb +0 -402
  486. data/spec/integration/conversations/v1/conversation/webhook_spec.rb +0 -282
  487. data/spec/integration/conversations/v1/conversation_spec.rb +0 -278
  488. data/spec/integration/conversations/v1/credential_spec.rb +0 -219
  489. data/spec/integration/conversations/v1/role_spec.rb +0 -249
  490. data/spec/integration/conversations/v1/service/binding_spec.rb +0 -166
  491. data/spec/integration/conversations/v1/service/configuration/notification_spec.rb +0 -115
  492. data/spec/integration/conversations/v1/service/configuration_spec.rb +0 -89
  493. data/spec/integration/conversations/v1/service/conversation/message/delivery_receipt_spec.rb +0 -144
  494. data/spec/integration/conversations/v1/service/conversation/message_spec.rb +0 -429
  495. data/spec/integration/conversations/v1/service/conversation/participant_spec.rb +0 -427
  496. data/spec/integration/conversations/v1/service/conversation/webhook_spec.rb +0 -299
  497. data/spec/integration/conversations/v1/service/conversation_spec.rb +0 -289
  498. data/spec/integration/conversations/v1/service/role_spec.rb +0 -260
  499. data/spec/integration/conversations/v1/service/user_spec.rb +0 -241
  500. data/spec/integration/conversations/v1/service_spec.rb +0 -174
  501. data/spec/integration/conversations/v1/user_spec.rb +0 -231
  502. data/spec/integration/events/v1/event_type_spec.rb +0 -133
  503. data/spec/integration/events/v1/schema/schema_version_spec.rb +0 -126
  504. data/spec/integration/events/v1/schema_spec.rb +0 -46
  505. data/spec/integration/events/v1/sink/sink_test_spec.rb +0 -42
  506. data/spec/integration/events/v1/sink/sink_validate_spec.rb +0 -44
  507. data/spec/integration/events/v1/sink_spec.rb +0 -231
  508. data/spec/integration/events/v1/subscription/subscribed_event_spec.rb +0 -91
  509. data/spec/integration/events/v1/subscription_spec.rb +0 -292
  510. data/spec/integration/fax/v1/fax/fax_media_spec.rb +0 -125
  511. data/spec/integration/fax/v1/fax_spec.rb +0 -267
  512. data/spec/integration/flex_api/v1/channel_spec.rb +0 -188
  513. data/spec/integration/flex_api/v1/configuration_spec.rb +0 -578
  514. data/spec/integration/flex_api/v1/flex_flow_spec.rb +0 -259
  515. data/spec/integration/flex_api/v1/web_channel_spec.rb +0 -216
  516. data/spec/integration/insights/v1/call/event_spec.rb +0 -166
  517. data/spec/integration/insights/v1/call/metric_spec.rb +0 -154
  518. data/spec/integration/insights/v1/call/summary_spec.rb +0 -64
  519. data/spec/integration/insights/v1/call_spec.rb +0 -46
  520. data/spec/integration/insights/v1/room/participant_spec.rb +0 -147
  521. data/spec/integration/insights/v1/room_spec.rb +0 -164
  522. data/spec/integration/ip_messaging/v1/credential_spec.rb +0 -219
  523. data/spec/integration/ip_messaging/v1/service/channel/invite_spec.rb +0 -207
  524. data/spec/integration/ip_messaging/v1/service/channel/member_spec.rb +0 -280
  525. data/spec/integration/ip_messaging/v1/service/channel/message_spec.rb +0 -290
  526. data/spec/integration/ip_messaging/v1/service/channel_spec.rb +0 -272
  527. data/spec/integration/ip_messaging/v1/service/role_spec.rb +0 -260
  528. data/spec/integration/ip_messaging/v1/service/user/user_channel_spec.rb +0 -93
  529. data/spec/integration/ip_messaging/v1/service/user_spec.rb +0 -262
  530. data/spec/integration/ip_messaging/v1/service_spec.rb +0 -295
  531. data/spec/integration/ip_messaging/v2/credential_spec.rb +0 -219
  532. data/spec/integration/ip_messaging/v2/service/binding_spec.rb +0 -174
  533. data/spec/integration/ip_messaging/v2/service/channel/invite_spec.rb +0 -207
  534. data/spec/integration/ip_messaging/v2/service/channel/member_spec.rb +0 -263
  535. data/spec/integration/ip_messaging/v2/service/channel/message_spec.rb +0 -406
  536. data/spec/integration/ip_messaging/v2/service/channel/webhook_spec.rb +0 -303
  537. data/spec/integration/ip_messaging/v2/service/channel_spec.rb +0 -282
  538. data/spec/integration/ip_messaging/v2/service/role_spec.rb +0 -260
  539. data/spec/integration/ip_messaging/v2/service/user/user_binding_spec.rb +0 -177
  540. data/spec/integration/ip_messaging/v2/service/user/user_channel_spec.rb +0 -247
  541. data/spec/integration/ip_messaging/v2/service/user_spec.rb +0 -270
  542. data/spec/integration/ip_messaging/v2/service_spec.rb +0 -350
  543. data/spec/integration/lookups/v1/phone_number_spec.rb +0 -336
  544. data/spec/integration/messaging/v1/brand_registration_spec.rb +0 -143
  545. data/spec/integration/messaging/v1/campaign_spec.rb +0 -194
  546. data/spec/integration/messaging/v1/deactivation_spec.rb +0 -40
  547. data/spec/integration/messaging/v1/service/alpha_sender_spec.rb +0 -173
  548. data/spec/integration/messaging/v1/service/phone_number_spec.rb +0 -198
  549. data/spec/integration/messaging/v1/service/short_code_spec.rb +0 -176
  550. data/spec/integration/messaging/v1/service_spec.rb +0 -267
  551. data/spec/integration/messaging/v1/use_case_spec.rb +0 -55
  552. data/spec/integration/monitor/v1/alert_spec.rb +0 -138
  553. data/spec/integration/monitor/v1/event_spec.rb +0 -148
  554. data/spec/integration/notify/v1/credential_spec.rb +0 -219
  555. data/spec/integration/notify/v1/service/binding_spec.rb +0 -222
  556. data/spec/integration/notify/v1/service/notification_spec.rb +0 -98
  557. data/spec/integration/notify/v1/service_spec.rb +0 -289
  558. data/spec/integration/numbers/v2/regulatory_compliance/bundle/evaluation_spec.rb +0 -620
  559. data/spec/integration/numbers/v2/regulatory_compliance/bundle/item_assignment_spec.rb +0 -195
  560. data/spec/integration/numbers/v2/regulatory_compliance/bundle_spec.rb +0 -258
  561. data/spec/integration/numbers/v2/regulatory_compliance/end_user_spec.rb +0 -238
  562. data/spec/integration/numbers/v2/regulatory_compliance/end_user_type_spec.rb +0 -141
  563. data/spec/integration/numbers/v2/regulatory_compliance/regulation_spec.rb +0 -181
  564. data/spec/integration/numbers/v2/regulatory_compliance/supporting_document_spec.rb +0 -250
  565. data/spec/integration/numbers/v2/regulatory_compliance/supporting_document_type_spec.rb +0 -131
  566. data/spec/integration/numbers/v2/regulatory_compliance_spec.rb +0 -12
  567. data/spec/integration/preview/bulk_exports/export/day_spec.rb +0 -115
  568. data/spec/integration/preview/bulk_exports/export/export_custom_job_spec.rb +0 -129
  569. data/spec/integration/preview/bulk_exports/export/job_spec.rb +0 -78
  570. data/spec/integration/preview/bulk_exports/export_configuration_spec.rb +0 -77
  571. data/spec/integration/preview/bulk_exports/export_spec.rb +0 -44
  572. data/spec/integration/preview/deployed_devices/fleet/certificate_spec.rb +0 -234
  573. data/spec/integration/preview/deployed_devices/fleet/deployment_spec.rb +0 -228
  574. data/spec/integration/preview/deployed_devices/fleet/device_spec.rb +0 -244
  575. data/spec/integration/preview/deployed_devices/fleet/key_spec.rb +0 -232
  576. data/spec/integration/preview/deployed_devices/fleet_spec.rb +0 -241
  577. data/spec/integration/preview/hosted_numbers/authorization_document/dependent_hosted_number_order_spec.rb +0 -110
  578. data/spec/integration/preview/hosted_numbers/authorization_document_spec.rb +0 -224
  579. data/spec/integration/preview/hosted_numbers/hosted_number_order_spec.rb +0 -389
  580. data/spec/integration/preview/marketplace/available_add_on/available_add_on_extension_spec.rb +0 -121
  581. data/spec/integration/preview/marketplace/available_add_on_spec.rb +0 -142
  582. data/spec/integration/preview/marketplace/installed_add_on/installed_add_on_extension_spec.rb +0 -162
  583. data/spec/integration/preview/marketplace/installed_add_on_spec.rb +0 -250
  584. data/spec/integration/preview/sync/service/document/document_permission_spec.rb +0 -201
  585. data/spec/integration/preview/sync/service/document_spec.rb +0 -252
  586. data/spec/integration/preview/sync/service/sync_list/sync_list_item_spec.rb +0 -255
  587. data/spec/integration/preview/sync/service/sync_list/sync_list_permission_spec.rb +0 -201
  588. data/spec/integration/preview/sync/service/sync_list_spec.rb +0 -205
  589. data/spec/integration/preview/sync/service/sync_map/sync_map_item_spec.rb +0 -255
  590. data/spec/integration/preview/sync/service/sync_map/sync_map_permission_spec.rb +0 -201
  591. data/spec/integration/preview/sync/service/sync_map_spec.rb +0 -205
  592. data/spec/integration/preview/sync/service_spec.rb +0 -241
  593. data/spec/integration/preview/trusted_comms/branded_channel/channel_spec.rb +0 -50
  594. data/spec/integration/preview/trusted_comms/branded_channel_spec.rb +0 -47
  595. data/spec/integration/preview/trusted_comms/brands_information_spec.rb +0 -45
  596. data/spec/integration/preview/trusted_comms/cps_spec.rb +0 -44
  597. data/spec/integration/preview/trusted_comms/current_call_spec.rb +0 -58
  598. data/spec/integration/preview/understand/assistant/assistant_fallback_actions_spec.rb +0 -79
  599. data/spec/integration/preview/understand/assistant/assistant_initiation_actions_spec.rb +0 -79
  600. data/spec/integration/preview/understand/assistant/dialogue_spec.rb +0 -46
  601. data/spec/integration/preview/understand/assistant/field_type/field_value_spec.rb +0 -207
  602. data/spec/integration/preview/understand/assistant/field_type_spec.rb +0 -242
  603. data/spec/integration/preview/understand/assistant/model_build_spec.rb +0 -236
  604. data/spec/integration/preview/understand/assistant/query_spec.rb +0 -302
  605. data/spec/integration/preview/understand/assistant/style_sheet_spec.rb +0 -79
  606. data/spec/integration/preview/understand/assistant/task/field_spec.rb +0 -204
  607. data/spec/integration/preview/understand/assistant/task/sample_spec.rb +0 -249
  608. data/spec/integration/preview/understand/assistant/task/task_actions_spec.rb +0 -85
  609. data/spec/integration/preview/understand/assistant/task/task_statistics_spec.rb +0 -49
  610. data/spec/integration/preview/understand/assistant/task_spec.rb +0 -258
  611. data/spec/integration/preview/understand/assistant_spec.rb +0 -269
  612. data/spec/integration/preview/wireless/command_spec.rb +0 -167
  613. data/spec/integration/preview/wireless/rate_plan_spec.rb +0 -257
  614. data/spec/integration/preview/wireless/sim/usage_spec.rb +0 -50
  615. data/spec/integration/preview/wireless/sim_spec.rb +0 -207
  616. data/spec/integration/pricing/v1/messaging/country_spec.rb +0 -137
  617. data/spec/integration/pricing/v1/messaging_spec.rb +0 -12
  618. data/spec/integration/pricing/v1/phone_number/country_spec.rb +0 -128
  619. data/spec/integration/pricing/v1/phone_number_spec.rb +0 -12
  620. data/spec/integration/pricing/v1/voice/country_spec.rb +0 -138
  621. data/spec/integration/pricing/v1/voice/number_spec.rb +0 -55
  622. data/spec/integration/pricing/v1/voice_spec.rb +0 -12
  623. data/spec/integration/pricing/v2/voice/country_spec.rb +0 -179
  624. data/spec/integration/pricing/v2/voice/number_spec.rb +0 -61
  625. data/spec/integration/pricing/v2/voice_spec.rb +0 -12
  626. data/spec/integration/proxy/v1/service/phone_number_spec.rb +0 -231
  627. data/spec/integration/proxy/v1/service/session/interaction_spec.rb +0 -133
  628. data/spec/integration/proxy/v1/service/session/participant/message_interaction_spec.rb +0 -163
  629. data/spec/integration/proxy/v1/service/session/participant_spec.rb +0 -240
  630. data/spec/integration/proxy/v1/service/session_spec.rb +0 -225
  631. data/spec/integration/proxy/v1/service/short_code_spec.rb +0 -225
  632. data/spec/integration/proxy/v1/service_spec.rb +0 -214
  633. data/spec/integration/serverless/v1/service/asset/asset_version_spec.rb +0 -93
  634. data/spec/integration/serverless/v1/service/asset_spec.rb +0 -202
  635. data/spec/integration/serverless/v1/service/build/build_status_spec.rb +0 -48
  636. data/spec/integration/serverless/v1/service/build_spec.rb +0 -224
  637. data/spec/integration/serverless/v1/service/environment/deployment_spec.rb +0 -133
  638. data/spec/integration/serverless/v1/service/environment/log_spec.rb +0 -97
  639. data/spec/integration/serverless/v1/service/environment/variable_spec.rb +0 -207
  640. data/spec/integration/serverless/v1/service/environment_spec.rb +0 -170
  641. data/spec/integration/serverless/v1/service/function/function_version/function_version_content_spec.rb +0 -51
  642. data/spec/integration/serverless/v1/service/function/function_version_spec.rb +0 -96
  643. data/spec/integration/serverless/v1/service/function_spec.rb +0 -202
  644. data/spec/integration/serverless/v1/service_spec.rb +0 -205
  645. data/spec/integration/studio/v1/flow/engagement/engagement_context_spec.rb +0 -50
  646. data/spec/integration/studio/v1/flow/engagement/step/step_context_spec.rb +0 -53
  647. data/spec/integration/studio/v1/flow/engagement/step_spec.rb +0 -99
  648. data/spec/integration/studio/v1/flow/engagement_spec.rb +0 -168
  649. data/spec/integration/studio/v1/flow/execution/execution_context_spec.rb +0 -50
  650. data/spec/integration/studio/v1/flow/execution/execution_step/execution_step_context_spec.rb +0 -53
  651. data/spec/integration/studio/v1/flow/execution/execution_step_spec.rb +0 -100
  652. data/spec/integration/studio/v1/flow/execution_spec.rb +0 -214
  653. data/spec/integration/studio/v1/flow_spec.rb +0 -114
  654. data/spec/integration/studio/v2/flow/execution/execution_context_spec.rb +0 -50
  655. data/spec/integration/studio/v2/flow/execution/execution_step/execution_step_context_spec.rb +0 -53
  656. data/spec/integration/studio/v2/flow/execution/execution_step_spec.rb +0 -100
  657. data/spec/integration/studio/v2/flow/execution_spec.rb +0 -211
  658. data/spec/integration/studio/v2/flow/flow_revision_spec.rb +0 -110
  659. data/spec/integration/studio/v2/flow/test_user_spec.rb +0 -85
  660. data/spec/integration/studio/v2/flow_spec.rb +0 -251
  661. data/spec/integration/studio/v2/flow_validate_spec.rb +0 -46
  662. data/spec/integration/supersim/v1/command_spec.rb +0 -184
  663. data/spec/integration/supersim/v1/fleet_spec.rb +0 -222
  664. data/spec/integration/supersim/v1/network_access_profile/network_access_profile_network_spec.rb +0 -176
  665. data/spec/integration/supersim/v1/network_access_profile_spec.rb +0 -219
  666. data/spec/integration/supersim/v1/network_spec.rb +0 -137
  667. data/spec/integration/supersim/v1/sim_spec.rb +0 -323
  668. data/spec/integration/supersim/v1/usage_record_spec.rb +0 -647
  669. data/spec/integration/sync/v1/service/document/document_permission_spec.rb +0 -201
  670. data/spec/integration/sync/v1/service/document_spec.rb +0 -254
  671. data/spec/integration/sync/v1/service/sync_list/sync_list_item_spec.rb +0 -257
  672. data/spec/integration/sync/v1/service/sync_list/sync_list_permission_spec.rb +0 -201
  673. data/spec/integration/sync/v1/service/sync_list_spec.rb +0 -252
  674. data/spec/integration/sync/v1/service/sync_map/sync_map_item_spec.rb +0 -257
  675. data/spec/integration/sync/v1/service/sync_map/sync_map_permission_spec.rb +0 -201
  676. data/spec/integration/sync/v1/service/sync_map_spec.rb +0 -252
  677. data/spec/integration/sync/v1/service/sync_stream/stream_message_spec.rb +0 -47
  678. data/spec/integration/sync/v1/service/sync_stream_spec.rb +0 -244
  679. data/spec/integration/sync/v1/service_spec.rb +0 -261
  680. data/spec/integration/taskrouter/v1/workspace/activity_spec.rb +0 -232
  681. data/spec/integration/taskrouter/v1/workspace/event_spec.rb +0 -163
  682. data/spec/integration/taskrouter/v1/workspace/task/reservation_spec.rb +0 -222
  683. data/spec/integration/taskrouter/v1/workspace/task_channel_spec.rb +0 -312
  684. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics_spec.rb +0 -101
  685. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics_spec.rb +0 -83
  686. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_statistics_spec.rb +0 -107
  687. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queues_statistics_spec.rb +0 -145
  688. data/spec/integration/taskrouter/v1/workspace/task_queue_spec.rb +0 -290
  689. data/spec/integration/taskrouter/v1/workspace/task_spec.rb +0 -325
  690. data/spec/integration/taskrouter/v1/workspace/worker/reservation_spec.rb +0 -191
  691. data/spec/integration/taskrouter/v1/workspace/worker/worker_channel_spec.rb +0 -185
  692. data/spec/integration/taskrouter/v1/workspace/worker/worker_statistics_spec.rb +0 -91
  693. data/spec/integration/taskrouter/v1/workspace/worker/workers_cumulative_statistics_spec.rb +0 -88
  694. data/spec/integration/taskrouter/v1/workspace/worker/workers_real_time_statistics_spec.rb +0 -69
  695. data/spec/integration/taskrouter/v1/workspace/worker/workers_statistics_spec.rb +0 -115
  696. data/spec/integration/taskrouter/v1/workspace/worker_spec.rb +0 -290
  697. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics_spec.rb +0 -96
  698. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_real_time_statistics_spec.rb +0 -57
  699. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_statistics_spec.rb +0 -70
  700. data/spec/integration/taskrouter/v1/workspace/workflow_spec.rb +0 -266
  701. data/spec/integration/taskrouter/v1/workspace/workspace_cumulative_statistics_spec.rb +0 -93
  702. data/spec/integration/taskrouter/v1/workspace/workspace_real_time_statistics_spec.rb +0 -72
  703. data/spec/integration/taskrouter/v1/workspace/workspace_statistics_spec.rb +0 -104
  704. data/spec/integration/taskrouter/v1/workspace_spec.rb +0 -291
  705. data/spec/integration/trunking/v1/trunk/credential_list_spec.rb +0 -189
  706. data/spec/integration/trunking/v1/trunk/ip_access_control_list_spec.rb +0 -189
  707. data/spec/integration/trunking/v1/trunk/origination_url_spec.rb +0 -248
  708. data/spec/integration/trunking/v1/trunk/phone_number_spec.rb +0 -264
  709. data/spec/integration/trunking/v1/trunk/recording_spec.rb +0 -75
  710. data/spec/integration/trunking/v1/trunk_spec.rb +0 -281
  711. data/spec/integration/verify/v2/form_spec.rb +0 -47
  712. data/spec/integration/verify/v2/service/access_token_spec.rb +0 -44
  713. data/spec/integration/verify/v2/service/entity/challenge_spec.rb +0 -288
  714. data/spec/integration/verify/v2/service/entity/factor_spec.rb +0 -277
  715. data/spec/integration/verify/v2/service/entity_spec.rb +0 -201
  716. data/spec/integration/verify/v2/service/messaging_configuration_spec.rb +0 -228
  717. data/spec/integration/verify/v2/service/rate_limit/bucket_spec.rb +0 -245
  718. data/spec/integration/verify/v2/service/rate_limit_spec.rb +0 -217
  719. data/spec/integration/verify/v2/service/verification_check_spec.rb +0 -80
  720. data/spec/integration/verify/v2/service/verification_spec.rb +0 -318
  721. data/spec/integration/verify/v2/service/webhook_spec.rb +0 -258
  722. data/spec/integration/verify/v2/service_spec.rb +0 -279
  723. data/spec/integration/video/v1/composition_hook_spec.rb +0 -407
  724. data/spec/integration/video/v1/composition_settings_spec.rb +0 -85
  725. data/spec/integration/video/v1/composition_spec.rb +0 -347
  726. data/spec/integration/video/v1/recording_settings_spec.rb +0 -85
  727. data/spec/integration/video/v1/recording_spec.rb +0 -176
  728. data/spec/integration/video/v1/room/recording_spec.rb +0 -185
  729. data/spec/integration/video/v1/room/room_participant/room_participant_published_track_spec.rb +0 -94
  730. data/spec/integration/video/v1/room/room_participant/room_participant_subscribe_rule_spec.rb +0 -103
  731. data/spec/integration/video/v1/room/room_participant/room_participant_subscribed_track_spec.rb +0 -95
  732. data/spec/integration/video/v1/room/room_participant_spec.rb +0 -187
  733. data/spec/integration/video/v1/room/room_recording_rule_spec.rb +0 -89
  734. data/spec/integration/video/v1/room_spec.rb +0 -301
  735. data/spec/integration/voice/v1/byoc_trunk_spec.rb +0 -245
  736. data/spec/integration/voice/v1/connection_policy/connection_policy_target_spec.rb +0 -242
  737. data/spec/integration/voice/v1/connection_policy_spec.rb +0 -221
  738. data/spec/integration/voice/v1/dialing_permissions/bulk_country_update_spec.rb +0 -45
  739. data/spec/integration/voice/v1/dialing_permissions/country/highrisk_special_prefix_spec.rb +0 -60
  740. data/spec/integration/voice/v1/dialing_permissions/country_spec.rb +0 -110
  741. data/spec/integration/voice/v1/dialing_permissions/settings_spec.rb +0 -75
  742. data/spec/integration/voice/v1/dialing_permissions_spec.rb +0 -12
  743. data/spec/integration/voice/v1/ip_record_spec.rb +0 -219
  744. data/spec/integration/voice/v1/source_ip_mapping_spec.rb +0 -216
  745. data/spec/integration/wireless/v1/command_spec.rb +0 -286
  746. data/spec/integration/wireless/v1/rate_plan_spec.rb +0 -277
  747. data/spec/integration/wireless/v1/sim/data_session_spec.rb +0 -88
  748. data/spec/integration/wireless/v1/sim/usage_record_spec.rb +0 -114
  749. data/spec/integration/wireless/v1/sim_spec.rb +0 -325
  750. data/spec/integration/wireless/v1/usage_record_spec.rb +0 -110
  751. data/spec/jwt/access_token_spec.rb +0 -159
  752. data/spec/jwt/client_capability_spec.rb +0 -104
  753. data/spec/jwt/task_router_spec.rb +0 -172
  754. data/spec/rack/twilio_webhook_authentication_spec.rb +0 -106
  755. data/spec/rest/client_spec.rb +0 -255
  756. data/spec/security/request_validator_spec.rb +0 -125
  757. data/spec/spec_helper.rb +0 -38
  758. data/spec/support/fakeweb.rb +0 -2
  759. data/spec/twilio_spec.rb +0 -17
  760. data/spec/twiml/messaging_response_spec.rb +0 -235
  761. data/spec/twiml/voice_response_spec.rb +0 -847
  762. data/spec/util/configuration_spec.rb +0 -33
  763. data/spec/util/url_encode_spec.rb +0 -12
@@ -0,0 +1,225 @@
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 Pricing < Domain
12
+ class V2 < Version
13
+ class NumberList < ListResource
14
+ ##
15
+ # Initialize the NumberList
16
+ # @param [Version] version Version that contains the resource
17
+ # @return [NumberList] NumberList
18
+ def initialize(version)
19
+ super(version)
20
+
21
+ # Path Solution
22
+ @solution = {}
23
+ end
24
+
25
+ ##
26
+ # Provide a user friendly representation
27
+ def to_s
28
+ '#<Twilio.Pricing.V2.NumberList>'
29
+ end
30
+ end
31
+
32
+ class NumberPage < Page
33
+ ##
34
+ # Initialize the NumberPage
35
+ # @param [Version] version Version that contains the resource
36
+ # @param [Response] response Response from the API
37
+ # @param [Hash] solution Path solution for the resource
38
+ # @return [NumberPage] NumberPage
39
+ def initialize(version, response, solution)
40
+ super(version, response)
41
+
42
+ # Path Solution
43
+ @solution = solution
44
+ end
45
+
46
+ ##
47
+ # Build an instance of NumberInstance
48
+ # @param [Hash] payload Payload response from the API
49
+ # @return [NumberInstance] NumberInstance
50
+ def get_instance(payload)
51
+ NumberInstance.new(@version, payload, )
52
+ end
53
+
54
+ ##
55
+ # Provide a user friendly representation
56
+ def to_s
57
+ '<Twilio.Pricing.V2.NumberPage>'
58
+ end
59
+ end
60
+
61
+ class NumberContext < InstanceContext
62
+ ##
63
+ # Initialize the NumberContext
64
+ # @param [Version] version Version that contains the resource
65
+ # @param [String] destination_number The destination phone number, in
66
+ # {E.164}[https://www.twilio.com/docs/glossary/what-e164] format, for which to
67
+ # fetch the origin-based voice pricing information. E.164 format consists of a +
68
+ # followed by the country code and subscriber number.
69
+ # @return [NumberContext] NumberContext
70
+ def initialize(version, destination_number)
71
+ super(version)
72
+
73
+ # Path Solution
74
+ @solution = {destination_number: destination_number, }
75
+ @uri = "/Trunking/Numbers/#{CGI.escape(@solution[:destination_number]).gsub("+", "%20")}"
76
+ end
77
+
78
+ ##
79
+ # Fetch the NumberInstance
80
+ # @param [String] origination_number The origination phone number, in
81
+ # {E.164}[https://www.twilio.com/docs/glossary/what-e164] format, for which to
82
+ # fetch the origin-based voice pricing information. E.164 format consists of a +
83
+ # followed by the country code and subscriber number.
84
+ # @return [NumberInstance] Fetched NumberInstance
85
+ def fetch(origination_number: :unset)
86
+ params = Twilio::Values.of({'OriginationNumber' => origination_number, })
87
+
88
+ payload = @version.fetch('GET', @uri, params: params)
89
+
90
+ NumberInstance.new(@version, payload, destination_number: @solution[:destination_number], )
91
+ end
92
+
93
+ ##
94
+ # Provide a user friendly representation
95
+ def to_s
96
+ context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
97
+ "#<Twilio.Pricing.V2.NumberContext #{context}>"
98
+ end
99
+
100
+ ##
101
+ # Provide a detailed, user friendly representation
102
+ def inspect
103
+ context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
104
+ "#<Twilio.Pricing.V2.NumberContext #{context}>"
105
+ end
106
+ end
107
+
108
+ class NumberInstance < InstanceResource
109
+ ##
110
+ # Initialize the NumberInstance
111
+ # @param [Version] version Version that contains the resource
112
+ # @param [Hash] payload payload that contains response from Twilio
113
+ # @param [String] destination_number The destination phone number, in
114
+ # {E.164}[https://www.twilio.com/docs/glossary/what-e164] format, for which to
115
+ # fetch the origin-based voice pricing information. E.164 format consists of a +
116
+ # followed by the country code and subscriber number.
117
+ # @return [NumberInstance] NumberInstance
118
+ def initialize(version, payload, destination_number: nil)
119
+ super(version)
120
+
121
+ # Marshaled Properties
122
+ @properties = {
123
+ 'destination_number' => payload['destination_number'],
124
+ 'origination_number' => payload['origination_number'],
125
+ 'country' => payload['country'],
126
+ 'iso_country' => payload['iso_country'],
127
+ 'terminating_prefix_prices' => payload['terminating_prefix_prices'],
128
+ 'originating_call_price' => payload['originating_call_price'],
129
+ 'price_unit' => payload['price_unit'],
130
+ 'url' => payload['url'],
131
+ }
132
+
133
+ # Context
134
+ @instance_context = nil
135
+ @params = {'destination_number' => destination_number || @properties['destination_number'], }
136
+ end
137
+
138
+ ##
139
+ # Generate an instance context for the instance, the context is capable of
140
+ # performing various actions. All instance actions are proxied to the context
141
+ # @return [NumberContext] NumberContext for this NumberInstance
142
+ def context
143
+ unless @instance_context
144
+ @instance_context = NumberContext.new(@version, @params['destination_number'], )
145
+ end
146
+ @instance_context
147
+ end
148
+
149
+ ##
150
+ # @return [String] The destination phone number, in E.164 format
151
+ def destination_number
152
+ @properties['destination_number']
153
+ end
154
+
155
+ ##
156
+ # @return [String] The origination phone number, in E.164 format
157
+ def origination_number
158
+ @properties['origination_number']
159
+ end
160
+
161
+ ##
162
+ # @return [String] The name of the country
163
+ def country
164
+ @properties['country']
165
+ end
166
+
167
+ ##
168
+ # @return [String] The ISO country code
169
+ def iso_country
170
+ @properties['iso_country']
171
+ end
172
+
173
+ ##
174
+ # @return [Array[String]] The terminating_prefix_prices
175
+ def terminating_prefix_prices
176
+ @properties['terminating_prefix_prices']
177
+ end
178
+
179
+ ##
180
+ # @return [String] The OriginatingCallPrice record
181
+ def originating_call_price
182
+ @properties['originating_call_price']
183
+ end
184
+
185
+ ##
186
+ # @return [String] The currency in which prices are measured, in ISO 4127 format (e.g. usd, eur, jpy)
187
+ def price_unit
188
+ @properties['price_unit']
189
+ end
190
+
191
+ ##
192
+ # @return [String] The absolute URL of the resource
193
+ def url
194
+ @properties['url']
195
+ end
196
+
197
+ ##
198
+ # Fetch the NumberInstance
199
+ # @param [String] origination_number The origination phone number, in
200
+ # {E.164}[https://www.twilio.com/docs/glossary/what-e164] format, for which to
201
+ # fetch the origin-based voice pricing information. E.164 format consists of a +
202
+ # followed by the country code and subscriber number.
203
+ # @return [NumberInstance] Fetched NumberInstance
204
+ def fetch(origination_number: :unset)
205
+ context.fetch(origination_number: origination_number, )
206
+ end
207
+
208
+ ##
209
+ # Provide a user friendly representation
210
+ def to_s
211
+ values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
212
+ "<Twilio.Pricing.V2.NumberInstance #{values}>"
213
+ end
214
+
215
+ ##
216
+ # Provide a detailed, user friendly representation
217
+ def inspect
218
+ values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
219
+ "<Twilio.Pricing.V2.NumberInstance #{values}>"
220
+ end
221
+ end
222
+ end
223
+ end
224
+ end
225
+ end
@@ -15,9 +15,46 @@ module Twilio
15
15
  def initialize(domain)
16
16
  super
17
17
  @version = 'v2'
18
+ @countries = nil
19
+ @numbers = nil
18
20
  @voice = nil
19
21
  end
20
22
 
23
+ ##
24
+ # @param [String] iso_country The {ISO country
25
+ # code}[https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2] of the origin-based
26
+ # voice pricing information to fetch.
27
+ # @return [Twilio::REST::Pricing::V2::CountryContext] if iso_country was passed.
28
+ # @return [Twilio::REST::Pricing::V2::CountryList]
29
+ def countries(iso_country=:unset)
30
+ if iso_country.nil?
31
+ raise ArgumentError, 'iso_country cannot be nil'
32
+ end
33
+ if iso_country == :unset
34
+ @countries ||= CountryList.new self
35
+ else
36
+ CountryContext.new(self, iso_country)
37
+ end
38
+ end
39
+
40
+ ##
41
+ # @param [String] destination_number The destination phone number, in
42
+ # {E.164}[https://www.twilio.com/docs/glossary/what-e164] format, for which to
43
+ # fetch the origin-based voice pricing information. E.164 format consists of a +
44
+ # followed by the country code and subscriber number.
45
+ # @return [Twilio::REST::Pricing::V2::NumberContext] if destination_number was passed.
46
+ # @return [Twilio::REST::Pricing::V2::NumberList]
47
+ def numbers(destination_number=:unset)
48
+ if destination_number.nil?
49
+ raise ArgumentError, 'destination_number cannot be nil'
50
+ end
51
+ if destination_number == :unset
52
+ @numbers ||= NumberList.new self
53
+ else
54
+ NumberContext.new(self, destination_number)
55
+ end
56
+ end
57
+
21
58
  ##
22
59
  # @return [Twilio::REST::Pricing::V2::VoiceContext]
23
60
  def voice
@@ -53,6 +53,25 @@ module Twilio
53
53
  self.v2.voice()
54
54
  end
55
55
 
56
+ ##
57
+ # @param [String] iso_country The {ISO country
58
+ # code}[https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2].
59
+ # @return [Twilio::REST::Pricing::V2::CountryInstance] if iso_country was passed.
60
+ # @return [Twilio::REST::Pricing::V2::CountryList]
61
+ def countries(iso_country=:unset)
62
+ self.v2.countries(iso_country)
63
+ end
64
+
65
+ ##
66
+ # @param [String] destination_number The destination phone number in
67
+ # {E.164}[https://www.twilio.com/docs/glossary/what-e164] format, which consists
68
+ # of a + followed by the country code and subscriber number.
69
+ # @return [Twilio::REST::Pricing::V2::NumberInstance] if destination_number was passed.
70
+ # @return [Twilio::REST::Pricing::V2::NumberList]
71
+ def numbers(destination_number=:unset)
72
+ self.v2.numbers(destination_number)
73
+ end
74
+
56
75
  ##
57
76
  # Provide a user friendly representation
58
77
  def to_s
@@ -273,7 +273,7 @@ module Twilio
273
273
  'capabilities' => payload['capabilities'],
274
274
  'url' => payload['url'],
275
275
  'is_reserved' => payload['is_reserved'],
276
- 'in_use' => payload['in_use'].to_i,
276
+ 'in_use' => payload['in_use'] == nil ? payload['in_use'] : payload['in_use'].to_i,
277
277
  }
278
278
 
279
279
  # Context
@@ -121,26 +121,13 @@ module Twilio
121
121
  # Participant. If not specified, Proxy will select a number from the pool.
122
122
  # @param [String] proxy_identifier_sid The SID of the Proxy Identifier to assign
123
123
  # to the Participant.
124
- # @param [Boolean] fail_on_participant_conflict [Experimental] For accounts with
125
- # the ProxyAllowParticipantConflict account flag, setting to true enables
126
- # per-request opt-in to allowing Proxy to reject a Participant create request that
127
- # could cause the same Identifier/ProxyIdentifier pair to be active in multiple
128
- # Sessions. Depending on the context, this could be a 409 error (Twilio error code
129
- # 80623) or a 400 error (Twilio error code 80604). If not provided, requests will
130
- # be allowed to succeed and a Debugger notification (80802) will be emitted.
131
- # Having multiple, active Participants with the same Identifier/ProxyIdentifier
132
- # pair causes calls and messages from affected Participants to be routed
133
- # incorrectly. Please note, the default behavior for accounts without the
134
- # ProxyAllowParticipantConflict flag is to reject the request as described. This
135
- # will eventually be the default for all accounts.
136
124
  # @return [ParticipantInstance] Created ParticipantInstance
137
- def create(identifier: nil, friendly_name: :unset, proxy_identifier: :unset, proxy_identifier_sid: :unset, fail_on_participant_conflict: :unset)
125
+ def create(identifier: nil, friendly_name: :unset, proxy_identifier: :unset, proxy_identifier_sid: :unset)
138
126
  data = Twilio::Values.of({
139
127
  'Identifier' => identifier,
140
128
  'FriendlyName' => friendly_name,
141
129
  'ProxyIdentifier' => proxy_identifier,
142
130
  'ProxyIdentifierSid' => proxy_identifier_sid,
143
- 'FailOnParticipantConflict' => fail_on_participant_conflict,
144
131
  })
145
132
 
146
133
  payload = @version.create('POST', @uri, data: data)
@@ -378,7 +365,7 @@ module Twilio
378
365
  end
379
366
 
380
367
  ##
381
- # @return [String] The phone number of the Participant
368
+ # @return [String] The phone number or channel identifier of the Participant
382
369
  def identifier
383
370
  @properties['identifier']
384
371
  end
@@ -127,20 +127,8 @@ module Twilio
127
127
  # on create.
128
128
  # @param [Array[Hash]] participants The Participant objects to include in the new
129
129
  # session.
130
- # @param [Boolean] fail_on_participant_conflict [Experimental] For accounts with
131
- # the ProxyAllowParticipantConflict account flag, setting to true enables
132
- # per-request opt-in to allowing Proxy to reject a Session create (with
133
- # Participants) request that could cause the same Identifier/ProxyIdentifier pair
134
- # to be active in multiple Sessions. Depending on the context, this could be a 409
135
- # error (Twilio error code 80623) or a 400 error (Twilio error code 80604). If not
136
- # provided, requests will be allowed to succeed and a Debugger notification
137
- # (80802) will be emitted. Having multiple, active Participants with the same
138
- # Identifier/ProxyIdentifier pair causes calls and messages from affected
139
- # Participants to be routed incorrectly. Please note, the default behavior for
140
- # accounts without the ProxyAllowParticipantConflict flag is to reject the request
141
- # as described. This will eventually be the default for all accounts.
142
130
  # @return [SessionInstance] Created SessionInstance
143
- def create(unique_name: :unset, date_expiry: :unset, ttl: :unset, mode: :unset, status: :unset, participants: :unset, fail_on_participant_conflict: :unset)
131
+ def create(unique_name: :unset, date_expiry: :unset, ttl: :unset, mode: :unset, status: :unset, participants: :unset)
144
132
  data = Twilio::Values.of({
145
133
  'UniqueName' => unique_name,
146
134
  'DateExpiry' => Twilio.serialize_iso8601_datetime(date_expiry),
@@ -148,7 +136,6 @@ module Twilio
148
136
  'Mode' => mode,
149
137
  'Status' => status,
150
138
  'Participants' => Twilio.serialize_list(participants) { |e| Twilio.serialize_object(e) },
151
- 'FailOnParticipantConflict' => fail_on_participant_conflict,
152
139
  })
153
140
 
154
141
  payload = @version.create('POST', @uri, data: data)
@@ -243,24 +230,12 @@ module Twilio
243
230
  # is measured from the last Session create or the Session's last Interaction.
244
231
  # @param [session.Status] status The new status of the resource. Can be:
245
232
  # `in-progress` to re-open a session or `closed` to close a session.
246
- # @param [Boolean] fail_on_participant_conflict [Experimental] For accounts with
247
- # the ProxyAllowParticipantConflict account flag, setting to true enables
248
- # per-request opt-in to allowing Proxy to return a 400 error (Twilio error code
249
- # 80604) when a request to set a Session to in-progress would cause Participants
250
- # with the same Identifier/ProxyIdentifier pair to be active in multiple Sessions.
251
- # If not provided, requests will be allowed to succeed, and a Debugger
252
- # notification (80801) will be emitted. Having multiple, active Participants with
253
- # the same Identifier/ProxyIdentifier pair causes calls and messages from affected
254
- # Participants to be routed incorrectly. Please note, the default behavior for
255
- # accounts without the ProxyAllowParticipantConflict flag is to reject the request
256
- # as described. This will eventually be the default for all accounts.
257
233
  # @return [SessionInstance] Updated SessionInstance
258
- def update(date_expiry: :unset, ttl: :unset, status: :unset, fail_on_participant_conflict: :unset)
234
+ def update(date_expiry: :unset, ttl: :unset, status: :unset)
259
235
  data = Twilio::Values.of({
260
236
  'DateExpiry' => Twilio.serialize_iso8601_datetime(date_expiry),
261
237
  'Ttl' => ttl,
262
238
  'Status' => status,
263
- 'FailOnParticipantConflict' => fail_on_participant_conflict,
264
239
  })
265
240
 
266
241
  payload = @version.update('POST', @uri, data: data)
@@ -355,7 +330,7 @@ module Twilio
355
330
  'unique_name' => payload['unique_name'],
356
331
  'status' => payload['status'],
357
332
  'closed_reason' => payload['closed_reason'],
358
- 'ttl' => payload['ttl'].to_i,
333
+ 'ttl' => payload['ttl'] == nil ? payload['ttl'] : payload['ttl'].to_i,
359
334
  'mode' => payload['mode'],
360
335
  'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
361
336
  'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
@@ -498,25 +473,9 @@ module Twilio
498
473
  # is measured from the last Session create or the Session's last Interaction.
499
474
  # @param [session.Status] status The new status of the resource. Can be:
500
475
  # `in-progress` to re-open a session or `closed` to close a session.
501
- # @param [Boolean] fail_on_participant_conflict [Experimental] For accounts with
502
- # the ProxyAllowParticipantConflict account flag, setting to true enables
503
- # per-request opt-in to allowing Proxy to return a 400 error (Twilio error code
504
- # 80604) when a request to set a Session to in-progress would cause Participants
505
- # with the same Identifier/ProxyIdentifier pair to be active in multiple Sessions.
506
- # If not provided, requests will be allowed to succeed, and a Debugger
507
- # notification (80801) will be emitted. Having multiple, active Participants with
508
- # the same Identifier/ProxyIdentifier pair causes calls and messages from affected
509
- # Participants to be routed incorrectly. Please note, the default behavior for
510
- # accounts without the ProxyAllowParticipantConflict flag is to reject the request
511
- # as described. This will eventually be the default for all accounts.
512
476
  # @return [SessionInstance] Updated SessionInstance
513
- def update(date_expiry: :unset, ttl: :unset, status: :unset, fail_on_participant_conflict: :unset)
514
- context.update(
515
- date_expiry: date_expiry,
516
- ttl: ttl,
517
- status: status,
518
- fail_on_participant_conflict: fail_on_participant_conflict,
519
- )
477
+ def update(date_expiry: :unset, ttl: :unset, status: :unset)
478
+ context.update(date_expiry: date_expiry, ttl: ttl, status: status, )
520
479
  end
521
480
 
522
481
  ##
@@ -386,7 +386,7 @@ module Twilio
386
386
  'account_sid' => payload['account_sid'],
387
387
  'chat_instance_sid' => payload['chat_instance_sid'],
388
388
  'callback_url' => payload['callback_url'],
389
- 'default_ttl' => payload['default_ttl'].to_i,
389
+ 'default_ttl' => payload['default_ttl'] == nil ? payload['default_ttl'] : payload['default_ttl'].to_i,
390
390
  'number_selection_behavior' => payload['number_selection_behavior'],
391
391
  'geo_match_level' => payload['geo_match_level'],
392
392
  'intercept_callback_url' => payload['intercept_callback_url'],
@@ -25,11 +25,12 @@ module Twilio
25
25
  # @return [Twilio::REST::Proxy::V1::ServiceList]
26
26
  def services(sid=:unset)
27
27
  if sid.nil?
28
- raise ArgumentError, 'sid cannot be nil'
29
- elsif sid == :unset
30
- @services ||= ServiceList.new self
28
+ raise ArgumentError, 'sid cannot be nil'
29
+ end
30
+ if sid == :unset
31
+ @services ||= ServiceList.new self
31
32
  else
32
- ServiceContext.new(self, sid)
33
+ ServiceContext.new(self, sid)
33
34
  end
34
35
  end
35
36