twilio-ruby 5.45.0 → 5.60.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (691) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +2 -0
  3. data/.rubocop_todo.yml +7 -7
  4. data/.travis.yml +41 -28
  5. data/CHANGES.md +456 -0
  6. data/Gemfile +1 -0
  7. data/LICENSE +1 -1
  8. data/README.md +29 -6
  9. data/examples/examples.rb +1 -1
  10. data/lib/twilio-ruby/framework/{domain.rb → rest/domain.rb} +0 -0
  11. data/lib/twilio-ruby/framework/{error.rb → rest/error.rb} +0 -0
  12. data/lib/twilio-ruby/framework/{helper.rb → rest/helper.rb} +0 -0
  13. data/lib/twilio-ruby/framework/{obsolete_client.rb → rest/obsolete_client.rb} +0 -0
  14. data/lib/twilio-ruby/framework/{page.rb → rest/page.rb} +0 -0
  15. data/lib/twilio-ruby/framework/{resource.rb → rest/resource.rb} +0 -0
  16. data/lib/twilio-ruby/framework/{version.rb → rest/version.rb} +0 -0
  17. data/lib/twilio-ruby/http/http_client.rb +15 -3
  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/authorized_connect_app.rb +1 -1
  21. data/lib/twilio-ruby/rest/api/v2010/account/call/event.rb +4 -4
  22. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb +40 -40
  23. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb +5 -5
  24. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +8 -8
  25. data/lib/twilio-ruby/rest/api/v2010/account/call/siprec.rb +667 -0
  26. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +57 -16
  27. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +23 -19
  28. data/lib/twilio-ruby/rest/api/v2010/account/conference/recording.rb +1 -1
  29. data/lib/twilio-ruby/rest/api/v2010/account/connect_app.rb +3 -3
  30. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +11 -4
  31. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +11 -4
  32. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +11 -4
  33. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +17 -10
  34. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +7 -7
  35. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb +11 -11
  36. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/ip_access_control_list_mapping.rb +11 -11
  37. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +6 -3
  38. data/lib/twilio-ruby/rest/api/v2010/account/token.rb +1 -1
  39. data/lib/twilio-ruby/rest/api/v2010.rb +5 -4
  40. data/lib/twilio-ruby/rest/api.rb +1 -1
  41. data/lib/twilio-ruby/rest/autopilot/v1.rb +5 -4
  42. data/lib/twilio-ruby/rest/bulkexports/v1/export/day.rb +7 -12
  43. data/lib/twilio-ruby/rest/bulkexports/v1/export/export_custom_job.rb +20 -10
  44. data/lib/twilio-ruby/rest/bulkexports/v1/export/job.rb +20 -12
  45. data/lib/twilio-ruby/rest/bulkexports/v1/export.rb +7 -12
  46. data/lib/twilio-ruby/rest/bulkexports/v1/export_configuration.rb +5 -11
  47. data/lib/twilio-ruby/rest/bulkexports/v1.rb +14 -10
  48. data/lib/twilio-ruby/rest/bulkexports.rb +4 -2
  49. data/lib/twilio-ruby/rest/chat/v1/service/channel/invite.rb +3 -3
  50. data/lib/twilio-ruby/rest/chat/v1/service/channel/member.rb +3 -3
  51. data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +6 -6
  52. data/lib/twilio-ruby/rest/chat/v1/service/role.rb +9 -9
  53. data/lib/twilio-ruby/rest/chat/v1/service.rb +5 -5
  54. data/lib/twilio-ruby/rest/chat/v1.rb +10 -8
  55. data/lib/twilio-ruby/rest/chat/v2/service/binding.rb +7 -7
  56. data/lib/twilio-ruby/rest/chat/v2/service/channel/invite.rb +3 -3
  57. data/lib/twilio-ruby/rest/chat/v2/service/channel/member.rb +3 -3
  58. data/lib/twilio-ruby/rest/chat/v2/service/channel/webhook.rb +27 -24
  59. data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +6 -6
  60. data/lib/twilio-ruby/rest/chat/v2/service/role.rb +9 -9
  61. data/lib/twilio-ruby/rest/chat/v2/service/user/user_binding.rb +10 -10
  62. data/lib/twilio-ruby/rest/chat/v2/service.rb +5 -5
  63. data/lib/twilio-ruby/rest/chat/v2.rb +10 -8
  64. data/lib/twilio-ruby/rest/client.rb +22 -1
  65. data/lib/twilio-ruby/rest/conversations/v1/configuration/webhook.rb +9 -9
  66. data/lib/twilio-ruby/rest/conversations/v1/conversation/message.rb +13 -6
  67. data/lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb +32 -2
  68. data/lib/twilio-ruby/rest/conversations/v1/conversation/webhook.rb +9 -9
  69. data/lib/twilio-ruby/rest/conversations/v1/conversation.rb +7 -0
  70. data/lib/twilio-ruby/rest/conversations/v1/participant_conversation.rb +312 -0
  71. data/lib/twilio-ruby/rest/conversations/v1/role.rb +9 -9
  72. data/lib/twilio-ruby/rest/conversations/v1/service/binding.rb +7 -7
  73. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb +18 -2
  74. data/lib/twilio-ruby/rest/conversations/v1/service/configuration.rb +17 -2
  75. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message.rb +13 -6
  76. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/participant.rb +32 -2
  77. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/webhook.rb +9 -9
  78. data/lib/twilio-ruby/rest/conversations/v1/service/conversation.rb +7 -0
  79. data/lib/twilio-ruby/rest/conversations/v1/service/participant_conversation.rb +324 -0
  80. data/lib/twilio-ruby/rest/conversations/v1/service/role.rb +9 -9
  81. data/lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb +466 -0
  82. data/lib/twilio-ruby/rest/conversations/v1/service/user.rb +52 -1
  83. data/lib/twilio-ruby/rest/conversations/v1/service.rb +23 -0
  84. data/lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb +442 -0
  85. data/lib/twilio-ruby/rest/conversations/v1/user.rb +43 -1
  86. data/lib/twilio-ruby/rest/conversations/v1.rb +32 -20
  87. data/lib/twilio-ruby/rest/conversations.rb +6 -0
  88. data/lib/twilio-ruby/rest/events/v1/event_type.rb +16 -9
  89. data/lib/twilio-ruby/rest/events/v1/schema/{schema_version.rb → version.rb} +41 -41
  90. data/lib/twilio-ruby/rest/events/v1/schema.rb +16 -16
  91. data/lib/twilio-ruby/rest/events/v1/sink/sink_test.rb +3 -3
  92. data/lib/twilio-ruby/rest/events/v1/sink/sink_validate.rb +3 -3
  93. data/lib/twilio-ruby/rest/events/v1/sink.rb +49 -11
  94. data/lib/twilio-ruby/rest/events/v1/subscription/subscribed_event.rb +139 -9
  95. data/lib/twilio-ruby/rest/events/v1/subscription.rb +15 -8
  96. data/lib/twilio-ruby/rest/events/v1.rb +20 -16
  97. data/lib/twilio-ruby/rest/fax/v1.rb +5 -4
  98. data/lib/twilio-ruby/rest/flex_api/v1/channel.rb +5 -5
  99. data/lib/twilio-ruby/rest/flex_api/v1/configuration.rb +25 -4
  100. data/lib/twilio-ruby/rest/flex_api/v1/flex_flow.rb +101 -83
  101. data/lib/twilio-ruby/rest/flex_api/v1/web_channel.rb +2 -2
  102. data/lib/twilio-ruby/rest/flex_api/v1.rb +16 -13
  103. data/lib/twilio-ruby/rest/flex_api.rb +1 -1
  104. data/lib/twilio-ruby/rest/frontline_api/v1/user.rb +233 -0
  105. data/lib/twilio-ruby/rest/frontline_api/v1.rb +45 -0
  106. data/lib/twilio-ruby/rest/frontline_api.rb +47 -0
  107. data/lib/twilio-ruby/rest/insights/v1/call/summary.rb +8 -9
  108. data/lib/twilio-ruby/rest/insights/v1/call_summaries.rb +434 -0
  109. data/lib/twilio-ruby/rest/insights/v1/room/participant.rb +22 -22
  110. data/lib/twilio-ruby/rest/insights/v1/room.rb +55 -43
  111. data/lib/twilio-ruby/rest/insights/v1.rb +18 -9
  112. data/lib/twilio-ruby/rest/insights.rb +7 -1
  113. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/invite.rb +3 -3
  114. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb +3 -3
  115. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +3 -3
  116. data/lib/twilio-ruby/rest/ip_messaging/v1/service/role.rb +4 -4
  117. data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +3 -3
  118. data/lib/twilio-ruby/rest/ip_messaging/v1.rb +10 -8
  119. data/lib/twilio-ruby/rest/ip_messaging/v2/service/binding.rb +7 -7
  120. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/invite.rb +3 -3
  121. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb +3 -3
  122. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/webhook.rb +6 -6
  123. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +3 -3
  124. data/lib/twilio-ruby/rest/ip_messaging/v2/service/role.rb +4 -4
  125. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_binding.rb +4 -4
  126. data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +3 -3
  127. data/lib/twilio-ruby/rest/ip_messaging/v2.rb +10 -8
  128. data/lib/twilio-ruby/rest/lookups/v1/phone_number.rb +16 -16
  129. data/lib/twilio-ruby/rest/lookups/v1.rb +5 -4
  130. data/lib/twilio-ruby/rest/media/v1/media_processor.rb +384 -0
  131. data/lib/twilio-ruby/rest/media/v1/player_streamer/playback_grant.rb +221 -0
  132. data/lib/twilio-ruby/rest/media/v1/player_streamer.rb +390 -0
  133. data/lib/twilio-ruby/rest/media/v1.rb +60 -0
  134. data/lib/twilio-ruby/rest/media.rb +56 -0
  135. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_vetting.rb +272 -0
  136. data/lib/twilio-ruby/rest/messaging/v1/brand_registration.rb +424 -0
  137. data/lib/twilio-ruby/rest/messaging/v1/external_campaign.rb +150 -0
  138. data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +1 -1
  139. data/lib/twilio-ruby/rest/messaging/v1/service/phone_number.rb +1 -1
  140. data/lib/twilio-ruby/rest/messaging/v1/service/short_code.rb +1 -1
  141. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person.rb +433 -0
  142. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person_usecase.rb +129 -0
  143. data/lib/twilio-ruby/rest/messaging/v1/service.rb +144 -26
  144. data/lib/twilio-ruby/rest/messaging/v1/usecase.rb +111 -0
  145. data/lib/twilio-ruby/rest/messaging/v1.rb +35 -4
  146. data/lib/twilio-ruby/rest/messaging.rb +20 -0
  147. data/lib/twilio-ruby/rest/monitor/v1.rb +10 -8
  148. data/lib/twilio-ruby/rest/notify/v1/service/binding.rb +16 -15
  149. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +18 -18
  150. data/lib/twilio-ruby/rest/notify/v1.rb +10 -8
  151. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/bundle_copy.rb +188 -0
  152. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/evaluation.rb +1 -1
  153. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/replace_items.rb +188 -0
  154. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle.rb +59 -14
  155. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user_type.rb +1 -1
  156. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document_type.rb +1 -1
  157. data/lib/twilio-ruby/rest/preview/bulk_exports/export/day.rb +7 -4
  158. data/lib/twilio-ruby/rest/preview/bulk_exports/export/export_custom_job.rb +5 -3
  159. data/lib/twilio-ruby/rest/preview/bulk_exports/export/job.rb +5 -3
  160. data/lib/twilio-ruby/rest/preview/bulk_exports/export.rb +7 -4
  161. data/lib/twilio-ruby/rest/preview/bulk_exports/export_configuration.rb +5 -3
  162. data/lib/twilio-ruby/rest/preview/bulk_exports.rb +14 -10
  163. data/lib/twilio-ruby/rest/preview/deployed_devices.rb +5 -4
  164. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document/dependent_hosted_number_order.rb +2 -2
  165. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document.rb +13 -13
  166. data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +8 -8
  167. data/lib/twilio-ruby/rest/preview/hosted_numbers.rb +10 -8
  168. data/lib/twilio-ruby/rest/preview/marketplace.rb +10 -8
  169. data/lib/twilio-ruby/rest/preview/sync/service/document.rb +4 -8
  170. data/lib/twilio-ruby/rest/preview/sync.rb +5 -4
  171. data/lib/twilio-ruby/rest/preview/trusted_comms.rb +5 -4
  172. data/lib/twilio-ruby/rest/preview/understand.rb +5 -4
  173. data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +2 -2
  174. data/lib/twilio-ruby/rest/preview/wireless.rb +15 -12
  175. data/lib/twilio-ruby/rest/preview.rb +4 -2
  176. data/lib/twilio-ruby/rest/pricing/v1/messaging/country.rb +2 -2
  177. data/lib/twilio-ruby/rest/pricing/v1/phone_number/country.rb +1 -1
  178. data/lib/twilio-ruby/rest/pricing/v1/voice/country.rb +2 -2
  179. data/lib/twilio-ruby/rest/pricing/v2/country.rb +280 -0
  180. data/lib/twilio-ruby/rest/pricing/v2/number.rb +225 -0
  181. data/lib/twilio-ruby/rest/pricing/v2/voice/country.rb +2 -2
  182. data/lib/twilio-ruby/rest/pricing/v2/voice/number.rb +1 -1
  183. data/lib/twilio-ruby/rest/pricing/v2.rb +37 -0
  184. data/lib/twilio-ruby/rest/pricing.rb +19 -0
  185. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant/message_interaction.rb +1 -1
  186. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb +1 -1
  187. data/lib/twilio-ruby/rest/proxy/v1/service/session.rb +1 -1
  188. data/lib/twilio-ruby/rest/proxy/v1.rb +5 -4
  189. data/lib/twilio-ruby/rest/serverless/v1/service/build.rb +17 -7
  190. data/lib/twilio-ruby/rest/serverless/v1/service/environment.rb +1 -1
  191. data/lib/twilio-ruby/rest/serverless/v1/service.rb +7 -0
  192. data/lib/twilio-ruby/rest/serverless/v1.rb +5 -4
  193. data/lib/twilio-ruby/rest/studio/v1/flow/execution.rb +1 -1
  194. data/lib/twilio-ruby/rest/studio/v1.rb +5 -4
  195. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_context.rb +0 -8
  196. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step/execution_step_context.rb +0 -8
  197. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step.rb +0 -8
  198. data/lib/twilio-ruby/rest/studio/v2/flow/execution.rb +1 -9
  199. data/lib/twilio-ruby/rest/studio/v2/flow/flow_revision.rb +2 -10
  200. data/lib/twilio-ruby/rest/studio/v2/flow/test_user.rb +10 -16
  201. data/lib/twilio-ruby/rest/studio/v2/flow.rb +6 -14
  202. data/lib/twilio-ruby/rest/studio/v2/flow_validate.rb +6 -11
  203. data/lib/twilio-ruby/rest/studio/v2.rb +5 -4
  204. data/lib/twilio-ruby/rest/supersim/v1/command.rb +4 -4
  205. data/lib/twilio-ruby/rest/supersim/v1/fleet.rb +86 -13
  206. data/lib/twilio-ruby/rest/supersim/v1/network.rb +5 -5
  207. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile/network_access_profile_network.rb +5 -5
  208. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile.rb +6 -6
  209. data/lib/twilio-ruby/rest/supersim/v1/sim/billing_period.rb +231 -0
  210. data/lib/twilio-ruby/rest/supersim/v1/sim.rb +49 -4
  211. data/lib/twilio-ruby/rest/supersim/v1/sms_command.rb +371 -0
  212. data/lib/twilio-ruby/rest/supersim/v1/usage_record.rb +3 -3
  213. data/lib/twilio-ruby/rest/supersim/v1.rb +41 -20
  214. data/lib/twilio-ruby/rest/supersim.rb +9 -0
  215. data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +0 -8
  216. data/lib/twilio-ruby/rest/sync/v1/service/document.rb +25 -52
  217. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +46 -76
  218. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +0 -8
  219. data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +18 -40
  220. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +47 -79
  221. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +1 -9
  222. data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +18 -40
  223. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream/stream_message.rb +1 -7
  224. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream.rb +14 -38
  225. data/lib/twilio-ruby/rest/sync/v1/service.rb +0 -8
  226. data/lib/twilio-ruby/rest/sync/v1.rb +5 -4
  227. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/activity.rb +7 -0
  228. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +17 -13
  229. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +48 -24
  230. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics.rb +1 -1
  231. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +17 -13
  232. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_cumulative_statistics.rb +1 -1
  233. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_real_time_statistics.rb +1 -1
  234. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +23 -11
  235. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_real_time_statistics.rb +1 -1
  236. data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +37 -28
  237. data/lib/twilio-ruby/rest/taskrouter/v1.rb +5 -4
  238. data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +20 -4
  239. data/lib/twilio-ruby/rest/trunking/v1.rb +5 -4
  240. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_channel_endpoint_assignment.rb +359 -0
  241. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_entity_assignments.rb +330 -0
  242. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_evaluations.rb +328 -0
  243. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles.rb +523 -0
  244. data/lib/twilio-ruby/rest/trusthub/v1/end_user.rb +356 -0
  245. data/lib/twilio-ruby/rest/trusthub/v1/end_user_type.rb +271 -0
  246. data/lib/twilio-ruby/rest/trusthub/v1/policies.rb +262 -0
  247. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document.rb +369 -0
  248. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document_type.rb +271 -0
  249. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_channel_endpoint_assignment.rb +359 -0
  250. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_entity_assignments.rb +330 -0
  251. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_evaluations.rb +328 -0
  252. data/lib/twilio-ruby/rest/trusthub/v1/trust_products.rb +523 -0
  253. data/lib/twilio-ruby/rest/trusthub/v1.rb +146 -0
  254. data/lib/twilio-ruby/rest/trusthub.rb +100 -0
  255. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge/notification.rb +205 -0
  256. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb +91 -18
  257. data/lib/twilio-ruby/rest/verify/v2/service/entity/factor.rb +47 -56
  258. data/lib/twilio-ruby/rest/verify/v2/service/entity/new_factor.rb +299 -0
  259. data/lib/twilio-ruby/rest/verify/v2/service/entity.rb +31 -3
  260. data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +8 -6
  261. data/lib/twilio-ruby/rest/verify/v2/service/webhook.rb +34 -15
  262. data/lib/twilio-ruby/rest/verify/v2/service.rb +61 -3
  263. data/lib/twilio-ruby/rest/verify/v2/template.rb +206 -0
  264. data/lib/twilio-ruby/rest/verify/v2/verification_attempt.rb +329 -0
  265. data/lib/twilio-ruby/rest/verify/v2.rb +33 -8
  266. data/lib/twilio-ruby/rest/verify.rb +15 -0
  267. data/lib/twilio-ruby/rest/video/v1/composition.rb +16 -23
  268. data/lib/twilio-ruby/rest/video/v1/composition_hook.rb +26 -34
  269. data/lib/twilio-ruby/rest/video/v1/recording.rb +6 -6
  270. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribe_rule.rb +1 -1
  271. data/lib/twilio-ruby/rest/video/v1/room/room_recording_rule.rb +1 -7
  272. data/lib/twilio-ruby/rest/video/v1/room.rb +25 -4
  273. data/lib/twilio-ruby/rest/video/v1.rb +20 -16
  274. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country.rb +1 -1
  275. data/lib/twilio-ruby/rest/voice/v1.rb +20 -16
  276. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +4 -4
  277. data/lib/twilio-ruby/rest/wireless/v1.rb +15 -12
  278. data/lib/twilio-ruby/rest.rb +13 -0
  279. data/lib/twilio-ruby/twiml/voice_response.rb +39 -8
  280. data/lib/twilio-ruby/version.rb +1 -1
  281. data/lib/twilio-ruby.rb +5 -15
  282. data/sonar-project.properties +13 -0
  283. data/twilio-ruby.gemspec +1 -1
  284. metadata +60 -826
  285. data/spec/framework/request_spec.rb +0 -36
  286. data/spec/framework/serialize_spec.rb +0 -80
  287. data/spec/framework/version_spec.rb +0 -219
  288. data/spec/holodeck/holodeck.rb +0 -66
  289. data/spec/holodeck/hologram.rb +0 -4
  290. data/spec/http/http_client_spec.rb +0 -122
  291. data/spec/integration/accounts/v1/auth_token_promotion_spec.rb +0 -44
  292. data/spec/integration/accounts/v1/credential/aws_spec.rb +0 -222
  293. data/spec/integration/accounts/v1/credential/public_key_spec.rb +0 -222
  294. data/spec/integration/accounts/v1/credential_spec.rb +0 -12
  295. data/spec/integration/accounts/v1/secondary_auth_token_spec.rb +0 -69
  296. data/spec/integration/api/v2010/account/address/dependent_phone_number_spec.rb +0 -106
  297. data/spec/integration/api/v2010/account/address_spec.rb +0 -269
  298. data/spec/integration/api/v2010/account/application_spec.rb +0 -274
  299. data/spec/integration/api/v2010/account/authorized_connect_app_spec.rb +0 -137
  300. data/spec/integration/api/v2010/account/available_phone_number/local_spec.rb +0 -102
  301. data/spec/integration/api/v2010/account/available_phone_number/machine_to_machine_spec.rb +0 -102
  302. data/spec/integration/api/v2010/account/available_phone_number/mobile_spec.rb +0 -101
  303. data/spec/integration/api/v2010/account/available_phone_number/national_spec.rb +0 -102
  304. data/spec/integration/api/v2010/account/available_phone_number/shared_cost_spec.rb +0 -102
  305. data/spec/integration/api/v2010/account/available_phone_number/toll_free_spec.rb +0 -101
  306. data/spec/integration/api/v2010/account/available_phone_number/voip_spec.rb +0 -102
  307. data/spec/integration/api/v2010/account/available_phone_number_spec.rb +0 -128
  308. data/spec/integration/api/v2010/account/balance_spec.rb +0 -44
  309. data/spec/integration/api/v2010/account/call/event_spec.rb +0 -102
  310. data/spec/integration/api/v2010/account/call/feedback_spec.rb +0 -138
  311. data/spec/integration/api/v2010/account/call/feedback_summary_spec.rb +0 -149
  312. data/spec/integration/api/v2010/account/call/notification_spec.rb +0 -143
  313. data/spec/integration/api/v2010/account/call/payment_spec.rb +0 -135
  314. data/spec/integration/api/v2010/account/call/recording_spec.rb +0 -287
  315. data/spec/integration/api/v2010/account/call_spec.rb +0 -660
  316. data/spec/integration/api/v2010/account/conference/participant_spec.rb +0 -768
  317. data/spec/integration/api/v2010/account/conference/recording_spec.rb +0 -234
  318. data/spec/integration/api/v2010/account/conference_spec.rb +0 -458
  319. data/spec/integration/api/v2010/account/connect_app_spec.rb +0 -197
  320. data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension_spec.rb +0 -135
  321. data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on_spec.rb +0 -220
  322. data/spec/integration/api/v2010/account/incoming_phone_number/local_spec.rb +0 -189
  323. data/spec/integration/api/v2010/account/incoming_phone_number/mobile_spec.rb +0 -189
  324. data/spec/integration/api/v2010/account/incoming_phone_number/toll_free_spec.rb +0 -189
  325. data/spec/integration/api/v2010/account/incoming_phone_number_spec.rb +0 -370
  326. data/spec/integration/api/v2010/account/key_spec.rb +0 -176
  327. data/spec/integration/api/v2010/account/message/feedback_spec.rb +0 -49
  328. data/spec/integration/api/v2010/account/message/media_spec.rb +0 -161
  329. data/spec/integration/api/v2010/account/message_spec.rb +0 -507
  330. data/spec/integration/api/v2010/account/new_key_spec.rb +0 -46
  331. data/spec/integration/api/v2010/account/new_signing_key_spec.rb +0 -46
  332. data/spec/integration/api/v2010/account/notification_spec.rb +0 -138
  333. data/spec/integration/api/v2010/account/outgoing_caller_id_spec.rb +0 -185
  334. data/spec/integration/api/v2010/account/queue/member_spec.rb +0 -208
  335. data/spec/integration/api/v2010/account/queue_spec.rb +0 -244
  336. data/spec/integration/api/v2010/account/recording/add_on_result/payload_spec.rb +0 -174
  337. data/spec/integration/api/v2010/account/recording/add_on_result_spec.rb +0 -165
  338. data/spec/integration/api/v2010/account/recording/transcription_spec.rb +0 -173
  339. data/spec/integration/api/v2010/account/recording_spec.rb +0 -184
  340. data/spec/integration/api/v2010/account/short_code_spec.rb +0 -179
  341. data/spec/integration/api/v2010/account/signing_key_spec.rb +0 -176
  342. data/spec/integration/api/v2010/account/sip/credential_list/credential_spec.rb +0 -252
  343. data/spec/integration/api/v2010/account/sip/credential_list_spec.rb +0 -241
  344. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_credential_list_mapping_spec.rb +0 -217
  345. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_ip_access_control_list_mapping_spec.rb +0 -217
  346. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_calls_mapping_spec.rb +0 -12
  347. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping/auth_registrations_credential_list_mapping_spec.rb +0 -217
  348. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping_spec.rb +0 -12
  349. data/spec/integration/api/v2010/account/sip/domain/auth_types_spec.rb +0 -12
  350. data/spec/integration/api/v2010/account/sip/domain/credential_list_mapping_spec.rb +0 -207
  351. data/spec/integration/api/v2010/account/sip/domain/ip_access_control_list_mapping_spec.rb +0 -217
  352. data/spec/integration/api/v2010/account/sip/domain_spec.rb +0 -303
  353. data/spec/integration/api/v2010/account/sip/ip_access_control_list/ip_address_spec.rb +0 -254
  354. data/spec/integration/api/v2010/account/sip/ip_access_control_list_spec.rb +0 -251
  355. data/spec/integration/api/v2010/account/sip_spec.rb +0 -12
  356. data/spec/integration/api/v2010/account/token_spec.rb +0 -71
  357. data/spec/integration/api/v2010/account/transcription_spec.rb +0 -166
  358. data/spec/integration/api/v2010/account/usage/record/all_time_spec.rb +0 -113
  359. data/spec/integration/api/v2010/account/usage/record/daily_spec.rb +0 -113
  360. data/spec/integration/api/v2010/account/usage/record/last_month_spec.rb +0 -113
  361. data/spec/integration/api/v2010/account/usage/record/monthly_spec.rb +0 -113
  362. data/spec/integration/api/v2010/account/usage/record/this_month_spec.rb +0 -113
  363. data/spec/integration/api/v2010/account/usage/record/today_spec.rb +0 -113
  364. data/spec/integration/api/v2010/account/usage/record/yearly_spec.rb +0 -113
  365. data/spec/integration/api/v2010/account/usage/record/yesterday_spec.rb +0 -113
  366. data/spec/integration/api/v2010/account/usage/record_spec.rb +0 -110
  367. data/spec/integration/api/v2010/account/usage/trigger_spec.rb +0 -281
  368. data/spec/integration/api/v2010/account/usage_spec.rb +0 -12
  369. data/spec/integration/api/v2010/account/validation_request_spec.rb +0 -48
  370. data/spec/integration/api/v2010/account_spec.rb +0 -327
  371. data/spec/integration/autopilot/v1/assistant/defaults_spec.rb +0 -79
  372. data/spec/integration/autopilot/v1/assistant/dialogue_spec.rb +0 -46
  373. data/spec/integration/autopilot/v1/assistant/field_type/field_value_spec.rb +0 -207
  374. data/spec/integration/autopilot/v1/assistant/field_type_spec.rb +0 -242
  375. data/spec/integration/autopilot/v1/assistant/model_build_spec.rb +0 -236
  376. data/spec/integration/autopilot/v1/assistant/query_spec.rb +0 -290
  377. data/spec/integration/autopilot/v1/assistant/style_sheet_spec.rb +0 -79
  378. data/spec/integration/autopilot/v1/assistant/task/field_spec.rb +0 -204
  379. data/spec/integration/autopilot/v1/assistant/task/sample_spec.rb +0 -249
  380. data/spec/integration/autopilot/v1/assistant/task/task_actions_spec.rb +0 -85
  381. data/spec/integration/autopilot/v1/assistant/task/task_statistics_spec.rb +0 -49
  382. data/spec/integration/autopilot/v1/assistant/task_spec.rb +0 -258
  383. data/spec/integration/autopilot/v1/assistant/webhook_spec.rb +0 -242
  384. data/spec/integration/autopilot/v1/assistant_spec.rb +0 -277
  385. data/spec/integration/autopilot/v1/restore_assistant_spec.rb +0 -53
  386. data/spec/integration/bulkexports/v1/export/day_spec.rb +0 -115
  387. data/spec/integration/bulkexports/v1/export/export_custom_job_spec.rb +0 -129
  388. data/spec/integration/bulkexports/v1/export/job_spec.rb +0 -78
  389. data/spec/integration/bulkexports/v1/export_configuration_spec.rb +0 -77
  390. data/spec/integration/bulkexports/v1/export_spec.rb +0 -44
  391. data/spec/integration/chat/v1/credential_spec.rb +0 -219
  392. data/spec/integration/chat/v1/service/channel/invite_spec.rb +0 -207
  393. data/spec/integration/chat/v1/service/channel/member_spec.rb +0 -280
  394. data/spec/integration/chat/v1/service/channel/message_spec.rb +0 -290
  395. data/spec/integration/chat/v1/service/channel_spec.rb +0 -272
  396. data/spec/integration/chat/v1/service/role_spec.rb +0 -260
  397. data/spec/integration/chat/v1/service/user/user_channel_spec.rb +0 -93
  398. data/spec/integration/chat/v1/service/user_spec.rb +0 -262
  399. data/spec/integration/chat/v1/service_spec.rb +0 -295
  400. data/spec/integration/chat/v2/credential_spec.rb +0 -219
  401. data/spec/integration/chat/v2/service/binding_spec.rb +0 -174
  402. data/spec/integration/chat/v2/service/channel/invite_spec.rb +0 -207
  403. data/spec/integration/chat/v2/service/channel/member_spec.rb +0 -263
  404. data/spec/integration/chat/v2/service/channel/message_spec.rb +0 -406
  405. data/spec/integration/chat/v2/service/channel/webhook_spec.rb +0 -303
  406. data/spec/integration/chat/v2/service/channel_spec.rb +0 -282
  407. data/spec/integration/chat/v2/service/role_spec.rb +0 -260
  408. data/spec/integration/chat/v2/service/user/user_binding_spec.rb +0 -177
  409. data/spec/integration/chat/v2/service/user/user_channel_spec.rb +0 -247
  410. data/spec/integration/chat/v2/service/user_spec.rb +0 -270
  411. data/spec/integration/chat/v2/service_spec.rb +0 -350
  412. data/spec/integration/conversations/v1/configuration/webhook_spec.rb +0 -90
  413. data/spec/integration/conversations/v1/configuration_spec.rb +0 -87
  414. data/spec/integration/conversations/v1/conversation/message/delivery_receipt_spec.rb +0 -136
  415. data/spec/integration/conversations/v1/conversation/message_spec.rb +0 -409
  416. data/spec/integration/conversations/v1/conversation/participant_spec.rb +0 -382
  417. data/spec/integration/conversations/v1/conversation/webhook_spec.rb +0 -282
  418. data/spec/integration/conversations/v1/conversation_spec.rb +0 -278
  419. data/spec/integration/conversations/v1/credential_spec.rb +0 -219
  420. data/spec/integration/conversations/v1/role_spec.rb +0 -249
  421. data/spec/integration/conversations/v1/service/binding_spec.rb +0 -166
  422. data/spec/integration/conversations/v1/service/configuration/notification_spec.rb +0 -115
  423. data/spec/integration/conversations/v1/service/configuration_spec.rb +0 -87
  424. data/spec/integration/conversations/v1/service/conversation/message/delivery_receipt_spec.rb +0 -144
  425. data/spec/integration/conversations/v1/service/conversation/message_spec.rb +0 -429
  426. data/spec/integration/conversations/v1/service/conversation/participant_spec.rb +0 -407
  427. data/spec/integration/conversations/v1/service/conversation/webhook_spec.rb +0 -299
  428. data/spec/integration/conversations/v1/service/conversation_spec.rb +0 -289
  429. data/spec/integration/conversations/v1/service/role_spec.rb +0 -260
  430. data/spec/integration/conversations/v1/service/user_spec.rb +0 -236
  431. data/spec/integration/conversations/v1/service_spec.rb +0 -174
  432. data/spec/integration/conversations/v1/user_spec.rb +0 -226
  433. data/spec/integration/events/v1/event_type_spec.rb +0 -133
  434. data/spec/integration/events/v1/schema/schema_version_spec.rb +0 -126
  435. data/spec/integration/events/v1/schema_spec.rb +0 -46
  436. data/spec/integration/events/v1/sink/sink_test_spec.rb +0 -42
  437. data/spec/integration/events/v1/sink/sink_validate_spec.rb +0 -44
  438. data/spec/integration/events/v1/sink_spec.rb +0 -217
  439. data/spec/integration/events/v1/subscription/subscribed_event_spec.rb +0 -91
  440. data/spec/integration/events/v1/subscription_spec.rb +0 -292
  441. data/spec/integration/fax/v1/fax/fax_media_spec.rb +0 -125
  442. data/spec/integration/fax/v1/fax_spec.rb +0 -267
  443. data/spec/integration/flex_api/v1/channel_spec.rb +0 -188
  444. data/spec/integration/flex_api/v1/configuration_spec.rb +0 -554
  445. data/spec/integration/flex_api/v1/flex_flow_spec.rb +0 -259
  446. data/spec/integration/flex_api/v1/web_channel_spec.rb +0 -216
  447. data/spec/integration/insights/v1/call/event_spec.rb +0 -166
  448. data/spec/integration/insights/v1/call/metric_spec.rb +0 -154
  449. data/spec/integration/insights/v1/call/summary_spec.rb +0 -63
  450. data/spec/integration/insights/v1/call_spec.rb +0 -46
  451. data/spec/integration/insights/v1/room/participant_spec.rb +0 -147
  452. data/spec/integration/insights/v1/room_spec.rb +0 -164
  453. data/spec/integration/ip_messaging/v1/credential_spec.rb +0 -219
  454. data/spec/integration/ip_messaging/v1/service/channel/invite_spec.rb +0 -207
  455. data/spec/integration/ip_messaging/v1/service/channel/member_spec.rb +0 -280
  456. data/spec/integration/ip_messaging/v1/service/channel/message_spec.rb +0 -290
  457. data/spec/integration/ip_messaging/v1/service/channel_spec.rb +0 -272
  458. data/spec/integration/ip_messaging/v1/service/role_spec.rb +0 -260
  459. data/spec/integration/ip_messaging/v1/service/user/user_channel_spec.rb +0 -93
  460. data/spec/integration/ip_messaging/v1/service/user_spec.rb +0 -262
  461. data/spec/integration/ip_messaging/v1/service_spec.rb +0 -295
  462. data/spec/integration/ip_messaging/v2/credential_spec.rb +0 -219
  463. data/spec/integration/ip_messaging/v2/service/binding_spec.rb +0 -174
  464. data/spec/integration/ip_messaging/v2/service/channel/invite_spec.rb +0 -207
  465. data/spec/integration/ip_messaging/v2/service/channel/member_spec.rb +0 -263
  466. data/spec/integration/ip_messaging/v2/service/channel/message_spec.rb +0 -406
  467. data/spec/integration/ip_messaging/v2/service/channel/webhook_spec.rb +0 -303
  468. data/spec/integration/ip_messaging/v2/service/channel_spec.rb +0 -282
  469. data/spec/integration/ip_messaging/v2/service/role_spec.rb +0 -260
  470. data/spec/integration/ip_messaging/v2/service/user/user_binding_spec.rb +0 -177
  471. data/spec/integration/ip_messaging/v2/service/user/user_channel_spec.rb +0 -247
  472. data/spec/integration/ip_messaging/v2/service/user_spec.rb +0 -270
  473. data/spec/integration/ip_messaging/v2/service_spec.rb +0 -350
  474. data/spec/integration/lookups/v1/phone_number_spec.rb +0 -336
  475. data/spec/integration/messaging/v1/deactivation_spec.rb +0 -40
  476. data/spec/integration/messaging/v1/service/alpha_sender_spec.rb +0 -173
  477. data/spec/integration/messaging/v1/service/phone_number_spec.rb +0 -198
  478. data/spec/integration/messaging/v1/service/short_code_spec.rb +0 -176
  479. data/spec/integration/messaging/v1/service_spec.rb +0 -267
  480. data/spec/integration/monitor/v1/alert_spec.rb +0 -138
  481. data/spec/integration/monitor/v1/event_spec.rb +0 -148
  482. data/spec/integration/notify/v1/credential_spec.rb +0 -219
  483. data/spec/integration/notify/v1/service/binding_spec.rb +0 -222
  484. data/spec/integration/notify/v1/service/notification_spec.rb +0 -98
  485. data/spec/integration/notify/v1/service_spec.rb +0 -289
  486. data/spec/integration/numbers/v2/regulatory_compliance/bundle/evaluation_spec.rb +0 -620
  487. data/spec/integration/numbers/v2/regulatory_compliance/bundle/item_assignment_spec.rb +0 -195
  488. data/spec/integration/numbers/v2/regulatory_compliance/bundle_spec.rb +0 -258
  489. data/spec/integration/numbers/v2/regulatory_compliance/end_user_spec.rb +0 -238
  490. data/spec/integration/numbers/v2/regulatory_compliance/end_user_type_spec.rb +0 -141
  491. data/spec/integration/numbers/v2/regulatory_compliance/regulation_spec.rb +0 -181
  492. data/spec/integration/numbers/v2/regulatory_compliance/supporting_document_spec.rb +0 -250
  493. data/spec/integration/numbers/v2/regulatory_compliance/supporting_document_type_spec.rb +0 -131
  494. data/spec/integration/numbers/v2/regulatory_compliance_spec.rb +0 -12
  495. data/spec/integration/preview/bulk_exports/export/day_spec.rb +0 -115
  496. data/spec/integration/preview/bulk_exports/export/export_custom_job_spec.rb +0 -129
  497. data/spec/integration/preview/bulk_exports/export/job_spec.rb +0 -78
  498. data/spec/integration/preview/bulk_exports/export_configuration_spec.rb +0 -77
  499. data/spec/integration/preview/bulk_exports/export_spec.rb +0 -44
  500. data/spec/integration/preview/deployed_devices/fleet/certificate_spec.rb +0 -234
  501. data/spec/integration/preview/deployed_devices/fleet/deployment_spec.rb +0 -228
  502. data/spec/integration/preview/deployed_devices/fleet/device_spec.rb +0 -244
  503. data/spec/integration/preview/deployed_devices/fleet/key_spec.rb +0 -232
  504. data/spec/integration/preview/deployed_devices/fleet_spec.rb +0 -241
  505. data/spec/integration/preview/hosted_numbers/authorization_document/dependent_hosted_number_order_spec.rb +0 -110
  506. data/spec/integration/preview/hosted_numbers/authorization_document_spec.rb +0 -224
  507. data/spec/integration/preview/hosted_numbers/hosted_number_order_spec.rb +0 -389
  508. data/spec/integration/preview/marketplace/available_add_on/available_add_on_extension_spec.rb +0 -121
  509. data/spec/integration/preview/marketplace/available_add_on_spec.rb +0 -142
  510. data/spec/integration/preview/marketplace/installed_add_on/installed_add_on_extension_spec.rb +0 -162
  511. data/spec/integration/preview/marketplace/installed_add_on_spec.rb +0 -250
  512. data/spec/integration/preview/sync/service/document/document_permission_spec.rb +0 -201
  513. data/spec/integration/preview/sync/service/document_spec.rb +0 -254
  514. data/spec/integration/preview/sync/service/sync_list/sync_list_item_spec.rb +0 -255
  515. data/spec/integration/preview/sync/service/sync_list/sync_list_permission_spec.rb +0 -201
  516. data/spec/integration/preview/sync/service/sync_list_spec.rb +0 -205
  517. data/spec/integration/preview/sync/service/sync_map/sync_map_item_spec.rb +0 -255
  518. data/spec/integration/preview/sync/service/sync_map/sync_map_permission_spec.rb +0 -201
  519. data/spec/integration/preview/sync/service/sync_map_spec.rb +0 -205
  520. data/spec/integration/preview/sync/service_spec.rb +0 -241
  521. data/spec/integration/preview/trusted_comms/branded_channel/channel_spec.rb +0 -50
  522. data/spec/integration/preview/trusted_comms/branded_channel_spec.rb +0 -47
  523. data/spec/integration/preview/trusted_comms/brands_information_spec.rb +0 -45
  524. data/spec/integration/preview/trusted_comms/cps_spec.rb +0 -44
  525. data/spec/integration/preview/trusted_comms/current_call_spec.rb +0 -58
  526. data/spec/integration/preview/understand/assistant/assistant_fallback_actions_spec.rb +0 -79
  527. data/spec/integration/preview/understand/assistant/assistant_initiation_actions_spec.rb +0 -79
  528. data/spec/integration/preview/understand/assistant/dialogue_spec.rb +0 -46
  529. data/spec/integration/preview/understand/assistant/field_type/field_value_spec.rb +0 -207
  530. data/spec/integration/preview/understand/assistant/field_type_spec.rb +0 -242
  531. data/spec/integration/preview/understand/assistant/model_build_spec.rb +0 -236
  532. data/spec/integration/preview/understand/assistant/query_spec.rb +0 -302
  533. data/spec/integration/preview/understand/assistant/style_sheet_spec.rb +0 -79
  534. data/spec/integration/preview/understand/assistant/task/field_spec.rb +0 -204
  535. data/spec/integration/preview/understand/assistant/task/sample_spec.rb +0 -249
  536. data/spec/integration/preview/understand/assistant/task/task_actions_spec.rb +0 -85
  537. data/spec/integration/preview/understand/assistant/task/task_statistics_spec.rb +0 -49
  538. data/spec/integration/preview/understand/assistant/task_spec.rb +0 -258
  539. data/spec/integration/preview/understand/assistant_spec.rb +0 -269
  540. data/spec/integration/preview/wireless/command_spec.rb +0 -167
  541. data/spec/integration/preview/wireless/rate_plan_spec.rb +0 -257
  542. data/spec/integration/preview/wireless/sim/usage_spec.rb +0 -50
  543. data/spec/integration/preview/wireless/sim_spec.rb +0 -207
  544. data/spec/integration/pricing/v1/messaging/country_spec.rb +0 -137
  545. data/spec/integration/pricing/v1/messaging_spec.rb +0 -12
  546. data/spec/integration/pricing/v1/phone_number/country_spec.rb +0 -128
  547. data/spec/integration/pricing/v1/phone_number_spec.rb +0 -12
  548. data/spec/integration/pricing/v1/voice/country_spec.rb +0 -138
  549. data/spec/integration/pricing/v1/voice/number_spec.rb +0 -55
  550. data/spec/integration/pricing/v1/voice_spec.rb +0 -12
  551. data/spec/integration/pricing/v2/voice/country_spec.rb +0 -179
  552. data/spec/integration/pricing/v2/voice/number_spec.rb +0 -61
  553. data/spec/integration/pricing/v2/voice_spec.rb +0 -12
  554. data/spec/integration/proxy/v1/service/phone_number_spec.rb +0 -231
  555. data/spec/integration/proxy/v1/service/session/interaction_spec.rb +0 -133
  556. data/spec/integration/proxy/v1/service/session/participant/message_interaction_spec.rb +0 -163
  557. data/spec/integration/proxy/v1/service/session/participant_spec.rb +0 -240
  558. data/spec/integration/proxy/v1/service/session_spec.rb +0 -225
  559. data/spec/integration/proxy/v1/service/short_code_spec.rb +0 -225
  560. data/spec/integration/proxy/v1/service_spec.rb +0 -214
  561. data/spec/integration/serverless/v1/service/asset/asset_version_spec.rb +0 -93
  562. data/spec/integration/serverless/v1/service/asset_spec.rb +0 -202
  563. data/spec/integration/serverless/v1/service/build/build_status_spec.rb +0 -48
  564. data/spec/integration/serverless/v1/service/build_spec.rb +0 -214
  565. data/spec/integration/serverless/v1/service/environment/deployment_spec.rb +0 -133
  566. data/spec/integration/serverless/v1/service/environment/log_spec.rb +0 -97
  567. data/spec/integration/serverless/v1/service/environment/variable_spec.rb +0 -207
  568. data/spec/integration/serverless/v1/service/environment_spec.rb +0 -170
  569. data/spec/integration/serverless/v1/service/function/function_version/function_version_content_spec.rb +0 -51
  570. data/spec/integration/serverless/v1/service/function/function_version_spec.rb +0 -96
  571. data/spec/integration/serverless/v1/service/function_spec.rb +0 -202
  572. data/spec/integration/serverless/v1/service_spec.rb +0 -205
  573. data/spec/integration/studio/v1/flow/engagement/engagement_context_spec.rb +0 -50
  574. data/spec/integration/studio/v1/flow/engagement/step/step_context_spec.rb +0 -53
  575. data/spec/integration/studio/v1/flow/engagement/step_spec.rb +0 -99
  576. data/spec/integration/studio/v1/flow/engagement_spec.rb +0 -168
  577. data/spec/integration/studio/v1/flow/execution/execution_context_spec.rb +0 -50
  578. data/spec/integration/studio/v1/flow/execution/execution_step/execution_step_context_spec.rb +0 -53
  579. data/spec/integration/studio/v1/flow/execution/execution_step_spec.rb +0 -100
  580. data/spec/integration/studio/v1/flow/execution_spec.rb +0 -214
  581. data/spec/integration/studio/v1/flow_spec.rb +0 -114
  582. data/spec/integration/studio/v2/flow/execution/execution_context_spec.rb +0 -50
  583. data/spec/integration/studio/v2/flow/execution/execution_step/execution_step_context_spec.rb +0 -53
  584. data/spec/integration/studio/v2/flow/execution/execution_step_spec.rb +0 -100
  585. data/spec/integration/studio/v2/flow/execution_spec.rb +0 -211
  586. data/spec/integration/studio/v2/flow/flow_revision_spec.rb +0 -110
  587. data/spec/integration/studio/v2/flow/test_user_spec.rb +0 -85
  588. data/spec/integration/studio/v2/flow_spec.rb +0 -251
  589. data/spec/integration/studio/v2/flow_validate_spec.rb +0 -46
  590. data/spec/integration/supersim/v1/command_spec.rb +0 -184
  591. data/spec/integration/supersim/v1/fleet_spec.rb +0 -214
  592. data/spec/integration/supersim/v1/network_access_profile/network_access_profile_network_spec.rb +0 -176
  593. data/spec/integration/supersim/v1/network_access_profile_spec.rb +0 -219
  594. data/spec/integration/supersim/v1/network_spec.rb +0 -137
  595. data/spec/integration/supersim/v1/sim_spec.rb +0 -323
  596. data/spec/integration/supersim/v1/usage_record_spec.rb +0 -647
  597. data/spec/integration/sync/v1/service/document/document_permission_spec.rb +0 -201
  598. data/spec/integration/sync/v1/service/document_spec.rb +0 -256
  599. data/spec/integration/sync/v1/service/sync_list/sync_list_item_spec.rb +0 -257
  600. data/spec/integration/sync/v1/service/sync_list/sync_list_permission_spec.rb +0 -201
  601. data/spec/integration/sync/v1/service/sync_list_spec.rb +0 -252
  602. data/spec/integration/sync/v1/service/sync_map/sync_map_item_spec.rb +0 -257
  603. data/spec/integration/sync/v1/service/sync_map/sync_map_permission_spec.rb +0 -201
  604. data/spec/integration/sync/v1/service/sync_map_spec.rb +0 -252
  605. data/spec/integration/sync/v1/service/sync_stream/stream_message_spec.rb +0 -47
  606. data/spec/integration/sync/v1/service/sync_stream_spec.rb +0 -244
  607. data/spec/integration/sync/v1/service_spec.rb +0 -261
  608. data/spec/integration/taskrouter/v1/workspace/activity_spec.rb +0 -232
  609. data/spec/integration/taskrouter/v1/workspace/event_spec.rb +0 -163
  610. data/spec/integration/taskrouter/v1/workspace/task/reservation_spec.rb +0 -222
  611. data/spec/integration/taskrouter/v1/workspace/task_channel_spec.rb +0 -312
  612. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics_spec.rb +0 -101
  613. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics_spec.rb +0 -83
  614. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_statistics_spec.rb +0 -107
  615. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queues_statistics_spec.rb +0 -145
  616. data/spec/integration/taskrouter/v1/workspace/task_queue_spec.rb +0 -290
  617. data/spec/integration/taskrouter/v1/workspace/task_spec.rb +0 -325
  618. data/spec/integration/taskrouter/v1/workspace/worker/reservation_spec.rb +0 -191
  619. data/spec/integration/taskrouter/v1/workspace/worker/worker_channel_spec.rb +0 -185
  620. data/spec/integration/taskrouter/v1/workspace/worker/worker_statistics_spec.rb +0 -91
  621. data/spec/integration/taskrouter/v1/workspace/worker/workers_cumulative_statistics_spec.rb +0 -88
  622. data/spec/integration/taskrouter/v1/workspace/worker/workers_real_time_statistics_spec.rb +0 -69
  623. data/spec/integration/taskrouter/v1/workspace/worker/workers_statistics_spec.rb +0 -115
  624. data/spec/integration/taskrouter/v1/workspace/worker_spec.rb +0 -290
  625. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics_spec.rb +0 -96
  626. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_real_time_statistics_spec.rb +0 -57
  627. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_statistics_spec.rb +0 -70
  628. data/spec/integration/taskrouter/v1/workspace/workflow_spec.rb +0 -266
  629. data/spec/integration/taskrouter/v1/workspace/workspace_cumulative_statistics_spec.rb +0 -93
  630. data/spec/integration/taskrouter/v1/workspace/workspace_real_time_statistics_spec.rb +0 -72
  631. data/spec/integration/taskrouter/v1/workspace/workspace_statistics_spec.rb +0 -104
  632. data/spec/integration/taskrouter/v1/workspace_spec.rb +0 -291
  633. data/spec/integration/trunking/v1/trunk/credential_list_spec.rb +0 -189
  634. data/spec/integration/trunking/v1/trunk/ip_access_control_list_spec.rb +0 -189
  635. data/spec/integration/trunking/v1/trunk/origination_url_spec.rb +0 -248
  636. data/spec/integration/trunking/v1/trunk/phone_number_spec.rb +0 -264
  637. data/spec/integration/trunking/v1/trunk/recording_spec.rb +0 -75
  638. data/spec/integration/trunking/v1/trunk_spec.rb +0 -281
  639. data/spec/integration/verify/v2/form_spec.rb +0 -47
  640. data/spec/integration/verify/v2/service/access_token_spec.rb +0 -44
  641. data/spec/integration/verify/v2/service/entity/challenge_spec.rb +0 -288
  642. data/spec/integration/verify/v2/service/entity/factor_spec.rb +0 -277
  643. data/spec/integration/verify/v2/service/entity_spec.rb +0 -201
  644. data/spec/integration/verify/v2/service/messaging_configuration_spec.rb +0 -228
  645. data/spec/integration/verify/v2/service/rate_limit/bucket_spec.rb +0 -245
  646. data/spec/integration/verify/v2/service/rate_limit_spec.rb +0 -217
  647. data/spec/integration/verify/v2/service/verification_check_spec.rb +0 -80
  648. data/spec/integration/verify/v2/service/verification_spec.rb +0 -318
  649. data/spec/integration/verify/v2/service/webhook_spec.rb +0 -258
  650. data/spec/integration/verify/v2/service_spec.rb +0 -279
  651. data/spec/integration/video/v1/composition_hook_spec.rb +0 -407
  652. data/spec/integration/video/v1/composition_settings_spec.rb +0 -85
  653. data/spec/integration/video/v1/composition_spec.rb +0 -347
  654. data/spec/integration/video/v1/recording_settings_spec.rb +0 -85
  655. data/spec/integration/video/v1/recording_spec.rb +0 -176
  656. data/spec/integration/video/v1/room/recording_spec.rb +0 -185
  657. data/spec/integration/video/v1/room/room_participant/room_participant_published_track_spec.rb +0 -94
  658. data/spec/integration/video/v1/room/room_participant/room_participant_subscribe_rule_spec.rb +0 -103
  659. data/spec/integration/video/v1/room/room_participant/room_participant_subscribed_track_spec.rb +0 -95
  660. data/spec/integration/video/v1/room/room_participant_spec.rb +0 -187
  661. data/spec/integration/video/v1/room/room_recording_rule_spec.rb +0 -89
  662. data/spec/integration/video/v1/room_spec.rb +0 -296
  663. data/spec/integration/voice/v1/byoc_trunk_spec.rb +0 -245
  664. data/spec/integration/voice/v1/connection_policy/connection_policy_target_spec.rb +0 -242
  665. data/spec/integration/voice/v1/connection_policy_spec.rb +0 -221
  666. data/spec/integration/voice/v1/dialing_permissions/bulk_country_update_spec.rb +0 -45
  667. data/spec/integration/voice/v1/dialing_permissions/country/highrisk_special_prefix_spec.rb +0 -60
  668. data/spec/integration/voice/v1/dialing_permissions/country_spec.rb +0 -110
  669. data/spec/integration/voice/v1/dialing_permissions/settings_spec.rb +0 -75
  670. data/spec/integration/voice/v1/dialing_permissions_spec.rb +0 -12
  671. data/spec/integration/voice/v1/ip_record_spec.rb +0 -219
  672. data/spec/integration/voice/v1/source_ip_mapping_spec.rb +0 -216
  673. data/spec/integration/wireless/v1/command_spec.rb +0 -286
  674. data/spec/integration/wireless/v1/rate_plan_spec.rb +0 -277
  675. data/spec/integration/wireless/v1/sim/data_session_spec.rb +0 -88
  676. data/spec/integration/wireless/v1/sim/usage_record_spec.rb +0 -114
  677. data/spec/integration/wireless/v1/sim_spec.rb +0 -325
  678. data/spec/integration/wireless/v1/usage_record_spec.rb +0 -110
  679. data/spec/jwt/access_token_spec.rb +0 -159
  680. data/spec/jwt/client_capability_spec.rb +0 -104
  681. data/spec/jwt/task_router_spec.rb +0 -172
  682. data/spec/rack/twilio_webhook_authentication_spec.rb +0 -106
  683. data/spec/rest/client_spec.rb +0 -255
  684. data/spec/security/request_validator_spec.rb +0 -125
  685. data/spec/spec_helper.rb +0 -38
  686. data/spec/support/fakeweb.rb +0 -2
  687. data/spec/twilio_spec.rb +0 -17
  688. data/spec/twiml/messaging_response_spec.rb +0 -235
  689. data/spec/twiml/voice_response_spec.rb +0 -847
  690. data/spec/util/configuration_spec.rb +0 -33
  691. data/spec/util/url_encode_spec.rb +0 -12
@@ -31,19 +31,23 @@ module Twilio
31
31
  # Create the WebhookInstance
32
32
  # @param [String] friendly_name The string that you assigned to describe the
33
33
  # webhook. **This value should not contain PII.**
34
- # @param [String] event_types The array of events that this Webhook is subscribed
35
- # to. Possible event types: `*, factor.deleted, factor.created, factor.verified,
36
- # challenge.approved, challenge.denied`
34
+ # @param [Array[String]] event_types The array of events that this Webhook is
35
+ # subscribed to. Possible event types: `*, factor.deleted, factor.created,
36
+ # factor.verified, challenge.approved, challenge.denied`
37
37
  # @param [String] webhook_url The URL associated with this Webhook.
38
38
  # @param [webhook.Status] status The webhook status. Default value is `enabled`.
39
39
  # One of: `enabled` or `disabled`
40
+ # @param [webhook.Version] version The webhook version. Default value is `v2`
41
+ # which includes all the latest fields. Version `v1` is legacy and may be removed
42
+ # in the future.
40
43
  # @return [WebhookInstance] Created WebhookInstance
41
- def create(friendly_name: nil, event_types: nil, webhook_url: nil, status: :unset)
44
+ def create(friendly_name: nil, event_types: nil, webhook_url: nil, status: :unset, version: :unset)
42
45
  data = Twilio::Values.of({
43
46
  'FriendlyName' => friendly_name,
44
47
  'EventTypes' => Twilio.serialize_list(event_types) { |e| e },
45
48
  'WebhookUrl' => webhook_url,
46
49
  'Status' => status,
50
+ 'Version' => version,
47
51
  })
48
52
 
49
53
  payload = @version.create('POST', @uri, data: data)
@@ -191,19 +195,23 @@ module Twilio
191
195
  # Update the WebhookInstance
192
196
  # @param [String] friendly_name The string that you assigned to describe the
193
197
  # webhook. **This value should not contain PII.**
194
- # @param [String] event_types The array of events that this Webhook is subscribed
195
- # to. Possible event types: `*, factor.deleted, factor.created, factor.verified,
196
- # challenge.approved, challenge.denied`
198
+ # @param [Array[String]] event_types The array of events that this Webhook is
199
+ # subscribed to. Possible event types: `*, factor.deleted, factor.created,
200
+ # factor.verified, challenge.approved, challenge.denied`
197
201
  # @param [String] webhook_url The URL associated with this Webhook.
198
202
  # @param [webhook.Status] status The webhook status. Default value is `enabled`.
199
203
  # One of: `enabled` or `disabled`
204
+ # @param [webhook.Version] version The webhook version. Default value is `v2`
205
+ # which includes all the latest fields. Version `v1` is legacy and may be removed
206
+ # in the future.
200
207
  # @return [WebhookInstance] Updated WebhookInstance
201
- def update(friendly_name: :unset, event_types: :unset, webhook_url: :unset, status: :unset)
208
+ def update(friendly_name: :unset, event_types: :unset, webhook_url: :unset, status: :unset, version: :unset)
202
209
  data = Twilio::Values.of({
203
210
  'FriendlyName' => friendly_name,
204
211
  'EventTypes' => Twilio.serialize_list(event_types) { |e| e },
205
212
  'WebhookUrl' => webhook_url,
206
213
  'Status' => status,
214
+ 'Version' => version,
207
215
  })
208
216
 
209
217
  payload = @version.update('POST', @uri, data: data)
@@ -264,6 +272,7 @@ module Twilio
264
272
  'friendly_name' => payload['friendly_name'],
265
273
  'event_types' => payload['event_types'],
266
274
  'status' => payload['status'],
275
+ 'version' => payload['version'],
267
276
  'webhook_url' => payload['webhook_url'],
268
277
  'webhook_method' => payload['webhook_method'],
269
278
  'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
@@ -312,7 +321,7 @@ module Twilio
312
321
  end
313
322
 
314
323
  ##
315
- # @return [String] The array of events that this Webhook is subscribed to.
324
+ # @return [Array[String]] The array of events that this Webhook is subscribed to.
316
325
  def event_types
317
326
  @properties['event_types']
318
327
  end
@@ -323,6 +332,12 @@ module Twilio
323
332
  @properties['status']
324
333
  end
325
334
 
335
+ ##
336
+ # @return [webhook.Version] The webhook version
337
+ def version
338
+ @properties['version']
339
+ end
340
+
326
341
  ##
327
342
  # @return [String] The URL associated with this Webhook.
328
343
  def webhook_url
@@ -336,13 +351,13 @@ module Twilio
336
351
  end
337
352
 
338
353
  ##
339
- # @return [Time] The RFC 2822 date and time in GMT when the resource was created
354
+ # @return [Time] The ISO 8601 date and time in GMT when the resource was created
340
355
  def date_created
341
356
  @properties['date_created']
342
357
  end
343
358
 
344
359
  ##
345
- # @return [Time] The RFC 2822 date and time in GMT when the resource was last updated
360
+ # @return [Time] The ISO 8601 date and time in GMT when the resource was last updated
346
361
  def date_updated
347
362
  @properties['date_updated']
348
363
  end
@@ -357,19 +372,23 @@ module Twilio
357
372
  # Update the WebhookInstance
358
373
  # @param [String] friendly_name The string that you assigned to describe the
359
374
  # webhook. **This value should not contain PII.**
360
- # @param [String] event_types The array of events that this Webhook is subscribed
361
- # to. Possible event types: `*, factor.deleted, factor.created, factor.verified,
362
- # challenge.approved, challenge.denied`
375
+ # @param [Array[String]] event_types The array of events that this Webhook is
376
+ # subscribed to. Possible event types: `*, factor.deleted, factor.created,
377
+ # factor.verified, challenge.approved, challenge.denied`
363
378
  # @param [String] webhook_url The URL associated with this Webhook.
364
379
  # @param [webhook.Status] status The webhook status. Default value is `enabled`.
365
380
  # One of: `enabled` or `disabled`
381
+ # @param [webhook.Version] version The webhook version. Default value is `v2`
382
+ # which includes all the latest fields. Version `v1` is legacy and may be removed
383
+ # in the future.
366
384
  # @return [WebhookInstance] Updated WebhookInstance
367
- def update(friendly_name: :unset, event_types: :unset, webhook_url: :unset, status: :unset)
385
+ def update(friendly_name: :unset, event_types: :unset, webhook_url: :unset, status: :unset, version: :unset)
368
386
  context.update(
369
387
  friendly_name: friendly_name,
370
388
  event_types: event_types,
371
389
  webhook_url: webhook_url,
372
390
  status: status,
391
+ version: version,
373
392
  )
374
393
  end
375
394
 
@@ -60,8 +60,21 @@ module Twilio
60
60
  # factors. Set the FCM Credential for this service. This will allow to send push
61
61
  # notifications to Android devices. See {Credential
62
62
  # Resource}[https://www.twilio.com/docs/notify/api/credential-resource]
63
+ # @param [String] totp_issuer Optional configuration for the TOTP factors. Set
64
+ # TOTP Issuer for this service. This will allow to configure the issuer of the
65
+ # TOTP URI. Defaults to the service friendly name if not provided.
66
+ # @param [String] totp_time_step Optional configuration for the TOTP factors.
67
+ # Defines how often, in seconds, are TOTP codes generated. i.e, a new TOTP code is
68
+ # generated every time_step seconds. Must be between 20 and 60 seconds, inclusive.
69
+ # Defaults to 30 seconds
70
+ # @param [String] totp_code_length Optional configuration for the TOTP factors.
71
+ # Number of digits for generated TOTP codes. Must be between 3 and 8, inclusive.
72
+ # Defaults to 6
73
+ # @param [String] totp_skew Optional configuration for the TOTP factors. The
74
+ # number of time-steps, past and future, that are valid for validation of TOTP
75
+ # codes. Must be between 0 and 2, inclusive. Defaults to 1
63
76
  # @return [ServiceInstance] Created ServiceInstance
64
- def create(friendly_name: nil, code_length: :unset, lookup_enabled: :unset, skip_sms_to_landlines: :unset, dtmf_input_required: :unset, tts_name: :unset, psd2_enabled: :unset, do_not_share_warning_enabled: :unset, custom_code_enabled: :unset, push_include_date: :unset, push_apn_credential_sid: :unset, push_fcm_credential_sid: :unset)
77
+ def create(friendly_name: nil, code_length: :unset, lookup_enabled: :unset, skip_sms_to_landlines: :unset, dtmf_input_required: :unset, tts_name: :unset, psd2_enabled: :unset, do_not_share_warning_enabled: :unset, custom_code_enabled: :unset, push_include_date: :unset, push_apn_credential_sid: :unset, push_fcm_credential_sid: :unset, totp_issuer: :unset, totp_time_step: :unset, totp_code_length: :unset, totp_skew: :unset)
65
78
  data = Twilio::Values.of({
66
79
  'FriendlyName' => friendly_name,
67
80
  'CodeLength' => code_length,
@@ -75,6 +88,10 @@ module Twilio
75
88
  'Push.IncludeDate' => push_include_date,
76
89
  'Push.ApnCredentialSid' => push_apn_credential_sid,
77
90
  'Push.FcmCredentialSid' => push_fcm_credential_sid,
91
+ 'Totp.Issuer' => totp_issuer,
92
+ 'Totp.TimeStep' => totp_time_step,
93
+ 'Totp.CodeLength' => totp_code_length,
94
+ 'Totp.Skew' => totp_skew,
78
95
  })
79
96
 
80
97
  payload = @version.create('POST', @uri, data: data)
@@ -273,8 +290,21 @@ module Twilio
273
290
  # factors. Set the FCM Credential for this service. This will allow to send push
274
291
  # notifications to Android devices. See {Credential
275
292
  # Resource}[https://www.twilio.com/docs/notify/api/credential-resource]
293
+ # @param [String] totp_issuer Optional configuration for the TOTP factors. Set
294
+ # TOTP Issuer for this service. This will allow to configure the issuer of the
295
+ # TOTP URI.
296
+ # @param [String] totp_time_step Optional configuration for the TOTP factors.
297
+ # Defines how often, in seconds, are TOTP codes generated. i.e, a new TOTP code is
298
+ # generated every time_step seconds. Must be between 20 and 60 seconds, inclusive.
299
+ # Defaults to 30 seconds
300
+ # @param [String] totp_code_length Optional configuration for the TOTP factors.
301
+ # Number of digits for generated TOTP codes. Must be between 3 and 8, inclusive.
302
+ # Defaults to 6
303
+ # @param [String] totp_skew Optional configuration for the TOTP factors. The
304
+ # number of time-steps, past and future, that are valid for validation of TOTP
305
+ # codes. Must be between 0 and 2, inclusive. Defaults to 1
276
306
  # @return [ServiceInstance] Updated ServiceInstance
277
- def update(friendly_name: :unset, code_length: :unset, lookup_enabled: :unset, skip_sms_to_landlines: :unset, dtmf_input_required: :unset, tts_name: :unset, psd2_enabled: :unset, do_not_share_warning_enabled: :unset, custom_code_enabled: :unset, push_include_date: :unset, push_apn_credential_sid: :unset, push_fcm_credential_sid: :unset)
307
+ def update(friendly_name: :unset, code_length: :unset, lookup_enabled: :unset, skip_sms_to_landlines: :unset, dtmf_input_required: :unset, tts_name: :unset, psd2_enabled: :unset, do_not_share_warning_enabled: :unset, custom_code_enabled: :unset, push_include_date: :unset, push_apn_credential_sid: :unset, push_fcm_credential_sid: :unset, totp_issuer: :unset, totp_time_step: :unset, totp_code_length: :unset, totp_skew: :unset)
278
308
  data = Twilio::Values.of({
279
309
  'FriendlyName' => friendly_name,
280
310
  'CodeLength' => code_length,
@@ -288,6 +318,10 @@ module Twilio
288
318
  'Push.IncludeDate' => push_include_date,
289
319
  'Push.ApnCredentialSid' => push_apn_credential_sid,
290
320
  'Push.FcmCredentialSid' => push_fcm_credential_sid,
321
+ 'Totp.Issuer' => totp_issuer,
322
+ 'Totp.TimeStep' => totp_time_step,
323
+ 'Totp.CodeLength' => totp_code_length,
324
+ 'Totp.Skew' => totp_skew,
291
325
  })
292
326
 
293
327
  payload = @version.update('POST', @uri, data: data)
@@ -449,6 +483,7 @@ module Twilio
449
483
  'do_not_share_warning_enabled' => payload['do_not_share_warning_enabled'],
450
484
  'custom_code_enabled' => payload['custom_code_enabled'],
451
485
  'push' => payload['push'],
486
+ 'totp' => payload['totp'],
452
487
  'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
453
488
  'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
454
489
  'url' => payload['url'],
@@ -543,6 +578,12 @@ module Twilio
543
578
  @properties['push']
544
579
  end
545
580
 
581
+ ##
582
+ # @return [Hash] The service level configuration of factor TOTP type.
583
+ def totp
584
+ @properties['totp']
585
+ end
586
+
546
587
  ##
547
588
  # @return [Time] The RFC 2822 date and time in GMT when the resource was created
548
589
  def date_created
@@ -616,8 +657,21 @@ module Twilio
616
657
  # factors. Set the FCM Credential for this service. This will allow to send push
617
658
  # notifications to Android devices. See {Credential
618
659
  # Resource}[https://www.twilio.com/docs/notify/api/credential-resource]
660
+ # @param [String] totp_issuer Optional configuration for the TOTP factors. Set
661
+ # TOTP Issuer for this service. This will allow to configure the issuer of the
662
+ # TOTP URI.
663
+ # @param [String] totp_time_step Optional configuration for the TOTP factors.
664
+ # Defines how often, in seconds, are TOTP codes generated. i.e, a new TOTP code is
665
+ # generated every time_step seconds. Must be between 20 and 60 seconds, inclusive.
666
+ # Defaults to 30 seconds
667
+ # @param [String] totp_code_length Optional configuration for the TOTP factors.
668
+ # Number of digits for generated TOTP codes. Must be between 3 and 8, inclusive.
669
+ # Defaults to 6
670
+ # @param [String] totp_skew Optional configuration for the TOTP factors. The
671
+ # number of time-steps, past and future, that are valid for validation of TOTP
672
+ # codes. Must be between 0 and 2, inclusive. Defaults to 1
619
673
  # @return [ServiceInstance] Updated ServiceInstance
620
- def update(friendly_name: :unset, code_length: :unset, lookup_enabled: :unset, skip_sms_to_landlines: :unset, dtmf_input_required: :unset, tts_name: :unset, psd2_enabled: :unset, do_not_share_warning_enabled: :unset, custom_code_enabled: :unset, push_include_date: :unset, push_apn_credential_sid: :unset, push_fcm_credential_sid: :unset)
674
+ def update(friendly_name: :unset, code_length: :unset, lookup_enabled: :unset, skip_sms_to_landlines: :unset, dtmf_input_required: :unset, tts_name: :unset, psd2_enabled: :unset, do_not_share_warning_enabled: :unset, custom_code_enabled: :unset, push_include_date: :unset, push_apn_credential_sid: :unset, push_fcm_credential_sid: :unset, totp_issuer: :unset, totp_time_step: :unset, totp_code_length: :unset, totp_skew: :unset)
621
675
  context.update(
622
676
  friendly_name: friendly_name,
623
677
  code_length: code_length,
@@ -631,6 +685,10 @@ module Twilio
631
685
  push_include_date: push_include_date,
632
686
  push_apn_credential_sid: push_apn_credential_sid,
633
687
  push_fcm_credential_sid: push_fcm_credential_sid,
688
+ totp_issuer: totp_issuer,
689
+ totp_time_step: totp_time_step,
690
+ totp_code_length: totp_code_length,
691
+ totp_skew: totp_skew,
634
692
  )
635
693
  end
636
694
 
@@ -0,0 +1,206 @@
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 Verify < Domain
12
+ class V2 < Version
13
+ class TemplateList < ListResource
14
+ ##
15
+ # Initialize the TemplateList
16
+ # @param [Version] version Version that contains the resource
17
+ # @return [TemplateList] TemplateList
18
+ def initialize(version)
19
+ super(version)
20
+
21
+ # Path Solution
22
+ @solution = {}
23
+ @uri = "/Templates"
24
+ end
25
+
26
+ ##
27
+ # Lists TemplateInstance records from the API as a list.
28
+ # Unlike stream(), this operation is eager and will load `limit` records into
29
+ # memory before returning.
30
+ # @param [String] friendly_name String filter used to query templates with a given
31
+ # friendly name
32
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
33
+ # guarantees to never return more than limit. Default is no limit
34
+ # @param [Integer] page_size Number of records to fetch per request, when
35
+ # not set will use the default value of 50 records. If no page_size is defined
36
+ # but a limit is defined, stream() will attempt to read the limit with the most
37
+ # efficient page size, i.e. min(limit, 1000)
38
+ # @return [Array] Array of up to limit results
39
+ def list(friendly_name: :unset, limit: nil, page_size: nil)
40
+ self.stream(friendly_name: friendly_name, limit: limit, page_size: page_size).entries
41
+ end
42
+
43
+ ##
44
+ # Streams TemplateInstance records from the API as an Enumerable.
45
+ # This operation lazily loads records as efficiently as possible until the limit
46
+ # is reached.
47
+ # @param [String] friendly_name String filter used to query templates with a given
48
+ # friendly name
49
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
50
+ # guarantees to never return more than limit. Default is no limit.
51
+ # @param [Integer] page_size Number of records to fetch per request, when
52
+ # not set will use the default value of 50 records. If no page_size is defined
53
+ # but a limit is defined, stream() will attempt to read the limit with the most
54
+ # efficient page size, i.e. min(limit, 1000)
55
+ # @return [Enumerable] Enumerable that will yield up to limit results
56
+ def stream(friendly_name: :unset, limit: nil, page_size: nil)
57
+ limits = @version.read_limits(limit, page_size)
58
+
59
+ page = self.page(friendly_name: friendly_name, page_size: limits[:page_size], )
60
+
61
+ @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
62
+ end
63
+
64
+ ##
65
+ # When passed a block, yields TemplateInstance records from the API.
66
+ # This operation lazily loads records as efficiently as possible until the limit
67
+ # is reached.
68
+ def each
69
+ limits = @version.read_limits
70
+
71
+ page = self.page(page_size: limits[:page_size], )
72
+
73
+ @version.stream(page,
74
+ limit: limits[:limit],
75
+ page_limit: limits[:page_limit]).each {|x| yield x}
76
+ end
77
+
78
+ ##
79
+ # Retrieve a single page of TemplateInstance records from the API.
80
+ # Request is executed immediately.
81
+ # @param [String] friendly_name String filter used to query templates with a given
82
+ # friendly name
83
+ # @param [String] page_token PageToken provided by the API
84
+ # @param [Integer] page_number Page Number, this value is simply for client state
85
+ # @param [Integer] page_size Number of records to return, defaults to 50
86
+ # @return [Page] Page of TemplateInstance
87
+ def page(friendly_name: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
88
+ params = Twilio::Values.of({
89
+ 'FriendlyName' => friendly_name,
90
+ 'PageToken' => page_token,
91
+ 'Page' => page_number,
92
+ 'PageSize' => page_size,
93
+ })
94
+
95
+ response = @version.page('GET', @uri, params: params)
96
+
97
+ TemplatePage.new(@version, response, @solution)
98
+ end
99
+
100
+ ##
101
+ # Retrieve a single page of TemplateInstance 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 TemplateInstance
105
+ def get_page(target_url)
106
+ response = @version.domain.request(
107
+ 'GET',
108
+ target_url
109
+ )
110
+ TemplatePage.new(@version, response, @solution)
111
+ end
112
+
113
+ ##
114
+ # Provide a user friendly representation
115
+ def to_s
116
+ '#<Twilio.Verify.V2.TemplateList>'
117
+ end
118
+ end
119
+
120
+ class TemplatePage < Page
121
+ ##
122
+ # Initialize the TemplatePage
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 [TemplatePage] TemplatePage
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 TemplateInstance
136
+ # @param [Hash] payload Payload response from the API
137
+ # @return [TemplateInstance] TemplateInstance
138
+ def get_instance(payload)
139
+ TemplateInstance.new(@version, payload, )
140
+ end
141
+
142
+ ##
143
+ # Provide a user friendly representation
144
+ def to_s
145
+ '<Twilio.Verify.V2.TemplatePage>'
146
+ end
147
+ end
148
+
149
+ class TemplateInstance < InstanceResource
150
+ ##
151
+ # Initialize the TemplateInstance
152
+ # @param [Version] version Version that contains the resource
153
+ # @param [Hash] payload payload that contains response from Twilio
154
+ # @return [TemplateInstance] TemplateInstance
155
+ def initialize(version, payload)
156
+ super(version)
157
+
158
+ # Marshaled Properties
159
+ @properties = {
160
+ 'sid' => payload['sid'],
161
+ 'account_sid' => payload['account_sid'],
162
+ 'friendly_name' => payload['friendly_name'],
163
+ 'translations' => payload['translations'],
164
+ }
165
+ end
166
+
167
+ ##
168
+ # @return [String] A string that uniquely identifies this Template
169
+ def sid
170
+ @properties['sid']
171
+ end
172
+
173
+ ##
174
+ # @return [String] Account Sid
175
+ def account_sid
176
+ @properties['account_sid']
177
+ end
178
+
179
+ ##
180
+ # @return [String] A string to describe the verification template
181
+ def friendly_name
182
+ @properties['friendly_name']
183
+ end
184
+
185
+ ##
186
+ # @return [Hash] Ojbect with the template translations.
187
+ def translations
188
+ @properties['translations']
189
+ end
190
+
191
+ ##
192
+ # Provide a user friendly representation
193
+ def to_s
194
+ "<Twilio.Verify.V2.TemplateInstance>"
195
+ end
196
+
197
+ ##
198
+ # Provide a detailed, user friendly representation
199
+ def inspect
200
+ "<Twilio.Verify.V2.TemplateInstance>"
201
+ end
202
+ end
203
+ end
204
+ end
205
+ end
206
+ end