twilio-ruby 5.61.2 → 6.9.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (677) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/pr-lint.yml +21 -0
  3. data/.github/workflows/test-and-deploy.yml +139 -0
  4. data/.gitignore +3 -0
  5. data/.rubocop.yml +1 -1
  6. data/.rubocop_todo.yml +84 -21
  7. data/CHANGES.md +893 -1
  8. data/CONTRIBUTING.md +11 -9
  9. data/LICENSE +1 -1
  10. data/Makefile +13 -8
  11. data/PULL_REQUEST_TEMPLATE.md +1 -1
  12. data/README.md +136 -44
  13. data/UPGRADE.md +10 -0
  14. data/advanced-examples/custom-http-client.md +170 -0
  15. data/cluster_spec.rb +77 -0
  16. data/lib/rack/twilio_webhook_authentication.rb +25 -1
  17. data/lib/twilio-ruby/base/client_base.rb +121 -0
  18. data/lib/twilio-ruby/framework/rest/error.rb +0 -12
  19. data/lib/twilio-ruby/http/http_client.rb +11 -6
  20. data/lib/twilio-ruby/jwt/access_token.rb +0 -59
  21. data/lib/twilio-ruby/rest/accounts/v1/auth_token_promotion.rb +198 -178
  22. data/lib/twilio-ruby/rest/accounts/v1/credential/aws.rb +371 -332
  23. data/lib/twilio-ruby/rest/accounts/v1/credential/public_key.rb +371 -332
  24. data/lib/twilio-ruby/rest/accounts/v1/credential.rb +121 -114
  25. data/lib/twilio-ruby/rest/accounts/v1/safelist.rb +169 -0
  26. data/lib/twilio-ruby/rest/accounts/v1/secondary_auth_token.rb +214 -192
  27. data/lib/twilio-ruby/rest/accounts/v1.rb +51 -42
  28. data/lib/twilio-ruby/rest/accounts.rb +4 -34
  29. data/lib/twilio-ruby/rest/accounts_base.rb +38 -0
  30. data/lib/twilio-ruby/rest/api/v2010/account/address/dependent_phone_number.rb +370 -365
  31. data/lib/twilio-ruby/rest/api/v2010/account/address.rb +551 -514
  32. data/lib/twilio-ruby/rest/api/v2010/account/application.rb +615 -586
  33. data/lib/twilio-ruby/rest/api/v2010/account/authorized_connect_app.rb +313 -320
  34. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/local.rb +394 -0
  35. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/machine_to_machine.rb +394 -0
  36. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/mobile.rb +394 -0
  37. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/national.rb +394 -0
  38. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/shared_cost.rb +394 -0
  39. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/toll_free.rb +394 -0
  40. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/voip.rb +394 -0
  41. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country.rb +432 -0
  42. data/lib/twilio-ruby/rest/api/v2010/account/balance.rb +136 -118
  43. data/lib/twilio-ruby/rest/api/v2010/account/call/event.rb +202 -194
  44. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb +252 -289
  45. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb +317 -303
  46. data/lib/twilio-ruby/rest/api/v2010/account/call/notification.rb +400 -417
  47. data/lib/twilio-ruby/rest/api/v2010/account/call/payment.rb +291 -342
  48. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +494 -511
  49. data/lib/twilio-ruby/rest/api/v2010/account/call/siprec.rb +839 -634
  50. data/lib/twilio-ruby/rest/api/v2010/account/call/stream.rb +872 -0
  51. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message.rb +163 -0
  52. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message_subscription.rb +239 -0
  53. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +952 -972
  54. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +652 -717
  55. data/lib/twilio-ruby/rest/api/v2010/account/conference/recording.rb +451 -458
  56. data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +489 -493
  57. data/lib/twilio-ruby/rest/api/v2010/account/connect_app.rb +426 -407
  58. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension.rb +321 -351
  59. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on.rb +398 -418
  60. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +536 -554
  61. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +536 -553
  62. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +536 -553
  63. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +841 -903
  64. data/lib/twilio-ruby/rest/api/v2010/account/key.rb +335 -302
  65. data/lib/twilio-ruby/rest/api/v2010/account/message/feedback.rb +167 -166
  66. data/lib/twilio-ruby/rest/api/v2010/account/message/media.rb +340 -350
  67. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +615 -612
  68. data/lib/twilio-ruby/rest/api/v2010/account/new_key.rb +157 -138
  69. data/lib/twilio-ruby/rest/api/v2010/account/new_signing_key.rb +157 -138
  70. data/lib/twilio-ruby/rest/api/v2010/account/notification.rb +400 -399
  71. data/lib/twilio-ruby/rest/api/v2010/account/outgoing_caller_id.rb +368 -358
  72. data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +340 -338
  73. data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +426 -390
  74. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload.rb +358 -380
  75. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result.rb +368 -385
  76. data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +364 -372
  77. data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +507 -486
  78. data/lib/twilio-ruby/rest/api/v2010/account/short_code.rb +417 -408
  79. data/lib/twilio-ruby/rest/api/v2010/account/signing_key.rb +335 -306
  80. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list/credential.rb +375 -368
  81. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list.rb +399 -373
  82. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls/auth_calls_credential_list_mapping.rb +346 -0
  83. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/{auth_calls_mapping → auth_type_calls}/auth_calls_ip_access_control_list_mapping.rb +193 -195
  84. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls.rb +140 -0
  85. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/{auth_registrations_mapping → auth_type_registrations}/auth_registrations_credential_list_mapping.rb +193 -195
  86. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_registrations.rb +126 -0
  87. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types.rb +94 -103
  88. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb +339 -339
  89. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/ip_access_control_list_mapping.rb +339 -338
  90. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +649 -645
  91. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +412 -421
  92. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb +399 -374
  93. data/lib/twilio-ruby/rest/api/v2010/account/sip.rb +141 -150
  94. data/lib/twilio-ruby/rest/api/v2010/account/token.rb +171 -154
  95. data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +364 -350
  96. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +314 -339
  97. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +314 -339
  98. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +314 -339
  99. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +314 -339
  100. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +314 -339
  101. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +314 -339
  102. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +314 -339
  103. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +314 -339
  104. data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +381 -416
  105. data/lib/twilio-ruby/rest/api/v2010/account/usage/trigger.rb +485 -484
  106. data/lib/twilio-ruby/rest/api/v2010/account/usage.rb +112 -104
  107. data/lib/twilio-ruby/rest/api/v2010/account/validation_request.rb +172 -161
  108. data/lib/twilio-ruby/rest/api/v2010/account.rb +979 -943
  109. data/lib/twilio-ruby/rest/api/v2010.rb +126 -148
  110. data/lib/twilio-ruby/rest/api.rb +25 -34
  111. data/lib/twilio-ruby/rest/api_base.rb +38 -0
  112. data/lib/twilio-ruby/rest/bulkexports/v1/export/day.rb +299 -279
  113. data/lib/twilio-ruby/rest/bulkexports/v1/export/export_custom_job.rb +298 -279
  114. data/lib/twilio-ruby/rest/bulkexports/v1/export/job.rb +271 -248
  115. data/lib/twilio-ruby/rest/bulkexports/v1/export.rb +246 -235
  116. data/lib/twilio-ruby/rest/bulkexports/v1/export_configuration.rb +245 -218
  117. data/lib/twilio-ruby/rest/bulkexports/v1.rb +57 -55
  118. data/lib/twilio-ruby/rest/bulkexports.rb +3 -34
  119. data/lib/twilio-ruby/rest/bulkexports_base.rb +38 -0
  120. data/lib/twilio-ruby/rest/chat/v1/credential.rb +419 -403
  121. data/lib/twilio-ruby/rest/chat/v1/service/channel/invite.rb +374 -391
  122. data/lib/twilio-ruby/rest/chat/v1/service/channel/member.rb +422 -440
  123. data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +438 -437
  124. data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +534 -515
  125. data/lib/twilio-ruby/rest/chat/v1/service/role.rb +396 -367
  126. data/lib/twilio-ruby/rest/chat/v1/service/user/user_channel.rb +244 -239
  127. data/lib/twilio-ruby/rest/chat/v1/service/user.rb +465 -440
  128. data/lib/twilio-ruby/rest/chat/v1/service.rb +861 -894
  129. data/lib/twilio-ruby/rest/chat/v1.rb +57 -55
  130. data/lib/twilio-ruby/rest/chat/v2/credential.rb +419 -401
  131. data/lib/twilio-ruby/rest/chat/v2/service/binding.rb +371 -370
  132. data/lib/twilio-ruby/rest/chat/v2/service/channel/invite.rb +374 -386
  133. data/lib/twilio-ruby/rest/chat/v2/service/channel/member.rb +486 -527
  134. data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +513 -533
  135. data/lib/twilio-ruby/rest/chat/v2/service/channel/webhook.rb +440 -467
  136. data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +606 -605
  137. data/lib/twilio-ruby/rest/chat/v2/service/role.rb +396 -369
  138. data/lib/twilio-ruby/rest/chat/v2/service/user/user_binding.rb +364 -381
  139. data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +406 -413
  140. data/lib/twilio-ruby/rest/chat/v2/service/user.rb +509 -491
  141. data/lib/twilio-ruby/rest/chat/v2/service.rb +764 -778
  142. data/lib/twilio-ruby/rest/chat/v2.rb +57 -53
  143. data/lib/twilio-ruby/rest/chat/v3/channel.rb +297 -0
  144. data/lib/twilio-ruby/rest/chat/v3.rb +71 -0
  145. data/lib/twilio-ruby/rest/chat.rb +10 -38
  146. data/lib/twilio-ruby/rest/chat_base.rb +48 -0
  147. data/lib/twilio-ruby/rest/client.rb +318 -561
  148. data/lib/twilio-ruby/rest/content/v1/content/approval_fetch.rb +208 -0
  149. data/lib/twilio-ruby/rest/content/v1/content.rb +363 -0
  150. data/lib/twilio-ruby/rest/content/v1/content_and_approvals.rb +251 -0
  151. data/lib/twilio-ruby/rest/content/v1/legacy_content.rb +265 -0
  152. data/lib/twilio-ruby/rest/content/v1.rb +61 -0
  153. data/lib/twilio-ruby/rest/content.rb +15 -0
  154. data/lib/twilio-ruby/rest/content_base.rb +38 -0
  155. data/lib/twilio-ruby/rest/conversations/v1/address_configuration.rb +482 -0
  156. data/lib/twilio-ruby/rest/conversations/v1/configuration/webhook.rb +254 -227
  157. data/lib/twilio-ruby/rest/conversations/v1/configuration.rb +279 -252
  158. data/lib/twilio-ruby/rest/conversations/v1/conversation/message/delivery_receipt.rb +334 -344
  159. data/lib/twilio-ruby/rest/conversations/v1/conversation/message.rb +537 -495
  160. data/lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb +498 -495
  161. data/lib/twilio-ruby/rest/conversations/v1/conversation/webhook.rb +425 -403
  162. data/lib/twilio-ruby/rest/conversations/v1/conversation.rb +620 -552
  163. data/lib/twilio-ruby/rest/conversations/v1/credential.rb +425 -409
  164. data/lib/twilio-ruby/rest/conversations/v1/participant_conversation.rb +304 -304
  165. data/lib/twilio-ruby/rest/conversations/v1/role.rb +384 -356
  166. data/lib/twilio-ruby/rest/conversations/v1/service/binding.rb +364 -373
  167. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb +300 -289
  168. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb +246 -235
  169. data/lib/twilio-ruby/rest/conversations/v1/service/configuration.rb +307 -279
  170. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message/delivery_receipt.rb +341 -371
  171. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message.rb +544 -535
  172. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/participant.rb +507 -530
  173. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/webhook.rb +434 -438
  174. data/lib/twilio-ruby/rest/conversations/v1/service/conversation.rb +632 -588
  175. data/lib/twilio-ruby/rest/conversations/v1/service/participant_conversation.rb +310 -317
  176. data/lib/twilio-ruby/rest/conversations/v1/service/role.rb +396 -380
  177. data/lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb +446 -455
  178. data/lib/twilio-ruby/rest/conversations/v1/service/user.rb +484 -474
  179. data/lib/twilio-ruby/rest/conversations/v1/service.rb +476 -447
  180. data/lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb +445 -435
  181. data/lib/twilio-ruby/rest/conversations/v1/user.rb +472 -441
  182. data/lib/twilio-ruby/rest/conversations/v1.rb +129 -119
  183. data/lib/twilio-ruby/rest/conversations.rb +18 -34
  184. data/lib/twilio-ruby/rest/conversations_base.rb +38 -0
  185. data/lib/twilio-ruby/rest/events/v1/event_type.rb +302 -288
  186. data/lib/twilio-ruby/rest/events/v1/schema/schema_version.rb +299 -0
  187. data/lib/twilio-ruby/rest/events/v1/schema.rb +227 -218
  188. data/lib/twilio-ruby/rest/events/v1/sink/sink_test.rb +114 -100
  189. data/lib/twilio-ruby/rest/events/v1/sink/sink_validate.rb +120 -103
  190. data/lib/twilio-ruby/rest/events/v1/sink.rb +434 -408
  191. data/lib/twilio-ruby/rest/events/v1/subscription/subscribed_event.rb +365 -339
  192. data/lib/twilio-ruby/rest/events/v1/subscription.rb +416 -387
  193. data/lib/twilio-ruby/rest/events/v1.rb +87 -87
  194. data/lib/twilio-ruby/rest/events.rb +5 -34
  195. data/lib/twilio-ruby/rest/events_base.rb +38 -0
  196. data/lib/twilio-ruby/rest/flex_api/v1/assessments.rb +448 -0
  197. data/lib/twilio-ruby/rest/flex_api/v1/channel.rb +365 -330
  198. data/lib/twilio-ruby/rest/flex_api/v1/configuration.rb +510 -475
  199. data/lib/twilio-ruby/rest/flex_api/v1/flex_flow.rb +563 -555
  200. data/lib/twilio-ruby/rest/flex_api/v1/insights_assessments_comment.rb +327 -0
  201. data/lib/twilio-ruby/rest/flex_api/v1/insights_conversations.rb +228 -0
  202. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires.rb +442 -0
  203. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_category.rb +358 -0
  204. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_question.rb +443 -0
  205. data/lib/twilio-ruby/rest/flex_api/v1/insights_segments.rb +361 -0
  206. data/lib/twilio-ruby/rest/flex_api/v1/insights_session.rb +217 -0
  207. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_answer_sets.rb +155 -0
  208. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_comment.rb +141 -0
  209. data/lib/twilio-ruby/rest/flex_api/v1/insights_user_roles.rb +196 -0
  210. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_invite.rb +251 -0
  211. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_participant.rb +339 -0
  212. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb +406 -0
  213. data/lib/twilio-ruby/rest/flex_api/v1/interaction.rb +267 -0
  214. data/lib/twilio-ruby/rest/flex_api/v1/provisioning_status.rb +187 -0
  215. data/lib/twilio-ruby/rest/flex_api/v1/web_channel.rb +378 -331
  216. data/lib/twilio-ruby/rest/flex_api/v1.rb +201 -76
  217. data/lib/twilio-ruby/rest/flex_api/v2/web_channels.rb +146 -0
  218. data/lib/twilio-ruby/rest/flex_api/v2.rb +40 -0
  219. data/lib/twilio-ruby/rest/flex_api.rb +33 -31
  220. data/lib/twilio-ruby/rest/flex_api_base.rb +43 -0
  221. data/lib/twilio-ruby/rest/frontline_api/v1/user.rb +244 -227
  222. data/lib/twilio-ruby/rest/frontline_api/v1.rb +42 -38
  223. data/lib/twilio-ruby/rest/frontline_api.rb +2 -34
  224. data/lib/twilio-ruby/rest/frontline_api_base.rb +38 -0
  225. data/lib/twilio-ruby/rest/insights/v1/call/annotation.rb +319 -0
  226. data/lib/twilio-ruby/rest/insights/v1/call/call_summary.rb +350 -0
  227. data/lib/twilio-ruby/rest/insights/v1/call/event.rb +269 -255
  228. data/lib/twilio-ruby/rest/insights/v1/call/metric.rb +241 -225
  229. data/lib/twilio-ruby/rest/insights/v1/call.rb +260 -228
  230. data/lib/twilio-ruby/rest/insights/v1/call_summaries.rb +485 -426
  231. data/lib/twilio-ruby/rest/insights/v1/conference/conference_participant.rb +488 -0
  232. data/lib/twilio-ruby/rest/insights/v1/conference.rb +505 -0
  233. data/lib/twilio-ruby/rest/insights/v1/room/participant.rb +378 -371
  234. data/lib/twilio-ruby/rest/insights/v1/room.rb +490 -489
  235. data/lib/twilio-ruby/rest/insights/v1/setting.rb +254 -0
  236. data/lib/twilio-ruby/rest/insights/v1.rb +84 -60
  237. data/lib/twilio-ruby/rest/insights.rb +17 -31
  238. data/lib/twilio-ruby/rest/insights_base.rb +38 -0
  239. data/lib/twilio-ruby/rest/intelligence/v2/service.rb +510 -0
  240. data/lib/twilio-ruby/rest/intelligence/v2/transcript/media.rb +226 -0
  241. data/lib/twilio-ruby/rest/intelligence/v2/transcript/operator_result.rb +388 -0
  242. data/lib/twilio-ruby/rest/intelligence/v2/transcript/sentence.rb +248 -0
  243. data/lib/twilio-ruby/rest/intelligence/v2/transcript.rb +520 -0
  244. data/lib/twilio-ruby/rest/intelligence/v2.rb +64 -0
  245. data/lib/twilio-ruby/rest/intelligence.rb +6 -0
  246. data/lib/twilio-ruby/rest/intelligence_base.rb +38 -0
  247. data/lib/twilio-ruby/rest/ip_messaging/v1/credential.rb +419 -364
  248. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/invite.rb +374 -359
  249. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb +422 -397
  250. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +438 -409
  251. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +534 -488
  252. data/lib/twilio-ruby/rest/ip_messaging/v1/service/role.rb +396 -347
  253. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user/user_channel.rb +244 -233
  254. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +465 -418
  255. data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +861 -779
  256. data/lib/twilio-ruby/rest/ip_messaging/v1.rb +57 -53
  257. data/lib/twilio-ruby/rest/ip_messaging/v2/credential.rb +419 -364
  258. data/lib/twilio-ruby/rest/ip_messaging/v2/service/binding.rb +371 -343
  259. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/invite.rb +374 -359
  260. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb +486 -451
  261. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +513 -479
  262. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/webhook.rb +440 -411
  263. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +606 -555
  264. data/lib/twilio-ruby/rest/ip_messaging/v2/service/role.rb +396 -347
  265. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_binding.rb +364 -351
  266. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_channel.rb +397 -384
  267. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +509 -467
  268. data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +764 -689
  269. data/lib/twilio-ruby/rest/ip_messaging/v2.rb +57 -53
  270. data/lib/twilio-ruby/rest/ip_messaging.rb +3 -41
  271. data/lib/twilio-ruby/rest/ip_messaging_base.rb +43 -0
  272. data/lib/twilio-ruby/rest/lookups/v1/phone_number.rb +243 -239
  273. data/lib/twilio-ruby/rest/lookups/v1.rb +42 -39
  274. data/lib/twilio-ruby/rest/lookups/v2/phone_number.rb +370 -0
  275. data/lib/twilio-ruby/rest/lookups/v2.rb +49 -0
  276. data/lib/twilio-ruby/rest/lookups.rb +2 -34
  277. data/lib/twilio-ruby/rest/lookups_base.rb +43 -0
  278. data/lib/twilio-ruby/rest/media/v1/media_processor.rb +410 -374
  279. data/lib/twilio-ruby/rest/media/v1/media_recording.rb +404 -0
  280. data/lib/twilio-ruby/rest/media/v1/player_streamer/playback_grant.rb +245 -214
  281. data/lib/twilio-ruby/rest/media/v1/player_streamer.rb +422 -380
  282. data/lib/twilio-ruby/rest/media/v1.rb +72 -53
  283. data/lib/twilio-ruby/rest/media.rb +13 -34
  284. data/lib/twilio-ruby/rest/media_base.rb +38 -0
  285. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_registration_otp.rb +136 -0
  286. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_vetting.rb +358 -346
  287. data/lib/twilio-ruby/rest/messaging/v1/brand_registration.rb +487 -420
  288. data/lib/twilio-ruby/rest/messaging/v1/deactivations.rb +189 -0
  289. data/lib/twilio-ruby/rest/messaging/v1/domain_certs.rb +280 -0
  290. data/lib/twilio-ruby/rest/messaging/v1/domain_config.rb +289 -0
  291. data/lib/twilio-ruby/rest/messaging/v1/domain_config_messaging_service.rb +238 -0
  292. data/lib/twilio-ruby/rest/messaging/v1/external_campaign.rb +155 -144
  293. data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service.rb +214 -0
  294. data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service_domain_association.rb +196 -0
  295. data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +351 -335
  296. data/lib/twilio-ruby/rest/messaging/v1/service/channel_sender.rb +329 -0
  297. data/lib/twilio-ruby/rest/messaging/v1/service/phone_number.rb +358 -341
  298. data/lib/twilio-ruby/rest/messaging/v1/service/short_code.rb +358 -336
  299. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person.rb +506 -426
  300. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person_usecase.rb +121 -115
  301. data/lib/twilio-ruby/rest/messaging/v1/service.rb +767 -763
  302. data/lib/twilio-ruby/rest/messaging/v1/tollfree_verification.rb +777 -0
  303. data/lib/twilio-ruby/rest/messaging/v1/usecase.rb +106 -94
  304. data/lib/twilio-ruby/rest/messaging/v1.rb +187 -74
  305. data/lib/twilio-ruby/rest/messaging.rb +36 -35
  306. data/lib/twilio-ruby/rest/messaging_base.rb +38 -0
  307. data/lib/twilio-ruby/rest/microvisor/v1/account_config.rb +358 -0
  308. data/lib/twilio-ruby/rest/microvisor/v1/account_secret.rb +351 -0
  309. data/lib/twilio-ruby/rest/microvisor/v1/app/app_manifest.rb +208 -0
  310. data/lib/twilio-ruby/rest/microvisor/v1/app.rb +349 -0
  311. data/lib/twilio-ruby/rest/microvisor/v1/device/device_config.rb +374 -0
  312. data/lib/twilio-ruby/rest/microvisor/v1/device/device_secret.rb +367 -0
  313. data/lib/twilio-ruby/rest/microvisor/v1/device.rb +427 -0
  314. data/lib/twilio-ruby/rest/microvisor/v1.rb +94 -0
  315. data/lib/twilio-ruby/rest/microvisor.rb +24 -0
  316. data/lib/twilio-ruby/rest/microvisor_base.rb +38 -0
  317. data/lib/twilio-ruby/rest/monitor/v1/alert.rb +398 -395
  318. data/lib/twilio-ruby/rest/monitor/v1/event.rb +381 -390
  319. data/lib/twilio-ruby/rest/monitor/v1.rb +57 -53
  320. data/lib/twilio-ruby/rest/monitor.rb +3 -34
  321. data/lib/twilio-ruby/rest/monitor_base.rb +38 -0
  322. data/lib/twilio-ruby/rest/notify/v1/credential.rb +421 -408
  323. data/lib/twilio-ruby/rest/notify/v1/service/binding.rb +437 -452
  324. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +313 -362
  325. data/lib/twilio-ruby/rest/notify/v1/service.rb +626 -622
  326. data/lib/twilio-ruby/rest/notify/v1.rb +57 -55
  327. data/lib/twilio-ruby/rest/notify.rb +3 -34
  328. data/lib/twilio-ruby/rest/notify_base.rb +38 -0
  329. data/lib/twilio-ruby/rest/numbers/v1/bulk_eligibility.rb +224 -0
  330. data/lib/twilio-ruby/rest/numbers/v1/porting_bulk_portability.rb +229 -0
  331. data/lib/twilio-ruby/rest/numbers/v1/porting_port_in_fetch.rb +245 -0
  332. data/lib/twilio-ruby/rest/numbers/v1/porting_portability.rb +263 -0
  333. data/lib/twilio-ruby/rest/numbers/v1.rb +94 -0
  334. data/lib/twilio-ruby/rest/numbers/v2/authorization_document/dependent_hosted_number_order.rb +343 -0
  335. data/lib/twilio-ruby/rest/numbers/v2/authorization_document.rb +403 -0
  336. data/lib/twilio-ruby/rest/numbers/v2/bulk_hosted_number_order.rb +249 -0
  337. data/lib/twilio-ruby/rest/numbers/v2/hosted_number_order.rb +502 -0
  338. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/bundle_copy.rb +276 -179
  339. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/evaluation.rb +324 -298
  340. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/item_assignment.rb +333 -309
  341. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/replace_items.rb +194 -181
  342. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle.rb +601 -550
  343. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user.rb +391 -351
  344. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user_type.rb +290 -266
  345. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/regulation.rb +322 -307
  346. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document.rb +412 -364
  347. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document_type.rb +290 -266
  348. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance.rb +177 -181
  349. data/lib/twilio-ruby/rest/numbers/v2.rb +78 -28
  350. data/lib/twilio-ruby/rest/numbers.rb +2 -34
  351. data/lib/twilio-ruby/rest/numbers_base.rb +43 -0
  352. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/certificate.rb +410 -375
  353. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/deployment.rb +394 -358
  354. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/device.rb +449 -418
  355. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/key.rb +407 -369
  356. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet.rb +494 -459
  357. data/lib/twilio-ruby/rest/preview/deployed_devices.rb +42 -38
  358. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document/dependent_hosted_number_order.rb +370 -396
  359. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document.rb +446 -446
  360. data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +610 -625
  361. data/lib/twilio-ruby/rest/preview/hosted_numbers.rb +57 -55
  362. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on/available_add_on_extension.rb +301 -298
  363. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on.rb +325 -309
  364. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on/installed_add_on_extension.rb +342 -330
  365. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on.rb +429 -398
  366. data/lib/twilio-ruby/rest/preview/marketplace.rb +57 -53
  367. data/lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb +378 -374
  368. data/lib/twilio-ruby/rest/preview/sync/service/document.rb +442 -399
  369. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_item.rb +434 -407
  370. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_permission.rb +378 -374
  371. data/lib/twilio-ruby/rest/preview/sync/service/sync_list.rb +419 -398
  372. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_item.rb +437 -404
  373. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_permission.rb +378 -374
  374. data/lib/twilio-ruby/rest/preview/sync/service/sync_map.rb +419 -398
  375. data/lib/twilio-ruby/rest/preview/sync/service.rb +495 -452
  376. data/lib/twilio-ruby/rest/preview/sync.rb +42 -37
  377. data/lib/twilio-ruby/rest/preview/wireless/command.rb +387 -364
  378. data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +448 -398
  379. data/lib/twilio-ruby/rest/preview/wireless/sim/usage.rb +232 -205
  380. data/lib/twilio-ruby/rest/preview/wireless/sim.rb +574 -523
  381. data/lib/twilio-ruby/rest/preview/wireless.rb +72 -69
  382. data/lib/twilio-ruby/rest/preview.rb +11 -137
  383. data/lib/twilio-ruby/rest/preview_base.rb +58 -0
  384. data/lib/twilio-ruby/rest/pricing/v1/messaging/country.rb +297 -275
  385. data/lib/twilio-ruby/rest/pricing/v1/messaging.rb +107 -119
  386. data/lib/twilio-ruby/rest/pricing/v1/phone_number/country.rb +290 -268
  387. data/lib/twilio-ruby/rest/pricing/v1/phone_number.rb +107 -119
  388. data/lib/twilio-ruby/rest/pricing/v1/voice/country.rb +297 -275
  389. data/lib/twilio-ruby/rest/pricing/v1/voice/number.rb +220 -197
  390. data/lib/twilio-ruby/rest/pricing/v1/voice.rb +121 -135
  391. data/lib/twilio-ruby/rest/pricing/v1.rb +45 -42
  392. data/lib/twilio-ruby/rest/pricing/v2/country.rb +289 -270
  393. data/lib/twilio-ruby/rest/pricing/v2/number.rb +232 -217
  394. data/lib/twilio-ruby/rest/pricing/v2/voice/country.rb +297 -275
  395. data/lib/twilio-ruby/rest/pricing/v2/voice/number.rb +238 -220
  396. data/lib/twilio-ruby/rest/pricing/v2/voice.rb +121 -138
  397. data/lib/twilio-ruby/rest/pricing/v2.rb +63 -65
  398. data/lib/twilio-ruby/rest/pricing.rb +6 -41
  399. data/lib/twilio-ruby/rest/pricing_base.rb +43 -0
  400. data/lib/twilio-ruby/rest/proxy/v1/service/phone_number.rb +419 -403
  401. data/lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb +408 -418
  402. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant/message_interaction.rb +430 -449
  403. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb +421 -455
  404. data/lib/twilio-ruby/rest/proxy/v1/service/session.rb +522 -547
  405. data/lib/twilio-ruby/rest/proxy/v1/service/short_code.rb +399 -370
  406. data/lib/twilio-ruby/rest/proxy/v1/service.rb +559 -596
  407. data/lib/twilio-ruby/rest/proxy/v1.rb +42 -38
  408. data/lib/twilio-ruby/rest/proxy.rb +2 -34
  409. data/lib/twilio-ruby/rest/proxy_base.rb +38 -0
  410. data/lib/twilio-ruby/rest/routes/v2/phone_number.rb +268 -0
  411. data/lib/twilio-ruby/rest/routes/v2/sip_domain.rb +268 -0
  412. data/lib/twilio-ruby/rest/routes/v2/trunk.rb +268 -0
  413. data/lib/twilio-ruby/rest/routes/v2.rb +79 -0
  414. data/lib/twilio-ruby/rest/routes.rb +32 -0
  415. data/lib/twilio-ruby/rest/routes_base.rb +38 -0
  416. data/lib/twilio-ruby/rest/serverless/v1/service/asset/asset_version.rb +315 -323
  417. data/lib/twilio-ruby/rest/serverless/v1/service/asset.rb +412 -380
  418. data/lib/twilio-ruby/rest/serverless/v1/service/build/build_status.rb +208 -208
  419. data/lib/twilio-ruby/rest/serverless/v1/service/build.rb +407 -384
  420. data/lib/twilio-ruby/rest/serverless/v1/service/environment/deployment.rb +336 -338
  421. data/lib/twilio-ruby/rest/serverless/v1/service/environment/log.rb +361 -383
  422. data/lib/twilio-ruby/rest/serverless/v1/service/environment/variable.rb +403 -396
  423. data/lib/twilio-ruby/rest/serverless/v1/service/environment.rb +456 -447
  424. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version/function_version_content.rb +223 -234
  425. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version.rb +342 -353
  426. data/lib/twilio-ruby/rest/serverless/v1/service/function.rb +412 -380
  427. data/lib/twilio-ruby/rest/serverless/v1/service.rb +523 -493
  428. data/lib/twilio-ruby/rest/serverless/v1.rb +42 -37
  429. data/lib/twilio-ruby/rest/serverless.rb +2 -34
  430. data/lib/twilio-ruby/rest/serverless_base.rb +38 -0
  431. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/engagement_context.rb +206 -199
  432. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step/step_context.rb +221 -218
  433. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb +361 -355
  434. data/lib/twilio-ruby/rest/studio/v1/flow/engagement.rb +422 -394
  435. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_context.rb +206 -200
  436. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step/execution_step_context.rb +221 -221
  437. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step.rb +361 -361
  438. data/lib/twilio-ruby/rest/studio/v1/flow/execution.rb +468 -449
  439. data/lib/twilio-ruby/rest/studio/v1/flow.rb +380 -355
  440. data/lib/twilio-ruby/rest/studio/v1.rb +42 -37
  441. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_context.rb +206 -200
  442. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step/execution_step_context.rb +221 -221
  443. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step.rb +361 -361
  444. data/lib/twilio-ruby/rest/studio/v2/flow/execution.rb +461 -442
  445. data/lib/twilio-ruby/rest/studio/v2/flow/flow_revision.rb +341 -320
  446. data/lib/twilio-ruby/rest/studio/v2/flow/flow_test_user.rb +232 -0
  447. data/lib/twilio-ruby/rest/studio/v2/flow.rb +519 -472
  448. data/lib/twilio-ruby/rest/studio/v2/flow_validate.rb +121 -99
  449. data/lib/twilio-ruby/rest/studio/v2.rb +48 -44
  450. data/lib/twilio-ruby/rest/studio.rb +3 -41
  451. data/lib/twilio-ruby/rest/studio_base.rb +43 -0
  452. data/lib/twilio-ruby/rest/supersim/v1/esim_profile.rb +403 -0
  453. data/lib/twilio-ruby/rest/supersim/v1/fleet.rb +472 -484
  454. data/lib/twilio-ruby/rest/supersim/v1/ip_command.rb +398 -406
  455. data/lib/twilio-ruby/rest/supersim/v1/network.rb +302 -297
  456. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile/network_access_profile_network.rb +337 -332
  457. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile.rb +380 -351
  458. data/lib/twilio-ruby/rest/supersim/v1/settings_update.rb +256 -0
  459. data/lib/twilio-ruby/rest/supersim/v1/sim/billing_period.rb +242 -224
  460. data/lib/twilio-ruby/rest/supersim/v1/sim/sim_ip_address.rb +207 -0
  461. data/lib/twilio-ruby/rest/supersim/v1/sim.rb +460 -433
  462. data/lib/twilio-ruby/rest/supersim/v1/sms_command.rb +358 -361
  463. data/lib/twilio-ruby/rest/supersim/v1/usage_record.rb +286 -311
  464. data/lib/twilio-ruby/rest/supersim/v1.rb +144 -140
  465. data/lib/twilio-ruby/rest/supersim.rb +22 -40
  466. data/lib/twilio-ruby/rest/supersim_base.rb +38 -0
  467. data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +376 -371
  468. data/lib/twilio-ruby/rest/sync/v1/service/document.rb +456 -423
  469. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +466 -490
  470. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +376 -370
  471. data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +470 -445
  472. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +469 -495
  473. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +376 -368
  474. data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +470 -444
  475. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream/stream_message.rb +139 -132
  476. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream.rb +419 -400
  477. data/lib/twilio-ruby/rest/sync/v1/service.rb +575 -567
  478. data/lib/twilio-ruby/rest/sync/v1.rb +42 -37
  479. data/lib/twilio-ruby/rest/sync.rb +2 -34
  480. data/lib/twilio-ruby/rest/sync_base.rb +38 -0
  481. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/activity.rb +405 -395
  482. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +442 -464
  483. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +705 -736
  484. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +623 -661
  485. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_channel.rb +409 -382
  486. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics.rb +359 -365
  487. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics.rb +279 -275
  488. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_statistics.rb +230 -236
  489. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queues_statistics.rb +239 -258
  490. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +574 -566
  491. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +687 -732
  492. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_channel.rb +389 -388
  493. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_statistics.rb +235 -239
  494. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_cumulative_statistics.rb +281 -265
  495. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_real_time_statistics.rb +215 -193
  496. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_statistics.rb +251 -234
  497. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +623 -631
  498. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics.rb +359 -373
  499. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_real_time_statistics.rb +245 -241
  500. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_statistics.rb +230 -244
  501. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +523 -510
  502. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_cumulative_statistics.rb +353 -354
  503. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_real_time_statistics.rb +231 -206
  504. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_statistics.rb +241 -234
  505. data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +720 -730
  506. data/lib/twilio-ruby/rest/taskrouter/v1.rb +42 -37
  507. data/lib/twilio-ruby/rest/taskrouter.rb +2 -34
  508. data/lib/twilio-ruby/rest/taskrouter_base.rb +38 -0
  509. data/lib/twilio-ruby/rest/trunking/v1/trunk/credential_list.rb +342 -320
  510. data/lib/twilio-ruby/rest/trunking/v1/trunk/ip_access_control_list.rb +342 -317
  511. data/lib/twilio-ruby/rest/trunking/v1/trunk/origination_url.rb +440 -419
  512. data/lib/twilio-ruby/rest/trunking/v1/trunk/phone_number.rb +475 -451
  513. data/lib/twilio-ruby/rest/trunking/v1/trunk/recording.rb +224 -191
  514. data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +623 -630
  515. data/lib/twilio-ruby/rest/trunking/v1.rb +42 -38
  516. data/lib/twilio-ruby/rest/trunking.rb +2 -34
  517. data/lib/twilio-ruby/rest/trunking_base.rb +38 -0
  518. data/lib/twilio-ruby/rest/trusthub/v1/compliance_inquiries.rb +232 -0
  519. data/lib/twilio-ruby/rest/trusthub/v1/compliance_tollfree_inquiries.rb +211 -0
  520. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_channel_endpoint_assignment.rb +357 -352
  521. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_entity_assignments.rb +335 -323
  522. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_evaluations.rb +333 -321
  523. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles.rb +525 -513
  524. data/lib/twilio-ruby/rest/trusthub/v1/end_user.rb +383 -346
  525. data/lib/twilio-ruby/rest/trusthub/v1/end_user_type.rb +282 -261
  526. data/lib/twilio-ruby/rest/trusthub/v1/policies.rb +275 -252
  527. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document.rb +397 -359
  528. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document_type.rb +282 -261
  529. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_channel_endpoint_assignment.rb +357 -352
  530. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_entity_assignments.rb +335 -323
  531. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_evaluations.rb +333 -321
  532. data/lib/twilio-ruby/rest/trusthub/v1/trust_products.rb +525 -513
  533. data/lib/twilio-ruby/rest/trusthub/v1.rb +153 -139
  534. data/lib/twilio-ruby/rest/trusthub.rb +8 -34
  535. data/lib/twilio-ruby/rest/trusthub_base.rb +38 -0
  536. data/lib/twilio-ruby/rest/verify/v2/form.rb +195 -183
  537. data/lib/twilio-ruby/rest/verify/v2/safelist.rb +231 -0
  538. data/lib/twilio-ruby/rest/verify/v2/service/access_token.rb +265 -116
  539. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge/notification.rb +191 -198
  540. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb +496 -521
  541. data/lib/twilio-ruby/rest/verify/v2/service/entity/factor.rb +447 -454
  542. data/lib/twilio-ruby/rest/verify/v2/service/entity/new_factor.rb +249 -279
  543. data/lib/twilio-ruby/rest/verify/v2/service/entity.rb +422 -422
  544. data/lib/twilio-ruby/rest/verify/v2/service/messaging_configuration.rb +379 -363
  545. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb +401 -388
  546. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit.rb +420 -384
  547. data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +380 -359
  548. data/lib/twilio-ruby/rest/verify/v2/service/verification_check.rb +218 -198
  549. data/lib/twilio-ruby/rest/verify/v2/service/webhook.rb +447 -420
  550. data/lib/twilio-ruby/rest/verify/v2/service.rb +782 -770
  551. data/lib/twilio-ruby/rest/verify/v2/template.rb +221 -198
  552. data/lib/twilio-ruby/rest/verify/v2/verification_attempt.rb +372 -319
  553. data/lib/twilio-ruby/rest/verify/v2/verification_attempts_summary.rb +247 -0
  554. data/lib/twilio-ruby/rest/verify/v2.rb +99 -78
  555. data/lib/twilio-ruby/rest/verify.rb +23 -36
  556. data/lib/twilio-ruby/rest/verify_base.rb +38 -0
  557. data/lib/twilio-ruby/rest/video/v1/composition.rb +477 -486
  558. data/lib/twilio-ruby/rest/video/v1/composition_hook.rb +525 -647
  559. data/lib/twilio-ruby/rest/video/v1/composition_settings.rb +281 -261
  560. data/lib/twilio-ruby/rest/video/v1/recording.rb +426 -405
  561. data/lib/twilio-ruby/rest/video/v1/recording_settings.rb +281 -261
  562. data/lib/twilio-ruby/rest/video/v1/room/participant/anonymize.rb +259 -0
  563. data/lib/twilio-ruby/rest/video/v1/room/participant/published_track.rb +331 -0
  564. data/lib/twilio-ruby/rest/video/v1/room/participant/subscribe_rules.rb +181 -0
  565. data/lib/twilio-ruby/rest/video/v1/room/participant/subscribed_track.rb +338 -0
  566. data/lib/twilio-ruby/rest/video/v1/room/participant.rb +498 -0
  567. data/lib/twilio-ruby/rest/video/v1/room/recording_rules.rb +170 -0
  568. data/lib/twilio-ruby/rest/video/v1/room/room_recording.rb +423 -0
  569. data/lib/twilio-ruby/rest/video/v1/room.rb +606 -567
  570. data/lib/twilio-ruby/rest/video/v1.rb +99 -99
  571. data/lib/twilio-ruby/rest/video.rb +7 -34
  572. data/lib/twilio-ruby/rest/video_base.rb +38 -0
  573. data/lib/twilio-ruby/rest/voice/v1/archived_call.rb +168 -0
  574. data/lib/twilio-ruby/rest/voice/v1/byoc_trunk.rb +501 -486
  575. data/lib/twilio-ruby/rest/voice/v1/connection_policy/connection_policy_target.rb +440 -434
  576. data/lib/twilio-ruby/rest/voice/v1/connection_policy.rb +391 -352
  577. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/bulk_country_update.rb +135 -121
  578. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country/highrisk_special_prefix.rb +195 -183
  579. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country.rb +375 -397
  580. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/settings.rb +217 -190
  581. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions.rb +122 -121
  582. data/lib/twilio-ruby/rest/voice/v1/ip_record.rb +377 -339
  583. data/lib/twilio-ruby/rest/voice/v1/source_ip_mapping.rb +360 -319
  584. data/lib/twilio-ruby/rest/voice/v1.rb +130 -96
  585. data/lib/twilio-ruby/rest/voice.rb +12 -31
  586. data/lib/twilio-ruby/rest/voice_base.rb +38 -0
  587. data/lib/twilio-ruby/rest/wireless/v1/command.rb +408 -406
  588. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +463 -436
  589. data/lib/twilio-ruby/rest/wireless/v1/sim/data_session.rb +298 -284
  590. data/lib/twilio-ruby/rest/wireless/v1/sim/usage_record.rb +239 -243
  591. data/lib/twilio-ruby/rest/wireless/v1/sim.rb +634 -647
  592. data/lib/twilio-ruby/rest/wireless/v1/usage_record.rb +226 -221
  593. data/lib/twilio-ruby/rest/wireless/v1.rb +78 -76
  594. data/lib/twilio-ruby/rest/wireless.rb +5 -34
  595. data/lib/twilio-ruby/rest/wireless_base.rb +38 -0
  596. data/lib/twilio-ruby/rest.rb +1 -0
  597. data/lib/twilio-ruby/security/request_validator.rb +1 -1
  598. data/lib/twilio-ruby/twiml/voice_response.rb +209 -42
  599. data/lib/twilio-ruby/version.rb +1 -1
  600. data/lib/twilio-ruby.rb +1 -1
  601. data/sonar-project.properties +2 -2
  602. data/twilio-ruby.gemspec +2 -3
  603. metadata +155 -98
  604. data/.github/workflows/deploy.yml +0 -65
  605. data/.github/workflows/test.yml +0 -52
  606. data/conf/cacert.pem +0 -3376
  607. data/lib/twilio-ruby/framework/twilio_response.rb +0 -19
  608. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/local.rb +0 -500
  609. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/machine_to_machine.rb +0 -500
  610. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/mobile.rb +0 -500
  611. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/national.rb +0 -500
  612. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/shared_cost.rb +0 -500
  613. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/toll_free.rb +0 -500
  614. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/voip.rb +0 -500
  615. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number.rb +0 -464
  616. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_credential_list_mapping.rb +0 -348
  617. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping.rb +0 -163
  618. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping.rb +0 -137
  619. data/lib/twilio-ruby/rest/autopilot/v1/assistant/defaults.rb +0 -220
  620. data/lib/twilio-ruby/rest/autopilot/v1/assistant/dialogue.rb +0 -214
  621. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type/field_value.rb +0 -399
  622. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type.rb +0 -418
  623. data/lib/twilio-ruby/rest/autopilot/v1/assistant/model_build.rb +0 -392
  624. data/lib/twilio-ruby/rest/autopilot/v1/assistant/query.rb +0 -469
  625. data/lib/twilio-ruby/rest/autopilot/v1/assistant/style_sheet.rb +0 -218
  626. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/field.rb +0 -386
  627. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/sample.rb +0 -456
  628. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_actions.rb +0 -255
  629. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_statistics.rb +0 -237
  630. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task.rb +0 -507
  631. data/lib/twilio-ruby/rest/autopilot/v1/assistant/webhook.rb +0 -420
  632. data/lib/twilio-ruby/rest/autopilot/v1/assistant.rb +0 -650
  633. data/lib/twilio-ruby/rest/autopilot/v1/restore_assistant.rb +0 -194
  634. data/lib/twilio-ruby/rest/autopilot/v1.rb +0 -52
  635. data/lib/twilio-ruby/rest/autopilot.rb +0 -53
  636. data/lib/twilio-ruby/rest/events/v1/schema/version.rb +0 -290
  637. data/lib/twilio-ruby/rest/fax/v1/fax/fax_media.rb +0 -314
  638. data/lib/twilio-ruby/rest/fax/v1/fax.rb +0 -536
  639. data/lib/twilio-ruby/rest/fax/v1.rb +0 -45
  640. data/lib/twilio-ruby/rest/fax.rb +0 -47
  641. data/lib/twilio-ruby/rest/insights/v1/call/summary.rb +0 -307
  642. data/lib/twilio-ruby/rest/messaging/v1/deactivation.rb +0 -164
  643. data/lib/twilio-ruby/rest/preview/bulk_exports/export/day.rb +0 -294
  644. data/lib/twilio-ruby/rest/preview/bulk_exports/export/export_custom_job.rb +0 -275
  645. data/lib/twilio-ruby/rest/preview/bulk_exports/export/job.rb +0 -249
  646. data/lib/twilio-ruby/rest/preview/bulk_exports/export.rb +0 -251
  647. data/lib/twilio-ruby/rest/preview/bulk_exports/export_configuration.rb +0 -234
  648. data/lib/twilio-ruby/rest/preview/bulk_exports.rb +0 -62
  649. data/lib/twilio-ruby/rest/preview/trusted_comms/branded_channel/channel.rb +0 -165
  650. data/lib/twilio-ruby/rest/preview/trusted_comms/branded_channel.rb +0 -225
  651. data/lib/twilio-ruby/rest/preview/trusted_comms/brands_information.rb +0 -195
  652. data/lib/twilio-ruby/rest/preview/trusted_comms/cps.rb +0 -186
  653. data/lib/twilio-ruby/rest/preview/trusted_comms/current_call.rb +0 -277
  654. data/lib/twilio-ruby/rest/preview/trusted_comms.rb +0 -65
  655. data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_fallback_actions.rb +0 -212
  656. data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_initiation_actions.rb +0 -212
  657. data/lib/twilio-ruby/rest/preview/understand/assistant/dialogue.rb +0 -206
  658. data/lib/twilio-ruby/rest/preview/understand/assistant/field_type/field_value.rb +0 -386
  659. data/lib/twilio-ruby/rest/preview/understand/assistant/field_type.rb +0 -407
  660. data/lib/twilio-ruby/rest/preview/understand/assistant/model_build.rb +0 -380
  661. data/lib/twilio-ruby/rest/preview/understand/assistant/query.rb +0 -437
  662. data/lib/twilio-ruby/rest/preview/understand/assistant/style_sheet.rb +0 -212
  663. data/lib/twilio-ruby/rest/preview/understand/assistant/task/field.rb +0 -373
  664. data/lib/twilio-ruby/rest/preview/understand/assistant/task/sample.rb +0 -428
  665. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_actions.rb +0 -241
  666. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_statistics.rb +0 -225
  667. data/lib/twilio-ruby/rest/preview/understand/assistant/task.rb +0 -495
  668. data/lib/twilio-ruby/rest/preview/understand/assistant.rb +0 -629
  669. data/lib/twilio-ruby/rest/preview/understand.rb +0 -45
  670. data/lib/twilio-ruby/rest/studio/v2/flow/test_user.rb +0 -199
  671. data/lib/twilio-ruby/rest/supersim/v1/command.rb +0 -368
  672. data/lib/twilio-ruby/rest/video/v1/room/recording.rb +0 -406
  673. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_published_track.rb +0 -335
  674. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribe_rule.rb +0 -175
  675. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribed_track.rb +0 -340
  676. data/lib/twilio-ruby/rest/video/v1/room/room_participant.rb +0 -483
  677. data/lib/twilio-ruby/rest/video/v1/room/room_recording_rule.rb +0 -144
@@ -1,780 +1,792 @@
1
1
  ##
2
- # This code was generated by
3
- # \ / _ _ _| _ _
4
- # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
- # / /
2
+ # This code was generated by
3
+ # ___ _ _ _ _ _ _ ____ ____ ____ _ ____ ____ _ _ ____ ____ ____ ___ __ __
4
+ # | | | | | | | | | __ | | |__| | __ | __ |___ |\ | |___ |__/ |__| | | | |__/
5
+ # | |_|_| | |___ | |__| |__| | | | |__] |___ | \| |___ | \ | | | |__| | \
6
6
  #
7
- # frozen_string_literal: true
7
+ # Twilio - Verify
8
+ # This is the public Twilio REST API.
9
+ #
10
+ # NOTE: This class is auto generated by OpenAPI Generator.
11
+ # https://openapi-generator.tech
12
+ # Do not edit the class manually.
13
+ #
14
+
8
15
 
9
16
  module Twilio
10
- module REST
11
- class Verify < Domain
12
- class V2 < Version
13
- class ServiceList < ListResource
14
- ##
15
- # Initialize the ServiceList
16
- # @param [Version] version Version that contains the resource
17
- # @return [ServiceList] ServiceList
18
- def initialize(version)
19
- super(version)
20
-
21
- # Path Solution
22
- @solution = {}
23
- @uri = "/Services"
24
- end
25
-
26
- ##
27
- # Create the ServiceInstance
28
- # @param [String] friendly_name A descriptive string that you create to describe
29
- # the verification service. It can be up to 30 characters long. **This value
30
- # should not contain PII.**
31
- # @param [String] code_length The length of the verification code to generate.
32
- # Must be an integer value between 4 and 10, inclusive.
33
- # @param [Boolean] lookup_enabled Whether to perform a lookup with each
34
- # verification started and return info about the phone number.
35
- # @param [Boolean] skip_sms_to_landlines Whether to skip sending SMS verifications
36
- # to landlines. Requires `lookup_enabled`.
37
- # @param [Boolean] dtmf_input_required Whether to ask the user to press a number
38
- # before delivering the verify code in a phone call.
39
- # @param [String] tts_name The name of an alternative text-to-speech service to
40
- # use in phone calls. Applies only to TTS languages.
41
- # @param [Boolean] psd2_enabled Whether to pass PSD2 transaction parameters when
42
- # starting a verification.
43
- # @param [Boolean] do_not_share_warning_enabled Whether to add a security warning
44
- # at the end of an SMS verification body. Disabled by default and applies only to
45
- # SMS. Example SMS body: `Your AppName verification code is: 1234. Don’t share
46
- # this code with anyone; our employees will never ask for the code`
47
- # @param [Boolean] custom_code_enabled Whether to allow sending verifications with
48
- # a custom code instead of a randomly generated one. Not available for all
49
- # customers.
50
- # @param [Boolean] push_include_date Optional configuration for the Push factors.
51
- # If true, include the date in the Challenge's reponse. Otherwise, the date is
52
- # omitted from the response. See
53
- # {Challenge}[https://www.twilio.com/docs/verify/api/challenge] resource’s details
54
- # parameter for more info. Default: true
55
- # @param [String] push_apn_credential_sid Optional configuration for the Push
56
- # factors. Set the APN Credential for this service. This will allow to send push
57
- # notifications to iOS devices. See {Credential
58
- # Resource}[https://www.twilio.com/docs/notify/api/credential-resource]
59
- # @param [String] push_fcm_credential_sid Optional configuration for the Push
60
- # factors. Set the FCM Credential for this service. This will allow to send push
61
- # notifications to Android devices. See {Credential
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
76
- # @param [String] default_template_sid The default message
77
- # {template}[https://www.twilio.com/docs/verify/api/templates]. Will be used for
78
- # all SMS verifications unless explicitly overriden. SMS channel only.
79
- # @return [ServiceInstance] Created ServiceInstance
80
- 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, default_template_sid: :unset)
81
- data = Twilio::Values.of({
82
- 'FriendlyName' => friendly_name,
83
- 'CodeLength' => code_length,
84
- 'LookupEnabled' => lookup_enabled,
85
- 'SkipSmsToLandlines' => skip_sms_to_landlines,
86
- 'DtmfInputRequired' => dtmf_input_required,
87
- 'TtsName' => tts_name,
88
- 'Psd2Enabled' => psd2_enabled,
89
- 'DoNotShareWarningEnabled' => do_not_share_warning_enabled,
90
- 'CustomCodeEnabled' => custom_code_enabled,
91
- 'Push.IncludeDate' => push_include_date,
92
- 'Push.ApnCredentialSid' => push_apn_credential_sid,
93
- 'Push.FcmCredentialSid' => push_fcm_credential_sid,
94
- 'Totp.Issuer' => totp_issuer,
95
- 'Totp.TimeStep' => totp_time_step,
96
- 'Totp.CodeLength' => totp_code_length,
97
- 'Totp.Skew' => totp_skew,
98
- 'DefaultTemplateSid' => default_template_sid,
99
- })
100
-
101
- payload = @version.create('POST', @uri, data: data)
102
-
103
- ServiceInstance.new(@version, payload, )
104
- end
105
-
106
- ##
107
- # Lists ServiceInstance records from the API as a list.
108
- # Unlike stream(), this operation is eager and will load `limit` records into
109
- # memory before returning.
110
- # @param [Integer] limit Upper limit for the number of records to return. stream()
111
- # guarantees to never return more than limit. Default is no limit
112
- # @param [Integer] page_size Number of records to fetch per request, when
113
- # not set will use the default value of 50 records. If no page_size is defined
114
- # but a limit is defined, stream() will attempt to read the limit with the most
115
- # efficient page size, i.e. min(limit, 1000)
116
- # @return [Array] Array of up to limit results
117
- def list(limit: nil, page_size: nil)
118
- self.stream(limit: limit, page_size: page_size).entries
119
- end
120
-
121
- ##
122
- # Streams ServiceInstance records from the API as an Enumerable.
123
- # This operation lazily loads records as efficiently as possible until the limit
124
- # is reached.
125
- # @param [Integer] limit Upper limit for the number of records to return. stream()
126
- # guarantees to never return more than limit. Default is no limit.
127
- # @param [Integer] page_size Number of records to fetch per request, when
128
- # not set will use the default value of 50 records. If no page_size is defined
129
- # but a limit is defined, stream() will attempt to read the limit with the most
130
- # efficient page size, i.e. min(limit, 1000)
131
- # @return [Enumerable] Enumerable that will yield up to limit results
132
- def stream(limit: nil, page_size: nil)
133
- limits = @version.read_limits(limit, page_size)
134
-
135
- page = self.page(page_size: limits[:page_size], )
136
-
137
- @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
138
- end
139
-
140
- ##
141
- # When passed a block, yields ServiceInstance records from the API.
142
- # This operation lazily loads records as efficiently as possible until the limit
143
- # is reached.
144
- def each
145
- limits = @version.read_limits
146
-
147
- page = self.page(page_size: limits[:page_size], )
148
-
149
- @version.stream(page,
17
+ module REST
18
+ class Verify < VerifyBase
19
+ class V2 < Version
20
+ class ServiceList < ListResource
21
+ ##
22
+ # Initialize the ServiceList
23
+ # @param [Version] version Version that contains the resource
24
+ # @return [ServiceList] ServiceList
25
+ def initialize(version)
26
+ super(version)
27
+ # Path Solution
28
+ @solution = { }
29
+ @uri = "/Services"
30
+
31
+ end
32
+ ##
33
+ # Create the ServiceInstance
34
+ # @param [String] friendly_name A descriptive string that you create to describe the verification service. It can be up to 32 characters long. **This value should not contain PII.**
35
+ # @param [String] code_length The length of the verification code to generate. Must be an integer value between 4 and 10, inclusive.
36
+ # @param [Boolean] lookup_enabled Whether to perform a lookup with each verification started and return info about the phone number.
37
+ # @param [Boolean] skip_sms_to_landlines Whether to skip sending SMS verifications to landlines. Requires `lookup_enabled`.
38
+ # @param [Boolean] dtmf_input_required Whether to ask the user to press a number before delivering the verify code in a phone call.
39
+ # @param [String] tts_name The name of an alternative text-to-speech service to use in phone calls. Applies only to TTS languages.
40
+ # @param [Boolean] psd2_enabled Whether to pass PSD2 transaction parameters when starting a verification.
41
+ # @param [Boolean] do_not_share_warning_enabled Whether to add a security warning at the end of an SMS verification body. Disabled by default and applies only to SMS. Example SMS body: `Your AppName verification code is: 1234. Don’t share this code with anyone; our employees will never ask for the code`
42
+ # @param [Boolean] custom_code_enabled Whether to allow sending verifications with a custom code instead of a randomly generated one. Not available for all customers.
43
+ # @param [Boolean] push_include_date Optional configuration for the Push factors. If true, include the date in the Challenge's response. Otherwise, the date is omitted from the response. See [Challenge](https://www.twilio.com/docs/verify/api/challenge) resource’s details parameter for more info. Default: false. **Deprecated** do not use this parameter. This timestamp value is the same one as the one found in `date_created`, please use that one instead.
44
+ # @param [String] push_apn_credential_sid Optional configuration for the Push factors. Set the APN Credential for this service. This will allow to send push notifications to iOS devices. See [Credential Resource](https://www.twilio.com/docs/notify/api/credential-resource)
45
+ # @param [String] push_fcm_credential_sid Optional configuration for the Push factors. Set the FCM Credential for this service. This will allow to send push notifications to Android devices. See [Credential Resource](https://www.twilio.com/docs/notify/api/credential-resource)
46
+ # @param [String] totp_issuer Optional configuration for the TOTP factors. Set TOTP Issuer for this service. This will allow to configure the issuer of the TOTP URI. Defaults to the service friendly name if not provided.
47
+ # @param [String] totp_time_step Optional configuration for the TOTP factors. Defines how often, in seconds, are TOTP codes generated. i.e, a new TOTP code is generated every time_step seconds. Must be between 20 and 60 seconds, inclusive. Defaults to 30 seconds
48
+ # @param [String] totp_code_length Optional configuration for the TOTP factors. Number of digits for generated TOTP codes. Must be between 3 and 8, inclusive. Defaults to 6
49
+ # @param [String] totp_skew Optional configuration for the TOTP factors. The number of time-steps, past and future, that are valid for validation of TOTP codes. Must be between 0 and 2, inclusive. Defaults to 1
50
+ # @param [String] default_template_sid The default message [template](https://www.twilio.com/docs/verify/api/templates). Will be used for all SMS verifications unless explicitly overriden. SMS channel only.
51
+ # @param [Boolean] verify_event_subscription_enabled Whether to allow verifications from the service to reach the stream-events sinks if configured
52
+ # @return [ServiceInstance] Created ServiceInstance
53
+ def create(
54
+ friendly_name: nil,
55
+ code_length: :unset,
56
+ lookup_enabled: :unset,
57
+ skip_sms_to_landlines: :unset,
58
+ dtmf_input_required: :unset,
59
+ tts_name: :unset,
60
+ psd2_enabled: :unset,
61
+ do_not_share_warning_enabled: :unset,
62
+ custom_code_enabled: :unset,
63
+ push_include_date: :unset,
64
+ push_apn_credential_sid: :unset,
65
+ push_fcm_credential_sid: :unset,
66
+ totp_issuer: :unset,
67
+ totp_time_step: :unset,
68
+ totp_code_length: :unset,
69
+ totp_skew: :unset,
70
+ default_template_sid: :unset,
71
+ verify_event_subscription_enabled: :unset
72
+ )
73
+
74
+ data = Twilio::Values.of({
75
+ 'FriendlyName' => friendly_name,
76
+ 'CodeLength' => code_length,
77
+ 'LookupEnabled' => lookup_enabled,
78
+ 'SkipSmsToLandlines' => skip_sms_to_landlines,
79
+ 'DtmfInputRequired' => dtmf_input_required,
80
+ 'TtsName' => tts_name,
81
+ 'Psd2Enabled' => psd2_enabled,
82
+ 'DoNotShareWarningEnabled' => do_not_share_warning_enabled,
83
+ 'CustomCodeEnabled' => custom_code_enabled,
84
+ 'Push.IncludeDate' => push_include_date,
85
+ 'Push.ApnCredentialSid' => push_apn_credential_sid,
86
+ 'Push.FcmCredentialSid' => push_fcm_credential_sid,
87
+ 'Totp.Issuer' => totp_issuer,
88
+ 'Totp.TimeStep' => totp_time_step,
89
+ 'Totp.CodeLength' => totp_code_length,
90
+ 'Totp.Skew' => totp_skew,
91
+ 'DefaultTemplateSid' => default_template_sid,
92
+ 'VerifyEventSubscriptionEnabled' => verify_event_subscription_enabled,
93
+ })
94
+
95
+ payload = @version.create('POST', @uri, data: data)
96
+ ServiceInstance.new(
97
+ @version,
98
+ payload,
99
+ )
100
+ end
101
+
102
+
103
+ ##
104
+ # Lists ServiceInstance records from the API as a list.
105
+ # Unlike stream(), this operation is eager and will load `limit` records into
106
+ # memory before returning.
107
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
108
+ # guarantees to never return more than limit. Default is no limit
109
+ # @param [Integer] page_size Number of records to fetch per request, when
110
+ # not set will use the default value of 50 records. If no page_size is defined
111
+ # but a limit is defined, stream() will attempt to read the limit with the most
112
+ # efficient page size, i.e. min(limit, 1000)
113
+ # @return [Array] Array of up to limit results
114
+ def list(limit: nil, page_size: nil)
115
+ self.stream(
116
+ limit: limit,
117
+ page_size: page_size
118
+ ).entries
119
+ end
120
+
121
+ ##
122
+ # Streams Instance records from the API as an Enumerable.
123
+ # This operation lazily loads records as efficiently as possible until the limit
124
+ # is reached.
125
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
126
+ # guarantees to never return more than limit. Default is no limit
127
+ # @param [Integer] page_size Number of records to fetch per request, when
128
+ # not set will use the default value of 50 records. If no page_size is defined
129
+ # but a limit is defined, stream() will attempt to read the limit with the most
130
+ # efficient page size, i.e. min(limit, 1000)
131
+ # @return [Enumerable] Enumerable that will yield up to limit results
132
+ def stream(limit: nil, page_size: nil)
133
+ limits = @version.read_limits(limit, page_size)
134
+
135
+ page = self.page(
136
+ page_size: limits[:page_size], )
137
+
138
+ @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
139
+ end
140
+
141
+ ##
142
+ # When passed a block, yields ServiceInstance records from the API.
143
+ # This operation lazily loads records as efficiently as possible until the limit
144
+ # is reached.
145
+ def each
146
+ limits = @version.read_limits
147
+
148
+ page = self.page(page_size: limits[:page_size], )
149
+
150
+ @version.stream(page,
150
151
  limit: limits[:limit],
151
152
  page_limit: limits[:page_limit]).each {|x| yield x}
152
- end
153
-
154
- ##
155
- # Retrieve a single page of ServiceInstance records from the API.
156
- # Request is executed immediately.
157
- # @param [String] page_token PageToken provided by the API
158
- # @param [Integer] page_number Page Number, this value is simply for client state
159
- # @param [Integer] page_size Number of records to return, defaults to 50
160
- # @return [Page] Page of ServiceInstance
161
- def page(page_token: :unset, page_number: :unset, page_size: :unset)
162
- params = Twilio::Values.of({
163
- 'PageToken' => page_token,
164
- 'Page' => page_number,
165
- 'PageSize' => page_size,
166
- })
167
-
168
- response = @version.page('GET', @uri, params: params)
169
-
170
- ServicePage.new(@version, response, @solution)
171
- end
172
-
173
- ##
174
- # Retrieve a single page of ServiceInstance records from the API.
175
- # Request is executed immediately.
176
- # @param [String] target_url API-generated URL for the requested results page
177
- # @return [Page] Page of ServiceInstance
178
- def get_page(target_url)
179
- response = @version.domain.request(
180
- 'GET',
181
- target_url
182
- )
183
- ServicePage.new(@version, response, @solution)
184
- end
185
-
186
- ##
187
- # Provide a user friendly representation
188
- def to_s
189
- '#<Twilio.Verify.V2.ServiceList>'
190
- end
191
- end
192
-
193
- class ServicePage < Page
194
- ##
195
- # Initialize the ServicePage
196
- # @param [Version] version Version that contains the resource
197
- # @param [Response] response Response from the API
198
- # @param [Hash] solution Path solution for the resource
199
- # @return [ServicePage] ServicePage
200
- def initialize(version, response, solution)
201
- super(version, response)
202
-
203
- # Path Solution
204
- @solution = solution
205
- end
206
-
207
- ##
208
- # Build an instance of ServiceInstance
209
- # @param [Hash] payload Payload response from the API
210
- # @return [ServiceInstance] ServiceInstance
211
- def get_instance(payload)
212
- ServiceInstance.new(@version, payload, )
213
- end
214
-
215
- ##
216
- # Provide a user friendly representation
217
- def to_s
218
- '<Twilio.Verify.V2.ServicePage>'
219
- end
220
- end
221
-
222
- class ServiceContext < InstanceContext
223
- ##
224
- # Initialize the ServiceContext
225
- # @param [Version] version Version that contains the resource
226
- # @param [String] sid The Twilio-provided string that uniquely identifies the
227
- # Verification Service resource to fetch.
228
- # @return [ServiceContext] ServiceContext
229
- def initialize(version, sid)
230
- super(version)
231
-
232
- # Path Solution
233
- @solution = {sid: sid, }
234
- @uri = "/Services/#{@solution[:sid]}"
235
-
236
- # Dependents
237
- @verifications = nil
238
- @verification_checks = nil
239
- @rate_limits = nil
240
- @messaging_configurations = nil
241
- @entities = nil
242
- @webhooks = nil
243
- @access_tokens = nil
244
- end
245
-
246
- ##
247
- # Fetch the ServiceInstance
248
- # @return [ServiceInstance] Fetched ServiceInstance
249
- def fetch
250
- payload = @version.fetch('GET', @uri)
251
-
252
- ServiceInstance.new(@version, payload, sid: @solution[:sid], )
253
- end
254
-
255
- ##
256
- # Delete the ServiceInstance
257
- # @return [Boolean] true if delete succeeds, false otherwise
258
- def delete
259
- @version.delete('DELETE', @uri)
260
- end
261
-
262
- ##
263
- # Update the ServiceInstance
264
- # @param [String] friendly_name A descriptive string that you create to describe
265
- # the verification service. It can be up to 30 characters long. **This value
266
- # should not contain PII.**
267
- # @param [String] code_length The length of the verification code to generate.
268
- # Must be an integer value between 4 and 10, inclusive.
269
- # @param [Boolean] lookup_enabled Whether to perform a lookup with each
270
- # verification started and return info about the phone number.
271
- # @param [Boolean] skip_sms_to_landlines Whether to skip sending SMS verifications
272
- # to landlines. Requires `lookup_enabled`.
273
- # @param [Boolean] dtmf_input_required Whether to ask the user to press a number
274
- # before delivering the verify code in a phone call.
275
- # @param [String] tts_name The name of an alternative text-to-speech service to
276
- # use in phone calls. Applies only to TTS languages.
277
- # @param [Boolean] psd2_enabled Whether to pass PSD2 transaction parameters when
278
- # starting a verification.
279
- # @param [Boolean] do_not_share_warning_enabled Whether to add a privacy warning
280
- # at the end of an SMS. **Disabled by default and applies only for SMS.**
281
- # @param [Boolean] custom_code_enabled Whether to allow sending verifications with
282
- # a custom code instead of a randomly generated one. Not available for all
283
- # customers.
284
- # @param [Boolean] push_include_date Optional configuration for the Push factors.
285
- # If true, include the date in the Challenge's reponse. Otherwise, the date is
286
- # omitted from the response. See
287
- # {Challenge}[https://www.twilio.com/docs/verify/api/challenge] resource’s details
288
- # parameter for more info. Default: true
289
- # @param [String] push_apn_credential_sid Optional configuration for the Push
290
- # factors. Set the APN Credential for this service. This will allow to send push
291
- # notifications to iOS devices. See {Credential
292
- # Resource}[https://www.twilio.com/docs/notify/api/credential-resource]
293
- # @param [String] push_fcm_credential_sid Optional configuration for the Push
294
- # factors. Set the FCM Credential for this service. This will allow to send push
295
- # notifications to Android devices. See {Credential
296
- # Resource}[https://www.twilio.com/docs/notify/api/credential-resource]
297
- # @param [String] totp_issuer Optional configuration for the TOTP factors. Set
298
- # TOTP Issuer for this service. This will allow to configure the issuer of the
299
- # TOTP URI.
300
- # @param [String] totp_time_step Optional configuration for the TOTP factors.
301
- # Defines how often, in seconds, are TOTP codes generated. i.e, a new TOTP code is
302
- # generated every time_step seconds. Must be between 20 and 60 seconds, inclusive.
303
- # Defaults to 30 seconds
304
- # @param [String] totp_code_length Optional configuration for the TOTP factors.
305
- # Number of digits for generated TOTP codes. Must be between 3 and 8, inclusive.
306
- # Defaults to 6
307
- # @param [String] totp_skew Optional configuration for the TOTP factors. The
308
- # number of time-steps, past and future, that are valid for validation of TOTP
309
- # codes. Must be between 0 and 2, inclusive. Defaults to 1
310
- # @param [String] default_template_sid The default message
311
- # {template}[https://www.twilio.com/docs/verify/api/templates]. Will be used for
312
- # all SMS verifications unless explicitly overriden. SMS channel only.
313
- # @return [ServiceInstance] Updated ServiceInstance
314
- 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, default_template_sid: :unset)
315
- data = Twilio::Values.of({
316
- 'FriendlyName' => friendly_name,
317
- 'CodeLength' => code_length,
318
- 'LookupEnabled' => lookup_enabled,
319
- 'SkipSmsToLandlines' => skip_sms_to_landlines,
320
- 'DtmfInputRequired' => dtmf_input_required,
321
- 'TtsName' => tts_name,
322
- 'Psd2Enabled' => psd2_enabled,
323
- 'DoNotShareWarningEnabled' => do_not_share_warning_enabled,
324
- 'CustomCodeEnabled' => custom_code_enabled,
325
- 'Push.IncludeDate' => push_include_date,
326
- 'Push.ApnCredentialSid' => push_apn_credential_sid,
327
- 'Push.FcmCredentialSid' => push_fcm_credential_sid,
328
- 'Totp.Issuer' => totp_issuer,
329
- 'Totp.TimeStep' => totp_time_step,
330
- 'Totp.CodeLength' => totp_code_length,
331
- 'Totp.Skew' => totp_skew,
332
- 'DefaultTemplateSid' => default_template_sid,
333
- })
334
-
335
- payload = @version.update('POST', @uri, data: data)
336
-
337
- ServiceInstance.new(@version, payload, sid: @solution[:sid], )
338
- end
339
-
340
- ##
341
- # Access the verifications
342
- # @return [VerificationList]
343
- # @return [VerificationContext] if sid was passed.
344
- def verifications(sid=:unset)
345
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
346
-
347
- if sid != :unset
348
- return VerificationContext.new(@version, @solution[:sid], sid, )
349
- end
350
-
351
- unless @verifications
352
- @verifications = VerificationList.new(@version, service_sid: @solution[:sid], )
353
- end
354
-
355
- @verifications
356
- end
357
-
358
- ##
359
- # Access the verification_checks
360
- # @return [VerificationCheckList]
361
- # @return [VerificationCheckContext]
362
- def verification_checks
363
- unless @verification_checks
364
- @verification_checks = VerificationCheckList.new(@version, service_sid: @solution[:sid], )
365
- end
366
-
367
- @verification_checks
368
- end
369
-
370
- ##
371
- # Access the rate_limits
372
- # @return [RateLimitList]
373
- # @return [RateLimitContext] if sid was passed.
374
- def rate_limits(sid=:unset)
375
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
376
-
377
- if sid != :unset
378
- return RateLimitContext.new(@version, @solution[:sid], sid, )
379
- end
380
-
381
- unless @rate_limits
382
- @rate_limits = RateLimitList.new(@version, service_sid: @solution[:sid], )
383
- end
384
-
385
- @rate_limits
386
- end
387
-
388
- ##
389
- # Access the messaging_configurations
390
- # @return [MessagingConfigurationList]
391
- # @return [MessagingConfigurationContext] if country was passed.
392
- def messaging_configurations(country=:unset)
393
- raise ArgumentError, 'country cannot be nil' if country.nil?
394
-
395
- if country != :unset
396
- return MessagingConfigurationContext.new(@version, @solution[:sid], country, )
397
- end
398
-
399
- unless @messaging_configurations
400
- @messaging_configurations = MessagingConfigurationList.new(@version, service_sid: @solution[:sid], )
401
- end
402
-
403
- @messaging_configurations
404
- end
405
-
406
- ##
407
- # Access the entities
408
- # @return [EntityList]
409
- # @return [EntityContext] if identity was passed.
410
- def entities(identity=:unset)
411
- raise ArgumentError, 'identity cannot be nil' if identity.nil?
412
-
413
- if identity != :unset
414
- return EntityContext.new(@version, @solution[:sid], identity, )
415
- end
416
-
417
- unless @entities
418
- @entities = EntityList.new(@version, service_sid: @solution[:sid], )
419
- end
420
-
421
- @entities
422
- end
423
-
424
- ##
425
- # Access the webhooks
426
- # @return [WebhookList]
427
- # @return [WebhookContext] if sid was passed.
428
- def webhooks(sid=:unset)
429
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
430
-
431
- if sid != :unset
432
- return WebhookContext.new(@version, @solution[:sid], sid, )
433
- end
434
-
435
- unless @webhooks
436
- @webhooks = WebhookList.new(@version, service_sid: @solution[:sid], )
437
- end
438
-
439
- @webhooks
440
- end
441
-
442
- ##
443
- # Access the access_tokens
444
- # @return [AccessTokenList]
445
- # @return [AccessTokenContext]
446
- def access_tokens
447
- unless @access_tokens
448
- @access_tokens = AccessTokenList.new(@version, service_sid: @solution[:sid], )
449
- end
450
-
451
- @access_tokens
452
- end
453
-
454
- ##
455
- # Provide a user friendly representation
456
- def to_s
457
- context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
458
- "#<Twilio.Verify.V2.ServiceContext #{context}>"
459
- end
460
-
461
- ##
462
- # Provide a detailed, user friendly representation
463
- def inspect
464
- context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
465
- "#<Twilio.Verify.V2.ServiceContext #{context}>"
466
- end
467
- end
153
+ end
154
+
155
+ ##
156
+ # Retrieve a single page of ServiceInstance records from the API.
157
+ # Request is executed immediately.
158
+ # @param [String] page_token PageToken provided by the API
159
+ # @param [Integer] page_number Page Number, this value is simply for client state
160
+ # @param [Integer] page_size Number of records to return, defaults to 50
161
+ # @return [Page] Page of ServiceInstance
162
+ def page(page_token: :unset, page_number: :unset, page_size: :unset)
163
+ params = Twilio::Values.of({
164
+ 'PageToken' => page_token,
165
+ 'Page' => page_number,
166
+ 'PageSize' => page_size,
167
+ })
168
+
169
+ response = @version.page('GET', @uri, params: params)
170
+
171
+ ServicePage.new(@version, response, @solution)
172
+ end
173
+
174
+ ##
175
+ # Retrieve a single page of ServiceInstance records from the API.
176
+ # Request is executed immediately.
177
+ # @param [String] target_url API-generated URL for the requested results page
178
+ # @return [Page] Page of ServiceInstance
179
+ def get_page(target_url)
180
+ response = @version.domain.request(
181
+ 'GET',
182
+ target_url
183
+ )
184
+ ServicePage.new(@version, response, @solution)
185
+ end
186
+
187
+
188
+
189
+ # Provide a user friendly representation
190
+ def to_s
191
+ '#<Twilio.Verify.V2.ServiceList>'
192
+ end
193
+ end
194
+
195
+
196
+ class ServiceContext < InstanceContext
197
+ ##
198
+ # Initialize the ServiceContext
199
+ # @param [Version] version Version that contains the resource
200
+ # @param [String] sid The Twilio-provided string that uniquely identifies the Service resource to update.
201
+ # @return [ServiceContext] ServiceContext
202
+ def initialize(version, sid)
203
+ super(version)
204
+
205
+ # Path Solution
206
+ @solution = { sid: sid, }
207
+ @uri = "/Services/#{@solution[:sid]}"
208
+
209
+ # Dependents
210
+ @verification_checks = nil
211
+ @verifications = nil
212
+ @access_tokens = nil
213
+ @webhooks = nil
214
+ @messaging_configurations = nil
215
+ @entities = nil
216
+ @rate_limits = nil
217
+ end
218
+ ##
219
+ # Delete the ServiceInstance
220
+ # @return [Boolean] True if delete succeeds, false otherwise
221
+ def delete
222
+
223
+ @version.delete('DELETE', @uri)
224
+ end
225
+
226
+ ##
227
+ # Fetch the ServiceInstance
228
+ # @return [ServiceInstance] Fetched ServiceInstance
229
+ def fetch
230
+
231
+ payload = @version.fetch('GET', @uri)
232
+ ServiceInstance.new(
233
+ @version,
234
+ payload,
235
+ sid: @solution[:sid],
236
+ )
237
+ end
238
+
239
+ ##
240
+ # Update the ServiceInstance
241
+ # @param [String] friendly_name A descriptive string that you create to describe the verification service. It can be up to 32 characters long. **This value should not contain PII.**
242
+ # @param [String] code_length The length of the verification code to generate. Must be an integer value between 4 and 10, inclusive.
243
+ # @param [Boolean] lookup_enabled Whether to perform a lookup with each verification started and return info about the phone number.
244
+ # @param [Boolean] skip_sms_to_landlines Whether to skip sending SMS verifications to landlines. Requires `lookup_enabled`.
245
+ # @param [Boolean] dtmf_input_required Whether to ask the user to press a number before delivering the verify code in a phone call.
246
+ # @param [String] tts_name The name of an alternative text-to-speech service to use in phone calls. Applies only to TTS languages.
247
+ # @param [Boolean] psd2_enabled Whether to pass PSD2 transaction parameters when starting a verification.
248
+ # @param [Boolean] do_not_share_warning_enabled Whether to add a privacy warning at the end of an SMS. **Disabled by default and applies only for SMS.**
249
+ # @param [Boolean] custom_code_enabled Whether to allow sending verifications with a custom code instead of a randomly generated one. Not available for all customers.
250
+ # @param [Boolean] push_include_date Optional configuration for the Push factors. If true, include the date in the Challenge's response. Otherwise, the date is omitted from the response. See [Challenge](https://www.twilio.com/docs/verify/api/challenge) resource’s details parameter for more info. Default: false. **Deprecated** do not use this parameter.
251
+ # @param [String] push_apn_credential_sid Optional configuration for the Push factors. Set the APN Credential for this service. This will allow to send push notifications to iOS devices. See [Credential Resource](https://www.twilio.com/docs/notify/api/credential-resource)
252
+ # @param [String] push_fcm_credential_sid Optional configuration for the Push factors. Set the FCM Credential for this service. This will allow to send push notifications to Android devices. See [Credential Resource](https://www.twilio.com/docs/notify/api/credential-resource)
253
+ # @param [String] totp_issuer Optional configuration for the TOTP factors. Set TOTP Issuer for this service. This will allow to configure the issuer of the TOTP URI.
254
+ # @param [String] totp_time_step Optional configuration for the TOTP factors. Defines how often, in seconds, are TOTP codes generated. i.e, a new TOTP code is generated every time_step seconds. Must be between 20 and 60 seconds, inclusive. Defaults to 30 seconds
255
+ # @param [String] totp_code_length Optional configuration for the TOTP factors. Number of digits for generated TOTP codes. Must be between 3 and 8, inclusive. Defaults to 6
256
+ # @param [String] totp_skew Optional configuration for the TOTP factors. The number of time-steps, past and future, that are valid for validation of TOTP codes. Must be between 0 and 2, inclusive. Defaults to 1
257
+ # @param [String] default_template_sid The default message [template](https://www.twilio.com/docs/verify/api/templates). Will be used for all SMS verifications unless explicitly overriden. SMS channel only.
258
+ # @param [Boolean] verify_event_subscription_enabled Whether to allow verifications from the service to reach the stream-events sinks if configured
259
+ # @return [ServiceInstance] Updated ServiceInstance
260
+ def update(
261
+ friendly_name: :unset,
262
+ code_length: :unset,
263
+ lookup_enabled: :unset,
264
+ skip_sms_to_landlines: :unset,
265
+ dtmf_input_required: :unset,
266
+ tts_name: :unset,
267
+ psd2_enabled: :unset,
268
+ do_not_share_warning_enabled: :unset,
269
+ custom_code_enabled: :unset,
270
+ push_include_date: :unset,
271
+ push_apn_credential_sid: :unset,
272
+ push_fcm_credential_sid: :unset,
273
+ totp_issuer: :unset,
274
+ totp_time_step: :unset,
275
+ totp_code_length: :unset,
276
+ totp_skew: :unset,
277
+ default_template_sid: :unset,
278
+ verify_event_subscription_enabled: :unset
279
+ )
280
+
281
+ data = Twilio::Values.of({
282
+ 'FriendlyName' => friendly_name,
283
+ 'CodeLength' => code_length,
284
+ 'LookupEnabled' => lookup_enabled,
285
+ 'SkipSmsToLandlines' => skip_sms_to_landlines,
286
+ 'DtmfInputRequired' => dtmf_input_required,
287
+ 'TtsName' => tts_name,
288
+ 'Psd2Enabled' => psd2_enabled,
289
+ 'DoNotShareWarningEnabled' => do_not_share_warning_enabled,
290
+ 'CustomCodeEnabled' => custom_code_enabled,
291
+ 'Push.IncludeDate' => push_include_date,
292
+ 'Push.ApnCredentialSid' => push_apn_credential_sid,
293
+ 'Push.FcmCredentialSid' => push_fcm_credential_sid,
294
+ 'Totp.Issuer' => totp_issuer,
295
+ 'Totp.TimeStep' => totp_time_step,
296
+ 'Totp.CodeLength' => totp_code_length,
297
+ 'Totp.Skew' => totp_skew,
298
+ 'DefaultTemplateSid' => default_template_sid,
299
+ 'VerifyEventSubscriptionEnabled' => verify_event_subscription_enabled,
300
+ })
301
+
302
+ payload = @version.update('POST', @uri, data: data)
303
+ ServiceInstance.new(
304
+ @version,
305
+ payload,
306
+ sid: @solution[:sid],
307
+ )
308
+ end
309
+
310
+ ##
311
+ # Access the verification_checks
312
+ # @return [VerificationCheckList]
313
+ # @return [VerificationCheckContext]
314
+ def verification_checks
315
+ unless @verification_checks
316
+ @verification_checks = VerificationCheckList.new(
317
+ @version, service_sid: @solution[:sid], )
318
+ end
319
+ @verification_checks
320
+ end
321
+ ##
322
+ # Access the verifications
323
+ # @return [VerificationList]
324
+ # @return [VerificationContext] if sid was passed.
325
+ def verifications(sid=:unset)
326
+
327
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
328
+
329
+ if sid != :unset
330
+ return VerificationContext.new(@version, @solution[:sid],sid )
331
+ end
332
+
333
+ unless @verifications
334
+ @verifications = VerificationList.new(
335
+ @version, service_sid: @solution[:sid], )
336
+ end
337
+
338
+ @verifications
339
+ end
340
+ ##
341
+ # Access the access_tokens
342
+ # @return [AccessTokenList]
343
+ # @return [AccessTokenContext] if sid was passed.
344
+ def access_tokens(sid=:unset)
345
+
346
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
347
+
348
+ if sid != :unset
349
+ return AccessTokenContext.new(@version, @solution[:sid],sid )
350
+ end
351
+
352
+ unless @access_tokens
353
+ @access_tokens = AccessTokenList.new(
354
+ @version, service_sid: @solution[:sid], )
355
+ end
356
+
357
+ @access_tokens
358
+ end
359
+ ##
360
+ # Access the webhooks
361
+ # @return [WebhookList]
362
+ # @return [WebhookContext] if sid was passed.
363
+ def webhooks(sid=:unset)
364
+
365
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
366
+
367
+ if sid != :unset
368
+ return WebhookContext.new(@version, @solution[:sid],sid )
369
+ end
370
+
371
+ unless @webhooks
372
+ @webhooks = WebhookList.new(
373
+ @version, service_sid: @solution[:sid], )
374
+ end
375
+
376
+ @webhooks
377
+ end
378
+ ##
379
+ # Access the messaging_configurations
380
+ # @return [MessagingConfigurationList]
381
+ # @return [MessagingConfigurationContext] if sid was passed.
382
+ def messaging_configurations(country=:unset)
383
+
384
+ raise ArgumentError, 'country cannot be nil' if country.nil?
385
+
386
+ if country != :unset
387
+ return MessagingConfigurationContext.new(@version, @solution[:sid],country )
388
+ end
389
+
390
+ unless @messaging_configurations
391
+ @messaging_configurations = MessagingConfigurationList.new(
392
+ @version, service_sid: @solution[:sid], )
393
+ end
394
+
395
+ @messaging_configurations
396
+ end
397
+ ##
398
+ # Access the entities
399
+ # @return [EntityList]
400
+ # @return [EntityContext] if sid was passed.
401
+ def entities(identity=:unset)
402
+
403
+ raise ArgumentError, 'identity cannot be nil' if identity.nil?
404
+
405
+ if identity != :unset
406
+ return EntityContext.new(@version, @solution[:sid],identity )
407
+ end
408
+
409
+ unless @entities
410
+ @entities = EntityList.new(
411
+ @version, service_sid: @solution[:sid], )
412
+ end
413
+
414
+ @entities
415
+ end
416
+ ##
417
+ # Access the rate_limits
418
+ # @return [RateLimitList]
419
+ # @return [RateLimitContext] if sid was passed.
420
+ def rate_limits(sid=:unset)
421
+
422
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
423
+
424
+ if sid != :unset
425
+ return RateLimitContext.new(@version, @solution[:sid],sid )
426
+ end
427
+
428
+ unless @rate_limits
429
+ @rate_limits = RateLimitList.new(
430
+ @version, service_sid: @solution[:sid], )
431
+ end
432
+
433
+ @rate_limits
434
+ end
435
+
436
+ ##
437
+ # Provide a user friendly representation
438
+ def to_s
439
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
440
+ "#<Twilio.Verify.V2.ServiceContext #{context}>"
441
+ end
442
+
443
+ ##
444
+ # Provide a detailed, user friendly representation
445
+ def inspect
446
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
447
+ "#<Twilio.Verify.V2.ServiceContext #{context}>"
448
+ end
449
+ end
450
+
451
+ class ServicePage < Page
452
+ ##
453
+ # Initialize the ServicePage
454
+ # @param [Version] version Version that contains the resource
455
+ # @param [Response] response Response from the API
456
+ # @param [Hash] solution Path solution for the resource
457
+ # @return [ServicePage] ServicePage
458
+ def initialize(version, response, solution)
459
+ super(version, response)
460
+
461
+ # Path Solution
462
+ @solution = solution
463
+ end
464
+
465
+ ##
466
+ # Build an instance of ServiceInstance
467
+ # @param [Hash] payload Payload response from the API
468
+ # @return [ServiceInstance] ServiceInstance
469
+ def get_instance(payload)
470
+ ServiceInstance.new(@version, payload)
471
+ end
472
+
473
+ ##
474
+ # Provide a user friendly representation
475
+ def to_s
476
+ '<Twilio.Verify.V2.ServicePage>'
477
+ end
478
+ end
479
+ class ServiceInstance < InstanceResource
480
+ ##
481
+ # Initialize the ServiceInstance
482
+ # @param [Version] version Version that contains the resource
483
+ # @param [Hash] payload payload that contains response from Twilio
484
+ # @param [String] account_sid The SID of the
485
+ # {Account}[https://www.twilio.com/docs/iam/api/account] that created this Service
486
+ # resource.
487
+ # @param [String] sid The SID of the Call resource to fetch.
488
+ # @return [ServiceInstance] ServiceInstance
489
+ def initialize(version, payload , sid: nil)
490
+ super(version)
491
+
492
+ # Marshaled Properties
493
+ @properties = {
494
+ 'sid' => payload['sid'],
495
+ 'account_sid' => payload['account_sid'],
496
+ 'friendly_name' => payload['friendly_name'],
497
+ 'code_length' => payload['code_length'] == nil ? payload['code_length'] : payload['code_length'].to_i,
498
+ 'lookup_enabled' => payload['lookup_enabled'],
499
+ 'psd2_enabled' => payload['psd2_enabled'],
500
+ 'skip_sms_to_landlines' => payload['skip_sms_to_landlines'],
501
+ 'dtmf_input_required' => payload['dtmf_input_required'],
502
+ 'tts_name' => payload['tts_name'],
503
+ 'do_not_share_warning_enabled' => payload['do_not_share_warning_enabled'],
504
+ 'custom_code_enabled' => payload['custom_code_enabled'],
505
+ 'push' => payload['push'],
506
+ 'totp' => payload['totp'],
507
+ 'default_template_sid' => payload['default_template_sid'],
508
+ 'verify_event_subscription_enabled' => payload['verify_event_subscription_enabled'],
509
+ 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
510
+ 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
511
+ 'url' => payload['url'],
512
+ 'links' => payload['links'],
513
+ }
514
+
515
+ # Context
516
+ @instance_context = nil
517
+ @params = { 'sid' => sid || @properties['sid'] , }
518
+ end
519
+
520
+ ##
521
+ # Generate an instance context for the instance, the context is capable of
522
+ # performing various actions. All instance actions are proxied to the context
523
+ # @return [ServiceContext] CallContext for this CallInstance
524
+ def context
525
+ unless @instance_context
526
+ @instance_context = ServiceContext.new(@version , @params['sid'])
527
+ end
528
+ @instance_context
529
+ end
530
+
531
+ ##
532
+ # @return [String] The unique string that we created to identify the Service resource.
533
+ def sid
534
+ @properties['sid']
535
+ end
536
+
537
+ ##
538
+ # @return [String] The SID of the [Account](https://www.twilio.com/docs/iam/api/account) that created the Service resource.
539
+ def account_sid
540
+ @properties['account_sid']
541
+ end
542
+
543
+ ##
544
+ # @return [String] The string that you assigned to describe the verification service. It can be up to 32 characters long. **This value should not contain PII.**
545
+ def friendly_name
546
+ @properties['friendly_name']
547
+ end
548
+
549
+ ##
550
+ # @return [String] The length of the verification code to generate.
551
+ def code_length
552
+ @properties['code_length']
553
+ end
554
+
555
+ ##
556
+ # @return [Boolean] Whether to perform a lookup with each verification started and return info about the phone number.
557
+ def lookup_enabled
558
+ @properties['lookup_enabled']
559
+ end
560
+
561
+ ##
562
+ # @return [Boolean] Whether to pass PSD2 transaction parameters when starting a verification.
563
+ def psd2_enabled
564
+ @properties['psd2_enabled']
565
+ end
566
+
567
+ ##
568
+ # @return [Boolean] Whether to skip sending SMS verifications to landlines. Requires `lookup_enabled`.
569
+ def skip_sms_to_landlines
570
+ @properties['skip_sms_to_landlines']
571
+ end
572
+
573
+ ##
574
+ # @return [Boolean] Whether to ask the user to press a number before delivering the verify code in a phone call.
575
+ def dtmf_input_required
576
+ @properties['dtmf_input_required']
577
+ end
578
+
579
+ ##
580
+ # @return [String] The name of an alternative text-to-speech service to use in phone calls. Applies only to TTS languages.
581
+ def tts_name
582
+ @properties['tts_name']
583
+ end
584
+
585
+ ##
586
+ # @return [Boolean] Whether to add a security warning at the end of an SMS verification body. Disabled by default and applies only to SMS. Example SMS body: `Your AppName verification code is: 1234. Don’t share this code with anyone; our employees will never ask for the code`
587
+ def do_not_share_warning_enabled
588
+ @properties['do_not_share_warning_enabled']
589
+ end
590
+
591
+ ##
592
+ # @return [Boolean] Whether to allow sending verifications with a custom code instead of a randomly generated one. Not available for all customers.
593
+ def custom_code_enabled
594
+ @properties['custom_code_enabled']
595
+ end
596
+
597
+ ##
598
+ # @return [Hash] Configurations for the Push factors (channel) created under this Service.
599
+ def push
600
+ @properties['push']
601
+ end
602
+
603
+ ##
604
+ # @return [Hash] Configurations for the TOTP factors (channel) created under this Service.
605
+ def totp
606
+ @properties['totp']
607
+ end
608
+
609
+ ##
610
+ # @return [String]
611
+ def default_template_sid
612
+ @properties['default_template_sid']
613
+ end
614
+
615
+ ##
616
+ # @return [Boolean] Whether to allow verifications from the service to reach the stream-events sinks if configured
617
+ def verify_event_subscription_enabled
618
+ @properties['verify_event_subscription_enabled']
619
+ end
620
+
621
+ ##
622
+ # @return [Time] The date and time in GMT when the resource was created specified in [RFC 2822](https://www.ietf.org/rfc/rfc2822.txt) format.
623
+ def date_created
624
+ @properties['date_created']
625
+ end
626
+
627
+ ##
628
+ # @return [Time] The date and time in GMT when the resource was last updated specified in [RFC 2822](https://www.ietf.org/rfc/rfc2822.txt) format.
629
+ def date_updated
630
+ @properties['date_updated']
631
+ end
632
+
633
+ ##
634
+ # @return [String] The absolute URL of the resource.
635
+ def url
636
+ @properties['url']
637
+ end
638
+
639
+ ##
640
+ # @return [Hash] The URLs of related resources.
641
+ def links
642
+ @properties['links']
643
+ end
644
+
645
+ ##
646
+ # Delete the ServiceInstance
647
+ # @return [Boolean] True if delete succeeds, false otherwise
648
+ def delete
649
+
650
+ context.delete
651
+ end
652
+
653
+ ##
654
+ # Fetch the ServiceInstance
655
+ # @return [ServiceInstance] Fetched ServiceInstance
656
+ def fetch
657
+
658
+ context.fetch
659
+ end
660
+
661
+ ##
662
+ # Update the ServiceInstance
663
+ # @param [String] friendly_name A descriptive string that you create to describe the verification service. It can be up to 32 characters long. **This value should not contain PII.**
664
+ # @param [String] code_length The length of the verification code to generate. Must be an integer value between 4 and 10, inclusive.
665
+ # @param [Boolean] lookup_enabled Whether to perform a lookup with each verification started and return info about the phone number.
666
+ # @param [Boolean] skip_sms_to_landlines Whether to skip sending SMS verifications to landlines. Requires `lookup_enabled`.
667
+ # @param [Boolean] dtmf_input_required Whether to ask the user to press a number before delivering the verify code in a phone call.
668
+ # @param [String] tts_name The name of an alternative text-to-speech service to use in phone calls. Applies only to TTS languages.
669
+ # @param [Boolean] psd2_enabled Whether to pass PSD2 transaction parameters when starting a verification.
670
+ # @param [Boolean] do_not_share_warning_enabled Whether to add a privacy warning at the end of an SMS. **Disabled by default and applies only for SMS.**
671
+ # @param [Boolean] custom_code_enabled Whether to allow sending verifications with a custom code instead of a randomly generated one. Not available for all customers.
672
+ # @param [Boolean] push_include_date Optional configuration for the Push factors. If true, include the date in the Challenge's response. Otherwise, the date is omitted from the response. See [Challenge](https://www.twilio.com/docs/verify/api/challenge) resource’s details parameter for more info. Default: false. **Deprecated** do not use this parameter.
673
+ # @param [String] push_apn_credential_sid Optional configuration for the Push factors. Set the APN Credential for this service. This will allow to send push notifications to iOS devices. See [Credential Resource](https://www.twilio.com/docs/notify/api/credential-resource)
674
+ # @param [String] push_fcm_credential_sid Optional configuration for the Push factors. Set the FCM Credential for this service. This will allow to send push notifications to Android devices. See [Credential Resource](https://www.twilio.com/docs/notify/api/credential-resource)
675
+ # @param [String] totp_issuer Optional configuration for the TOTP factors. Set TOTP Issuer for this service. This will allow to configure the issuer of the TOTP URI.
676
+ # @param [String] totp_time_step Optional configuration for the TOTP factors. Defines how often, in seconds, are TOTP codes generated. i.e, a new TOTP code is generated every time_step seconds. Must be between 20 and 60 seconds, inclusive. Defaults to 30 seconds
677
+ # @param [String] totp_code_length Optional configuration for the TOTP factors. Number of digits for generated TOTP codes. Must be between 3 and 8, inclusive. Defaults to 6
678
+ # @param [String] totp_skew Optional configuration for the TOTP factors. The number of time-steps, past and future, that are valid for validation of TOTP codes. Must be between 0 and 2, inclusive. Defaults to 1
679
+ # @param [String] default_template_sid The default message [template](https://www.twilio.com/docs/verify/api/templates). Will be used for all SMS verifications unless explicitly overriden. SMS channel only.
680
+ # @param [Boolean] verify_event_subscription_enabled Whether to allow verifications from the service to reach the stream-events sinks if configured
681
+ # @return [ServiceInstance] Updated ServiceInstance
682
+ def update(
683
+ friendly_name: :unset,
684
+ code_length: :unset,
685
+ lookup_enabled: :unset,
686
+ skip_sms_to_landlines: :unset,
687
+ dtmf_input_required: :unset,
688
+ tts_name: :unset,
689
+ psd2_enabled: :unset,
690
+ do_not_share_warning_enabled: :unset,
691
+ custom_code_enabled: :unset,
692
+ push_include_date: :unset,
693
+ push_apn_credential_sid: :unset,
694
+ push_fcm_credential_sid: :unset,
695
+ totp_issuer: :unset,
696
+ totp_time_step: :unset,
697
+ totp_code_length: :unset,
698
+ totp_skew: :unset,
699
+ default_template_sid: :unset,
700
+ verify_event_subscription_enabled: :unset
701
+ )
702
+
703
+ context.update(
704
+ friendly_name: friendly_name,
705
+ code_length: code_length,
706
+ lookup_enabled: lookup_enabled,
707
+ skip_sms_to_landlines: skip_sms_to_landlines,
708
+ dtmf_input_required: dtmf_input_required,
709
+ tts_name: tts_name,
710
+ psd2_enabled: psd2_enabled,
711
+ do_not_share_warning_enabled: do_not_share_warning_enabled,
712
+ custom_code_enabled: custom_code_enabled,
713
+ push_include_date: push_include_date,
714
+ push_apn_credential_sid: push_apn_credential_sid,
715
+ push_fcm_credential_sid: push_fcm_credential_sid,
716
+ totp_issuer: totp_issuer,
717
+ totp_time_step: totp_time_step,
718
+ totp_code_length: totp_code_length,
719
+ totp_skew: totp_skew,
720
+ default_template_sid: default_template_sid,
721
+ verify_event_subscription_enabled: verify_event_subscription_enabled,
722
+ )
723
+ end
724
+
725
+ ##
726
+ # Access the verification_checks
727
+ # @return [verification_checks] verification_checks
728
+ def verification_checks
729
+ context.verification_checks
730
+ end
731
+
732
+ ##
733
+ # Access the verifications
734
+ # @return [verifications] verifications
735
+ def verifications
736
+ context.verifications
737
+ end
738
+
739
+ ##
740
+ # Access the access_tokens
741
+ # @return [access_tokens] access_tokens
742
+ def access_tokens
743
+ context.access_tokens
744
+ end
745
+
746
+ ##
747
+ # Access the webhooks
748
+ # @return [webhooks] webhooks
749
+ def webhooks
750
+ context.webhooks
751
+ end
752
+
753
+ ##
754
+ # Access the messaging_configurations
755
+ # @return [messaging_configurations] messaging_configurations
756
+ def messaging_configurations
757
+ context.messaging_configurations
758
+ end
759
+
760
+ ##
761
+ # Access the entities
762
+ # @return [entities] entities
763
+ def entities
764
+ context.entities
765
+ end
766
+
767
+ ##
768
+ # Access the rate_limits
769
+ # @return [rate_limits] rate_limits
770
+ def rate_limits
771
+ context.rate_limits
772
+ end
773
+
774
+ ##
775
+ # Provide a user friendly representation
776
+ def to_s
777
+ values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
778
+ "<Twilio.Verify.V2.ServiceInstance #{values}>"
779
+ end
780
+
781
+ ##
782
+ # Provide a detailed, user friendly representation
783
+ def inspect
784
+ values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
785
+ "<Twilio.Verify.V2.ServiceInstance #{values}>"
786
+ end
787
+ end
468
788
 
469
- class ServiceInstance < InstanceResource
470
- ##
471
- # Initialize the ServiceInstance
472
- # @param [Version] version Version that contains the resource
473
- # @param [Hash] payload payload that contains response from Twilio
474
- # @param [String] sid The Twilio-provided string that uniquely identifies the
475
- # Verification Service resource to fetch.
476
- # @return [ServiceInstance] ServiceInstance
477
- def initialize(version, payload, sid: nil)
478
- super(version)
479
-
480
- # Marshaled Properties
481
- @properties = {
482
- 'sid' => payload['sid'],
483
- 'account_sid' => payload['account_sid'],
484
- 'friendly_name' => payload['friendly_name'],
485
- 'code_length' => payload['code_length'].to_i,
486
- 'lookup_enabled' => payload['lookup_enabled'],
487
- 'psd2_enabled' => payload['psd2_enabled'],
488
- 'skip_sms_to_landlines' => payload['skip_sms_to_landlines'],
489
- 'dtmf_input_required' => payload['dtmf_input_required'],
490
- 'tts_name' => payload['tts_name'],
491
- 'do_not_share_warning_enabled' => payload['do_not_share_warning_enabled'],
492
- 'custom_code_enabled' => payload['custom_code_enabled'],
493
- 'push' => payload['push'],
494
- 'totp' => payload['totp'],
495
- 'default_template_sid' => payload['default_template_sid'],
496
- 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
497
- 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
498
- 'url' => payload['url'],
499
- 'links' => payload['links'],
500
- }
501
-
502
- # Context
503
- @instance_context = nil
504
- @params = {'sid' => sid || @properties['sid'], }
505
- end
506
-
507
- ##
508
- # Generate an instance context for the instance, the context is capable of
509
- # performing various actions. All instance actions are proxied to the context
510
- # @return [ServiceContext] ServiceContext for this ServiceInstance
511
- def context
512
- unless @instance_context
513
- @instance_context = ServiceContext.new(@version, @params['sid'], )
514
789
  end
515
- @instance_context
516
- end
517
-
518
- ##
519
- # @return [String] The unique string that identifies the resource
520
- def sid
521
- @properties['sid']
522
- end
523
-
524
- ##
525
- # @return [String] The SID of the Account that created the resource
526
- def account_sid
527
- @properties['account_sid']
528
- end
529
-
530
- ##
531
- # @return [String] The string that you assigned to describe the verification service
532
- def friendly_name
533
- @properties['friendly_name']
534
- end
535
-
536
- ##
537
- # @return [String] The length of the verification code
538
- def code_length
539
- @properties['code_length']
540
- end
541
-
542
- ##
543
- # @return [Boolean] Whether to perform a lookup with each verification
544
- def lookup_enabled
545
- @properties['lookup_enabled']
546
- end
547
-
548
- ##
549
- # @return [Boolean] Whether to pass PSD2 transaction parameters when starting a verification
550
- def psd2_enabled
551
- @properties['psd2_enabled']
552
- end
553
-
554
- ##
555
- # @return [Boolean] Whether to skip sending SMS verifications to landlines
556
- def skip_sms_to_landlines
557
- @properties['skip_sms_to_landlines']
558
- end
559
-
560
- ##
561
- # @return [Boolean] Whether to ask the user to press a number before delivering the verify code in a phone call
562
- def dtmf_input_required
563
- @properties['dtmf_input_required']
564
- end
565
-
566
- ##
567
- # @return [String] The name of an alternative text-to-speech service to use in phone calls
568
- def tts_name
569
- @properties['tts_name']
570
- end
571
-
572
- ##
573
- # @return [Boolean] Whether to add a security warning at the end of an SMS.
574
- def do_not_share_warning_enabled
575
- @properties['do_not_share_warning_enabled']
576
- end
577
-
578
- ##
579
- # @return [Boolean] Whether to allow sending verifications with a custom code.
580
- def custom_code_enabled
581
- @properties['custom_code_enabled']
582
- end
583
-
584
- ##
585
- # @return [Hash] The service level configuration of factor push type.
586
- def push
587
- @properties['push']
588
- end
589
-
590
- ##
591
- # @return [Hash] The service level configuration of factor TOTP type.
592
- def totp
593
- @properties['totp']
594
- end
595
-
596
- ##
597
- # @return [String] The default_template_sid
598
- def default_template_sid
599
- @properties['default_template_sid']
600
- end
601
-
602
- ##
603
- # @return [Time] The RFC 2822 date and time in GMT when the resource was created
604
- def date_created
605
- @properties['date_created']
606
- end
607
-
608
- ##
609
- # @return [Time] The RFC 2822 date and time in GMT when the resource was last updated
610
- def date_updated
611
- @properties['date_updated']
612
- end
613
-
614
- ##
615
- # @return [String] The absolute URL of the resource
616
- def url
617
- @properties['url']
618
- end
619
-
620
- ##
621
- # @return [String] The URLs of related resources
622
- def links
623
- @properties['links']
624
- end
625
-
626
- ##
627
- # Fetch the ServiceInstance
628
- # @return [ServiceInstance] Fetched ServiceInstance
629
- def fetch
630
- context.fetch
631
- end
632
-
633
- ##
634
- # Delete the ServiceInstance
635
- # @return [Boolean] true if delete succeeds, false otherwise
636
- def delete
637
- context.delete
638
- end
639
-
640
- ##
641
- # Update the ServiceInstance
642
- # @param [String] friendly_name A descriptive string that you create to describe
643
- # the verification service. It can be up to 30 characters long. **This value
644
- # should not contain PII.**
645
- # @param [String] code_length The length of the verification code to generate.
646
- # Must be an integer value between 4 and 10, inclusive.
647
- # @param [Boolean] lookup_enabled Whether to perform a lookup with each
648
- # verification started and return info about the phone number.
649
- # @param [Boolean] skip_sms_to_landlines Whether to skip sending SMS verifications
650
- # to landlines. Requires `lookup_enabled`.
651
- # @param [Boolean] dtmf_input_required Whether to ask the user to press a number
652
- # before delivering the verify code in a phone call.
653
- # @param [String] tts_name The name of an alternative text-to-speech service to
654
- # use in phone calls. Applies only to TTS languages.
655
- # @param [Boolean] psd2_enabled Whether to pass PSD2 transaction parameters when
656
- # starting a verification.
657
- # @param [Boolean] do_not_share_warning_enabled Whether to add a privacy warning
658
- # at the end of an SMS. **Disabled by default and applies only for SMS.**
659
- # @param [Boolean] custom_code_enabled Whether to allow sending verifications with
660
- # a custom code instead of a randomly generated one. Not available for all
661
- # customers.
662
- # @param [Boolean] push_include_date Optional configuration for the Push factors.
663
- # If true, include the date in the Challenge's reponse. Otherwise, the date is
664
- # omitted from the response. See
665
- # {Challenge}[https://www.twilio.com/docs/verify/api/challenge] resource’s details
666
- # parameter for more info. Default: true
667
- # @param [String] push_apn_credential_sid Optional configuration for the Push
668
- # factors. Set the APN Credential for this service. This will allow to send push
669
- # notifications to iOS devices. See {Credential
670
- # Resource}[https://www.twilio.com/docs/notify/api/credential-resource]
671
- # @param [String] push_fcm_credential_sid Optional configuration for the Push
672
- # factors. Set the FCM Credential for this service. This will allow to send push
673
- # notifications to Android devices. See {Credential
674
- # Resource}[https://www.twilio.com/docs/notify/api/credential-resource]
675
- # @param [String] totp_issuer Optional configuration for the TOTP factors. Set
676
- # TOTP Issuer for this service. This will allow to configure the issuer of the
677
- # TOTP URI.
678
- # @param [String] totp_time_step Optional configuration for the TOTP factors.
679
- # Defines how often, in seconds, are TOTP codes generated. i.e, a new TOTP code is
680
- # generated every time_step seconds. Must be between 20 and 60 seconds, inclusive.
681
- # Defaults to 30 seconds
682
- # @param [String] totp_code_length Optional configuration for the TOTP factors.
683
- # Number of digits for generated TOTP codes. Must be between 3 and 8, inclusive.
684
- # Defaults to 6
685
- # @param [String] totp_skew Optional configuration for the TOTP factors. The
686
- # number of time-steps, past and future, that are valid for validation of TOTP
687
- # codes. Must be between 0 and 2, inclusive. Defaults to 1
688
- # @param [String] default_template_sid The default message
689
- # {template}[https://www.twilio.com/docs/verify/api/templates]. Will be used for
690
- # all SMS verifications unless explicitly overriden. SMS channel only.
691
- # @return [ServiceInstance] Updated ServiceInstance
692
- 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, default_template_sid: :unset)
693
- context.update(
694
- friendly_name: friendly_name,
695
- code_length: code_length,
696
- lookup_enabled: lookup_enabled,
697
- skip_sms_to_landlines: skip_sms_to_landlines,
698
- dtmf_input_required: dtmf_input_required,
699
- tts_name: tts_name,
700
- psd2_enabled: psd2_enabled,
701
- do_not_share_warning_enabled: do_not_share_warning_enabled,
702
- custom_code_enabled: custom_code_enabled,
703
- push_include_date: push_include_date,
704
- push_apn_credential_sid: push_apn_credential_sid,
705
- push_fcm_credential_sid: push_fcm_credential_sid,
706
- totp_issuer: totp_issuer,
707
- totp_time_step: totp_time_step,
708
- totp_code_length: totp_code_length,
709
- totp_skew: totp_skew,
710
- default_template_sid: default_template_sid,
711
- )
712
- end
713
-
714
- ##
715
- # Access the verifications
716
- # @return [verifications] verifications
717
- def verifications
718
- context.verifications
719
- end
720
-
721
- ##
722
- # Access the verification_checks
723
- # @return [verification_checks] verification_checks
724
- def verification_checks
725
- context.verification_checks
726
- end
727
-
728
- ##
729
- # Access the rate_limits
730
- # @return [rate_limits] rate_limits
731
- def rate_limits
732
- context.rate_limits
733
- end
734
-
735
- ##
736
- # Access the messaging_configurations
737
- # @return [messaging_configurations] messaging_configurations
738
- def messaging_configurations
739
- context.messaging_configurations
740
- end
741
-
742
- ##
743
- # Access the entities
744
- # @return [entities] entities
745
- def entities
746
- context.entities
747
- end
748
-
749
- ##
750
- # Access the webhooks
751
- # @return [webhooks] webhooks
752
- def webhooks
753
- context.webhooks
754
- end
755
-
756
- ##
757
- # Access the access_tokens
758
- # @return [access_tokens] access_tokens
759
- def access_tokens
760
- context.access_tokens
761
- end
762
-
763
- ##
764
- # Provide a user friendly representation
765
- def to_s
766
- values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
767
- "<Twilio.Verify.V2.ServiceInstance #{values}>"
768
- end
769
-
770
- ##
771
- # Provide a detailed, user friendly representation
772
- def inspect
773
- values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
774
- "<Twilio.Verify.V2.ServiceInstance #{values}>"
775
- end
776
790
  end
777
- end
778
791
  end
779
- end
780
- end
792
+ end